/* Customer-facing editorial layer. The catalog and demo interiors keep their own design. */
:root{--zr-ink:#122031;--zr-blue:#3159ca;--zr-silver:#b7c3ca;--zr-gold:#b89b6a;--zr-paper:#f7f5f0}
body[data-v2-shell] main{overflow:clip}
body[data-v2-shell] main :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--zr-blue);outline-offset:3px}
body[data-v2-shell] main :is(h1,h2,h3)[data-title-reveal]{text-wrap:balance}
body[data-v2-shell] main :is(.core-hero,.zc-hero,.zv2-hero,.zp-hero,.ed-journal-hero,.cat-modelli-hero){position:relative;isolation:isolate}
body[data-v2-shell] main :is(.core-hero,.zc-hero,.zv2-hero,.zp-hero,.ed-journal-hero,.cat-modelli-hero):before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,var(--zr-gold),var(--zr-silver),transparent);pointer-events:none;opacity:.7}
body[data-v2-shell] main :is(.core-hero,.zc-hero,.zv2-hero,.zp-hero,.ed-journal-hero,.cat-modelli-hero) :is(h1,h2){max-width:18ch}
body[data-v2-shell] main :is(.core-hero,.zc-hero,.zv2-hero,.zp-hero,.ed-journal-hero,.cat-modelli-hero) :is(p,.ed-kicker){text-wrap:pretty}
body[data-v2-shell] .site-header .header-cart{transition:color .2s ease,background .2s ease}
body[data-v2-shell] .site-header .header-cart:focus-visible{outline:3px solid var(--zr-blue)}
@media(max-width:900px){body[data-v2-shell] .site-header .header-contact svg{display:none}}

