@font-face{font-family:'Syne';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/syne-latin-400-normal.woff2) format('woff2')}@font-face{font-family:'Syne';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/syne-latin-700-normal.woff2) format('woff2')}@font-face{font-family:'Syne';font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/syne-latin-800-normal.woff2) format('woff2')}@font-face{font-family:'Lexend';font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/lexend-latin-300-normal.woff2) format('woff2')}@font-face{font-family:'Lexend';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/lexend-latin-400-normal.woff2) format('woff2')}@font-face{font-family:'Lexend';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/lexend-latin-500-normal.woff2) format('woff2')}@font-face{font-family:'Lexend';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/lexend-latin-600-normal.woff2) format('woff2')}

:root{
--bg:#fbfaf7;--ink:#2a241d;--muted:#7a6f61;--line:#e4dfd5;--tile:#f0ede6;--accent:#8a6a3d;
--sans:'Archivo','Helvetica Neue',Arial,sans-serif;
--serif:'Cormorant Garamond',Georgia,serif;
--mark-font:var(--serif);--mark-weight:400;--mark-size:clamp(2.4rem,5.4vw,3.6rem);--mark-ls:.28em;--mark-stretch:100%;
--nav-tt:uppercase;--nav-ls:.16em;--nav-size:.8rem;
--tile-font:var(--serif);--tile-size:1.05rem;--tile-tt:none;--tile-ls:.01em;
--h-font:var(--serif);--h-weight:400;--h-tt:none;--h-size:1.9rem;--h-ls:0;
color-scheme:light;
}
:root[data-style="pierre"]{--bg:#1c1814;--ink:#ece4d4;--muted:#a89b86;--line:#3a332a;--tile:#26211b;--accent:#c9a46a;color-scheme:dark}
:root[data-style="atelier"]{--bg:#e7e4dd;--ink:#1b1a17;--muted:#6f6b62;--line:#c9c5bb;--tile:#dcd8cf;--accent:#1b1a17;
--mark-font:var(--sans);--mark-weight:900;--mark-size:clamp(2.6rem,6vw,3.8rem);--mark-ls:.005em;--mark-stretch:62%;
--nav-ls:.07em;--nav-size:.86rem;--tile-font:var(--sans);--tile-size:.72rem;--tile-tt:uppercase;--tile-ls:.03em;
--h-font:var(--sans);--h-weight:300;--h-tt:uppercase;--h-size:.95rem;--h-ls:.04em}
:root[data-style="fiche"]{--bg:#ffffff;--ink:#1c1b19;--muted:#6b6862;--line:#d6d3cc;--tile:#f4f3f0;--accent:#7a553a;--rule:#1c1b19;--ui:'Syne','Helvetica Neue',Arial,sans-serif;
--sans:'Lexend','Helvetica Neue',Arial,sans-serif;--serif:'Syne','Helvetica Neue',Arial,sans-serif;
--mark-weight:800;--mark-size:clamp(2rem,4.6vw,3rem);--mark-ls:.04em;
--nav-ls:.1em;--nav-size:.74rem;--tile-size:.95rem;--tile-ls:0;
--h-weight:700;--h-size:1.7rem;--h-ls:0}
:root[data-style="fiche"] body{font-weight:300;letter-spacing:0}
:root[data-style="fiche"] h1.ptitle{font-weight:700;font-size:clamp(2rem,5vw,3.6rem);letter-spacing:0;line-height:1.05}
:root[data-style="fiche"] .foot-lead h2{font-weight:700;font-size:clamp(1.5rem,3vw,2.3rem);letter-spacing:0}
:root[data-style="fiche"] .hero-cap{font-weight:700}
:root[data-style="fiche"] .tile{font-weight:700}
:root[data-style="fiche"] .tile .sub{font-weight:300}
:root[data-style="fiche"] nav.main .right{margin-left:clamp(18px,4.2vw,72px)}
:root[data-style="fiche"] nav.main{font-family:var(--ui);font-weight:700;letter-spacing:.08em}
:root[data-style="fiche"] header:not(.has-hero) nav.main a:hover,:root[data-style="fiche"] header:not(.has-hero) .dd-btn:hover{color:var(--accent)}
:root[data-style="fiche"] nav.main a[aria-current="page"],:root[data-style="fiche"] .dd-btn[aria-current="page"]{font-weight:700}
:root[data-style="fiche"] .lang,:root[data-style="fiche"] .btn,:root[data-style="fiche"] .dl,:root[data-style="fiche"] .eyebrow,:root[data-style="fiche"] label,:root[data-style="fiche"] .cats-tab,:root[data-style="fiche"] .foot-bottom,:root[data-style="fiche"] .related h2,:root[data-style="fiche"] .line h3,:root[data-style="fiche"] .prose h3,:root[data-style="fiche"] .mark span:not(.logo){font-family:var(--ui);font-weight:700}
:root[data-style="fiche"] .btn:hover,:root[data-style="fiche"] .dl:hover{background:var(--accent);border-color:var(--accent);color:#fff}
:root[data-style="fiche"] header{border-bottom:1px solid var(--rule)}
:root[data-style="fiche"] a.xl{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
a.xl:hover{opacity:.7}
:root[data-route="contact"] .foot-top{display:none}
:root[data-route="contact"] footer{padding-top:0}
:root[data-route="contact"] .foot-bottom{margin-top:0;border-top:0}
:root[data-route="studio"] .foot-top{display:none}
:root[data-route="studio"] footer{padding-top:0}
:root[data-route="studio"] .foot-bottom{margin-top:0;border-top:0}
.studio-page{display:grid;grid-template-columns:max-content;grid-template-rows:1fr auto;justify-content:center;width:100%;min-height:calc(100vh - 150px)}
.cols.studio,.studio-links{margin-inline:0}
.cols.studio{display:grid;grid-template-columns:clamp(190px,20vw,330px) minmax(0,34rem);column-gap:clamp(28px,4vw,64px);align-items:center;align-self:center;width:auto;max-width:none}
.cols.studio .ph{aspect-ratio:4/5}
.credit{position:absolute;right:10px;bottom:8px;z-index:3;font:400 .56rem/1 var(--sans);letter-spacing:.06em;color:rgba(255,255,255,.78);text-shadow:0 0 5px rgba(0,0,0,.5);pointer-events:none}
.shots .ph,.cols.studio .ph{position:relative}
.hero-slide .credit{right:max(14px,calc(clamp(16px,2.2vw,32px) + 8px));bottom:10px}
.cols.studio .prose p{max-width:none;margin:0 0 1em;font-size:clamp(.9rem,1.15vw,1.15rem);line-height:1.6}
.stitle{font:400 clamp(1.4rem,2.2vw,2.6rem)/1.1 var(--serif);margin:0 0 .6em;white-space:nowrap}
@media (max-width:640px){.stitle{white-space:normal}}
:root[data-style="fiche"] .stitle{font-weight:700}
.studio-links{display:flex;justify-content:center;gap:clamp(40px,8vw,120px);align-items:baseline;padding-block:clamp(16px,3vw,40px) 0}
.studio-links a{font-size:clamp(.9rem,1.15vw,1.15rem);color:var(--ink)}
.studio-links a:hover{text-decoration:underline;text-underline-offset:4px}
@media (max-width:640px){.studio-page{grid-template-columns:minmax(0,1fr)}.cols.studio{grid-template-columns:minmax(0,1fr);row-gap:24px}.cols.studio .ph{max-width:260px}}
.socials{display:inline-flex;gap:20px;align-items:center}
.soc{display:inline-flex;color:var(--ink);opacity:.85;transition:opacity .2s}
a.soc:hover{opacity:1}
.soc.off{cursor:default;opacity:.85}
.foot-bottom{border-top-color:var(--rule)}
:root[data-style="fiche"] footer{border-top:1px solid var(--line);margin-inline:calc(-1 * clamp(16px,2.2vw,32px));padding-inline:clamp(16px,2.2vw,32px);position:relative;isolation:isolate}
:root[data-style="fiche"] .foot-bottom{position:relative}
:root[data-style="fiche"] footer{margin-top:clamp(56px,7.7vw,110px);padding-top:clamp(16px,2.2vw,30px)}
:root[data-style="fiche"] .foot-bottom{margin-top:clamp(20px,3vw,36px)}
:root[data-style="fiche"] .foot-top{flex-direction:column;align-items:center;text-align:center;gap:0}
:root[data-style="fiche"] .foot-lead h2{max-width:none;margin:0 auto 18px;font-size:clamp(1.15rem,1.7vw,1.5rem)}
:root[data-style="fiche"] .foot-lead p{justify-content:center}
:root[data-style="fiche"] footer .btn{font-size:.6rem;padding:9px 16px}
:root[data-style="fiche"] .foot-lead p{gap:10px 16px}
:root[data-style="fiche"] .foot-phone{font-size:.64rem}
:root[data-style="fiche"] .foot-bottom{font-size:.56rem;padding-top:11px;gap:8px 20px}
:root[data-style="fiche"] .foot-bottom .socials{gap:14px}
:root[data-style="fiche"] .foot-bottom .soc svg{width:16px;height:16px}
:root[data-style="fiche"] .foot-phone{font-family:var(--ui);font-weight:700;color:var(--ink)}
:root[data-style="fiche"] header.has-hero{border-bottom:0}
:root[data-style="fiche"] header.has-hero::after{content:"";position:absolute;left:calc(clamp(16px,2.2vw,32px) + 8px);right:calc(clamp(16px,2.2vw,32px) + 8px);bottom:32px;height:1px;background:#f3f0ea}
:root[data-route="studio"] header{border-bottom:0}
:root[data-style="fiche"][data-route="contact"] header{flex-direction:column;align-items:center;gap:22px;padding-bottom:22px}
:root[data-style="fiche"][data-route="contact"] header .logo{background:var(--ink);width:clamp(180px,20vw,300px)}
:root[data-style="fiche"][data-route="contact"] nav.main{justify-content:center}
:root[data-style="fiche"][data-route="contact"] .cols{grid-template-columns:minmax(0,1fr);max-width:560px;gap:48px}
:root[data-style="fiche"][data-route="contact"] .prose{text-align:center}
:root[data-style="fiche"][data-route="contact"] .prose p{max-width:none;margin:0 0 1.4em;font-family:var(--ui);font-weight:700;font-size:1.35rem;line-height:1.5;color:var(--ink)}
:root[data-style="fiche"][data-route="contact"] .prose p a{color:var(--ink)}
:root[data-style="fiche"][data-route="contact"] .prose .eyebrow{color:var(--muted);font-size:.62rem;margin-bottom:4px}
:root[data-style="fiche"][data-route="contact"] h1.ptitle{text-align:center}
*,*::before,*::after{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font:300 13.5px/1.7 var(--sans);transition:background .25s,color .25s;padding-inline:clamp(16px,2.2vw,32px);padding-block:18px 0}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
button{font:inherit;color:inherit}
.mark{display:flex;flex-direction:column;align-items:center;line-height:.9;margin-inline:auto;width:max-content}
.logo{display:block;width:clamp(120px,11vw,160px);aspect-ratio:993/289;background:var(--ink);-webkit-mask:url(/img/logo.png) center/contain no-repeat;mask:url(/img/logo.png) center/contain no-repeat}
.mark span:not(.logo){font:500 .6rem/1 var(--sans);letter-spacing:.34em;text-transform:uppercase;padding-left:.34em;color:var(--muted);margin-bottom:6px}
.mark b{font-family:var(--mark-font);font-weight:var(--mark-weight);font-size:var(--mark-size);line-height:.95;font-stretch:var(--mark-stretch);letter-spacing:var(--mark-ls);padding-left:var(--mark-ls)}
nav.main{display:flex;flex-wrap:wrap;gap:8px 34px;justify-content:flex-end;align-items:center;font-size:var(--nav-size);letter-spacing:var(--nav-ls);text-transform:var(--nav-tt)}
header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 28px;padding-bottom:14px;border-bottom:1px solid var(--line)}
header .mark{margin:0}
@media (max-width:760px){header{flex-direction:column;align-items:center}nav.main{justify-content:center}}
nav.main .dd{position:relative;display:inline-block}
.dd-btn{background:none;border:0;padding:0;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit}
.dd-btn[aria-current="page"]{text-decoration:underline;text-underline-offset:4px;font-weight:600}
.dd-btn .chev{font-size:.62em;margin-left:3px;display:inline-block;transition:transform .2s}
.dd.open .chev{transform:rotate(180deg)}
.dd-menu{display:none;position:absolute;top:100%;left:-14px;z-index:30;margin:0;padding:12px 0 8px;list-style:none;min-width:200px}
.dd-menu::before{content:"";position:absolute;inset:8px 0 0 0;background:var(--bg);border:1px solid var(--line);box-shadow:0 8px 24px rgba(0,0,0,.1);z-index:-1}
.dd-menu a{display:block;padding:9px 18px;white-space:nowrap}
.dd-menu a:hover,.dd-menu button:hover{background:var(--tile)}
.dd-menu button{display:block;width:100%;text-align:left;background:none;border:0;padding:9px 18px;cursor:pointer;white-space:nowrap;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit}
.dd-menu button[aria-pressed="true"]{font-weight:700;text-decoration:underline;text-underline-offset:4px}
.dd.open .dd-menu{display:block}
@media (hover:hover){.dd:hover .dd-menu{display:block}.dd:hover .chev{transform:rotate(180deg)}}
nav.main a[aria-current="page"]{text-decoration:underline;text-underline-offset:4px;font-weight:600}
nav.main .right{display:flex;gap:24px;align-items:center}
.lang{background:none;border:0;padding:4px 0;font:500 .72rem/1 var(--sans);letter-spacing:.12em;color:var(--ink);cursor:pointer;display:inline-flex;gap:7px;align-items:center}
.lang span{opacity:.4;transition:opacity .2s}
.lang span.on{opacity:1;border-bottom:1px solid currentColor;padding-bottom:2px}
.lang i{font-style:normal;opacity:.3}
.lang:hover span{opacity:1}
.page{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(12px,2vw,28px);margin-top:26px}
.cats-wrap{position:sticky;top:12px;align-self:start;z-index:30}
.cats-tab{writing-mode:vertical-rl;transform:rotate(180deg);background:none;border:1px solid var(--line);color:var(--ink);cursor:pointer;padding:16px 8px;font:500 .66rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;display:inline-flex;gap:10px;align-items:center;transition:border-color .2s,background .2s}
.cats-tab:hover,.cats-wrap.open .cats-tab{border-color:var(--ink)}
.cats-tab .pm{display:inline-block;transform:rotate(90deg);font-size:.9rem;line-height:1;letter-spacing:0;transition:transform .25s}
.cats-wrap.open .cats-tab .pm{transform:rotate(90deg) scaleX(-1) rotate(45deg)}
.cats-tab .cur{opacity:.55}
.cats{list-style:none;margin:0;padding:12px 20px 12px 16px;position:absolute;left:calc(100% + 8px);top:0;min-width:190px;background:var(--bg);border:1px solid var(--line);z-index:20;font-size:.76rem;line-height:2;letter-spacing:.03em;opacity:0;visibility:hidden;transform:translateX(-6px);transition:opacity .2s,transform .2s,visibility .2s}
.cats-wrap.open .cats{opacity:1;visibility:visible;transform:none}
.cats button{background:none;border:0;padding:0;cursor:pointer;text-align:left;color:var(--ink)}
.cats button[aria-pressed="true"]{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.cats button:hover{text-decoration:underline;text-underline-offset:3px}
.content{min-width:0}
.fullpage{margin-top:34px;display:flex;flex-direction:column;gap:clamp(28px,5vw,64px);max-width:1040px;margin-inline:auto;min-height:60vh}
@media (max-width:860px){
.page{grid-template-columns:minmax(0,1fr)}
.cats-wrap{position:static}
.cats-tab{writing-mode:horizontal-tb;transform:none;padding:10px 14px}
.cats-tab .pm,.cats-wrap.open .cats-tab .pm{transform:none}
.cats{position:static;margin-top:8px;display:none;transform:none}
.cats-wrap.open .cats{display:block}
}
.hero{position:relative;margin-top:calc(-1 * (18px + 8px));margin-inline:calc(-1 * (clamp(16px,2.2vw,32px) + 8px))}
header.has-hero{border-bottom:0;position:absolute;z-index:6;top:0;left:0;right:0;margin:0;padding:calc(18px + 8px) calc(clamp(16px,2.2vw,32px) + 8px) 46px;background:linear-gradient(to bottom,rgba(16,12,8,.55),rgba(16,12,8,0));color:#fff}
header.has-hero .logo{background:#fff}
header.has-hero .dd-menu{color:var(--ink)}
header.has-hero .lang{color:#fff}
header.has-hero :focus-visible{outline-color:#fff}
.hero-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;height:clamp(340px,calc(100vh - 80px),1300px);height:clamp(340px,calc(100svh - 80px),1300px);background:var(--tile);scroll-behavior:smooth}
.hero-track::-webkit-scrollbar{display:none}
.hero-slide{position:relative;flex:0 0 100%;scroll-snap-align:start;display:block;overflow:hidden}
.hero-slide img{width:100%;height:100%;object-fit:cover}
.hero-slide::after{content:"";position:absolute;inset:0;background:var(--shade);pointer-events:none}
.hero-cap{position:absolute;left:calc(clamp(16px,2.2vw,32px) + 8px);bottom:clamp(14px,2.4vw,30px);z-index:1;color:#fff;font:400 clamp(1.3rem,2.6vw,2.1rem)/1.1 var(--serif);text-shadow:0 1px 14px rgba(0,0,0,.35)}
.hero-cap small{display:block;margin-top:6px;font:500 .64rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;opacity:.9}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.7);background:rgba(20,16,10,.28);color:#fff;font-size:1.2rem;line-height:1;cursor:pointer;display:grid;place-items:center;backdrop-filter:blur(4px)}
.hero-arrow:hover{background:rgba(20,16,10,.55)}
.hero-arrow.prev{left:clamp(10px,2vw,24px)}
.hero-arrow.next{right:clamp(10px,2vw,24px)}
.hero-dots{position:absolute;right:calc(clamp(16px,2.2vw,32px) + 8px);bottom:clamp(18px,2.6vw,34px);z-index:2;display:flex;gap:8px}
.hero-dots button{width:9px;height:9px;padding:0;border-radius:50%;border:1px solid #fff;background:transparent;cursor:pointer}
.hero-dots button[aria-current="true"]{background:#fff}
@media (max-width:760px){.hero-track{height:min(66vh,540px)}}
@media (prefers-reduced-motion:reduce){.hero-track{scroll-behavior:auto}}
:root{--shade:linear-gradient(to bottom,rgba(20,18,16,.6) 0%,rgba(20,18,16,0) 28%,rgba(20,18,16,0) 62%,rgba(20,18,16,.72) 100%)}
.ph:not(.soon){position:relative}
.ph:not(.soon)::after{content:"";position:absolute;inset:0;background:var(--shade);pointer-events:none}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,1.2vw,14px)}
@media (max-width:760px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tile{display:flex;flex-direction:column;gap:8px;font-family:var(--tile-font);font-size:var(--tile-size);letter-spacing:var(--tile-ls);text-transform:var(--tile-tt);min-width:0}
.tile .ph{aspect-ratio:4/5;overflow:hidden;background:var(--tile)}
.tile .ph img{width:100%;height:100%;object-fit:cover;transition:opacity .35s ease}
.tile .ph{position:relative}
.tile .ph img.alt{position:absolute;inset:0;opacity:0}
@media (hover:hover){a.tile:hover .ph img.alt,a.tile:focus-visible .ph img.alt{opacity:1}}
@media (hover:none){.tile .ph img.alt{display:none}}
.tile .sub{font-family:var(--sans);font-size:.68rem;color:var(--muted);text-transform:none;letter-spacing:.02em}
.tile .ph.soon{background:repeating-linear-gradient(135deg,transparent 0 11px,var(--line) 11px 12px),var(--tile);display:flex;align-items:flex-end;padding:10px;color:var(--muted);font-size:.66rem;letter-spacing:.08em}
.empty{color:var(--muted);padding-block:40px}
.back{font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);display:inline-block;margin-bottom:14px}
.piece{max-width:1100px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(14px,2.4vw,32px);align-items:start}
@media (max-width:760px){.piece{grid-template-columns:minmax(0,1fr)}}
.shots{display:flex;flex-direction:column;gap:clamp(8px,1.2vw,14px)}
.shots .ph{overflow:hidden;background:var(--tile)}
.shots img{width:100%;height:auto}
.info{display:flex;flex-direction:column;gap:18px;position:sticky;top:12px}
@media (max-width:760px){.info{position:static}}
.info h1{font-family:var(--h-font);font-weight:var(--h-weight);font-size:var(--h-size);line-height:1.15;letter-spacing:var(--h-ls);text-transform:var(--h-tt);margin:0}
.info .intro{display:flex;flex-direction:column;gap:18px}
.info .intro .btn{align-self:flex-start}
.info p{margin:0;max-width:56ch}
.info .lead{color:var(--muted)}
.btn{display:inline-block;width:max-content;font:500 .68rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--ink);padding:11px 24px;background:transparent;cursor:pointer}
.btn:hover{background:var(--ink);color:var(--bg)}
.foot-faq{color:inherit;text-decoration:underline;text-underline-offset:3px}
.foot-faq:hover{opacity:.7}
.legal{max-width:760px;margin-inline:auto;width:100%;font-family:var(--sans)}
.legal h1.ptitle{margin-bottom:6px}
.legal .legal-upd{text-align:center;color:var(--muted);font-size:13px;margin:0 0 30px}
.legal section{margin:0 0 26px}
.legal h2{font-family:var(--ui,var(--serif));font-size:1.15rem;margin:0 0 8px}
.legal p{font-size:15px;line-height:1.7;margin:0 0 10px}
.legal a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.stylepick{position:fixed;left:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:5;display:flex;gap:2px;background:var(--bg);border:1px solid var(--line);padding:3px;font:500 .64rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;box-shadow:0 2px 14px rgba(0,0,0,.12)}
.stylepick span{align-self:center;padding:0 8px;color:var(--muted)}
.stylepick button{background:none;border:0;padding:8px 10px;cursor:pointer;color:var(--muted)}
.stylepick button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
details{border-bottom:1px solid var(--line)}
details:first-of-type{border-top:1px solid var(--line)}
summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:13px 0;cursor:pointer;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:1.15rem;font-weight:200;line-height:1}
details[open] summary::after{content:"−"}
details .body{padding:0 0 14px;color:var(--muted);max-width:56ch}
p.quote{margin:26px 0 0}
.piece-faq{max-width:1100px;margin:clamp(20px,3vw,36px) 0 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(14px,2.4vw,32px)}
.piece-faq details{grid-column:1}
@media (max-width:760px){.piece-faq{grid-template-columns:minmax(0,1fr)}}
.piece-faq details.quiet{border-top:1px solid var(--line);border-bottom:0}
.piece-faq details.quiet .body{max-width:none}
details.quiet{border-bottom-color:transparent}
details.quiet summary{font-size:.62rem;letter-spacing:.08em;color:var(--muted);opacity:.8;padding:10px 0;transition:opacity .2s}
details.quiet summary:hover,details.quiet[open] summary{opacity:1}
details.quiet summary::after{font-size:.95rem}
.dl{display:inline-block;font:500 .68rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--ink);padding:10px 16px;color:var(--ink);cursor:pointer}
.dl:hover{background:var(--ink);color:var(--bg)}
.dl small{font:inherit;opacity:.6;margin-left:6px}
.related{margin-top:clamp(36px,6vw,72px);display:flex;flex-direction:column;gap:14px}
.related h2{font:500 .72rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;margin:0;color:var(--muted)}
.related .grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:620px){.related .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
h1.ptitle{font:300 clamp(2.6rem,6.4vw,4.6rem)/1 var(--serif);letter-spacing:.01em;text-align:center;margin:0;text-wrap:balance}
.cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,5vw,72px);align-items:start;max-width:980px;margin-inline:auto;width:100%}
@media (max-width:760px){.cols{grid-template-columns:minmax(0,1fr)}}
.cols .ph{aspect-ratio:2/3;overflow:hidden;background:var(--tile)}
.cols .ph img{width:100%;height:100%;object-fit:cover}
.prose p{margin:0 0 1.1em;max-width:44ch;font-size:16px;line-height:1.75;font-weight:400}
.prose b{font-weight:600}
.prose .sig{color:var(--muted)}
.prose h3{font:600 .72rem/1.2 var(--sans);letter-spacing:.09em;text-transform:uppercase;margin:1.6em 0 .5em}
.prose h3:first-child{margin-top:0}
.rows{list-style:none;margin:0 auto;padding:0;max-width:760px;width:100%;border-top:1px solid var(--ink)}
.rows li{display:grid;grid-template-columns:5rem minmax(0,1fr) auto;gap:6px 20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}
.rows .y{color:var(--muted)}
@media (max-width:560px){.rows li{grid-template-columns:minmax(0,1fr)}}
form.contact{display:flex;flex-direction:column;gap:14px}
label{display:flex;flex-direction:column;gap:5px;font:500 .66rem/1.2 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
input,select,textarea{font:400 14px/1.4 var(--sans);color:var(--ink);background:transparent;border:1px solid var(--line);padding:11px 12px;width:100%;border-radius:0;text-transform:none;letter-spacing:0}
input:focus,select:focus,textarea:focus{outline:2px solid var(--ink);outline-offset:0;border-color:var(--ink)}
textarea{min-height:130px;resize:vertical}
.status{font-size:.8rem;color:var(--muted);min-height:1.5em;margin:0}
.eyebrow{font:500 .66rem/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:2px}
.line{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--line);padding-top:16px;min-width:0}
.line h3{font:500 .8rem/1.2 var(--sans);letter-spacing:.07em;text-transform:uppercase;margin:0}
.line p{margin:0;max-width:52ch;font-size:14px;font-weight:400}
.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,3vw,36px);max-width:1040px;margin-inline:auto;width:100%}
@media (max-width:760px){.three{grid-template-columns:minmax(0,1fr)}}
footer{margin-top:clamp(64px,10vw,130px);border-top:1px solid var(--line);padding-block:clamp(36px,6vw,72px) 22px;padding-bottom:calc(22px + env(safe-area-inset-bottom,0px))}
.foot-top{display:flex;flex-wrap:wrap;gap:36px 60px;justify-content:space-between;align-items:flex-end}
.foot-lead h2{font:300 clamp(1.8rem,3.6vw,2.8rem)/1.1 var(--serif);margin:0 0 20px;max-width:18ch;text-wrap:balance}
.foot-lead p{margin:0;display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center}
.foot-phone{font-size:.8rem;letter-spacing:.08em;color:var(--muted)}
footer form{display:flex;flex-direction:column;gap:8px;min-width:min(340px,100%)}
footer .nl{display:flex;gap:8px}
footer input{flex:1;min-width:0;padding:10px 12px;font-size:13px}
footer .btn{padding:11px 20px}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 30px;margin-top:clamp(36px,6vw,64px);padding-top:16px;border-top:1px solid var(--line);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.faq{max-width:820px;margin:0 auto;padding-bottom:clamp(24px,4vw,56px)}
.faq h1.ptitle{text-align:center}
.faq-group{margin-top:clamp(28px,4vw,52px)}
.faq-group h2{font:700 .74rem/1.2 var(--ui,var(--sans));letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 6px}
.qa{border-top:1px solid var(--line);padding:18px 0 6px}
.qa h3{font:700 1.05rem/1.35 var(--ui,var(--serif));margin:0 0 8px;letter-spacing:0}
.qa p.a{margin:0 0 14px;max-width:68ch}
.qa p.q{font-weight:600;margin:0 0 4px}
.info details .qa{border-top:0;padding:0 0 10px}
.info details .qa p.a{margin:0}
.faq a[href^="tel"]{text-decoration:underline;text-underline-offset:3px}
.faq-end{margin-top:clamp(28px,4vw,52px);border-top:1px solid var(--rule,var(--line));padding-top:24px;text-align:center}
.faq-end p{margin:0 0 14px}

.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ink);color:var(--bg);padding:10px 16px;font-size:.8rem}
.skip:focus{left:8px;top:8px}
a.lang{text-decoration:none}
.dd-menu a[aria-current="page"]{font-weight:700;text-decoration:underline;text-underline-offset:4px}
main.page,main.fullpage{display:block}
form.contact .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
form.contact .form-note{font-size:.72rem;line-height:1.5;color:var(--muted);max-width:46ch;margin:0}
form.contact .form-note a{text-decoration:underline;text-underline-offset:3px}
p.status.err{color:#9b2c2c}
.nf{text-align:center;padding-block:clamp(40px,8vw,120px)}
.nf p{margin:0 0 18px}
