/* BridgeRent 3.0 · design system "La linea che sale" · v1 (20/09/2026)
   Colori canonici: navy #17274A · teal #2A9D8F (marchio, accenti grandi) · mid #1F5E66 · teal-chiaro su navy #45C4B0 · teal-testo/bottoni su chiaro #1E7168 · mist #E4E9F0 · linea #C9D2DE
   Neutri 3.0: ground-2 #F8FAFB (bianco ottico) · ink-2 #4B5A73 */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/fonts/fraunces-var-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:100 900;font-display:swap;src:url('/assets/fonts/fraunces-italic-var-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/fonts/inter-var-latin.woff2') format('woff2')}
:root{
  --navy:#17274A; --teal:#2A9D8F; --mid:#1F5E66; --teal-hi:#45C4B0; --teal-ink:#1E7168;
  --mist:#E4E9F0; --line:#C9D2DE; --ink:#17274A; --ink-2:#4B5A73;
  --ground:#FFFFFF; --ground-2:#F8FAFB; --teal-tint:color-mix(in srgb,var(--teal) 14%,#fff);
  --radius:22px; --radius-s:12px; --pill:999px;
  --shadow:0 18px 50px -24px rgba(23,39,74,.35);
  --font-d:'Fraunces',Georgia,'Times New Roman',serif;
  --font-b:'Inter',system-ui,-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
  --fs-hero:clamp(2.75rem,6.6vw,5.4rem);
  --fs-h2:clamp(2rem,4.2vw,3.3rem);
  --fs-h3:1.375rem;
  --max:1200px; --gutter:clamp(16px,4vw,40px);
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ground);color:var(--ink);font:400 1.0625rem/1.6 var(--font-b);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--teal-ink);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{margin:0;font-family:var(--font-d);font-weight:500;line-height:1.02;letter-spacing:-.02em;text-wrap:balance;font-variation-settings:"opsz" 144,"SOFT" 40,"WONK" 0}
h3,h4{font-variation-settings:"opsz" 48,"SOFT" 30}
p{margin:0;text-wrap:pretty}
button{font:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--teal-hi);outline-offset:3px;border-radius:6px}
.acc{font-style:italic;font-variation-settings:"opsz" 144,"SOFT" 100,"WONK" 1;color:var(--teal-ink)}
.on-dark .acc{color:var(--teal-hi)}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.eyebrow{font:600 .75rem/1 var(--font-b);letter-spacing:.14em;text-transform:uppercase;color:var(--teal-ink);display:inline-flex;align-items:center;gap:.6em}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--teal)}
.on-dark .eyebrow{color:var(--teal-hi)}
.lead{font-size:1.2rem;line-height:1.55;color:var(--ink-2);max-width:60ch}
.on-dark .lead{color:var(--mist)}
.muted{color:var(--ink-2)}
.on-dark .muted{color:color-mix(in srgb,var(--mist) 78%,transparent)}
.num{font-family:var(--font-d);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-variation-settings:"opsz" 144,"SOFT" 20}
.small{font-size:.875rem}
.tiny{font-size:.78rem}
section{padding-block:clamp(64px,9vw,120px)}
.on-dark{background:var(--navy);color:#fff}
.ground-2{background:var(--ground-2)}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.55em;padding:.95em 1.5em;border-radius:var(--pill);font-weight:600;font-size:1rem;line-height:1;border:2px solid transparent;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .2s;text-decoration:none!important;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-primary{background:var(--teal-ink);color:#fff;box-shadow:0 10px 24px -10px rgba(30,113,104,.6)}
.btn-primary:hover{background:var(--mid)}
.on-dark .btn-primary{background:var(--teal-hi);color:var(--navy)}
.on-dark .btn-primary:hover{background:#fff}
.btn-ghost{background:transparent;color:var(--navy);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--navy)}
.on-dark .btn-ghost{color:#fff;border-color:rgba(255,255,255,.35)}
.on-dark .btn-ghost:hover{border-color:#fff}
.btn .arr{transition:transform .25s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.btn-wa{background:#fff;color:var(--navy);border-color:var(--line)}

/* header */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
.hdr.scrolled{border-bottom-color:var(--mist)}
.hdr .wrap{display:flex;align-items:center;gap:28px;min-height:76px}
.brand{display:flex;align-items:center;gap:10px;color:var(--navy);text-decoration:none!important}
.brand svg{width:44px;height:auto}
.wordmark{font:800 1.05rem/1 var(--font-b);letter-spacing:.16em}
.wordmark b{color:var(--teal);font-weight:800}
.nav{display:flex;gap:6px;margin-left:auto}
.nav a{white-space:nowrap;padding:.6em .9em;border-radius:var(--pill);color:var(--navy);font-weight:500;font-size:.95rem;transition:background .2s}
.nav a:hover,.nav a[aria-current="page"]{background:var(--ground-2);text-decoration:none}
.hdr-cta{display:flex;align-items:center;gap:14px}
.hdr-cta .tel{white-space:nowrap;font-weight:600;color:var(--navy);font-variant-numeric:tabular-nums}
.burger{display:none;width:44px;height:44px;border:0;background:transparent;border-radius:12px;position:relative}
.burger span,.burger span::before,.burger span::after{content:"";position:absolute;left:12px;width:20px;height:2px;background:var(--navy);border-radius:2px;transition:.25s}
.burger span{top:21px}.burger span::before{top:-6px;left:0}.burger span::after{top:6px;left:0}
@media (max-width:980px){
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;background:#fff;padding:12px var(--gutter) 20px;border-bottom:1px solid var(--mist);box-shadow:var(--shadow)}
  .nav.open{display:flex}
  .hdr-cta .tel{display:none}
  .burger{display:block}
}
@media (max-width:640px){.hdr-cta .btn{display:none}}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px)}
@media (max-width:860px){.two{grid-template-columns:1fr}}
.on-dark .kpi .lab{color:var(--mist)}

/* hero */
.hero{position:relative;overflow:clip;padding-block:clamp(40px,6vw,84px) clamp(56px,8vw,110px)}
.hero .wrap{display:grid;grid-template-columns:1.15fr .95fr;gap:clamp(28px,5vw,72px);align-items:center}
.hero h1{font-size:var(--fs-hero);margin-block:18px 20px}
.hero .lead{font-size:1.25rem}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hero-note{margin-top:16px;font-size:.85rem;color:var(--ink-2);display:flex;gap:.9em;flex-wrap:wrap}
.hero-note span::before{content:"✓";color:var(--teal);font-weight:700;margin-right:.35em}
.blob{position:absolute;inset:auto;width:min(60vw,640px);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,var(--teal-tint),transparent 70%);pointer-events:none;z-index:0}
.blob-a{top:-30%;right:-12%}.blob-b{bottom:-40%;left:-20%;opacity:.7}
.hero>.wrap{position:relative;z-index:1}

/* strategy express card */
.express{background:var(--navy);color:#fff;border-radius:var(--radius);padding:clamp(22px,3vw,34px);box-shadow:var(--shadow);position:relative;overflow:hidden}
.express::after{content:"";position:absolute;width:320px;height:320px;right:-140px;top:-140px;border-radius:50%;background:radial-gradient(closest-side,rgba(69,196,176,.35),transparent 70%)}
.express>*{position:relative;z-index:1}
.express .eyebrow{color:var(--teal-hi)}
.express h2{font-size:1.75rem;margin-block:12px 6px;font-variation-settings:"opsz" 72,"SOFT" 60}
.express .step{display:none}
.express .step.active{display:block;animation:fade .4s var(--ease)}
@keyframes fade{from{opacity:.001;transform:translateY(8px)}to{opacity:1;transform:none}}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.chip{border:1.5px solid rgba(255,255,255,.28);background:rgba(255,255,255,.04);color:#fff;border-radius:var(--pill);padding:.7em 1.1em;font-weight:500;font-size:.95rem;transition:.2s var(--ease)}
.chip:hover{background:rgba(69,196,176,.18);border-color:var(--teal-hi);transform:translateY(-1px)}
.chip[aria-pressed="true"]{background:var(--teal-hi);color:var(--navy);border-color:var(--teal-hi)}
.progress{display:flex;gap:6px;margin-top:22px}
.progress i{height:4px;flex:1;border-radius:4px;background:rgba(255,255,255,.18)}
.progress i.on{background:var(--teal-hi)}
.verdict{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:16px 18px;margin-top:16px;font-size:1rem;line-height:1.5}
.verdict strong{color:var(--teal-hi);display:block;margin-bottom:4px;font-family:var(--font-d);font-weight:500;font-size:1.2rem}
.express .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;align-items:center}
.linkish{background:none;border:0;color:var(--mist);text-decoration:underline;padding:.5em .2em;font-size:.9rem}
.express .fine{margin-top:14px;font-size:.78rem;color:color-mix(in srgb,var(--mist) 70%,transparent)}

/* hero symbol */
.hero-sym{margin-bottom:6px}
.hero-sym svg{width:min(100%,300px);height:auto;display:block}
.sym-path{fill:none;stroke-width:13;stroke-linecap:round;stroke-linejoin:round}
.sym-ground{stroke:var(--line);stroke-width:4;stroke-linecap:round}
.sym-dot{fill:var(--teal);transform-origin:291px 49px}
.drawn .sym-path{animation:draw 1.7s var(--ease) forwards}
.drawn .sym-dot{animation:pop .5s 1.5s var(--ease) both}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes pop{from{transform:scale(0)}60%{transform:scale(1.35)}to{transform:scale(1)}}

/* ticker */
.ticker{border-block:1px solid var(--mist);background:#fff;overflow:hidden;padding-block:16px}
.ticker-track{display:flex;gap:0;width:max-content;animation:tick 42s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker-item{display:inline-flex;align-items:center;gap:14px;padding-inline:22px;white-space:nowrap;font-weight:500;color:var(--navy)}
.ticker-item b{font-family:var(--font-d);font-weight:500;font-size:1.25rem;letter-spacing:-.02em}
.ticker-item::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--teal);margin-left:22px}
@keyframes tick{to{transform:translateX(-50%)}}

/* section headers */
.sec-head{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:end;margin-bottom:clamp(28px,4vw,52px)}
.sec-head h2{font-size:var(--fs-h2);margin-top:14px;max-width:18ch}
.sec-head .lead{margin-top:14px}
@media (max-width:760px){.sec-head{grid-template-columns:1fr}}

/* method / la linea */
.method{position:relative}
.line-stage{position:relative;margin-top:10px}
.line-stage svg{width:100%;height:auto;display:block}
.line-stage .lp{fill:none;stroke:url(#gradLine);stroke-width:8;stroke-linecap:round;stroke-linejoin:round}
.line-stage .lg{fill:none;stroke:var(--line);stroke-width:3;stroke-dasharray:2 10;stroke-linecap:round}
.line-stage .ld{fill:var(--teal)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.5vw,32px);margin-top:-8px}
.step-card{padding:26px 26px 28px;border-radius:var(--radius);background:#fff;border:1px solid var(--mist);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.step-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.step-card .k{font:700 .75rem/1 var(--font-b);letter-spacing:.14em;text-transform:uppercase;color:var(--teal-ink);display:flex;align-items:center;gap:10px}
.step-card .k i{width:34px;height:34px;border-radius:50%;background:var(--teal-tint);display:inline-grid;place-items:center;color:var(--teal-ink);font-style:normal;font-size:.9rem;font-weight:800}
.step-card h3{margin-top:18px;font-size:1.5rem}
.step-card p{margin-top:10px;color:var(--ink-2)}
@media (max-width:760px){.steps{grid-template-columns:1fr}.line-stage{display:none}}

/* case */
.case{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);align-items:center}
.case-media{position:relative}
.case-media img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%}
.sticker{position:absolute;padding:14px 18px;border-radius:16px;background:#fff;box-shadow:var(--shadow);font-weight:600;line-height:1.15;transform:rotate(-4deg);border:1px solid var(--mist)}
.sticker .num{font-size:1.6rem;display:block;color:var(--navy)}
.sticker small{color:var(--ink-2);font-weight:500}
.sticker-a{left:-18px;top:28px}.sticker-b{right:-14px;bottom:36px;transform:rotate(3deg);background:var(--navy);color:#fff;border:0}
.sticker-b .num{color:var(--teal-hi)}.sticker-b small{color:var(--mist)}
.case-body h2{font-size:var(--fs-h2);margin-top:14px}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.kpi{border-top:2px solid var(--navy);padding-top:14px}
.kpi .num{font-size:clamp(1.9rem,3.4vw,2.6rem);display:block;line-height:1}
.kpi .lab{display:block;margin-top:8px;font-size:.85rem;color:var(--ink-2);line-height:1.35}
.on-dark .kpi{border-top-color:rgba(255,255,255,.3)}
.on-dark .kpi .num{color:#fff}
.disclaimer{margin-top:22px;padding:14px 16px;border-radius:12px;background:var(--ground-2);font-size:.85rem;color:var(--ink-2);border-left:3px solid var(--teal)}
.on-dark .disclaimer{background:rgba(255,255,255,.06);color:var(--mist);border-left-color:var(--teal-hi)}
@media (max-width:860px){.case{grid-template-columns:1fr}.sticker-a{left:8px}.sticker-b{right:8px}.kpis{grid-template-columns:1fr 1fr}}

/* pricing */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.price{border-radius:var(--radius);padding:30px 28px;background:#fff;border:1px solid var(--mist);position:relative;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.price:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.price .big{font-size:clamp(3rem,6vw,4.6rem);line-height:1;color:var(--navy);display:block}
.price .big sup{font-size:.4em;vertical-align:top;top:.35em;position:relative;color:var(--teal-ink)}
.price h3{margin-top:14px;font-size:1.25rem}
.price p{margin-top:10px;color:var(--ink-2);font-size:.95rem}
.price.hi{background:var(--navy);color:#fff;border:0}
.price.hi .big,.price.hi h3{color:#fff}.price.hi .big sup{color:var(--teal-hi)}.price.hi p{color:var(--mist)}
.price .tag{position:absolute;right:18px;top:18px;font:700 .68rem/1 var(--font-b);letter-spacing:.12em;text-transform:uppercase;background:var(--teal-tint);color:var(--teal-ink);padding:.55em .8em;border-radius:var(--pill)}
.price.hi .tag{background:var(--teal-hi);color:var(--navy)}
@media (max-width:860px){.price-grid{grid-template-columns:1fr}}

/* situations */
.sit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sit{display:flex;flex-direction:column;padding:26px 24px 24px;border-radius:var(--radius);background:var(--ground-2);color:var(--navy);text-decoration:none!important;transition:.35s var(--ease);position:relative}
.sit:hover{background:var(--navy);color:#fff;transform:translateY(-6px)}
.sit h3{font-size:1.4rem}
.sit p{margin-top:10px;font-size:.95rem;color:var(--ink-2)}
.sit:hover p{color:var(--mist)}
.sit .go{margin-top:auto;padding-top:22px;font-weight:600;color:var(--teal-ink)}
.sit:hover .go{color:var(--teal-hi)}
.sit .ic{width:44px;height:44px;border-radius:14px;background:#fff;display:grid;place-items:center;margin-bottom:18px;color:var(--teal-ink)}
.sit:hover .ic{background:rgba(255,255,255,.1);color:var(--teal-hi)}
@media (max-width:980px){.sit-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.sit-grid{grid-template-columns:1fr}}

/* commercial teaser */
.teaser{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);align-items:center;border-radius:calc(var(--radius) + 8px);overflow:hidden;background:var(--navy);color:#fff}
.teaser img{width:100%;height:100%;object-fit:cover;aspect-ratio:1}
.teaser .body{padding:clamp(24px,5vw,64px)}
.teaser h2{font-size:var(--fs-h2);margin-top:14px}
.teaser .lead{margin-top:14px}
.teaser .kpis{margin-top:24px}
@media (max-width:860px){.teaser{grid-template-columns:1fr}.teaser img{aspect-ratio:16/10}}

/* who */
.who{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,5vw,64px);align-items:center}
.who img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%}
.who h2{font-size:var(--fs-h2);margin-top:14px}
.who ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px;grid-template-columns:1fr 1fr}
.who li{padding:12px 14px;border-radius:12px;background:var(--ground-2);font-size:.9rem;font-weight:500}
@media (max-width:860px){.who{grid-template-columns:1fr}.who ul{grid-template-columns:1fr}}

/* territory */
.terr{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);align-items:center}
.ring{position:relative;aspect-ratio:1;max-width:460px;margin-inline:auto;width:100%}
.ring svg{width:100%;height:auto}
.ring .lbl{font:600 .72rem/1 var(--font-b);letter-spacing:.06em;fill:var(--navy)}
.ring .lbl.t{fill:var(--teal-ink)}
.terr-list{display:grid;gap:14px;margin-top:24px}
.terr-list div{padding:14px 0;border-top:1px solid var(--mist)}
.terr-list b{display:block;font-family:var(--font-d);font-weight:500;font-size:1.15rem;margin-bottom:4px}
.terr-list span{color:var(--ink-2);font-size:.95rem}
@media (max-width:860px){.terr{grid-template-columns:1fr}}

/* faq */
.faq{max-width:820px}
.faq details{border-top:1px solid var(--mist);padding:6px 0}
.faq details:last-child{border-bottom:1px solid var(--mist)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;font-family:var(--font-d);font-size:1.25rem;font-weight:500}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";width:34px;height:34px;border-radius:50%;background:var(--ground-2);display:grid;place-items:center;flex:none;font-family:var(--font-b);color:var(--teal-ink);transition:.3s}
.faq details[open] summary::after{transform:rotate(45deg);background:var(--navy);color:#fff}
.faq .a{padding:0 0 22px;color:var(--ink-2);max-width:65ch}

/* final cta */
.final{background:var(--navy);color:#fff;border-radius:calc(var(--radius) + 8px);padding:clamp(36px,6vw,80px);text-align:center;position:relative;overflow:hidden}
.final::before{content:"";position:absolute;inset:-40% -20% auto;height:120%;background:radial-gradient(closest-side at 50% 40%,rgba(69,196,176,.28),transparent 70%)}
.final>*{position:relative}
.final h2{font-size:var(--fs-h2);max-width:20ch;margin-inline:auto}
.final .lead{margin:16px auto 0}
.final .hero-cta{justify-content:center}

/* footer */
.ftr{padding-block:56px 40px;border-top:1px solid var(--mist);font-size:.9rem;color:var(--ink-2)}
.ftr .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px}
.ftr h4{font:700 .72rem/1 var(--font-b);letter-spacing:.14em;text-transform:uppercase;color:var(--navy);margin-bottom:14px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ftr a{color:var(--ink-2)}.ftr a:hover{color:var(--navy)}
.ftr .legal{margin-top:36px;padding-top:20px;border-top:1px solid var(--mist);font-size:.78rem;display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}
@media (max-width:860px){.ftr .cols{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ftr .cols{grid-template-columns:1fr}}

/* sticky mobile bar */
.mbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--mist);padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom,0px));gap:10px}
.mbar .btn{flex:1;justify-content:center;padding-inline:1em}
@media (max-width:760px){.mbar{display:flex}body{padding-bottom:76px}}

/* reveal */
.rv{transition:opacity .7s var(--ease),transform .7s var(--ease)}
.rv.pre{opacity:.001;transform:translateY(22px)}
.rv.in{opacity:1;transform:none}


/* subpage hero */
.sub-hero{padding-block:clamp(40px,6vw,80px) clamp(40px,5vw,64px)}
.sub-hero .crumb{font-size:.85rem;color:var(--ink-2);margin-bottom:22px}
.sub-hero .crumb a{color:var(--ink-2)}
.sub-hero h1{font-size:clamp(2.4rem,5.6vw,4.6rem);margin-block:16px 18px}
.sub-hero .grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,5vw,64px);align-items:center}
.sub-hero img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%}
@media (max-width:860px){.sub-hero .grid{grid-template-columns:1fr}}

/* proof strip */
.proof{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:18px;border-radius:var(--radius);background:var(--navy);color:#fff;padding:clamp(22px,3vw,34px);align-items:center}
.proof .t{font-family:var(--font-d);font-size:1.35rem;line-height:1.15}
.proof .t small{display:block;font-family:var(--font-b);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-hi);margin-bottom:8px}
.proof .k .num{font-size:2.4rem;color:#fff;display:block;line-height:1}
.proof .k span{font-size:.82rem;color:var(--mist);display:block;margin-top:6px}
@media (max-width:860px){.proof{grid-template-columns:1fr 1fr}.proof .t{grid-column:1/-1}}

/* feature grid */
.feat{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.feat article{padding:28px;border-radius:var(--radius);border:1px solid var(--mist);background:#fff;transition:.35s var(--ease)}
.feat article:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.feat h3{font-size:1.4rem;margin-top:14px}
.feat p{margin-top:10px;color:var(--ink-2)}
.feat .ic{width:44px;height:44px;border-radius:14px;background:var(--teal-tint);display:grid;place-items:center;color:var(--teal-ink)}
@media (max-width:760px){.feat{grid-template-columns:1fr}}

/* honest list */
.honest{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.honest div{padding:28px;border-radius:var(--radius)}
.honest .yes{background:var(--teal-tint)}
.honest .no{background:var(--ground-2)}
.honest h3{font-size:1.3rem}
.honest ul{margin:16px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.honest li{padding-left:28px;position:relative;color:var(--ink-2)}
.honest .yes li::before{content:"✓";position:absolute;left:0;color:var(--teal-ink);font-weight:800}
.honest .no li::before{content:"—";position:absolute;left:0;color:var(--navy);font-weight:800}
@media (max-width:760px){.honest{grid-template-columns:1fr}}

/* timeline */
.tl{position:relative;padding-left:34px;display:grid;gap:26px}
.tl::before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:2px;background:var(--line)}
.tl li{list-style:none;position:relative}
.tl li::before{content:"";position:absolute;left:-31px;top:6px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--navy)}
.tl li.now::before{background:var(--teal);border-color:var(--teal);box-shadow:0 0 0 6px rgba(42,157,143,.18)}
.tl b{font-family:var(--font-d);font-weight:500;font-size:1.2rem;display:block}
.tl span{color:var(--ink-2)}
.tl .when{font:700 .72rem/1 var(--font-b);letter-spacing:.12em;text-transform:uppercase;color:var(--teal-ink);display:block;margin-bottom:6px}

/* results */
.res{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.res div{border-radius:var(--radius);padding:26px 22px;background:#fff;border:1px solid var(--mist)}
.res .num{font-size:clamp(2.4rem,4.5vw,3.4rem);display:block;line-height:1;color:var(--navy)}
.res span{display:block;margin-top:10px;color:var(--ink-2);font-size:.9rem}
@media (max-width:860px){.res{grid-template-columns:1fr 1fr}}

/* listino */
.rates{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rate{border-radius:var(--radius);padding:30px 26px;background:#fff;border:1px solid var(--mist);position:relative}
.rate.hi{background:var(--navy);color:#fff;border:0}
.rate .num{font-size:clamp(2.6rem,5vw,3.8rem);display:block;line-height:1}
.rate.hi .num{color:#fff}
.rate .per{color:var(--ink-2);font-size:.9rem}.rate.hi .per{color:var(--mist)}
.rate h3{margin-top:16px;font-size:1.3rem}
.rate p{margin-top:8px;font-size:.95rem;color:var(--ink-2)}.rate.hi p{color:var(--mist)}
@media (max-width:860px){.rates{grid-template-columns:1fr}}

/* facts table */
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:0 32px;margin-top:22px}
.facts div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--mist);font-size:.95rem}
.facts div span:first-child{color:var(--ink-2)}
.facts div span:last-child{font-weight:600;text-align:right}
@media (max-width:560px){.facts{grid-template-columns:1fr}}


@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .rv.pre{opacity:1;transform:none}
  .ticker-track{flex-wrap:wrap;width:auto}
  .sym-path{stroke-dashoffset:0!important}
}

/* late overrides (must follow the base rules) */
.terr h2{font-size:var(--fs-h2)}
@media (max-width:900px){
  .hero .wrap{grid-template-columns:1fr}
  .hero-sym svg{width:190px}
  .hero{padding-top:28px}
}

/* ===== produzione 3.0: blocchi aggiuntivi ===== */
.skip{position:absolute;left:-9999px;top:0;background:var(--navy);color:#fff;padding:10px 14px;border-radius:0 0 10px 0;z-index:100}.skip:focus{left:0}
.summary{background:#fff;border:1px solid var(--mist);border-left:4px solid var(--teal);border-radius:16px;padding:22px 24px;margin-top:26px;max-width:820px}
.summary p{font-weight:600;color:var(--navy)}.summary ul{margin:10px 0 0;padding-left:20px;color:var(--ink-2)}.summary li{margin-top:6px}
.on-dark .summary{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);border-left-color:var(--teal-hi)}.on-dark .summary p{color:#fff}.on-dark .summary ul{color:var(--mist)}
/* strade */
.roads{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:clamp(28px,4vw,52px)}
.road{padding:22px 22px 24px;border-radius:var(--radius);border:1px solid var(--mist);background:#fff;display:flex;flex-direction:column;gap:10px;color:var(--navy);text-decoration:none!important;transition:.35s var(--ease)}
.road:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.road .k{font:700 .72rem/1 var(--font-b);letter-spacing:.14em;text-transform:uppercase;color:var(--teal-ink)}
.road h3{font-size:1.3rem}.road p{color:var(--ink-2);font-size:.95rem}.road .go{margin-top:auto;padding-top:8px;font-weight:600;color:var(--teal-ink)}
.road.hi{background:var(--navy);color:#fff;border:0}.road.hi .k,.road.hi .go{color:var(--teal-hi)}.road.hi p{color:var(--mist)}
@media (max-width:980px){.roads{grid-template-columns:1fr 1fr}}@media (max-width:560px){.roads{grid-template-columns:1fr}}
/* formule */
.tbl-wrap{overflow-x:auto;margin-top:clamp(24px,3vw,40px);border-radius:var(--radius);border:1px solid var(--mist);background:#fff}
table.formule{width:100%;border-collapse:collapse;min-width:720px;font-size:.95rem}
.formule th,.formule td{padding:16px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--mist)}
.formule thead th{font-family:var(--font-d);font-weight:500;font-size:1.25rem;color:var(--navy);background:var(--ground-2)}
.formule tbody th{font:600 .8rem/1.3 var(--font-b);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);width:170px}
.formule td{color:var(--ink-2)}.formule tr:last-child td,.formule tr:last-child th{border-bottom:0}
.formule td b{color:var(--navy)}
/* immobili live */
.listings{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.listing{display:block;border-radius:var(--radius);overflow:hidden;background:#fff;border:1px solid var(--mist);color:var(--navy);text-decoration:none!important;transition:.35s var(--ease)}
.listing:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.listing img{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--ground-2)}
.listing .b{padding:16px 18px 18px}.listing .c{font:600 .72rem/1 var(--font-b);letter-spacing:.12em;text-transform:uppercase;color:var(--teal-ink)}
.listing h3{font-size:1.1rem;margin-top:8px;font-variation-settings:"opsz" 32,"SOFT" 30;line-height:1.2}.listing .p{font-family:var(--font-d);font-size:1.4rem;margin-top:8px;font-variation-settings:"opsz" 48}.listing .n{color:var(--ink-2);font-size:.85rem;margin-top:2px}
@media (max-width:860px){.listings{grid-template-columns:1fr 1fr}}@media (max-width:560px){.listings{grid-template-columns:1fr}}
.buyers{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);align-items:start}
@media (max-width:860px){.buyers{grid-template-columns:1fr}}
/* mobile menu groups */
.nav .grp{display:contents}
@media (max-width:980px){
  .nav{max-height:calc(100vh - 90px);overflow:auto;gap:4px}
  .nav .grp{display:block;padding:8px 0;border-top:1px solid var(--mist)}
  .nav .grp:first-child{border-top:0}
  .nav .grp>a{font-family:var(--font-d);font-size:1.35rem;padding:.4em 0;display:block}
  .nav .grp .sub{display:grid;gap:2px;padding:0 0 6px}
  .nav .grp .sub a{font-size:.95rem;color:var(--ink-2);padding:.55em 0;border-radius:0}
  .nav .grp .sub a:hover{background:transparent;color:var(--navy)}
}
@media (min-width:981px){.nav .grp .sub{display:none}}
/* cookie */
.ck{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:80;max-width:560px;margin:0 auto;background:#fff;border:1px solid var(--mist);border-radius:16px;padding:18px 20px;box-shadow:0 20px 60px rgba(23,39,74,.2);font-size:.9rem;line-height:1.5}
.ck .row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.ck .btn{flex:1;justify-content:center;font-size:.92rem;padding:.8em 1em}
@media (max-width:760px){.ck{bottom:calc(84px + env(safe-area-inset-bottom,0px))}}
/* line-stage safety before JS */
.no-js .rv.pre{opacity:1;transform:none}
/* territory h2 */
.terr h2{font-size:var(--fs-h2)}
/* small print */
.legal-note{font-size:.8rem;color:var(--ink-2);margin-top:14px}

[hidden]{display:none!important}

/* ===== v2: bianco ottico, CTA strip, social ===== */
.ground-2{border-top:1px solid var(--mist);border-bottom:1px solid var(--mist)}
.ground-2 + .ground-2{border-top:0}
.cta-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:clamp(28px,4vw,48px);padding:22px 26px;border-radius:var(--radius);background:#fff;border:1px solid var(--mist);box-shadow:var(--shadow)}
.cta-strip h3{font-size:1.35rem}.cta-strip p{color:var(--ink-2);margin-top:4px;font-size:.95rem}
.cta-strip .hero-cta{margin-top:0}
.cta-strip.navy{background:var(--navy);color:#fff;border:0}.cta-strip.navy h3{color:#fff}.cta-strip.navy p{color:var(--mist)}
.btn-social{background:#fff;color:var(--navy);border-color:var(--line);font-weight:600}
.btn-social:hover{border-color:var(--navy)}
.hdr .btn-social{display:inline-flex;padding:.7em 1em;font-size:.9rem}
@media (max-width:1499px){.hdr .btn-social{display:none}}
.hdr .wrap{gap:18px;max-width:1400px}
.nav a{padding:.6em .8em}
.lbl-short{display:none}
@media (max-width:1299px){.hdr-cta .tel{display:none}.lbl-long{display:none}.lbl-short{display:inline}.nav a{padding:.6em .7em;font-size:.92rem}}
.nav .grp.social{display:none}
@media (max-width:980px){.nav .grp.social{display:flex;gap:10px;padding:14px 0 6px}.nav .grp.social a{font-family:var(--font-b);font-size:.95rem;padding:.7em 1.1em;border:1.5px solid var(--line);border-radius:var(--pill)}}
.social-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.ftr .social-row a{color:var(--navy);border:1.5px solid var(--line);border-radius:var(--pill);padding:.6em 1em;font-weight:600;text-decoration:none!important}
.ftr .social-row a:hover{border-color:var(--navy)}