/* A project page whose first useful question is in the first screen. */
body[data-route=preventivo] #page-content{padding-top:0!important}
body[data-route=preventivo] #page-content>.shell{padding-inline:0!important}
body[data-route=preventivo] .v6-quote-portal{margin:0 auto 0;background:var(--zr-paper)}
body[data-route=preventivo] .v6-quote-portal-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);gap:2px 28px;align-items:end;width:min(100% - 48px,1220px);max-width:none;padding:28px 0 18px!important;margin:auto}
body[data-route=preventivo] .v6-quote-portal-intro>.v6-overline{grid-column:1/-1;margin:0;color:var(--zr-blue)}
body[data-route=preventivo] .v6-quote-portal-intro h1{grid-column:1;grid-row:2;font:700 clamp(42px,5vw,74px)/.98 'Bodoni Moda',Georgia,serif;text-transform:uppercase;letter-spacing:-.055em;margin:2px 0;color:var(--zr-ink)}
body[data-route=preventivo] .v6-quote-portal-intro>p:not(.v6-quote-portal-local){grid-column:1;grid-row:3;max-width:62ch;margin:2px 0 0;font:400 15px/1.55 Manrope,sans-serif}
body[data-route=preventivo] .v6-quote-portal-intro .v6-quote-portal-local{grid-column:2;grid-row:2/4;max-width:32ch;margin:0 0 5px;padding:4px 0 4px 15px;border-left:2px solid var(--zr-gold);font:400 13px/1.55 Manrope,sans-serif}
body[data-route=preventivo] .v6-quote-price-link{width:min(100% - 48px,1220px);max-width:none;margin:0 auto 8px;padding:8px 0;border:0;border-top:1px solid var(--zr-silver);background:transparent;font-size:12px}
body[data-v2-shell] #project-portal-root .project-workspace--portal{padding:10px max(24px,calc((100vw - 1220px)/2)) 54px;border:0;background:var(--zr-paper);min-height:calc(100svh - var(--v2-header-height,80px))}
#project-portal-root .project-workspace--portal .pw-header,#project-portal-root .project-workspace--portal .pw-privacy{display:none}
#project-portal-root .project-workspace--portal .pw-stage-nav{display:flex;gap:0;max-width:1220px;margin:0 auto;background:transparent;border:0;border-top:1px solid var(--zr-silver)}
#project-portal-root .project-workspace--portal .pw-stage-nav button{flex:1;min-height:48px;gap:7px;padding:7px 11px;border:0;border-bottom:2px solid var(--zr-silver);background:transparent;font:700 12px/1.2 Manrope,sans-serif;white-space:normal}
#project-portal-root .project-workspace--portal .pw-stage-nav button b{color:var(--zr-blue);font:700 11px/1.2 'IBM Plex Mono',monospace}
#project-portal-root .project-workspace--portal .pw-stage-nav button[aria-current=step]{background:#e9edf2;color:var(--zr-ink);box-shadow:none;border-bottom-color:var(--zr-blue)}
#project-portal-root .project-workspace--portal .pw-stage-progress{max-width:1220px;margin:8px auto 4px;font-size:10px}
#project-portal-root .project-workspace--portal .pw-content>section{max-width:1220px;padding:10px 0 0;border:0}
#project-portal-root .project-workspace--portal .pw-content>section:first-child{max-width:780px;margin-inline:auto}
#project-portal-root .project-workspace--portal .pw-content>section:first-child>h3{margin:0 0 5px;font:700 clamp(27px,3vw,43px)/1.07 'Bodoni Moda',Georgia,serif;text-transform:uppercase}
#project-portal-root .pw-opening-lead{max-width:62ch;margin:0 0 13px;color:#42515d;font:400 14px/1.52 Manrope,sans-serif}
#project-portal-root .project-workspace--portal label[for=pw-objective]{display:block;margin:0 0 4px;font-weight:700;color:var(--zr-ink)}
#project-portal-root .project-workspace--portal #pw-objective{display:block;width:100%;max-width:none;min-height:94px;resize:vertical;padding:13px 15px;background:#fffefa;border:1px solid #9eabb1;border-radius:0;font:400 16px/1.45 Manrope,sans-serif}
#project-portal-root .project-workspace--portal label[for=pw-name]{margin-top:12px}
#project-portal-root .project-workspace--portal #pw-name{max-width:none}
#project-portal-root .pw-saved-projects{margin-top:18px;padding:9px 0;border-top:1px solid var(--zr-silver)}
#project-portal-root .pw-saved-projects summary{cursor:pointer;color:var(--zr-blue);font:700 12px/1.4 Manrope,sans-serif;letter-spacing:.04em;text-transform:uppercase}
#project-portal-root .pw-saved-projects[open]{border-bottom:1px solid var(--zr-silver);padding-bottom:16px}
#project-portal-root .pw-saved-projects [data-pw-identity]{font-size:13px;color:#4c5962}
#project-portal-root .pw-content>section:nth-child(2){margin-top:18px;padding-top:20px;border-top:1px solid var(--zr-silver)}
#project-portal-root .pw-content>section:nth-child(2)>h3{font-size:clamp(22px,2.1vw,30px)}
#project-portal-root .pw-content>section:nth-child(2)>p:first-of-type{font-size:13px}
#project-portal-root .pw-content>section:nth-child(2)>label[for=pw-objective]{display:none}
#project-portal-root .project-workspace--portal .pw-worlds{gap:1px;border:1px solid var(--zr-silver);background:var(--zr-silver)}
#project-portal-root .project-workspace--portal .pw-worlds button{border:0;box-shadow:none;min-height:220px;background:#fffefa}
#project-portal-root .project-workspace--portal .pw-worlds button[aria-pressed=true]{background:#e8edf5;box-shadow:inset 0 0 0 2px var(--zr-blue)}
#project-portal-root .project-workspace--portal .pw-worlds .pw-world-image{aspect-ratio:16/7;object-fit:cover;height:auto}
#project-portal-root .project-workspace--portal .pw-product-detail,#project-portal-root .project-workspace--portal .pw-estimate-card{box-shadow:none;border-radius:0;border:1px solid var(--zr-silver);background:#fffefa}
#project-portal-root .project-workspace--portal .pw-cart-bar{border-left-color:var(--zr-gold)}
body[data-route=preventivo] .v6-project-quote{width:min(100% - 48px,1220px);max-width:none;margin:0 auto 62px;padding-top:32px;border-top:1px solid var(--zr-silver)}
body[data-route=preventivo] .v6-sow-explainer{border-top:1px solid var(--zr-silver)}

