/* Blau3D — foglio di stile */
@font-face{font-family:"Jost";font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/jost-latin-300-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jost-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jost-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2")}
html{-webkit-text-size-adjust:100%}
body{margin:0}
[hidden]{display:none!important}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--ink);color:var(--paper);padding:8px 12px}
.skip:focus{left:8px}

/* Layout: a drawing sheet. Wide margins, hairline rules, every render captioned like a title block (TAV. nn). Images are never cropped. */
:root{
  --paper:#EDEBE6; --surface:#F6F5F2; --ink:#262624; --stone:#6D6C67; --line:#D3D0C9; --accent:#8A6A4F; --on-accent:#F7F3EE; --foot-bg:#2C2521; --foot-ink:#EDE6DE; --foot-mute:#A99C90; --foot-line:#463C35;
  --display:"Jost","Futura","Century Gothic",system-ui,sans-serif;
  --body:"Jost","Futura","Century Gothic",system-ui,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  --max:1240px;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#17181A; --surface:#1F2023; --ink:#E9E7E2; --stone:#9D9B95; --line:#303135; --accent:#C9A98A; --on-accent:#17181A; --foot-bg:#211C19; --foot-ink:#E9E2DA; --foot-mute:#9E9186; --foot-line:#3A322C; color-scheme:dark}}
:root[data-theme="dark"]{--paper:#17181A; --surface:#1F2023; --ink:#E9E7E2; --stone:#9D9B95; --line:#303135; --accent:#C9A98A; --on-accent:#17181A; --foot-bg:#211C19; --foot-ink:#E9E2DA; --foot-mute:#9E9186; --foot-line:#3A322C; color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-weight:300;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--paper)}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
.wrap{max-width:var(--max);margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
@media (min-width:720px){.wrap{padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}}

.label{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);font-weight:400}
h1,h2,h3{font-family:var(--display);font-weight:300;text-wrap:balance;margin:0;letter-spacing:-.01em}
h1{font-size:clamp(40px,7vw,88px);line-height:1.02}
h2{font-size:clamp(30px,4.2vw,50px);line-height:1.08}
h3{font-size:22px;font-weight:400;line-height:1.25}
p{margin:0;max-width:62ch}
.lead{font-size:clamp(18px,1.6vw,21px);color:var(--stone)}

/* Header */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:14px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--stone)}
.brand svg{width:34px;height:auto}
.brand b{font-family:var(--display);font-weight:400;font-size:22px;color:var(--ink);letter-spacing:.01em}
nav.main{display:flex;gap:28px;align-items:center}
nav.main a{text-decoration:none;font-size:15px;font-weight:400;color:var(--stone);padding-block:6px;border-bottom:1px solid transparent}
nav.main a:hover,nav.main a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--ink)}
.tools{display:flex;align-items:center;gap:12px}
.lang{display:flex;border:1px solid var(--line)}
.lang a{text-decoration:none;font:inherit;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;background:none;border:0;color:var(--stone);padding:6px 9px;cursor:pointer}
.lang a[aria-current="true"]{background:var(--ink);color:var(--paper)}
.btn{display:inline-flex;align-items:center;gap:10px;font:inherit;font-weight:400;font-size:15px;text-decoration:none;cursor:pointer;padding:13px 22px;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);transition:background .2s,color .2s}
.btn:hover{background:transparent;color:var(--accent)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:var(--paper)}
.btn.sm{padding:9px 15px;font-size:14px}
.menu-btn{display:none;font:inherit;background:none;border:1px solid var(--line);color:var(--ink);padding:7px 11px;cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media (max-width:900px){
  nav.main{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:flex-start;gap:4px;background:var(--paper);border-bottom:1px solid var(--line);padding:12px max(16px,env(safe-area-inset-left,0px)) 20px}
  nav.main.open{display:flex}
  .menu-btn{display:inline-block}
  .tools .btn{display:none}
}

/* Sections */
section{padding-block:clamp(64px,9vw,120px)}
section+section{border-top:1px solid var(--line)}
.sec-head{display:grid;grid-template-columns:1fr;gap:18px;margin-bottom:clamp(36px,5vw,64px)}
@media (min-width:900px){.sec-head{grid-template-columns:5fr 6fr;align-items:end}.sec-head p{justify-self:end}}

/* Hero */
.hero{padding-block:clamp(48px,7vw,96px) 0}
.hero-grid{display:grid;gap:28px}
@media (min-width:900px){.hero-grid{grid-template-columns:7fr 4fr;align-items:end}}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.hero-img{margin-top:clamp(36px,5vw,64px)}
.hero-img img{width:100%;background:var(--surface)}

/* Title-block caption */
figure{margin:0}
figcaption{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:baseline;padding-top:10px;border-top:1px solid var(--line);margin-top:10px}
figcaption .t{font-size:15px;font-weight:400;min-width:0}
figcaption .t span{color:var(--stone);font-weight:300}

/* Gallery – natural ratios, never cropped */
.gallery{columns:2 420px;column-gap:28px}
.gallery figure{break-inside:avoid;margin-bottom:36px;cursor:zoom-in}
.gallery img{width:100%;background:var(--surface);transition:opacity .3s}
.gallery figure:hover img{opacity:.88}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}
.filters button{font:inherit;font-size:14px;font-weight:400;background:none;border:1px solid var(--line);color:var(--stone);padding:8px 16px;cursor:pointer}
.filters button[aria-pressed="true"]{border-color:var(--ink);color:var(--ink)}

