.lm2{--navy:#273747;--body:#535353;--muted:#6a6a6a;--line:#e6e6e6;--line-2:#d8dde2;--soft:#f6f6f6;--orange:#ff9326;--orange-d:#b8630e;--cta-ink:#444;--green:#1a7f4b;--green-soft:#f4faf6;--green-line:#cfe6d8;--glow-g:#35c985;--on-night:#e8eef4;--on-night-2:#9fb0c1;color-scheme:light}
.lm2,.lm2 *,.lm2 *::before,.lm2 *::after{box-sizing:border-box}
.lm2{display:block;background:#fff;color:var(--body);font:16px/1.6 "Open Sans","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
.lm2 [hidden]{display:none!important}
/* The page sits inside the shared layout: neutralise the site-wide base
   rules (core.css) that would otherwise reach into it. */
.lm2 ol li{padding-left:0}
.lm2 .btn:hover,.lm2 .btn:focus{text-decoration:none}
.lm2 .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lm2 .ph{color:var(--orange-d);border-bottom:1px dashed var(--orange);font-weight:600;font-size:.85em}
.lm2 .ph-n{color:#ffb466;border-bottom:1px dashed #ffb466}
.lm2 .in{max-width:1200px;margin:0 auto;padding:0 32px}
.lm2 button{font-family:inherit}
.lm2 :focus-visible{outline:2px solid var(--orange);outline-offset:3px}
/* ---------- HERO ---------- */
.lm2 .hero{position:relative;overflow:hidden;color:var(--on-night);background:radial-gradient(900px 520px at 80% 30%,rgba(255,147,38,.16),transparent 62%),radial-gradient(760px 520px at 6% 96%,rgba(53,201,133,.08),transparent 60%),linear-gradient(180deg,#273747 0,#1d2d3d 38%,#132232 100%)}
.lm2 .hero-map{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.lm2 .streets path{fill:none;stroke:#fff;stroke-width:1.1;opacity:.075}
.lm2 .hero-route{fill:none;stroke:var(--orange);stroke-width:2.2;stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(255,147,38,.7))}
.lm2 .hr-end{fill:var(--orange);opacity:0}
.lm2 .hero-in{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:40px 32px 64px;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:56px;align-items:center}
.lm2 .hero h1{margin:0 0 18px}
.lm2 .eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--orange);margin:0 0 16px}
.lm2 .h1t{display:block;font-size:clamp(2.4rem,4.6vw,3.7rem);line-height:1.03;font-weight:800;color:#fff;letter-spacing:-.045em;text-wrap:balance}
.lm2 .sub{font-size:18.5px;line-height:1.55;color:#b9c6d3;max-width:32em;margin:0 0 26px}
.lm2 .hform{background:#fff;border-radius:10px;padding:16px;display:grid;gap:10px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);max-width:560px}
.lm2 .field{display:flex;align-items:center;gap:10px;border:1px solid var(--line-2);border-radius:4px;padding:0 12px;height:48px;color:var(--muted)}
.lm2 .field input{border:0;outline:0;font:inherit;font-size:15px;color:var(--navy);width:100%;background:transparent}
.lm2 .field:focus-within{border-color:var(--navy);box-shadow:0 0 0 3px rgba(39,55,71,.12)}
.lm2 .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lm2 .btn{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 28px;border:0;border-radius:6px;background:var(--orange);color:var(--cta-ink);font:700 17px/1 "Open Sans",Arial,sans-serif;cursor:pointer;text-decoration:none;transition:background-color .15s,color .15s}
.lm2 .btn:hover{background:var(--orange-d);color:#fff}
.lm2 .btn-ghost{background:#fff;color:var(--navy);border:1.5px solid var(--orange)}
.lm2 .reassure{font-size:13px;color:var(--on-night-2);margin:12px 0 0}
.lm2 .proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:rgba(255,255,255,.035);max-width:560px}
.lm2 .proof div{padding:13px 14px;border-left:1px solid rgba(255,255,255,.08)}
.lm2 .proof div:first-child{border-left:0}
.lm2 .proof b{display:block;font-size:19px;font-weight:800;color:#fff}
.lm2 .proof span{font-size:11.5px;color:var(--on-night-2);line-height:1.35;display:block}
.lm2 .trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px;font-size:12px;color:var(--on-night-2)}
.lm2 .trust span{display:inline-flex;align-items:center;gap:7px}
.lm2 .trust svg{color:var(--orange)}
.lm2 .trust .fn{margin-left:-6px}
.lm2 .hero-demo{position:relative}
.lm2 .demo-glow{position:absolute;inset:10% 4% -6% 4%;background:radial-gradient(closest-side,rgba(255,147,38,.3),transparent);filter:blur(28px)}
.lm2 .demo-card{position:relative;background:#fff;border-radius:14px;padding:20px;box-shadow:0 40px 80px -36px rgba(0,0,0,.75),0 0 0 1px rgba(255,255,255,.06)}
.lm2 .rail-grid{display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:12px}
.lm2 .rg-pl,.lm2 .rg-when{display:flex;flex-direction:column;justify-content:space-between;line-height:1.25}
.lm2 .rg-pl{font-size:14px;font-weight:700;color:var(--navy)}
.lm2 .rg-when{text-align:right;font-size:12px;color:var(--muted)}
.lm2 .rg-when b{font-size:14px;color:var(--navy)}
.lm2 .dc-trip{padding-bottom:16px;border-bottom:1px solid var(--line)}
.lm2 .trc{display:grid;row-gap:10px}
.lm2 .trc-leg{position:relative;display:grid;grid-template-columns:10px minmax(0,1fr) auto;column-gap:12px;align-items:start}
.lm2 .trc-dot{width:10px;height:10px;margin-top:6px;border-radius:50%}
.lm2 .trc-a{background:var(--navy)}
.lm2 .trc-b{background:var(--orange)}
.lm2 .trc-pl{font-size:14.5px;line-height:22px;font-weight:700;color:var(--navy)}
.lm2 .trc-r{font-size:13px;line-height:22px;color:var(--muted);text-align:right;white-space:nowrap}
.lm2 .trc-r b{color:var(--navy);font-weight:700}
.lm2 .trc-leg:first-child::after{content:"";position:absolute;left:4px;top:19px;bottom:-13px;width:2px;border-radius:1px;background:#cdd5dd}
@media (max-width:420px){
.lm2 .trc-pl{font-size:14px}
.lm2 .trc-r{font-size:12.5px}
}
.lm2 .dc-sub{display:flex;justify-content:space-between;align-items:center;padding:14px 0 2px}
.lm2 .dc-k{font-size:11.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--body)}
.lm2 .live{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--green)}
.lm2 .live i{width:8px;height:8px;border-radius:50%;background:var(--green);animation:livepulse 1.8s infinite}
@keyframes livepulse{0%{box-shadow:0 0 0 0 rgba(26,127,75,.5)}70%,100%{box-shadow:0 0 0 8px rgba(26,127,75,0)}}
.lm2 .ho{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-top:12px;opacity:0;background:#fff}
.lm2 .ho-clip{position:absolute;inset:0;overflow:hidden;border-radius:10px;pointer-events:none}
.lm2 .ho-shine{position:absolute;top:0;bottom:0;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.95),transparent);transform:translateX(-160%)}
.lm2 .ho-glow{position:absolute;inset:-1px;border-radius:10px;box-shadow:0 0 0 2px var(--green),0 14px 30px -14px rgba(26,127,75,.6);opacity:0;pointer-events:none}
.lm2 .ho-av{width:40px;height:40px;border-radius:10px;background:#eef1f4;display:flex;align-items:center;justify-content:center;color:var(--navy)}
.lm2 .ho-n{font-size:14px;font-weight:700;color:var(--navy)}
.lm2 .ho-m{font-size:12px;color:var(--muted)}
.lm2 .ho-p{font-size:21px;font-weight:800;color:var(--navy);letter-spacing:-.4px;font-variant-numeric:tabular-nums}
.lm2 .ho-badge{position:absolute;top:-10px;left:14px;background:var(--green);color:#fff;font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:2px 8px;border-radius:6px;opacity:0;z-index:2}
.lm2 .dc-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.lm2 .dc-foot span{font-size:12px;color:var(--muted)}
.lm2 .btn-s{height:38px;padding:0 16px;font-size:14px;opacity:.4}
.lm2 .mini-pp{display:flex;align-items:center;gap:8px;margin:16px auto 0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:var(--on-night-2);font-size:12px;font-weight:600;padding:8px 14px;border-radius:999px;cursor:pointer}
/* ---------- SECTIONS ---------- */
.lm2 .sec{padding:96px 0}
.lm2 .grey{background:var(--soft)}
.lm2 .night{color:var(--on-night);background:radial-gradient(800px 400px at 85% 0%,rgba(255,147,38,.10),transparent 60%),linear-gradient(180deg,#0f1a25,#142334)}
.lm2 .sec h2{font-size:clamp(1.9rem,3.2vw,2.6rem);line-height:1.1;font-weight:800;color:var(--navy);letter-spacing:-.035em;margin:0 0 14px;text-wrap:balance}
.lm2 .night h2{color:#fff}
.lm2 .lead{font-size:17px;max-width:44em;margin:0 0 36px}
.lm2 .night .lead{color:#b9c6d3}
/* ---------- S02 AUCTION STAGE ---------- */
.lm2 .stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 368px;gap:28px;height:640px;padding:60px 24px 24px;border-radius:18px;overflow:hidden;background:radial-gradient(520px 360px at 34% 50%,rgba(255,147,38,.10),transparent 70%),radial-gradient(circle at 1px 1px,rgba(255,255,255,.07) 1px,transparent 1.3px) 0 0/22px 22px,linear-gradient(160deg,#101d29,#0b141d);box-shadow:0 40px 80px -40px rgba(12,21,30,.7),inset 0 0 0 1px rgba(255,255,255,.06)}
.lm2 .anet{position:relative;height:100%}
.lm2 .awires{position:absolute;inset:0;overflow:visible}
.lm2 .awire{stroke:rgba(255,255,255,.13);stroke-width:1px;fill:none}
.lm2 .aripple{position:absolute;left:50%;top:50%;width:210px;height:210px;margin:-105px 0 0 -105px;border-radius:50%;border:1.5px solid rgba(255,147,38,.75);box-shadow:inset 0 0 24px rgba(255,147,38,.25);opacity:0;pointer-events:none}
.lm2 .astatus{position:absolute;top:-44px;left:0;right:0;display:flex;justify-content:center;opacity:0;z-index:5}
.lm2 .astatus span{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff;border-radius:999px;padding:5px 13px;font-size:12px;font-weight:600;white-space:nowrap}
.lm2 .atrip-pos{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4}
.lm2 .atrip{position:relative;width:226px;background:#fff;border-radius:10px;padding:13px 14px;opacity:0;box-shadow:0 20px 40px -18px rgba(0,0,0,.7)}
.lm2 .atrip-glow{position:absolute;inset:-1px;border-radius:10px;box-shadow:0 0 0 2px var(--orange),0 0 34px rgba(255,147,38,.5);opacity:0;pointer-events:none}
.lm2 .atrip .k{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.lm2 .atrip .rg-pl,.lm2 .atrip .rg-when b{font-size:13px}
.lm2 .aact{position:relative;margin-top:11px;height:34px}
.lm2 .acta,.lm2 .apub{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:6px;font-weight:700}
.lm2 .acta{background:var(--orange);color:var(--cta-ink);font-size:13px}
.lm2 .apub{gap:6px;font-size:12px;color:var(--green);background:var(--green-soft);border:1px solid var(--green-line);opacity:0}
.lm2 .anode{--d:30px;position:absolute;width:0;height:0;z-index:2}
.lm2 .adot{position:absolute;left:calc(var(--d) / -2);top:calc(var(--d) / -2);width:var(--d);height:var(--d);border-radius:50%;background:rgba(255,255,255,.04);border:1.5px solid rgba(255,255,255,.14);color:rgba(255,255,255,.4);font-size:9.5px;font-weight:800;display:flex;align-items:center;justify-content:center}
.lm2 .ahalo,.lm2 .ahalo-g{position:absolute;inset:-9px;border-radius:50%;opacity:0;pointer-events:none}
.lm2 .ahalo{box-shadow:0 0 22px 4px rgba(255,147,38,.6)}
.lm2 .ahalo-g{box-shadow:0 0 0 2px var(--glow-g),0 0 26px 6px rgba(53,201,133,.55)}
.lm2 .alabel{position:absolute;top:calc(var(--d) / 2 + 7px);left:0;transform:translateX(-50%);font-size:10px;font-weight:600;color:rgba(255,255,255,.8);white-space:nowrap;opacity:0}
.lm2 .atyping{position:absolute;left:-19px;top:calc(var(--d) / -2 - 24px);width:38px;height:18px;display:flex;align-items:center;justify-content:center;gap:3px;background:#fff;border-radius:999px;opacity:0;box-shadow:0 6px 14px -6px rgba(0,0,0,.6)}
.lm2 .atyping i{width:4px;height:4px;border-radius:50%;background:var(--navy);display:block}
.lm2 .apkt{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 10px 2px rgba(255,147,38,.85);z-index:3;pointer-events:none;opacity:0}
.lm2 .apanel{align-self:center;position:relative;z-index:3;background:#fff;border-radius:14px;padding:16px 16px 12px;box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.lm2 .ap-head{display:flex;justify-content:space-between;align-items:center}
.lm2 .ap-head .k{font-size:11px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;color:var(--body)}
.lm2 .count{min-width:24px;height:24px;border-radius:14px;background:var(--navy);color:#fff;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;padding:0 7px}
.lm2 .best-now{display:flex;align-items:center;justify-content:space-between;margin:10px 0 14px;padding:9px 12px;border-radius:10px;background:#f2f5f7}
.lm2 .bn-k{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}
.lm2 .bn-v{position:relative;display:flex;align-items:center;justify-content:flex-end;min-width:80px;height:1.15em;font-size:26px;font-weight:800;color:var(--navy);letter-spacing:-.5px}
.lm2 .bn-dash{position:absolute;right:0}
.lm2 .odo{display:inline-flex;align-items:center;opacity:0;font-variant-numeric:tabular-nums}
.lm2 .dg{display:inline-block;height:1.15em;overflow:hidden}
.lm2 .st{display:flex;flex-direction:column}
.lm2 .st span{display:block;height:1.15em;line-height:1.15em;text-align:center}
.lm2 .eur{margin-left:.18em}
.lm2 .offers-wrap{position:relative;min-height:358px}
.lm2 .offers{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.lm2 .await{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px;border:1.5px dashed var(--line-2);border-radius:6px}
.lm2 .row{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;height:46px;padding:0 12px;background:#fff;border:1px solid var(--line);border-radius:6px;opacity:0}
.lm2 .mono{width:28px;height:28px;border-radius:50%;background:#eef1f4;color:var(--navy);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center}
.lm2 .who{display:flex;flex-direction:column;min-width:0}
.lm2 .nm{font-size:13px;font-weight:700;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lm2 .meta{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted)}
.lm2 .price{font-size:16px;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums}
.lm2 .best{position:absolute;top:-9px;left:12px;background:var(--green);color:#fff;font-size:9.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:2px 7px;border-radius:6px;opacity:0;transform-origin:left center}
.lm2 .check{position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;opacity:0;box-shadow:0 0 0 2px #fff}
.lm2 .ap-foot{min-height:48px;margin-top:10px;display:flex;flex-direction:column;justify-content:center;gap:2px}
.lm2 .no-reply{font-size:11.5px;color:var(--muted);opacity:0}
.lm2 .saving{font-size:12px;font-weight:700;color:var(--green);opacity:0}
.lm2 .chip{position:absolute;left:0;top:0;z-index:10;background:#fff;color:var(--navy);font-size:13px;font-weight:800;padding:5px 11px;border-radius:999px;box-shadow:0 10px 22px -8px rgba(0,0,0,.7),0 0 0 1px rgba(255,147,38,.5);pointer-events:none;white-space:nowrap;opacity:0}
.lm2 .chip.gh{box-shadow:none;background:rgba(255,255,255,.9)}
.lm2 .alock{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;opacity:0;pointer-events:none;z-index:6}
.lm2 .lcard,.lm2 .plk,.lm2 .jny{width:min(560px,100%);background:#fff;border-radius:14px}
.lm2 .lcard{border:2px solid var(--green);padding:16px 18px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;box-shadow:0 0 0 6px rgba(53,201,133,.12),0 24px 50px -24px rgba(0,0,0,.8)}
.lm2 .lc-m{width:48px;height:48px;border-radius:50%;background:var(--green);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center}
.lm2 .lc-n{font-size:16px;font-weight:800;color:var(--navy);line-height:1.2}
.lm2 .lc-meta{font-size:12px;color:var(--muted);margin-top:2px}
.lm2 .lc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.lm2 .lc-chips span{font-size:11px;background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:3px 8px}
.lm2 .lc-chips .ok{color:var(--green);background:var(--green-soft);border-color:var(--green-line);font-weight:600}
.lm2 .lc-p{font-size:26px;font-weight:800;color:var(--navy);letter-spacing:-.6px}
.lm2 .plk{padding:14px 18px;display:grid;grid-template-columns:minmax(0,1fr) 84px minmax(0,1fr);align-items:center}
.lm2 .pl-s{display:flex;flex-direction:column;align-items:center;position:relative}
.lm2 .pl-k{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.lm2 .pl-v{font-size:26px;font-weight:800;color:var(--navy);letter-spacing:-.6px;display:flex;align-items:center;gap:8px}
.lm2 .pay-amt{opacity:0}
.lm2 .padlock{color:var(--navy)}
.lm2 .shackle{transform:translateY(-3px)}
.lm2 .arrow-h{opacity:0}
.lm2 .shock{position:absolute;left:50%;top:60%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;border:2px solid var(--glow-g);opacity:0;pointer-events:none}
.lm2 .jny{padding:14px 16px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;opacity:0}
.lm2 .escrow{display:flex;align-items:center;gap:10px}
.lm2 .ering{position:relative;width:40px;height:40px;flex:none;color:var(--navy)}
.lm2 .ering svg{position:absolute;inset:0}
.lm2 .ering .ic{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.lm2 .elab{display:grid;font-size:12px;font-weight:700;color:var(--navy);white-space:nowrap}
.lm2 .elab>span{grid-area:1/1}
.lm2 .elab-b{opacity:0;color:var(--green)}
.lm2 .jmap-w{position:relative}
.lm2 .jmap{display:block;width:100%;height:auto;overflow:visible}
.lm2 .jcar{position:absolute;left:0;top:0;width:28px;height:18px;color:var(--navy)}
.lm2 .payee{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--navy);white-space:nowrap}
.lm2 .pm{position:relative;width:36px;height:36px;border-radius:50%;background:#eef1f4;color:var(--navy);font-weight:800;font-size:11px;display:flex;align-items:center;justify-content:center}
.lm2 .pm-glow{position:absolute;inset:-3px;border-radius:50%;box-shadow:0 0 0 2px var(--green),0 0 16px rgba(26,127,75,.5);opacity:0}
.lm2 .controls{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;margin-top:20px}
.lm2 .pp{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 18px;border:1px solid var(--line-2);background:#fff;color:var(--navy);font-weight:700;font-size:13px;border-radius:6px;cursor:pointer}
.lm2 .steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.lm2 .pill{position:relative;width:100%;min-height:50px;display:flex;align-items:center;gap:10px;text-align:left;padding:8px 12px 10px;border:1px solid var(--line);background:#fff;border-radius:6px;cursor:pointer;font-weight:600;font-size:12px;line-height:1.3;color:var(--body);overflow:hidden}
.lm2 .pill:hover{border-color:var(--line-2)}
.lm2 .pn{flex:none;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line-2);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:var(--muted)}
.lm2 .pill.on{border-color:var(--navy);color:var(--navy)}
.lm2 .pill.on .pn{background:var(--navy);border-color:var(--navy);color:#fff}
.lm2 .bar{position:absolute;left:0;right:0;bottom:0;height:3px}
.lm2 .fill{display:block;height:100%;background:linear-gradient(90deg,var(--orange),#ffb466);transform:scaleX(0);transform-origin:left}
.lm2 .cap-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-top:14px;flex-wrap:wrap}
.lm2 .caption{font-size:17px;font-weight:600;color:var(--navy);margin:0}
.lm2 .example{font-size:12px;color:var(--muted)}
.lm2 .rm-note{font-size:12px;color:var(--muted);margin:8px 0 0}
/* ---------- S03 ---------- */
.lm2 .anno{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:center}
.lm2 .ocard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 26px;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:18px;align-items:start;box-shadow:0 24px 50px -32px rgba(39,55,71,.45)}
.lm2 .oc-av{width:64px;height:64px;border-radius:10px;background:#eef1f4;display:flex;align-items:center;justify-content:center;color:var(--navy)}
.lm2 .oc-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.lm2 .oc-name{font-size:19px;font-weight:800;color:var(--navy)}
.lm2 .oc-loc{font-size:12px;color:var(--muted)}
.lm2 .rate{background:var(--green);color:#fff;font-size:12px;font-weight:700;padding:2px 7px;border-radius:6px}
.lm2 .chips{display:flex;flex-wrap:wrap;gap:7px}
.lm2 .chips span{font-size:12px;background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:5px 10px}
.lm2 .chips .ok{color:var(--green);background:var(--green-soft);border-color:var(--green-line);font-weight:600}
.lm2 .oc-right{text-align:right}
.lm2 .oc-price{display:flex;align-items:center;gap:8px;justify-content:flex-end;font-size:32px;font-weight:800;color:var(--navy);letter-spacing:-.8px;line-height:1}
.lm2 .oc-fix{font-size:12px;color:var(--muted);margin:6px 0 12px}
.lm2 .pin{flex:none;width:24px;height:24px;border-radius:50%;background:var(--navy);color:#fff;font-size:11.5px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 4px rgba(39,55,71,.12);transform:scale(0)}
.lm2 .legend{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.lm2 .legend li{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--navy);font-weight:600;opacity:.35}
.lm2 .legend .pn2{width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}
.lm2 .plock{position:relative;margin-top:34px;display:grid;grid-template-columns:minmax(0,1fr) minmax(80px,1fr) minmax(0,1fr);align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 26px}
.lm2 .pk-side{display:flex;flex-direction:column;align-items:center;gap:4px;position:relative}
.lm2 .pk-k{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.lm2 .pk-v{font-size:30px;font-weight:800;color:var(--navy);letter-spacing:-.7px;display:flex;align-items:center;gap:10px;min-height:1.2em}
.lm2 .pk-amt{opacity:0}
.lm2 .pk-track{height:2px;background:repeating-linear-gradient(90deg,var(--green-line) 0 8px,transparent 8px 14px)}
.lm2 .pk-sub{font-size:12px;color:var(--muted)}
.lm2 .cta-mid{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:34px}
.lm2 .replay{background:none;border:0;color:var(--muted);font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
/* ---------- S04 ---------- */
.lm2 .pid{background:#fff;border-radius:14px;padding:20px 24px;display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;align-items:center;box-shadow:0 30px 60px -30px rgba(0,0,0,.7)}
.lm2 .badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.lm2 .badge{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:6px 12px 6px 8px;font-size:13px;color:var(--body);font-weight:600}
.lm2 .bi{position:relative;width:18px;height:18px;flex:none}
.lm2 .spin{position:absolute;inset:0;border-radius:50%;border:2px solid var(--line-2);border-top-color:var(--navy);opacity:0}
.lm2 .tick{position:absolute;inset:0;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;transform:scale(0)}
.lm2 .facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:28px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);border-radius:10px;overflow:hidden}
.lm2 .facts p{margin:0;padding:20px 22px;background:#132232;color:#fff;font-size:15px;line-height:1.5}
.lm2 .neutral{margin:22px 0 0;color:var(--on-night-2);font-size:15px;max-width:54em}
/* ---------- S05 ---------- */
.lm2 .cov{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:start}
.lm2 .pchips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.lm2 .pchips span{font-size:13px;color:var(--navy);background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:7px 12px}
.lm2 .acc{border-top:1px solid var(--line)}
.lm2 .acc-i{border-bottom:1px solid var(--line)}
.lm2 .acc-b{width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 0;background:none;border:0;cursor:pointer;text-align:left;font-size:15px;font-weight:600;color:var(--navy)}
.lm2 .acc-b svg{flex:none;transition:transform .2s}
.lm2 .acc-b[aria-expanded="true"] svg{transform:rotate(180deg)}
.lm2 .acc-p{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}
.lm2 .acc-p>div{overflow:hidden}
.lm2 .acc-p p{margin:0 0 16px;font-size:14px;max-width:52em}
.lm2 .acc-i.open .acc-p{grid-template-rows:1fr}
.lm2 .mapcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 18px 14px;box-shadow:0 24px 50px -34px rgba(39,55,71,.5)}
.lm2 .seg{display:inline-grid;grid-template-columns:1fr 1fr;background:#f2f5f7;border-radius:999px;padding:4px;position:relative}
.lm2 .seg button{position:relative;z-index:1;border:0;background:none;padding:8px 16px;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer;border-radius:999px}
.lm2 .seg button[aria-pressed="true"]{color:var(--navy)}
.lm2 .seg-k{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:#fff;border-radius:999px;box-shadow:0 2px 8px -2px rgba(39,55,71,.3)}
.lm2 .map{display:block;width:100%;height:auto;margin-top:8px}
.lm2 .fr{fill:#eef1f4;stroke:#d8dde2;stroke-width:1.2}
.lm2 .d-app,.lm2 .d-mt{transform-box:fill-box;transform-origin:center;opacity:0}
.lm2 .d-app{fill:#7d90a6}
.lm2 .d-mt{fill:var(--orange)}
.lm2 .map-leg{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;font-size:12px;color:var(--body)}
.lm2 .map-leg i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.lm2 .map-cap{font-size:11.5px;color:var(--muted);margin:6px 0 0}
.lm2 .dom{display:flex;gap:8px;margin:8px 0 10px}
.lm2 .dom span{font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:3px 8px;display:inline-flex;align-items:center;gap:6px}
.lm2 .dom i{width:7px;height:7px;border-radius:50%;background:var(--orange);opacity:0}
/* ---------- S06 ---------- */
.lm2 .scen{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.lm2 .scen button{border:1.5px solid var(--line-2);background:#fff;border-radius:999px;padding:9px 16px;font-size:14px;font-weight:600;color:var(--body);cursor:pointer}
.lm2 .scen button[aria-pressed="true"]{border-color:var(--navy);background:var(--navy);color:#fff}
.lm2 .verdict{font-size:16px;font-weight:600;color:var(--navy);margin:0 0 22px;min-height:1.6em}
.lm2 .cmp{position:relative;display:grid;grid-template-columns:200px repeat(3,minmax(0,1fr));background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.lm2 .cmp>div{padding:15px 18px;border-top:1px solid var(--line);font-size:14px;position:relative;z-index:1;transition:color .25s,background-color .25s}
.lm2 .cmp .h{border-top:0;font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);background:var(--soft)}
.lm2 .cmp .h.mt{color:var(--navy)}
.lm2 .cmp .lab{font-weight:700;color:var(--navy)}
.lm2 .cmp .rel{background:#fffaf3}
.lm2 .cmp-frame{position:absolute;top:0;bottom:0;left:0;border:2px solid var(--green);border-radius:10px;box-shadow:0 0 0 5px rgba(26,127,75,.1);z-index:2;pointer-events:none}
.lm2 .cmp-tag{position:absolute;top:8px;right:8px;background:var(--green);color:#fff;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:2px 8px;border-radius:6px}
.lm2 .cmp-frame .cmp-tag{display:none}
.lm2 .cards{display:none}
.lm2 .card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;position:relative}
.lm2 .card h3{margin:0 0 10px;font-size:15px;color:var(--navy)}
.lm2 .card dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 14px;font-size:13px}
.lm2 .card dt{font-weight:700;color:var(--navy)}
.lm2 .card dd{margin:0}
.lm2 .card.win{border:2px solid var(--green);box-shadow:0 0 0 5px rgba(26,127,75,.1)}
.lm2 .card .cmp-tag{display:none}
.lm2 .card.win .cmp-tag{display:block}
/* ---------- S08 / misc ---------- */
.lm2 .close{text-align:center}
.lm2 .close h2{margin:0 auto 12px;max-width:20em}
.lm2 .close p{margin:0 0 26px}
.lm2 .drv{margin-top:44px;padding-top:24px;border-top:1px solid var(--line);font-size:14px}
.lm2 .drv a{color:#4667ce;font-weight:600;text-decoration:none}
.lm2 .sticky{position:fixed;left:0;right:0;bottom:0;z-index:50;padding:10px 16px calc(14px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 22px -12px rgba(0,0,0,.35);transform:translateY(110%);transition:transform .2s ease-out;display:none}
.lm2 .sticky.show{transform:none}
.lm2 .sticky .btn{width:100%}
/* ---------- V4 ---------- */
.lm2 .fn{font-size:.62em;vertical-align:super;line-height:0;margin-left:1px}
.lm2 .fn a{color:inherit;opacity:.7;text-decoration:none}
.lm2 .ba{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.lm2 .ba-app{background:#f1f2f4;border:1px solid var(--line)}
.lm2 .ba-app .ba-k{color:#8a8f96}
.lm2 .arow{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px 13px;margin-top:8px;opacity:0}
.lm2 .arow .ic{width:34px;height:34px;border-radius:50%;background:#eceef1;color:#8a8f96;display:flex;align-items:center;justify-content:center}
.lm2 .arow b{font-size:13px;color:#5b6168}
.lm2 .as-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px 13px 8px;margin-top:8px;opacity:0}
.lm2 .as-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--muted)}
.lm2 .as-up{color:#b23a22;letter-spacing:0;text-transform:none;font-size:12px;font-weight:800;opacity:0}
.lm2 .spark{display:block;width:100%;height:46px;margin-top:4px}
.lm2 .phone{border:2px solid #d4d7dc;border-radius:18px;background:#fff;padding:8px;margin-top:6px;opacity:0;box-shadow:0 18px 30px -24px rgba(0,0,0,.5)}
.lm2 .ph-top{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#3a3f45;padding:2px 4px 8px}
.lm2 .ph-ic{width:22px;height:22px;border-radius:6px;background:#2a2f35;color:#fff;display:flex;align-items:center;justify-content:center}
.lm2 .ph-time{margin-left:auto;font-weight:600;color:#8a8f96}
.lm2 .ph-map{height:70px;border-radius:14px;background:#eef0f2;overflow:hidden}
.lm2 .ph-map svg{width:100%;height:100%;display:block}
.lm2 .ph-sheet{padding:8px 0 0;display:grid;gap:6px}
.lm2 .ph-sheet .as-card{opacity:1;margin-top:0}
.lm2 .surge{justify-self:start;opacity:0}
.lm2 .ph-btn{height:34px;border-radius:10px;background:#2a2f35;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.lm2 .astats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.lm2 .astats div{display:flex;align-items:baseline;gap:10px;background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:12px 14px}
.lm2 .astats b{font-size:22px;font-weight:800;color:var(--navy);letter-spacing:-.5px;white-space:nowrap}
.lm2 .astats span{font-size:12px;line-height:1.4}
.lm2 .eng-c.wide{grid-column:1/-1;border:2px solid var(--green);background:var(--green-soft)}
.lm2 .tp{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:18px}
.lm2 .tp-k{font-size:13px;font-weight:700;color:var(--navy)}
.lm2 .tp-c{font-size:13px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 12px}
@media (max-width:1080px){
.lm2 .ba{grid-template-columns:1fr}
}
.lm2 .ba-col{border-radius:14px;padding:22px}
.lm2 .ba-old{background:#f1f2f4;border:1px solid var(--line)}
.lm2 .ba-new{background:#fff;border:2px solid var(--green);box-shadow:0 0 0 6px rgba(26,127,75,.08),0 30px 60px -40px rgba(26,127,75,.6)}
.lm2 .ba-k{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;margin-bottom:12px}
.lm2 .ba-old .ba-k{color:#8a8f96}
.lm2 .ba-new .ba-k{color:var(--green)}
.lm2 .call,.lm2 .off{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px 13px;margin-top:8px;opacity:0}
.lm2 .call .ic,.lm2 .off .ic{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800}
.lm2 .call .ic{background:#eceef1;color:#8a8f96}
.lm2 .call b{font-size:13px;color:#5b6168}
.lm2 .st-b{font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;background:#fbe9e6;color:#b23a22;white-space:nowrap}
.lm2 .st-b.warn{background:#fff3e2;color:#a4600f}
/* In the comparison the label keeps its longest word; on a narrow card the pill wraps instead. */
.lm2 .ba .call,.lm2 .ba .arow{grid-template-columns:34px minmax(min-content,1fr) auto}
.lm2 .ba .st-b{white-space:normal;text-align:center}
.lm2 .off .ic{background:#eef1f4;color:var(--navy)}
.lm2 .off b{font-size:13px;color:var(--navy);display:block}
.lm2 .off small{display:block;font-size:11.5px;color:var(--muted)}
.lm2 .off .p{font-size:18px;font-weight:800;color:var(--navy)}
.lm2 .pub{display:flex;align-items:center;gap:9px;background:var(--green-soft);border:1px solid var(--green-line);border-radius:10px;padding:10px 13px;font-size:13px;font-weight:700;color:var(--green);opacity:0}
.lm2 .ba-foot{margin:14px 0 0;font-size:14px;color:#6b7076;opacity:0}
.lm2 .ba-new .ba-foot{color:var(--navy);font-weight:600}
.lm2 .eng{display:grid;grid-template-columns:240px minmax(0,1fr);gap:52px;align-items:center}
.lm2 .seal{width:220px;height:220px;opacity:0;filter:drop-shadow(0 18px 30px rgba(26,127,75,.25))}
.lm2 .seal svg{width:100%;height:100%;display:block}
.lm2 .eng-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lm2 .eng-c{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;opacity:0}
.lm2 .eng-c .n{width:36px;height:36px;border-radius:10px;background:var(--green-soft);color:var(--green);display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.lm2 .eng-c h3{margin:0 0 6px;font-size:16px;color:var(--navy)}
.lm2 .eng-c p{margin:0;font-size:14px;line-height:1.55}
.lm2 .rv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.lm2 .rv{margin:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:12px}
.lm2 .rv blockquote{margin:0}
.lm2 .rv blockquote p{margin:0;font-size:15px;line-height:1.55;color:var(--navy)}
.lm2 .stars{display:flex;gap:2px;color:#f2b01e}
.lm2 .rv-who{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line)}
.lm2 .rv-who .av{width:36px;height:36px;border-radius:50%;background:#eef1f4;color:var(--navy);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none}
.lm2 .nm2{display:block;font-size:13px;font-weight:700;color:var(--navy)}
.lm2 .tr{display:block;font-size:12px;color:var(--muted)}
.lm2 .mpin circle{fill:#1a7f4b;stroke:#fff;stroke-width:2}
.lm2 .mpin text{font:700 10px "Open Sans",Arial,sans-serif;fill:#273747;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}
.lm2 .night.close h2{color:#fff}
.lm2 .ticks{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 24px;margin:4px 0 28px}
.lm2 .ticks span{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--on-night)}
.lm2 .ticks svg{color:var(--glow-g)}
.lm2 .close-sub{margin:16px 0 0!important;color:var(--on-night-2);font-size:14px}
.lm2 .night .drv{border-top-color:rgba(255,255,255,.1);color:var(--on-night-2)}
.lm2 .night .drv a{color:#a9bcff}
.lm2 .src-h{font-size:1.35rem!important}
.lm2 .src{margin:0;padding-left:1.2rem;font-size:13px}
.lm2 .src li{margin-bottom:10px}
@media (max-width:640px){
.lm2 .replay{min-height:44px;padding:10px 14px}
.lm2 .cmp-switch button{min-height:44px}
.lm2 .cmp-tag{font-size:11px}
}
@media (max-width:980px){
.lm2 .eng{grid-template-columns:1fr;gap:28px}
.lm2 .seal{margin:0 auto}
.lm2 .rv-grid{grid-template-columns:1fr}
}
@media (max-width:760px){
.lm2 .ba,.lm2 .eng-cards{grid-template-columns:1fr}
.lm2 .seal{width:170px;height:170px}
.lm2 .ticks{flex-direction:column;align-items:center}
}
@media (prefers-reduced-motion:reduce){

.lm2 .live i{animation:none}
.lm2 .acc-p,.lm2 .acc-b svg,.lm2 .sticky{transition:none}
}
@media (max-width:980px){
.lm2 .hero-in{grid-template-columns:1fr;gap:40px;padding-bottom:64px}
.lm2 .stage{grid-template-columns:1fr;height:auto;padding:16px;gap:14px}
.lm2 .anet{height:360px}
.lm2 .anno,.lm2 .cov{grid-template-columns:1fr;gap:28px}
}
@media (max-width:760px){
.lm2 .in,.lm2 .hero-in{padding-left:18px;padding-right:18px}
.lm2 .sec{padding:64px 0}
.lm2 .sub{font-size:16.5px}
.lm2 .proof{grid-template-columns:repeat(3,minmax(0,1fr))}
.lm2 .two{grid-template-columns:1fr}
.lm2 .anode{--d:22px}
.lm2 .adot{font-size:7.5px}
.lm2 .alabel{display:none}
.lm2 .stage{padding-top:56px}
.lm2 .astats{grid-template-columns:1fr}
.lm2 .atrip{width:150px;padding:10px 11px}
.lm2 .atrip .rg-when{display:none}
.lm2 .atrip .rail-grid{grid-template-columns:16px minmax(0,1fr)}
.lm2 .lcard{grid-template-columns:40px minmax(0,1fr) auto;gap:10px;padding:13px 14px}
.lm2 .lc-m{width:40px;height:40px}
.lm2 .lc-p,.lm2 .pl-v{font-size:21px}
.lm2 .plk{grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);padding:12px}
.lm2 .jny{grid-template-columns:1fr;gap:10px}
.lm2 .controls{grid-template-columns:1fr}
.lm2 .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
.lm2 .ocard{grid-template-columns:48px minmax(0,1fr);padding:18px}
.lm2 .oc-av{width:48px;height:48px}
.lm2 .oc-right{grid-column:1/-1;text-align:left;display:flex;align-items:center;justify-content:space-between}
.lm2 .oc-price{font-size:26px}
.lm2 .oc-fix{margin:0}
.lm2 .plock{grid-template-columns:1fr;gap:16px;padding:18px}
.lm2 .pk-track{width:2px;height:28px;margin:0 auto;background:repeating-linear-gradient(180deg,var(--green-line) 0 6px,transparent 6px 11px)}
.lm2 .pid{grid-template-columns:48px minmax(0,1fr);padding:16px}
.lm2 .facts{grid-template-columns:1fr}
.lm2 .cmp{display:none}
.lm2 .cards{display:grid;gap:12px}
.lm2 .sticky{display:block}
}
/* ---- price gap bars ---------------------------------------------- */
.lm2 .gap{box-sizing:border-box;width:100%;max-width:640px;margin:26px auto 0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 24px}
.lm2 .gap-row{display:grid;grid-template-columns:96px 1fr 68px;align-items:center;gap:12px;margin-bottom:14px}
.lm2 .gap-k{font-size:13px;color:var(--muted)}
.lm2 .gap-bar{height:26px;background:var(--soft);border-radius:6px;overflow:hidden}
.lm2 .gap-fill{display:block;height:100%;width:var(--w);border-radius:6px}
.lm2 .gap-lo{background:linear-gradient(90deg,#1a7f4b,#35c985)}
.lm2 .gap-hi{background:linear-gradient(90deg,#b8630e,#ff9326)}
.lm2 .gap-v{font-size:19px;font-weight:800;text-align:right;font-variant-numeric:tabular-nums}
.lm2 .gap-foot{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:14px;color:var(--body)}
.lm2 .gap-foot strong{font-size:19px;color:var(--orange-d)}
.lm2 .gap-stats{list-style:none;padding:0;margin:22px auto 0;max-width:720px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.lm2 .gap-stats li{box-sizing:border-box;background:var(--soft);border-radius:10px;padding:14px;text-align:center}
.lm2 .gap-stats b{display:block;font-size:17px}
.lm2 .gap-stats span{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.lm2 .gap-note{text-align:center;font-size:12px;color:var(--muted);margin:14px 0 0}
@media(max-width:620px){
.lm2 .gap-row{grid-template-columns:78px 1fr 58px;gap:8px}
.lm2 .gap-stats{grid-template-columns:1fr}
}
/* ---- use cases & ways to book ------------------------------------ */
.lm2 .trips,.lm2 .ways{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.lm2 .trip,.lm2 .way{box-sizing:border-box;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 22px}
.lm2 .way{display:flex;flex-direction:column}
.lm2 .trip h3,.lm2 .way h3{margin:0 0 .5em;font-size:17px}
.lm2 .trip p,.lm2 .way p{margin:0 0 .7em;font-size:14px}
.lm2 .way-c{margin-top:auto;background:var(--soft);border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.5}
.lm2 .way-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;vertical-align:middle}
.lm2 .way-dot.ok{background:var(--green)}
.lm2 .way-dot.wait{background:var(--orange)}
@media(max-width:860px){
.lm2 .trips,.lm2 .ways{grid-template-columns:1fr}
}
@media(max-width:900px){
.lm2{overflow-x:clip}
}
/* =====================================================================
   UI pass — type, rhythm, depth, motion. No copy was changed.
   ===================================================================== */

/* Headings get their own voice; Open Sans keeps the body familiar. */
.lm2 h1,.lm2 h2,.lm2 h3,.lm2 .lmc-title,.lm2 .gap-v,.lm2 .way h3,.lm2 .trip h3{
  font-family:"Bricolage Grotesque","Open Sans","Helvetica Neue",Arial,sans-serif;
  font-optical-sizing:auto;
}
.lm2 h2{letter-spacing:-.022em}
.lm2 .sec .in > h2::before{
  content:"";display:block;width:34px;height:3px;border-radius:2px;
  background:var(--orange);margin:0 0 20px;
}
.lm2 .night .in > h2::before{background:var(--glow-g)}
.lm2 .close .in > h2::before{margin-left:auto;margin-right:auto}
.lm2 ::selection{background:rgba(255,147,38,.26)}
/* Numbers should line up wherever they are compared. */
.lm2 .gap-v,.lm2 .gap-stats b,.lm2 .astats b,.lm2 .proof b{font-variant-numeric:tabular-nums}
/* ---- the gap chart ------------------------------------------------- */
.lm2 .gap{position:relative;box-shadow:0 24px 50px -34px rgba(16,29,41,.45)}
.lm2 .gap-plot{position:relative}
.lm2 .gap-row{margin-bottom:12px}
.lm2 .gap-bar{position:relative;background:linear-gradient(90deg,var(--soft),var(--soft));box-shadow:inset 0 0 0 1px rgba(39,55,71,.06)}
/* a faint 25% grid so the bars are read against a scale, not in the void */
.lm2 .gap-bar::before{
  content:"";position:absolute;inset:0;border-radius:6px;pointer-events:none;
  background:repeating-linear-gradient(90deg,transparent 0 calc(25% - 1px),rgba(39,55,71,.10) calc(25% - 1px) 25%);
}
.lm2 .gap-fill{position:relative;box-shadow:0 2px 8px -2px rgba(16,29,41,.35)}
.lm2 .gap-axis{display:grid;grid-template-columns:96px 1fr 68px;gap:12px;margin:2px 0 0}
.lm2 .gap-ticks{grid-column:2;display:flex;justify-content:space-between;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.lm2 .gap-ticks i{font-style:normal}
@media(max-width:620px){
.lm2 .gap-axis{grid-template-columns:78px 1fr 58px;gap:8px}
}
.lm2 .gap-stats li{transition:transform .18s ease}
.lm2 .gap-stats li:hover{transform:translateY(-2px)}
/* ---- cards: one shared object language ----------------------------- */
.lm2 .trip,.lm2 .way{
  position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
  box-shadow:0 1px 0 rgba(39,55,71,.04);
}
.lm2 .trip:hover,.lm2 .way:hover{
  transform:translateY(-3px);border-color:var(--line-2);
  box-shadow:0 18px 36px -26px rgba(16,29,41,.5);
}
.lm2 .trip::after{
  content:"";position:absolute;left:22px;right:22px;top:0;height:2px;border-radius:0 0 2px 2px;
  background:linear-gradient(90deg,var(--orange),transparent);opacity:.75;
}
.lm2 .way-c{display:block}
.lm2 .wpill{
  display:inline-block;margin-right:8px;vertical-align:baseline;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
  padding:3px 9px;border-radius:999px;white-space:normal;
}
.lm2 .wpill-ok{color:#13633a;background:var(--green-soft);box-shadow:inset 0 0 0 1px var(--green-line)}
.lm2 .wpill-wait{color:var(--orange-d);background:#fff3e4;box-shadow:inset 0 0 0 1px #f3d6b2}
@media (prefers-reduced-motion:no-preference){
.reveal-on .lm2 .rvl{opacity:0;transform:translateY(14px)}
.reveal-on .lm2 .rvl.seen{opacity:1;transform:none;transition:opacity .5s ease,transform .5s cubic-bezier(.22,.8,.3,1)}
.reveal-on .lm2 .rvl.seen:nth-child(2){transition-delay:.07s}
.reveal-on .lm2 .rvl.seen:nth-child(3){transition-delay:.14s}
.reveal-on .lm2 .rvl.seen:nth-child(4){transition-delay:.21s}
}
/* the hero now leads with the action, not a form */
.lm2 .hcta{margin:26px 0 0}
.lm2 .hcta .btn{font-size:17px;padding:16px 30px}
.lm2 .hcta-n{margin:12px 0 0;max-width:30em;color:var(--on-night-2);font-size:14px}
.lm2 .coverage{
  margin:10px 0 0;font-size:13px;color:var(--on-night-2);
  display:inline-flex;flex-wrap:wrap;gap:6px;
}
/* the three columns close on the same shape, so the eye can compare them */
.lm2 .ba-foot{border-top:1px solid rgba(39,55,71,.10);margin-top:14px;padding-top:12px}
.lm2 .ba-foot b{color:var(--navy)}
.lm2 .ba-app .ba-foot{border-top-color:rgba(39,55,71,.10)}
.lm2 .ba-app .ba-foot b{color:var(--navy)}
/* the coverage map moved out of its old two-column layout */
.lm2 #mapcard{max-width:900px;margin:26px auto 0}
.lm2 .pchips{justify-content:center;margin-top:26px}
.lm2 .scen-wrap .lead{max-width:46em}
/* independent scores lead the proof section */
.lm2 .tp-row{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-wrap:wrap;gap:12px}
.lm2 .tp-row li{flex:1 1 160px;background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:16px 18px;display:flex;align-items:baseline;gap:12px}
.lm2 .tp-row b{font-size:24px;color:var(--navy);font-variant-numeric:tabular-nums}
.lm2 .tp-row span{font-size:13px;color:var(--muted);line-height:1.35}
.lm2 .tp-row i{font-style:normal;font-size:12px}
.lm2 .tp-note{margin:10px 0 0;font-size:12px;color:var(--muted)}
.lm2 .gap-wide{margin:12px 0 0;font-size:15px;color:var(--body)}
.lm2 .ways-foot{margin:22px 0 0;font-size:15px;color:var(--body);text-align:center}
.lm2 .way h3{min-height:2.4em}
@media(max-width:860px){
.lm2 .way h3{min-height:0}
}
/* the four checks, one line each */
.lm2 .checks{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 26px}
.lm2 .checks li{display:flex;gap:11px;align-items:flex-start;padding:12px 0;border-top:1px solid rgba(255,255,255,.10)}
.lm2 .checks svg{flex:0 0 auto;margin-top:3px;color:var(--glow-g)}
.lm2 .checks b{display:block;font-size:15px;color:var(--on-night)}
.lm2 .checks i{display:block;font-style:normal;font-size:13px;color:var(--on-night-2);margin-top:2px}
.lm2 .checks-foot{margin:18px 0 0;font-size:13px;color:var(--on-night-2)}
.lm2 .checks-foot a{color:var(--on-night)}
@media(max-width:760px){
.lm2 .checks{grid-template-columns:1fr}
}
.lm2 .facts p:last-child{grid-column:1 / -1}
@media (min-width:1201px){
.lm2 .sec{padding:96px 0}
.lm2 .in{padding:0 32px}
}
@media (min-width:861px) and (max-width:1200px){
.lm2 .sec{padding:80px 0}
.lm2 .in{padding:0 28px}
}
@media (min-width:601px) and (max-width:860px){
.lm2 .sec{padding:72px 0}
.lm2 .in{padding:0 24px}
}
@media (max-width:600px){
.lm2 .sec{padding:64px 0}
.lm2 .in{padding:0 20px}
}
/* four checks on one row, no sub-lines */
.lm2 .checks{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.lm2 .checks li{flex:1 1 210px;display:flex;align-items:center;gap:9px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);border-radius:10px;padding:12px 14px;
  font-size:14px;color:var(--on-night)}
.lm2 .checks svg{flex:0 0 auto;color:var(--glow-g)}
.lm2 .checks span{line-height:1.3}
.lm2 .checks-foot{margin:14px 0 0;font-size:13px;color:var(--on-night-2)}
.lm2 .checks-foot a{color:var(--on-night)}
.lm2 .facts p b{color:var(--on-night)}
/* trip-type chips carry a drawn glyph, one colour each */
.lm2 .pchips span{display:inline-flex;align-items:center;gap:7px}
.lm2 .pchips svg{flex:0 0 auto}
/* The questions keep a comfortable reading width, but the section heading
   lines up with every other heading on the page. */
.lm2 .acc{max-width:860px}
/* ---- photographs on the three use-case cards ---------------------- */
.lm2 .trips .trip{padding:0;overflow:hidden}
.lm2 .trip-ph{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:var(--soft)}
.lm2 .trip-b{padding:18px 22px 20px}
.lm2 .trips .trip::after{top:auto;bottom:0;border-radius:2px 2px 0 0}
/* ---- composition pass, 15/10/2026 --------------------------------- */
/* 1. the price gap is the page's main argument: give it the full width */
.lm2 .gap{max-width:none;padding:26px 30px}
/* 2. the coverage map was half the width of its own section */
.lm2 .mapcard{width:100%}
/* 4. the guarantee seal sat in the left gutter, outside the grid */
.lm2 .eng{grid-template-columns:minmax(0,1fr);gap:26px;justify-items:center;text-align:center}
.lm2 .eng .seal{margin:0 auto}
.lm2 .eng-cards{text-align:left}
/* ---- composition pass 2, 15/10/2026 -------------------------------- */
/* platform logos, sized to the same optical height */
.lm2 .tp-logo{display:block;height:17px;width:auto;max-width:112px}
.lm2 .tp-dark .tp-logo{height:14px}
.lm2 .tp-row li{align-items:center}
/* the reviews carry more weight: bigger stars, a real avatar disc */
.lm2 .stars svg{width:19px;height:19px}
.lm2 .rv-who .av{width:46px;height:46px;font-size:17px;background:var(--navy);color:#fff}
/* one screen per section: trim the shared rhythm and the three tall blocks */
.lm2 .sec{padding:72px 0}
.lm2 #mapcard{max-width:640px}
.lm2 .seal{width:150px;height:150px}
/* portraits of the three travellers, published with their written consent */
.lm2 img.av{object-fit:cover;border-radius:50%;flex:none;background:#eef1f4}
/* ---- the three review-platform tiles, rebuilt 15/10/2026 ----------- */
.lm2 .tp-row{list-style:none;margin:24px 0 0;padding:0;display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.lm2 .tp-row li{background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:22px 24px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;
  box-shadow:0 1px 0 rgba(39,55,71,.04)}
/* one fixed band for the brand, so the three logos sit on the same line */
.lm2 .tp-brand{height:34px;display:flex;align-items:center}
.lm2 .tp-logo{display:block;height:30px;width:auto;max-width:170px}
.lm2 .tp-dark .tp-logo{height:23px}
.lm2 .tp-row .tp-word{font-family:"Bricolage Grotesque","Open Sans",Arial,sans-serif;
  font-size:24px;font-weight:700;letter-spacing:-.02em;color:#1b2733;line-height:1}
.lm2 .tp-row .tp-score{font-size:31px;font-weight:700;color:var(--navy);line-height:1;
  font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.lm2 .tp-row .tp-count{font-size:13.5px;color:var(--muted);line-height:1}
@media (max-width:760px){
.lm2 .tp-row{grid-template-columns:1fr;gap:10px}
.lm2 .tp-row li{flex-direction:row;align-items:center;justify-content:space-between;
    gap:12px;padding:16px 18px}
.lm2 .tp-row li .tp-brand{height:28px}
.lm2 .tp-logo{height:24px}
.lm2 .tp-dark .tp-logo{height:19px}
.lm2 .tp-row .tp-word{font-size:20px}
.lm2 .tp-row .tp-score{font-size:24px}
}
.lm2 .sw-country{display:inline-block;width:12px;height:12px;border-radius:3px;background:#ffe2c2;border:1px solid #e2a05a;margin-right:6px;vertical-align:-1px}
/* ---- what sits under the coverage map ------------------------------ */
.lm2 .map-foot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px;
  margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.lm2 .map-foot .mf{display:flex;gap:10px;align-items:flex-start;min-width:0}
.lm2 .map-foot .sw{flex:none;width:13px;height:13px;border-radius:4px;margin-top:3px}
.lm2 .map-foot .sw-country{background:#ffe2c2;border:1px solid #e2a05a}
.lm2 .map-foot .sw-dom{background:#fff;border:1px dashed #c3ccd6}
.lm2 .map-foot .sw-rated{background:#1a7f4b;border-radius:50%;
  box-shadow:0 0 0 2px #fff,0 0 0 3px #1a7f4b;width:11px;height:11px;margin-top:4px}
.lm2 .map-foot b{display:block;font-size:13px;color:var(--ink);font-weight:600;line-height:1.3}
.lm2 .map-foot span{display:block;font-size:12.5px;color:var(--muted);line-height:1.45;margin-top:2px}
@media (max-width:760px){
.lm2 .map-foot{grid-template-columns:1fr;gap:12px}
}
/* ---- coverage: map and figures side by side, so the section fits a screen */
.lm2 .cov-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.86fr);
  gap:34px;align-items:center;margin-top:22px}
.lm2 #mapcard{max-width:none;margin:0}
.lm2 .cov-side{min-width:0}
.lm2 .cov-figs{display:grid;gap:14px;margin:0 0 20px}
.lm2 .cov-figs div{display:flex;align-items:baseline;gap:12px}
.lm2 .cov-figs b{font-size:30px;font-weight:700;color:var(--navy);line-height:1;
  font-variant-numeric:tabular-nums;letter-spacing:-.01em;flex:none}
.lm2 .cov-figs span{font-size:14px;color:var(--muted);line-height:1.35}
.lm2 .cov-side .map-foot{grid-template-columns:1fr;gap:12px;margin:0;padding-top:16px}
@media (max-width:860px){
.lm2 .cov-grid{grid-template-columns:1fr;gap:22px}
.lm2 .cov-figs{gap:10px;margin-bottom:14px}
.lm2 .cov-figs b{font-size:25px}
}
.lm2 #mapcard{max-width:440px;margin-inline:auto}
.lm2 .cov-grid{align-items:center}
.lm2 .cov-list b{display:inline;font-size:inherit;color:var(--ink);font-weight:700}
.lm2 .cov-list{line-height:1.6}
.lm2 .cov-figs{margin-bottom:18px}
/* =================================================================
   Detail pass - checked at 390, 430, 834, 1024, 1280, 1440, 1920.
   Nothing is redesigned here; each rule fixes a fault that only
   appears at one of those widths.
   ================================================================= */

/* The second legend marker had no colour rule at all and rendered as
   an invisible gap. These territories sit outside the map frame, so
   the marker is an empty outline rather than a filled swatch. */
.lm2 .sw-dom{background:#fff;border:1.5px dashed #b9c3cd;border-radius:4px}
@media (min-width:1200px){
.lm2 .ba{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:701px){
.lm2 .trips,.lm2 .ways{grid-template-columns:repeat(3,minmax(0,1fr))}
.lm2 .way h3{min-height:2.4em}
}
/* The decorative route was a bright stroke straight through the hero
   copy. Dropped to background weight: still a route, no longer a line
   drawn across the words. */
.lm2 .hero-route{opacity:.32;stroke-width:1.6;filter:none}
/* The two drawn logos carry their own height and the Tripadvisor
   wordmark does not, so it sat higher than the other two. A fixed
   slot puts all three on one line. */
.lm2 .tp-brand{display:flex;align-items:center;min-height:30px}
.lm2 .tp-logo{display:block}
/* Nothing under 11px: these badges were legible on a 1440 screen and
   not on a phone. */
.lm2 .best{font-size:11px}
.lm2 .ho-badge{font-size:11px}
.lm2 .alabel{font-size:11px}
/* The uppercase micro-labels inside the mock cards were 10px. Raised to
   the same 11px floor, except inside the miniature trip card, which
   stands for a phone-sized element and would overflow. */
.lm2 .k,.lm2 .dc-k,.lm2 .pl-k,.lm2 .as-top{font-size:11px}
.lm2 .cmp-tag{font-size:11px}
.lm2 .atrip .k{font-size:10px}
/* The replay control was 20px tall, well under a finger. */
.lm2 .replay{min-height:44px;display:inline-flex;align-items:center}
/* =================================================================
   Vetting section, rebuilt.
   It had three competing box treatments and the company card left
   half its width empty. Now it reads as one argument: the rules on
   the left, one real company meeting them on the right, and three
   quiet notes under both. No copy changed.
   ================================================================= */
.lm2 .vet{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1fr);
  gap:56px;align-items:start;margin:32px 0 0}
@media (max-width:900px){
.lm2 .vet{grid-template-columns:1fr;gap:30px;margin-top:26px}
}
/* The four checks were pills in a row and read as disabled buttons.
   They are facts, so they are set as a list: one per line, divided by
   a hairline, with the tick carrying the only colour. */
.lm2 .checks{display:block;list-style:none;margin:0;padding:0}
.lm2 .checks li{display:flex;align-items:flex-start;gap:14px;flex:none;
  padding:15px 0;border:0;border-top:1px solid rgba(255,255,255,.11);
  background:none;border-radius:0}
.lm2 .checks li:first-child{border-top:0;padding-top:0}
.lm2 .checks svg{flex:none;width:17px;height:17px;margin-top:3px;color:var(--glow-g)}
.lm2 .checks li span{font-size:16px;line-height:1.45;font-weight:600;color:var(--on-night)}
.lm2 .checks-foot{margin:20px 0 0;font-size:13px;color:var(--on-night-2)}
.lm2 .checks-foot a{color:var(--on-night);text-underline-offset:3px}
/* The company card is the proof, so it is the one lit object in a dark
   section. It now sits in its own column and fills it. */
.lm2 .vet-proof{position:relative}
.lm2 .vet-proof::before{content:"";position:absolute;inset:14% -6% -10% -6%;
  background:radial-gradient(closest-side,rgba(53,201,133,.16),transparent);
  filter:blur(26px);pointer-events:none}
.lm2 .pid{position:relative;grid-template-columns:54px minmax(0,1fr);gap:16px;
  align-items:start;padding:24px;border-radius:16px;
  background:linear-gradient(180deg,#fff 0,#f7f9fb 100%);
  box-shadow:0 34px 64px -36px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.08)}
.lm2 .pid .oc-av{width:54px;height:54px;border-radius:13px;background:#eef1f4}
.lm2 .pid .oc-line{align-items:baseline;gap:10px}
.lm2 .pid .oc-name{font-size:20px;letter-spacing:-.015em}
/* the four results, two by two, so the card has a shape of its own */
.lm2 .badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(172px,1fr));
  gap:9px;margin-top:16px}
.lm2 .badge{border:1px solid var(--line);background:#fff;border-radius:10px;
  padding:10px 12px;font-size:12.5px;line-height:1.3;gap:10px;align-items:center}
@media (max-width:900px){
.lm2 .badges{grid-template-columns:1fr 1fr}
}
@media (max-width:460px){
.lm2 .badges{grid-template-columns:1fr}
}
/* Three notes, three equal columns. They were a bordered grid whose last
   cell spanned the full width, which read as a broken table. */
.lm2 .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0 36px;margin:44px 0 0;background:none;border:0;border-radius:0;overflow:visible}
.lm2 .facts p{background:none;padding:18px 0 0;margin:0;
  border-top:1px solid rgba(255,255,255,.16);
  font-size:14.5px;line-height:1.55;color:var(--on-night-2)}
.lm2 .facts p b{color:#fff;font-weight:700}
.lm2 .facts p:last-child{grid-column:auto}
@media (max-width:860px){
.lm2 .facts{grid-template-columns:1fr}
.lm2 .facts p{padding:14px 0 0}
}
.lm2 .neutral{margin:30px 0 0;font-size:14px;color:var(--on-night-2)}
/* =================================================================
   The monTransport score was a sentence in body text, sitting under
   three platforms that each got a card. It is the larger number of
   the four - 61 000 reviews against Google's 8 800 - and it read as
   the smallest thing in the section. Same words, given their own
   block. "Trois récents, tels quels." moves to where it does its
   job: introducing the three cards.
   ================================================================= */
.lm2 .own{display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px;align-items:center;
  margin:18px 0 0;padding:22px 26px;border-radius:14px;
  background:linear-gradient(180deg,#273747,#1d2d3d);
  box-shadow:0 24px 50px -34px rgba(16,29,41,.6)}
.lm2 .own-fig{display:flex;flex-direction:column;line-height:1.05}
.lm2 .own-fig b{font-family:"Bricolage Grotesque","Open Sans",Arial,sans-serif;
  font-size:clamp(2rem,3.4vw,2.6rem);font-weight:800;color:#fff;letter-spacing:-.03em;
  font-variant-numeric:tabular-nums}
.lm2 .own-fig span{margin-top:6px;font-size:13px;color:#9fb0c1}
.lm2 .own-fig .fn a{color:#9fb0c1}
.lm2 .own-txt{margin:0;display:flex;flex-direction:column;gap:4px;
  padding-left:28px;border-left:1px solid rgba(255,255,255,.14)}
.lm2 .own-txt b{font-size:15px;color:#fff}
.lm2 .own-txt span{font-size:14.5px;line-height:1.5;color:#b9c6d3}
.lm2 .rv-lead{margin:30px 0 14px;font-size:15px;color:var(--muted)}
@media (max-width:620px){
.lm2 .own{grid-template-columns:1fr;gap:16px;padding:20px}
.lm2 .own-txt{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.14);padding-top:14px}
}
/* The rating and the number of reviews belong to the same statement, so they
   sit on one line sharing a baseline. The logo keeps the row above. Sizes are
   unchanged: the score stays large, the count stays small. */
.lm2 .tp-row li{display:grid;grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:"brand brand" "score count";
  align-items:baseline;justify-items:start;gap:14px 9px;
  flex-direction:unset}
.lm2 .tp-row li .tp-brand{grid-area:brand;align-self:center}
.lm2 .tp-row li .tp-score{grid-area:score}
.lm2 .tp-row li .tp-count{grid-area:count}
@media (max-width:900px){
.lm2 .tp-row li{gap:10px 9px;padding:16px 18px}
}
/* The three platform cards sat white on white and barely read as objects.
   They keep a white background on purpose: Tripadvisor's display rules require
   its rating block to sit on white, so a tint would put us outside them. The
   separation comes from elevation and a slightly firmer edge instead.
   Google's rules also apply here: when its logo appears beside other companies'
   logos they must all be the same size, which is why the three logo slots share
   one fixed height. */
.lm2 .tp-row li{background:#fff;border:1px solid #e3e7ec;
  box-shadow:0 1px 2px rgba(16,29,41,.04),0 10px 24px -18px rgba(16,29,41,.45);
  transition:box-shadow .2s ease,transform .2s ease}
.lm2 .tp-row li:hover{transform:translateY(-2px);
  box-shadow:0 2px 4px rgba(16,29,41,.05),0 18px 34px -20px rgba(16,29,41,.5)}
/* =================================================================
   The guarantee section, rebuilt. It ran to 1.2-1.4 screens, opened
   on a 220px seal stacked above the heading, and spent five cards of
   prose on five promises. Now: the seal sits beside the heading, the
   four promises are one line each, and the penalty is a single line.
   ================================================================= */
.lm2 .eng{display:block}
.lm2 .eng-head{display:flex;align-items:center;gap:26px;margin:0 0 30px}
.lm2 .eng .seal{width:104px;height:104px;flex:none;margin:0;opacity:0}
.lm2 .eng-head h2{margin:0}
.lm2 .eng-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.lm2 .eng-c{padding:20px 18px;border-radius:14px}
.lm2 .eng-c .n{width:38px;height:38px;border-radius:11px;margin-bottom:13px;
  display:flex;align-items:center;justify-content:center}
/* an earlier rule paints every chip green from `.eng-c .n`, which outranks a
   lone class, so these carry the same weight */
.lm2 .eng-c .n-green{background:#e8f6ee;color:#1a7f4b}
.lm2 .eng-c .n-amber{background:#fff3e2;color:#b8630e}
.lm2 .eng-c .n-blue{background:#e9eefb;color:#3a5bc7}
.lm2 .eng-c .n-navy{background:#e8edf2;color:#273747}
/* the old two-column layout centred everything in this section */
.lm2 .eng{text-align:left;justify-items:stretch}
.lm2 .eng-head h2,.lm2 .eng-note{text-align:left}
.lm2 .eng-c h3{margin:0 0 7px;font-size:15px;line-height:1.3;color:var(--navy)}
.lm2 .eng-c p{margin:0;font-size:14px;line-height:1.5}
.lm2 .eng-note{margin:22px 0 0;font-size:14.5px;line-height:1.55;color:var(--body)}
.lm2 .eng-note b{color:var(--navy)}
.lm2 .eng-note a{color:var(--navy)}
@media (max-width:1040px){
.lm2 .eng-cards{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
.lm2 .eng-cards{grid-template-columns:1fr;gap:12px}
.lm2 .eng-head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:22px}
.lm2 .eng .seal{width:82px;height:82px}
}
/* The enforcement line read as a stray caption: it listed penalties without
   ever saying what triggered them. It now names the trigger first and sits in
   a band of its own, so it reads as the teeth behind the promise rather than
   as a fifth, smaller commitment. */
.lm2 .eng-pen{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;
  margin:18px 0 0;padding:16px 20px;border-radius:14px;
  background:var(--green-soft);border:1px solid var(--green-line)}
.lm2 .eng-pen-i{width:34px;height:34px;flex:none;border-radius:10px;display:flex;
  align-items:center;justify-content:center;background:#fff;color:var(--green);
  box-shadow:inset 0 0 0 1px var(--green-line)}
.lm2 .eng-pen p{margin:0;font-size:14.5px;line-height:1.55;color:var(--body);text-align:left}
.lm2 .eng-pen b{color:#13633a}
.lm2 .eng-cgv{margin:12px 0 0;font-size:13px;color:var(--muted);text-align:left}
.lm2 .eng-cgv a{color:var(--muted)}
@media (max-width:620px){
.lm2 .eng-pen{padding:14px 16px;gap:12px}
}
/* Two notes, not three: the cancellation penalty was said here and again in the
   guarantee section. It stays there, where it answers the objection the promise
   raises. What is left here is about how the score is formed, which is this
   section's subject. */
.lm2 .facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px}
@media (max-width:860px){
.lm2 .facts{grid-template-columns:1fr}
}
/* The guarantee is the page's risk-reversal moment and it looked like every
   other grey section. A soft green wash, tied to the seal, marks it as a
   different kind of statement. Cards stay white so they keep their lift, and
   the penalty band flips to white with a green edge so it still separates. */
.lm2 .sec.grey:has(#eng){
  background:
    radial-gradient(760px 420px at 12% 0%,rgba(53,201,133,.10),transparent 60%),
    linear-gradient(180deg,#f3faf6 0%,#eef7f2 100%);
}
.lm2 .eng-c{background:#fff;border-color:#e0ebe5;
  box-shadow:0 1px 2px rgba(16,41,29,.04),0 12px 26px -20px rgba(16,41,29,.45)}
.lm2 .eng-pen{background:#fff;border-color:var(--green-line);
  box-shadow:0 10px 24px -20px rgba(16,41,29,.4)}
.lm2 .eng-pen-i{background:var(--green-soft);box-shadow:inset 0 0 0 1px var(--green-line)}
/* The timing badge was the one thing that differs between the three routes and
   it sat at the bottom of each card. It moves to the top, so the three can be
   compared in one glance, and each card carries the matching accent. */
.lm2 .way{position:relative;padding-top:22px;display:flex;flex-direction:column}
.lm2 .way .wpill{align-self:flex-start;margin:0 0 12px}
.lm2 .way h3{min-height:0;margin:0 0 8px;font-size:17px}
.lm2 .way>p{font-size:14.5px}
.lm2 .way-c{margin-top:auto;background:var(--soft);border-radius:10px;padding:12px 14px;font-size:13.5px}
.lm2 .way::before{content:"";position:absolute;left:22px;right:22px;top:0;height:3px;
  border-radius:0 0 3px 3px}
.lm2 .way-a::before{background:linear-gradient(90deg,var(--green),transparent)}
.lm2 .way-b::before{background:linear-gradient(90deg,var(--orange),transparent)}
.lm2 .way-c3::before{background:linear-gradient(90deg,#3a5bc7,transparent)}
.lm2 .ways-foot{margin:24px 0 0}
/* The section ran to 1.26 screens. The lead repeated the first statistic
   underneath it, and the stage was a fixed 640px regardless of the window. */
.lm2 .stage{height:560px}
@media (max-height:860px){
.lm2 .stage{height:455px}
.lm2 .astats{margin-top:10px}
.lm2 .astats div{padding:9px 12px}
}
@media (max-width:980px){
.lm2 .stage{height:auto}
}
.lm2 .astats{margin-top:14px}
/* The glow behind the company card uses a negative inset, so at 1024 px it
   poked 3 px past the viewport and the whole page scrolled sideways. Clipped
   at the section; the glow is a soft radial and loses nothing visible. */
.lm2 .sec:has(.vet-proof){overflow:hidden}
/* ---- making this section fit one screen -------------------------------
   Desktop and laptop: the stage loses height and the figures tighten.
   Phone: a 4-step animation, a figure row and 4 controls cannot fit 844px
   without becoming unreadable, so the phone gets the four written steps
   that already exist in the markup for screen readers. Same information,
   one screen, and it reads better at 390px than a squashed animation.
   ----------------------------------------------------------------------- */
.lm2 .stage{height:465px}
@media (max-height:860px){
.lm2 .stage{height:350px}
.lm2 .astats{margin-top:8px}
.lm2 .astats div{padding:7px 11px}
.lm2 .astats b{font-size:18px}
.lm2 .astats span{font-size:11.5px}
.lm2 .controls{margin-top:10px}
.lm2 .cap-row{margin-top:8px}
}
.lm2 .astats{margin-top:12px}
.lm2 .astats div{padding:10px 12px}
.lm2 .astats b{font-size:20px}
.lm2 .cap-row{margin-top:10px}
.lm2 .controls{margin-top:14px}
@media (max-width:620px){
.lm2 .stage,.lm2 .controls,.lm2 .cap-row,.lm2 .rm-note{display:none}
.lm2 .sec .in > ol.sr{position:static;width:auto;height:auto;overflow:visible;clip:auto;
    white-space:normal;display:grid;gap:12px;margin:20px 0 0;padding-left:20px;
    max-width:none;font-size:15.5px;line-height:1.5;color:var(--body)}
.lm2 .sec .in > ol.sr li{list-style:decimal}
.lm2 .sec .in > ol.sr li::marker{color:var(--orange);font-weight:800}
.lm2 .astats{grid-template-columns:1fr;gap:8px;margin-top:18px}
.lm2 .astats div{padding:9px 12px}
.lm2 .astats b{font-size:17px}
.lm2 .astats span{font-size:11.5px}
}
/* The stage cannot be shorter than the offers panel inside it: the panel sets
   the grid row, the network follows at height:100% and spills past the clipped
   edge. So the rows shrink with it. */
.lm2 .row{height:38px}
.lm2 .offers{gap:4px}
.lm2 .offers-wrap{min-height:290px}
.lm2 .ap-foot{min-height:38px;margin-top:6px}
.lm2 .best-now{margin:8px 0 10px;padding:7px 12px}
.lm2 .bn-v{font-size:22px}
.lm2 .apanel{padding:14px 14px 10px}
@media (max-height:860px){
.lm2 .row{height:34px}
.lm2 .offers-wrap{min-height:258px}
.lm2 .bn-v{font-size:20px}
}
/* The panel must fit the stage's inner box (height - 84px of padding) or the
   network, which is height:100%, grows with it and spills past the clipped
   edge. Desktop inner box = 381px; the panel is tuned to land just under. */
.lm2 .row{height:32px;padding:0 10px}
.lm2 .offers{gap:3px}
.lm2 .offers-wrap{min-height:242px}
.lm2 .mono{width:24px;height:24px;font-size:10px}
.lm2 .nm{font-size:12.5px}
.lm2 .meta{font-size:10.5px}
.lm2 .price{font-size:14.5px}
.lm2 .ap-foot{min-height:30px;margin-top:5px}
.lm2 .best-now{margin:7px 0 8px;padding:6px 11px}
.lm2 .bn-v{font-size:20px}
.lm2 .apanel{padding:12px 13px 9px}
@media (max-height:860px){
.lm2 .row{height:29px}
.lm2 .offers-wrap{min-height:221px}
.lm2 .bn-v{font-size:18px}
.lm2 .apanel{padding:10px 12px 8px}
}
/* A fixed stage height can always be exceeded by the panel inside it, and the
   network then spills past the clipped edge. So the stage sizes to its content
   and the network carries a floor instead: nothing can clip, at any height. */
.lm2 .stage{height:auto}
.lm2 .anet{height:auto;min-height:380px}
@media (max-height:860px){
.lm2 .stage{height:auto}
.lm2 .anet{min-height:300px}
.lm2 .sec:has(.stage){padding:52px 0}
}
@media (max-width:980px){
.lm2 .anet{min-height:340px}
}
@media (max-height:860px){
.lm2 .anet{min-height:265px}
}
@media (max-width:980px){
.lm2 .anet{min-height:285px}
.lm2 .sec:has(.stage){padding:56px 0}
.lm2 .stage{padding:48px 16px 16px}
}
@media (max-width:1300px){
.lm2 .sec:has(.stage){padding:48px 0}
}
@media (max-width:1300px),(max-height:900px){
.lm2 .astats{margin-top:8px}
.lm2 .astats div{padding:6px 10px}
.lm2 .astats b{font-size:17px}
.lm2 .controls{margin-top:10px}
.lm2 .pill{min-height:44px;padding:6px 10px 8px;font-size:11.5px}
.lm2 .cap-row{margin-top:6px}
.lm2 .caption{font-size:15px}
}
/* The winning row's badge was absolutely positioned 9px above the row. That
   worked when rows were 46px apart; at 32px it lands on the row above and sits
   across the company name. The header already says MEILLEUR PRIX with the same
   price, so the row keeps the tick and the green fill and drops the badge. */
.lm2 .best{display:none}
.lm2 .check{top:50%;right:-9px;margin-top:-9px;width:18px;height:18px;box-shadow:0 0 0 2px #fff}
/* half outside the row, inside the panel's padding: clear of the price and
   clear of the row above */
/* the tick sits where the price is, so the price shifts clear of it */
.lm2 .row.win .price,.lm2 .row:has(.check[style*="opacity: 1"]) .price{padding-right:0}
.lm2 .offers{padding-top:2px}
/* the two footer lines were colliding with the last row at the tighter heights */
.lm2 .ap-foot{gap:3px;padding-top:2px}
.lm2 .no-reply{line-height:1.3}
.lm2 .saving{line-height:1.3}
/* The row stacked the name over the rating. That needs ~30px of text in a 32px
   row, so the second line sat on the row's own border and on the row below.
   One line instead: name truncates, rating keeps its width. */
.lm2 .who{flex-direction:row;align-items:baseline;gap:8px;overflow:hidden}
.lm2 .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.lm2 .meta{flex:none;white-space:nowrap}
.lm2 .row{align-items:center;overflow:hidden}
@media (max-width:520px){
.lm2 .who{flex-direction:column;align-items:flex-start;gap:0}
.lm2 .row{height:auto;min-height:40px;padding-top:5px;padding-bottom:5px}
}
/* The section showed two prices and left the reader to subtract. The gap is
   the whole argument, so it is drawn and named: a band running from the cheap
   bar's end to the dear one's, carrying the figure. The +132 % line goes - a
   percentage is not something anyone feels; 74 euros is. */
.lm2 .gap-row-d{margin-bottom:8px}
.lm2 .gap-bar-d{position:relative;height:32px;background:none;box-shadow:none;border-radius:0}
.lm2 .gap-bar-d::before{content:none}
.lm2 .gap-delta{position:absolute;left:var(--from);right:0;top:0;bottom:0;
  display:flex;align-items:center;justify-content:center;
  border:1.5px dashed rgba(184,99,14,.55);border-radius:7px;
  background:repeating-linear-gradient(135deg,rgba(255,147,38,.16) 0 7px,transparent 7px 14px)}
.lm2 .gap-delta b{font-size:13.5px;font-weight:800;color:var(--orange-d);letter-spacing:-.01em;
  white-space:nowrap;padding:0 6px}
.lm2 .gap-v-d{color:var(--orange-d);font-size:17px}
.lm2 .gap-wide{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
@media (max-width:620px){
.lm2 .gap-delta b{font-size:11.5px}
.lm2 .gap-bar-d{height:28px}
}
/* the coverage list and the closing line carry internal links now: they keep
   the surrounding colour and show only an underline */
.lm2 .map-foot a,.lm2 .ways a,.lm2 .drv a{color:inherit;text-decoration:underline;text-underline-offset:3px;
  text-decoration-color:rgba(39,55,71,.35)}
.lm2 .night .drv a{text-decoration-color:rgba(255,255,255,.4)}
.lm2 .map-foot a:hover,.lm2 .ways a:hover,.lm2 .drv a:hover{text-decoration-color:var(--orange)}
/* links inside the answers keep the body colour and carry only an underline */
.lm2 .acc-p a{color:var(--navy);text-decoration:underline;text-underline-offset:3px;
  text-decoration-color:rgba(39,55,71,.35)}
.lm2 .acc-p a:hover{text-decoration-color:var(--orange)}
.lm2 .acc-p .fn a{text-decoration:none}
@media (min-width:760px) and (max-width:1199px){
.lm2 .ba{grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.lm2 .ba-col{padding:20px}
.lm2 .ba-col:nth-child(3){grid-column:1 / -1}
}
@media (pointer:coarse){
.lm2 .mini-pp{min-height:44px}
.lm2 .scen button{min-height:44px}
}
/* The three rating cards, one shape (approved 18/10/2026).
   Tripadvisor's rules force a horizontal row: their logo LEFT of their bubble image,
   same line, white background, logo >=20px, bubbles >=55px wide. Rather than leave one
   card unlike the other two, Google and Trustpilot take the same row: logo, score, count.
   Tripadvisor is the only one that may not show a number, so it shows their bubbles.
   Selectors are .tp-row li... so they outrank the .tp-row li grid rules above. */
.lm2 .tp-row{grid-template-columns:repeat(3,minmax(0,1fr))}
.lm2 .tp-row li{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;
  justify-content:flex-start;gap:8px 12px;grid-template-areas:none;padding:18px 20px}
.lm2 .tp-row li .tp-brand{grid-area:auto;display:flex;align-items:center;gap:8px;
  height:auto;min-height:0;align-self:center;flex:none}
.lm2 .tp-row li .tp-score{grid-area:auto;font-size:26px;align-self:center}
.lm2 .tp-row li .tp-count{grid-area:auto;align-self:center;white-space:nowrap}
.lm2 .tp-row li .tp-logo{height:24px;max-width:132px}
.lm2 .tp-row li.tp-dark .tp-logo{height:19px}
/* Tripadvisor only */
/* Their rules: their logo left of their bubble image, logo >=20px high,
   bubbles >=55px wide, both with fixed dimensions so nothing shifts on load. */
.lm2 .tp-row li.tp-ta .tp-logo{height:26px;width:auto;max-width:none}
.lm2 .tp-row li.tp-ta .tp-bub{display:inline-flex;align-items:center;align-self:center}
.lm2 .tp-row li.tp-ta .tp-bub img{display:block;height:22px;width:121px}
@media (max-width:1199px){
.lm2 .tp-row{grid-template-columns:1fr 1fr}
.lm2 .tp-row li.tp-ta{grid-column:1 / -1}
}
@media (max-width:760px){
.lm2 .tp-row{grid-template-columns:1fr}
.lm2 .tp-row li.tp-ta{grid-column:auto}
.lm2 .tp-row li{padding:14px 16px}
.lm2 .tp-row li.tp-ta .tp-logo{height:22px}
.lm2 .tp-row li.tp-ta .tp-bub img{width:99px;height:18px}
}
/* ================================================================
   V12 - mobile is its own edit, 18/10/2026.
   Seven sections carry the decision on a phone. The six that are
   reference material fold into one block under the questions.
   Nothing here applies above 760px: the desktop page is untouched.
   ================================================================ */
.lm2 .mdetail{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.lm2 .mdetail > summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;
  padding:20px 18px;min-height:44px}
.lm2 .mdetail > summary::-webkit-details-marker{display:none}
.lm2 .mdetail > summary b{font-family:var(--f-display,inherit);font-size:19px;color:var(--navy);flex:none}
.lm2 .mdetail > summary span{font-size:13px;color:var(--muted);line-height:1.3}
.lm2 .mdetail > summary::after{content:"";margin-left:auto;flex:none;width:11px;height:11px;
  border-right:2px solid var(--navy);border-bottom:2px solid var(--navy);
  transform:rotate(45deg);transition:transform .2s ease}
.lm2 .mdetail[open] > summary::after{transform:rotate(-135deg)}
.lm2 .mdetail .sec{padding-top:40px;padding-bottom:40px}
@media (max-width:760px){
/* --- trims kept from the V11 pass, on the seven sections that stay --- */
  .lm2 .sec{padding:48px 0}
.lm2 .sec h2{font-size:25px;line-height:1.14}
/* the reviews swipe - browsing three opinions is what a carousel is for */
  .lm2 .rv-grid{display:grid;grid-auto-flow:column;grid-auto-columns:84%;grid-template-columns:none;
    gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;margin-inline:-18px;padding-inline:18px;
    scroll-padding-inline:18px;padding-bottom:14px}
.lm2 .rv-grid > *{scroll-snap-align:start;min-width:0}
.lm2 .rv-grid::-webkit-scrollbar{height:0;width:0}
/* the three use cases swipe too */
  .lm2 .trips{display:grid;grid-auto-flow:column;grid-auto-columns:84%;grid-template-columns:none;
    gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;
    margin-inline:-18px;padding-inline:18px;scroll-padding-inline:18px;padding-bottom:14px}
.lm2 .trips > *{scroll-snap-align:start;min-width:0}
.lm2 .trips::-webkit-scrollbar{height:0;width:0}
/* the three platform scores stay stacked: all three are the proof */
  .lm2 .eng-cards{grid-template-columns:1fr 1fr;gap:10px}
.lm2 .eng-cards > *{padding:10px 12px}
.lm2 .eng-cards h3,.lm2 .eng-cards b,.lm2 .eng-cards strong{font-size:14px}
.lm2 .eng-cards p{font-size:13px;line-height:1.35;margin:4px 0 0}
.lm2 .eng-head{display:flex;flex-direction:row;align-items:center;gap:14px}
.lm2 .eng-head .seal{flex:none;width:72px;height:72px}
.lm2 .eng-head h2{margin:0;font-size:23px}
.lm2 .eng-pen{padding:12px 14px}
.lm2 .own{display:flex;flex-direction:row;align-items:center;gap:14px;flex-wrap:nowrap;padding:12px 14px}
.lm2 .own-fig{flex:none}
.lm2 .own-txt{font-size:13px;line-height:1.35}
.lm2 .gap{padding:18px 16px}
/* inside the folded block the map still earns nothing on a phone */
  .lm2 #mapcard .map{display:none}
.lm2 #mapcard{padding:0;border:0;background:none;box-shadow:none}
}
/* The example company in the animations is fictitious: it shows initials,
   never a drawn logo. */
.lm2 .oc-av.logo-cc{background:none;padding:0;overflow:hidden;border-radius:13px;box-shadow:0 6px 14px -6px rgba(11,63,71,.55)}
.lm2 .oc-av.logo-cc svg{display:block;width:100%;height:100%}
.lm2 .logo-cc2{background:none!important;color:inherit;padding:0;overflow:hidden;position:relative}
.lm2 .lc-m.logo-cc2{border-radius:12px}
.lm2 .pm.logo-cc2{border-radius:10px}
.lm2 .logo-cc2>svg{display:block;width:100%;height:100%}
/* rating_stars draws five stars on a 5em sprite: 17.6px gives the mockup's 88px row */
.lm2 .rv .stars > span{font-size:17.6px!important;margin:0!important}
.lm2 .eng-cgv a{text-decoration:underline;text-underline-offset:3px}
/* The seven offer rows are in the markup; the animation brings each one in. */
.lm2 .offers .row:not(.shown){display:none}
/* On a phone the recommendation badge goes on its own line instead of over the heading. */
@media (max-width:760px){
.lm2 .card.win .cmp-tag{position:static;display:inline-block;margin:0 0 6px}
}