/* One editorial rhythm on public routes; service internals remain distinct. */
body[data-v2-shell] main :is(.core-section,.zc-section,.zv2-section,.zp-section,.ed-section,.studio-book-chapter,.cat-section){scroll-margin-top:calc(var(--v2-header-height,80px) + 16px)}
body[data-v2-shell] main :is(.core-section,.zc-section,.zv2-section,.zp-section,.ed-section,.studio-book-chapter,.cat-section) :is(a,button){text-underline-offset:4px}
body[data-v2-shell] main :is(.core-section,.zc-section,.zv2-section,.zp-section,.ed-section,.studio-book-chapter,.cat-section) :is(a,button):hover{transition-duration:.2s}
body[data-v2-shell] main :is(.core-section,.zc-section,.zv2-section,.zp-section,.ed-section,.studio-book-chapter,.cat-section) :is(figure,picture){isolation:isolate}
body[data-v2-shell] main :is(.core-section,.zc-section,.zv2-section,.zp-section,.ed-section,.studio-book-chapter,.cat-section) :is(figure,picture):after{content:"";position:absolute;inset:auto 8% 0;height:1px;background:linear-gradient(90deg,transparent,var(--zr-gold),transparent);pointer-events:none;opacity:.7}
@media(max-width:767px){body[data-route=preventivo] .v6-quote-portal-intro{display:block;width:calc(100% - 32px);padding:17px 0 11px!important}body[data-route=preventivo] .v6-quote-portal-intro h1{font-size:clamp(38px,10vw,52px);margin:3px 0 6px}body[data-route=preventivo] .v6-quote-portal-intro>p:not(.v6-quote-portal-local){font-size:13px;line-height:1.45}body[data-route=preventivo] .v6-quote-portal-intro .v6-quote-portal-local{display:none}body[data-route=preventivo] .v6-quote-price-link{width:calc(100% - 32px);padding:6px 0;margin-bottom:2px;font-size:11px}body[data-v2-shell] #project-portal-root .project-workspace--portal{padding:8px 16px 34px}#project-portal-root .project-workspace--portal .pw-stage-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}#project-portal-root .project-workspace--portal .pw-stage-nav button{display:grid;justify-items:start;gap:2px;min-height:54px;padding:6px 4px;font-size:10px;line-height:1.2}#project-portal-root .project-workspace--portal .pw-stage-nav button b{font-size:10px}#project-portal-root .project-workspace--portal .pw-content>section:first-child>h3{font-size:31px}#project-portal-root .pw-opening-lead{font-size:12px;line-height:1.45;margin-bottom:8px}#project-portal-root .pw-content>section:nth-child(2){margin-top:12px;padding-top:12px}#project-portal-root .project-workspace--portal .pw-worlds button{min-height:180px}body[data-route=preventivo] .v6-project-quote{width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){body[data-v2-shell] main *{scroll-behavior:auto!important}body[data-v2-shell] main :is(figure,picture):after{transition:none}}

/* Keep the laptop header complete; service links remain in the menu. */
@media(min-width:1200px) and (max-width:1399px){body[data-v2-shell] .site-header .desktop-nav{display:none}body[data-v2-shell] .site-header .header-tools{margin-left:auto;gap:16px}}

body[data-v2-shell] .r3-quality-proof .r3-proof-context img{object-fit:contain;object-position:center}body[data-v2-shell] .r3-quality-proof .r3-proof-context figure{border-style:solid}

body[data-v2-shell] .r3-quality-proof .inspection-sheet,body[data-v2-shell] .r3-quality-proof .inspection-sheet>p,body[data-v2-shell] .r3-quality-proof .inspection-sheet .scene-caption{color:#10263d!important}