/* Services as a schedule, not cards */
.services{display:grid;grid-template-columns:1fr;border-top:1px solid var(--ink)}
.svc{display:grid;grid-template-columns:52px 1fr;gap:6px 20px;padding-block:24px;border-bottom:1px solid var(--line)}
.svc .label{padding-top:6px}
.svc p{color:var(--stone);grid-column:2}
@media (min-width:900px){.services{grid-template-columns:1fr 1fr;column-gap:56px}.svc:nth-child(-n+2){border-top:0}}

/* Audiences */
.aud{display:grid;gap:40px;grid-template-columns:1fr}
@media (min-width:820px){.aud{grid-template-columns:repeat(3,1fr)}}
.aud div{display:grid;gap:12px;align-content:start;border-top:1px solid var(--ink);padding-top:18px}
.aud p{color:var(--stone)}

/* Process */
.steps{display:grid;grid-template-columns:1fr;gap:0;counter-reset:s}
@media (min-width:820px){.steps{grid-template-columns:repeat(4,1fr)}}
.step{padding:22px 24px 26px 0;border-top:1px solid var(--line);display:grid;gap:10px;align-content:start}
.step .n{font-family:var(--display);font-size:44px;font-weight:300;color:var(--accent);line-height:1}
.step p{color:var(--stone);font-size:16px}

/* CTA band */
.band{background:var(--accent);color:var(--on-accent)}
.band .wrap{display:grid;gap:24px;padding-block:clamp(56px,7vw,96px)}
@media (min-width:900px){.band .wrap{grid-template-columns:2fr 1fr;align-items:end}}
.band p{opacity:.8}
.band .btn{background:var(--on-accent);color:var(--accent);border-color:var(--on-accent);justify-self:start}
.band .btn:hover{background:transparent;color:var(--on-accent)}
@media (min-width:900px){.band .btn{justify-self:end}}

/* FAQ */
details{border-top:1px solid var(--line);padding-block:18px}
details:last-child{border-bottom:1px solid var(--line)}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:19px;font-weight:400}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-weight:300;color:var(--stone)}
details[open] summary::after{content:"–"}
details p{margin-top:12px;color:var(--stone)}

/* Studio */
.studio{display:grid;gap:40px}
@media (min-width:900px){.studio{grid-template-columns:5fr 6fr;align-items:start}}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-top:32px}
.facts div{border-top:1px solid var(--ink);padding-top:12px}
.facts b{display:block;font-family:var(--display);font-weight:300;font-size:32px}

/* Form */
.contact{display:grid;gap:56px}
@media (min-width:960px){.contact{grid-template-columns:4fr 7fr}}
.cinfo{display:grid;gap:26px;align-content:start}
.cinfo .row{display:grid;gap:4px}
.cinfo .val{font-size:18px;font-weight:400;word-break:break-word}
.copy{font:inherit;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;background:none;border:1px solid var(--line);color:var(--stone);padding:3px 8px;cursor:pointer;margin-left:8px;vertical-align:middle}
form{display:grid;gap:26px;background:var(--surface);border:1px solid var(--line);padding:clamp(20px,4vw,40px)}
.fgrid{display:grid;gap:20px;grid-template-columns:1fr}
@media (min-width:640px){.fgrid{grid-template-columns:1fr 1fr}}
.field{display:grid;gap:7px;min-width:0}
.field.full{grid-column:1/-1}
.field label,.legend{font-size:14px;font-weight:400}
.req{color:var(--accent)}
input[type=text],input[type=email],input[type=tel],select,textarea{font:inherit;font-weight:300;font-size:16px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:0;padding:11px 12px;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}
textarea{min-height:120px;resize:vertical}
fieldset{border:0;padding:0;margin:0;display:grid;gap:10px;min-width:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;cursor:pointer}
.chip span{display:inline-block;border:1px solid var(--line);background:var(--paper);padding:8px 14px;font-size:14px;font-weight:400;color:var(--stone)}
.chip input:checked+span{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}
.chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.hint{font-size:13px;color:var(--stone)}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--stone)}
.check input{margin-top:4px;accent-color:var(--accent)}
.err{font-size:13px;color:#B3412E}
.formfoot{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.done{display:grid;gap:14px;background:var(--surface);border:1px solid var(--accent);padding:clamp(24px,4vw,40px)}

/* Services page: alternating rows */
.svc-index{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(24px,4vw,40px)}
.svc-index button{font:inherit;font-size:14px;font-weight:400;background:none;border:1px solid var(--line);color:var(--ink);padding:9px 14px;cursor:pointer;display:inline-flex;gap:8px;align-items:baseline;transition:border-color .3s,background .3s,color .3s}
.svc-index button:hover{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}
.svc-index button:hover .label{color:var(--on-accent)}
.srow{display:grid;gap:18px;padding-block:clamp(32px,4.5vw,52px);transition:background .4s;border-top:1px solid var(--line);scroll-margin-top:90px}
.srow:first-child{border-top-color:var(--ink)}
@media (min-width:900px){.srow{grid-template-columns:5fr 7fr;gap:64px;align-items:start}}
.srow-img{cursor:zoom-in;min-width:0}
.srow-img img{width:100%;background:var(--surface);transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.srow-img:hover img{transform:translateY(-6px);box-shadow:0 22px 40px -24px rgba(30,20,10,.55)}
.srow-txt{display:grid;gap:16px;align-content:center;min-width:0}
.srow .num{font-family:var(--display);font-weight:300;font-size:clamp(56px,7vw,96px);line-height:.85;color:var(--accent)}
.srow-h{font-size:clamp(28px,3.2vw,40px);line-height:1.1}
.srow-txt p{color:var(--stone);font-size:18px}
.srow:hover .srow-h{color:var(--accent)}
.srow-h{transition:color .3s}
.tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tags .label{margin-right:4px}
.tag{font-size:13px;font-weight:400;border:1px solid var(--line);padding:4px 10px;color:var(--ink)}
.srow-cta{justify-self:start;text-decoration:none;font-weight:400;color:var(--accent);border-bottom:1px solid currentColor;padding-bottom:3px;display:inline-flex;gap:8px}
.srow-cta span{transition:transform .3s var(--ease)}
.srow-cta:hover span{transform:translateX(5px)}

/* Social icons */
.social{display:flex;gap:10px;flex-wrap:wrap}
.social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);color:var(--ink);transition:background .2s,color .2s,border-color .2s}
.social a:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.social svg{width:19px;height:19px}
footer .social a{border-color:var(--foot-line);color:var(--foot-ink)}
footer .social a:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
h1.t2{font-size:clamp(30px,4.2vw,50px);line-height:1.08}

/* Footer */
footer{background:var(--foot-bg);color:var(--foot-ink);padding-block:56px 40px;font-size:15px}
footer .label{color:var(--foot-mute)}
footer .brand,footer .brand b{color:var(--foot-ink)}
.fgrid4{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
footer .col{display:grid;gap:6px;align-content:start}
footer a{text-decoration:none;color:var(--foot-mute)}
footer a:hover{color:var(--foot-ink)}
.legal{margin-top:40px;padding-top:16px;border-top:1px solid var(--foot-line);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}

/* Lightbox */
.lb{position:fixed;inset:0;z-index:100;background:color-mix(in srgb,var(--paper) 96%,transparent);display:grid;grid-template-rows:auto 1fr auto;padding:calc(env(safe-area-inset-top,0px) + 12px) max(16px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 16px) max(16px,env(safe-area-inset-left,0px))}
.lb-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.lb-stage{display:flex;align-items:center;justify-content:center;min-height:0;padding-block:12px}
.lb-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.lb button{font:inherit;background:none;border:1px solid var(--line);color:var(--ink);padding:8px 14px;cursor:pointer}
.lb-nav{display:flex;gap:8px}
.view[hidden],.lb[hidden],form[hidden],.done[hidden],.err[hidden]{display:none!important}

/* ---------- Motion ---------- */
:root{--ease:cubic-bezier(.2,.7,.2,1);--ease-io:cubic-bezier(.65,0,.35,1)}
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes wipe{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes scan{0%{left:0;opacity:1}92%{opacity:1}100%{left:100%;opacity:0}}
@keyframes fadeout{to{opacity:0}}
@keyframes ticker{to{transform:translateX(-50%)}}
@keyframes viewIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hero .label,.hero h1,.hero .lead,.hero .actions{animation:rise 1s var(--ease) both}
.hero h1{animation-delay:.08s}.hero .lead{animation-delay:.22s}.hero .actions{animation-delay:.34s}
/* Hero: clay model -> final render, then drag to compare */
.render{position:relative;overflow:hidden;background:var(--surface);--pos:100;}
.js .render{--pos:0}
.render img{width:100%}
.render .clay{filter:grayscale(1) contrast(.82) brightness(1.12)}

.render .final{position:absolute;inset:0;height:100%;clip-path:inset(0 calc(100% - var(--pos) * 1%) 0 0)}
.render .scan{position:absolute;top:0;bottom:0;left:calc(var(--pos) * 1%);width:2px;margin-left:-1px;background:#fff;box-shadow:0 0 18px 4px rgba(255,255,255,.7);pointer-events:none;opacity:0;transition:opacity .4s,box-shadow .4s}
.render.baking .scan,.render.cmp .scan{opacity:1}
.render.cmp .scan{box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.render .pct{position:absolute;left:14px;top:12px;background:rgba(38,38,36,.72);color:#fff;padding:4px 8px;transition:opacity .6s}
.render .pct.out{opacity:0}
.render .handle{position:absolute;top:50%;left:calc(var(--pos) * 1%);width:48px;height:48px;transform:translate(-50%,-50%) scale(.6);border-radius:50%;background:#fff;color:#2C2521;border:0;display:grid;place-items:center;box-shadow:0 8px 24px -8px rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:opacity .4s,transform .4s var(--ease);cursor:ew-resize;font:inherit;font-size:15px;letter-spacing:.1em}
.render.cmp .handle{opacity:1;transform:translate(-50%,-50%);pointer-events:auto}
.render.cmp{cursor:ew-resize}
.render .tagc{position:absolute;bottom:12px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:rgba(38,38,36,.72);color:#fff;padding:4px 8px;opacity:0;transition:opacity .4s;pointer-events:none}
.render .tagc.l{left:12px}.render .tagc.r{right:12px}
.render.cmp .tagc{opacity:1}
.hint-drag{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone)}
/* Ticker */
.ticker{border-block:1px solid var(--line);overflow:hidden;padding-block:22px;margin-top:clamp(48px,6vw,80px)}
.ticker .track{display:flex;width:max-content;animation:ticker 38s linear infinite}
.ticker:hover .track{animation-play-state:paused}
.ticker span{font-family:var(--display);font-weight:300;font-size:clamp(26px,3.4vw,44px);white-space:nowrap;padding-inline:28px;display:inline-flex;align-items:center;gap:56px}
.ticker svg{width:30px;height:auto;color:var(--accent)}
/* Scroll reveal: only content below the fold at load starts hidden */
.rv-pre{opacity:0;transform:translateY(28px)}
.rv{transition:opacity 1s var(--ease),transform 1s var(--ease)}
.view.enter{animation:viewIn .7s var(--ease) both}
/* Hovers */
.gallery figure img{transition:transform .6s var(--ease),box-shadow .6s var(--ease),opacity .3s}
.gallery figure:hover img{opacity:1;transform:translateY(-6px);box-shadow:0 22px 40px -24px rgba(30,20,10,.55)}
figcaption{position:relative}
figcaption::before{content:"";position:absolute;left:0;top:-1px;height:1px;width:0;background:var(--accent);transition:width .7s var(--ease)}
figure:hover figcaption::before{width:100%}
figure:hover figcaption .label:first-child{color:var(--accent)}
.svc h3{transition:transform .4s var(--ease)}
.svc .label{transition:color .3s}
.svc:hover h3{transform:translateX(6px)}
.svc:hover .label{color:var(--accent)}
nav.main a{position:relative;border-bottom:0!important}
nav.main a::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease)}
nav.main a:hover::after,nav.main a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}
.btn{transition:background .25s,color .25s,transform .25s var(--ease)}
.btn:hover{transform:translateY(-2px)}
header{transition:box-shadow .3s}
header.scrolled{box-shadow:0 10px 30px -22px rgba(30,20,10,.5)}
.progress{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--accent);transform-origin:left;transform:scaleX(0)}
.lb:not([hidden]){animation:viewIn .35s var(--ease) both}
.step .n{transition:transform .5s var(--ease)}
.step:hover .n{transform:translateY(-4px)}
@media (prefers-reduced-motion:reduce){.rv-pre{opacity:1;transform:none}.render .pct{display:none}.ticker .track{animation:none}}

/* ---------- Legal pages ---------- */
.doc{max-width:760px;display:grid;gap:18px}
.doc h1{margin-bottom:6px}
.doc h2{font-size:22px;font-weight:400;margin-top:26px;letter-spacing:0}
.doc p,.doc li{color:var(--stone);max-width:68ch}
.doc ul{margin:0;padding-left:20px;display:grid;gap:6px}
.doc strong{color:var(--ink);font-weight:400}
.note{border:1px dashed var(--accent);padding:12px 16px;font-size:14px;color:var(--ink)}
.tbl{overflow-x:auto}
.tbl table{border-collapse:collapse;width:100%;min-width:560px;font-size:14px}
.tbl th,.tbl td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--stone);font-weight:400}
.check a,.doc a{color:var(--accent)}

/* ---------- Cookie banner ---------- */
.cookie{position:fixed;z-index:80;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(env(safe-area-inset-bottom,0px) + 16px);width:min(440px,calc(100% - 32px));background:var(--surface);border:1px solid var(--line);box-shadow:0 24px 50px -28px rgba(30,20,10,.5);padding:22px;display:grid;gap:14px;font-size:15px;animation:viewIn .6s .8s var(--ease) both}
.cookie p{color:var(--stone)}
.cookie a{color:var(--accent)}
.cookie .row2{display:flex;gap:10px;flex-wrap:wrap}
.cookie .row2 .btn{flex:1;justify-content:center}
.cookie .linkbtn{font:inherit;font-size:14px;background:none;border:0;color:var(--ink);text-decoration:underline;cursor:pointer;padding:0;justify-self:start}
.prefs{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:12px}
.pref{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;font-size:14px}
.pref small{display:block;color:var(--stone)}
.pref input{accent-color:var(--accent);width:18px;height:18px;margin-top:3px}
footer .linkbtn{font:inherit;background:none;border:0;color:var(--foot-mute);cursor:pointer;padding:0;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}
footer .linkbtn:hover{color:var(--foot-ink)}
.view[hidden],.cookie[hidden],.prefs[hidden]{display:none!important}

.lang a{display:inline-block}
.srow-cta,.check a{cursor:pointer}
.hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.e404{display:grid;gap:20px;justify-items:start}
.svc-index .chipbtn{font-size:14px;font-weight:400;text-decoration:none;border:1px solid var(--line);color:var(--ink);padding:9px 14px;transition:border-color .3s,background .3s,color .3s}
.svc-index .chipbtn:hover{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}
.cinfo a{color:inherit}
