@font-face{font-family:Fraunces Display;font-style:normal;font-weight:300 600;src:url(/fonts/fraunces-variable.woff2)format("woff2");font-display:swap}@font-face{font-family:Fraunces Display;font-style:italic;font-weight:500;src:url(/fonts/fraunces-italic.woff2)format("woff2");font-display:swap}@font-face{font-family:Public Sans;font-style:normal;font-weight:400 700;src:url(/fonts/publicsans-variable.woff2)format("woff2");font-display:swap}@font-face{font-family:Plex Mono;font-style:normal;font-weight:400;src:url(/fonts/plexmono-400.woff2)format("woff2");font-display:swap}@font-face{font-family:Plex Mono;font-style:normal;font-weight:500;src:url(/fonts/plexmono-500.woff2)format("woff2");font-display:swap}:root{--ink:#1c2130;--ink-soft:#4b5266;--ink-faint:#7d8496;--paper:#ece8e0;--paper-raised:#f7f5f0;--paper-sunken:#e1ddd2;--line:#1c213024;--line-strong:#1c213047;--wine:#7c2331;--wine-deep:#5a1826;--wine-tint:#7c233114;--brass:#9c7f4f;--focus:#2a5aa8;--on-wine:#faf6f0}:root[data-theme=dark]{--ink:#ece7dc;--ink-soft:#b9b3a4;--ink-faint:#8b8577;--paper:#15161c;--paper-raised:#1c1e26;--paper-sunken:#0f1015;--line:#ece7dc24;--line-strong:#ece7dc42;--wine:#d16b78;--wine-deep:#e79aa3;--wine-tint:#d16b781a;--brass:#c9ac78;--on-wine:#15161c}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Public Sans,system-ui,sans-serif;font-size:16px;line-height:1.6;transition:background .2s,color .2s}.wrap{max-width:1120px;margin:0 auto;padding:0 28px}@media (width<=640px){.wrap{padding:0 20px}}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--wine);align-items:center;gap:10px;font-family:Plex Mono,monospace;font-size:12px;display:flex}.eyebrow:before{content:"";background:var(--wine);width:22px;height:1px;display:inline-block}h1,h2,h3{text-wrap:balance;color:var(--ink);margin:0;font-family:Fraunces Display,Georgia,serif;font-weight:500;line-height:1.08}a{color:inherit}::selection{background:var(--wine);color:var(--on-wine)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.demo-banner{text-align:center;letter-spacing:.1em;text-transform:uppercase;background:var(--wine);color:var(--on-wine);z-index:50;padding:8px 16px;font-family:Plex Mono,monospace;font-size:11.5px;text-decoration:none;display:block;position:sticky;top:0}.demo-banner:hover{background:var(--wine-deep)}.demo-dialog{border:1px solid var(--line-strong);background:var(--paper-raised);max-width:420px;color:var(--ink);border-radius:2px;padding:28px 32px;box-shadow:0 16px 40px #1c213033}.demo-dialog::backdrop{background:#1c213073}.demo-dialog h2{margin:0 0 12px;font-size:22px;font-weight:500}.demo-dialog p{color:var(--ink-soft);margin:0 0 12px;font-size:14.5px;line-height:1.55}.demo-dialog a{color:var(--wine)}.demo-dialog .btn{margin-top:8px}.topbar{z-index:40;background:color-mix(in srgb, var(--paper) 88%, transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:36px}.topbar-inner{justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.brand{letter-spacing:.01em;align-items:baseline;gap:8px;font-family:Fraunces Display,serif;font-size:19px;font-weight:500;text-decoration:none;display:flex}.brand small{color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;font-family:Plex Mono,monospace;font-size:11px;font-weight:400}nav.primary{gap:26px;display:flex}nav.primary a{color:var(--ink-soft);padding:4px 0;font-size:14.5px;font-weight:500;text-decoration:none}nav.primary a:hover{color:var(--ink)}.nav-right{align-items:center;gap:14px;display:flex}.theme-toggle{border:1px solid var(--line-strong);cursor:pointer;width:36px;height:36px;color:var(--ink);background:0 0;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.theme-toggle:hover{border-color:var(--ink)}.theme-toggle svg{width:17px;height:17px}.theme-toggle .icon-moon,:root[data-theme=dark] .theme-toggle .icon-sun{display:none}:root[data-theme=dark] .theme-toggle .icon-moon{display:block}.nav-cta{letter-spacing:.06em;text-transform:uppercase;color:var(--on-wine);background:var(--wine);white-space:nowrap;border-radius:2px;padding:10px 18px;font-family:Plex Mono,monospace;font-size:12.5px;text-decoration:none;transition:background .15s}.nav-cta:hover{background:var(--wine-deep)}.menu-toggle{border:1px solid var(--line-strong);cursor:pointer;color:var(--ink);background:0 0;border-radius:2px;padding:8px 10px;display:none}@media (width<=820px){nav.primary{display:none}.menu-toggle{display:block}.nav-cta{display:none}.topbar.open nav.primary{background:var(--paper-raised);border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:8px 20px 20px;display:flex;position:absolute;top:100%;left:0;right:0}.topbar.open nav.primary a{border-bottom:1px solid var(--line);padding:12px 0}.topbar.open .nav-cta{text-align:center;margin-top:14px;display:block}}.hero{border-bottom:1px solid var(--line);padding:96px 0 84px;position:relative}.hero-grid{grid-template-columns:1fr auto;align-items:start;gap:40px;display:grid}.hero-folio{color:var(--ink-faint);text-align:right;padding-top:6px;font-family:Plex Mono,monospace;font-size:12px;line-height:1.9}.hero-folio span{display:block}.hero h1{margin-top:18px;font-size:clamp(44px,7vw,78px);font-weight:300}.hero h1 em{color:var(--wine);font-style:italic;font-weight:500}.hero .role{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-top:14px;font-family:Plex Mono,monospace;font-size:14px}.hero p.lede{max-width:52ch;color:var(--ink-soft);margin-top:22px;font-size:18px}.hero-actions{flex-wrap:wrap;gap:16px;margin-top:34px;display:flex}.btn{cursor:pointer;border:none;border-radius:2px;align-items:center;gap:10px;padding:14px 26px;font-family:Public Sans,sans-serif;font-size:15px;font-weight:600;text-decoration:none;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.btn-primary{background:var(--wine);color:var(--on-wine)}.btn-primary:hover{background:var(--wine-deep);transform:translateY(-1px)}.btn-ghost{color:var(--ink);border:1px solid var(--line-strong);background:0 0}.btn-ghost:hover{border-color:var(--ink)}.hero-facts{border-top:1px solid var(--line);flex-wrap:wrap;gap:0;margin-top:56px;display:flex}.hero-facts div{flex:1;min-width:220px;padding:18px 24px 0 0}.hero-facts dt{letter-spacing:.08em;text-transform:uppercase;color:var(--wine);margin-bottom:6px;font-family:Plex Mono,monospace;font-size:11px}.hero-facts dd{color:var(--ink-soft);margin:0;font-size:14.5px}@media (width<=700px){.hero-grid{grid-template-columns:1fr}.hero-folio{text-align:left;padding-top:0}}section{border-bottom:1px solid var(--line);padding:80px 0}.section-head{grid-template-columns:220px 1fr;gap:40px;margin-bottom:48px;display:grid}.section-head h2{font-size:clamp(30px,4vw,40px);font-weight:400}.section-head .eyebrow{margin-bottom:14px}.section-head p.dek{color:var(--ink-soft);max-width:56ch;margin-top:10px;font-size:15.5px}@media (width<=700px){.section-head{grid-template-columns:1fr;gap:14px}}footer{padding:36px 0}.foot-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.foot-inner p{color:var(--ink-faint);margin:0;font-size:13px}.foot-links{gap:20px;display:flex}.foot-links a{color:var(--ink-soft);font-size:13px;text-decoration:none}.foot-links a:hover{color:var(--wine)}.foot-credit{color:var(--ink-faint);flex-basis:100%;font-size:12px}.foot-credit a{color:var(--ink-soft);border-bottom:1px solid;text-decoration:none}.foot-credit a:hover{color:var(--wine)}.wa-float{z-index:50;background:var(--wine);color:var(--on-wine);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;text-decoration:none;transition:transform .15s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 6px 18px #1c213047}.wa-float:hover{transform:scale(1.06)}.wa-float svg{width:26px;height:26px}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(14px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}.about-grid{grid-template-columns:280px 1fr;gap:56px;display:grid}.plate{aspect-ratio:4/5;background:var(--paper-raised);border:1px solid var(--line);position:relative;overflow:hidden}.plate:before{content:"";border:1px solid var(--line-strong);z-index:2;pointer-events:none;position:absolute;inset:14px}.plate img{object-fit:cover;filter:grayscale(.08)contrast(1.03);width:100%;height:100%;display:block}.plate .tag{text-align:center;z-index:3;letter-spacing:.12em;text-transform:uppercase;color:#faf6f0;text-shadow:0 1px 4px #00000080;font-family:Plex Mono,monospace;font-size:10.5px;position:absolute;bottom:22px;left:0;right:0}.about-body p{color:var(--ink-soft);max-width:62ch;margin:0 0 18px;font-size:17px}.about-body p:first-child{color:var(--ink);font-family:Fraunces Display,serif;font-size:22px;font-style:italic;line-height:1.45}.credentials{border-top:1px solid var(--line);flex-wrap:wrap;gap:36px;margin-top:28px;padding-top:24px;display:flex}.credentials div{color:var(--ink-soft);font-size:14px}.credentials strong{color:var(--ink);margin-bottom:2px;font-family:Fraunces Display,serif;font-size:15.5px;font-weight:500;display:block}@media (width<=700px){.about-grid{grid-template-columns:1fr}.plate{max-width:220px}}.areas{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.area-card{background:var(--paper-raised);flex-direction:column;gap:14px;padding:32px 28px;display:flex}.area-card .idx{color:var(--brass);letter-spacing:.1em;font-family:Plex Mono,monospace;font-size:11px}.area-card svg{width:30px;height:30px;color:var(--wine)}.area-card h3{margin-top:4px;font-size:19px;font-weight:500}.area-card p.desc{color:var(--ink-soft);margin:0;font-size:14.5px}.area-card ul{color:var(--ink-faint);border-top:1px solid var(--line);margin:6px 0 0;padding:12px 0 0;font-size:13.5px;list-style:none}.area-card li{padding:3px 0 3px 14px;position:relative}.area-card li:before{content:"—";color:var(--brass);position:absolute;left:0}@media (width<=900px){.areas{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.areas{grid-template-columns:1fr}}.process{grid-template-columns:repeat(4,1fr);gap:32px;display:grid}.step{border-top:2px solid var(--line-strong);padding-top:26px;position:relative}.step .num{color:var(--wine);letter-spacing:.08em;margin-bottom:10px;font-family:Plex Mono,monospace;font-size:13px;display:block}.step h3{margin-bottom:8px;font-size:18px;font-weight:500}.step p{color:var(--ink-soft);margin:0;font-size:14.5px}@media (width<=900px){.process{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.process{grid-template-columns:1fr}}.clause{background:var(--paper-raised);border:1px solid var(--line);padding:56px;position:relative}.clause:before{content:"§";color:var(--wine-tint);font-family:Fraunces Display,serif;font-size:52px;font-weight:600;position:absolute;top:28px;left:32px}.clause blockquote{color:var(--ink);max-width:46ch;margin:0;font-family:Fraunces Display,serif;font-size:clamp(22px,3vw,30px);font-style:italic;font-weight:500;line-height:1.5}.clause .who{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-top:24px;font-family:Plex Mono,monospace;font-size:12px}@media (width<=600px){.clause{padding:36px 28px}.clause:before{display:none}}.magnet{background:var(--paper-raised);border:1px solid var(--line);grid-template-columns:1fr 300px;align-items:center;gap:48px;padding:44px;display:grid}.magnet h3{margin-bottom:10px;font-size:24px;font-weight:500}.magnet p{color:var(--ink-soft);max-width:52ch;margin:0 0 20px;font-size:15px}.magnet-cover{aspect-ratio:3/4;background:var(--wine);color:var(--on-wine);border:1px solid var(--line-strong);flex-direction:column;justify-content:space-between;padding:22px;display:flex}.magnet-cover .k{letter-spacing:.1em;text-transform:uppercase;opacity:.75;font-family:Plex Mono,monospace;font-size:10.5px}.magnet-cover .t{font-family:Fraunces Display,serif;font-size:22px;font-style:italic;font-weight:500;line-height:1.3}@media (width<=800px){.magnet{grid-template-columns:1fr}.magnet-cover{max-width:220px}}.blog-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.blog-card{color:inherit;border:1px solid var(--line);background:var(--paper-raised);flex-direction:column;gap:10px;padding:26px;text-decoration:none;transition:border-color .15s;display:flex}.blog-card:hover{border-color:var(--wine)}.blog-card .cat{letter-spacing:.1em;text-transform:uppercase;color:var(--wine);font-family:Plex Mono,monospace;font-size:10.5px}.blog-card h3{font-size:18px;font-weight:500}.blog-card p{color:var(--ink-soft);margin:0;font-size:14px}.blog-card .read{color:var(--ink-faint);margin-top:auto;padding-top:10px;font-family:Plex Mono,monospace;font-size:11.5px}@media (width<=900px){.blog-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.blog-grid{grid-template-columns:1fr}}.booking{grid-template-columns:1fr 1fr;gap:56px;display:grid}.booking-copy p{color:var(--ink-soft);max-width:48ch;font-size:15.5px}.booking-copy ul{color:var(--ink-soft);padding-left:18px;font-size:14.5px}form.booking-form{background:var(--paper-raised);border:1px solid var(--line);flex-direction:column;gap:16px;padding:32px;display:flex}.row2{grid-template-columns:1fr 1fr;gap:16px;display:grid}form label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px;font-family:Plex Mono,monospace;font-size:11px;display:block}form input,form select,form textarea{background:var(--paper);border:1px solid var(--line-strong);width:100%;color:var(--ink);border-radius:2px;padding:12px 14px;font-family:Public Sans,sans-serif;font-size:15px}form textarea{resize:vertical;min-height:90px}form input:focus,form select:focus,form textarea:focus{border-color:var(--wine)}form .hint{color:var(--ink-faint);font-size:12.5px}@media (width<=800px){.booking,.row2{grid-template-columns:1fr}}.faq{max-width:760px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;font-family:Fraunces Display,serif;font-size:18px;font-weight:500;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--wine);flex-shrink:0;font-family:Plex Mono,monospace;font-size:20px;transition:transform .2s}.faq details[open] summary:after{transform:rotate(45deg)}.faq .a{color:var(--ink-soft);max-width:64ch;padding-top:12px;font-size:15px}.contact-grid{grid-template-columns:1fr 1fr;gap:56px;display:grid}.contact-list{flex-direction:column;gap:22px;display:flex}.contact-item{border-bottom:1px solid var(--line);color:inherit;justify-content:space-between;align-items:baseline;padding-bottom:16px;text-decoration:none;display:flex}.contact-item .label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-family:Plex Mono,monospace;font-size:11px}.contact-item .value{font-family:Fraunces Display,serif;font-size:19px;font-weight:500}.contact-item.link .value{color:var(--wine)}form.reach{flex-direction:column;gap:16px;display:flex}form.reach button{background:var(--wine);color:var(--on-wine);cursor:pointer;border:none;border-radius:2px;align-self:flex-start;padding:14px 26px;font-family:Public Sans,sans-serif;font-size:15px;font-weight:600}form.reach button:hover{background:var(--wine-deep)}@media (width<=800px){.contact-grid{grid-template-columns:1fr}}.post-list{background:var(--line);border:1px solid var(--line);flex-direction:column;gap:1px;display:flex}.post-row{background:var(--paper-raised);color:inherit;justify-content:space-between;align-items:center;gap:24px;padding:28px 32px;text-decoration:none;display:flex}.post-row:hover{background:var(--paper-sunken)}.post-row .cat{letter-spacing:.1em;text-transform:uppercase;color:var(--wine);margin-bottom:6px;font-family:Plex Mono,monospace;font-size:10.5px;display:block}.post-row h2{font-size:19px;font-weight:500}.post-row .arrow{color:var(--ink-faint);flex-shrink:0;font-family:Plex Mono,monospace}.glosario{gap:0;margin-top:8px;display:grid}.glos-item{border-bottom:1px solid var(--line);padding:22px 0;scroll-margin-top:90px}.glos-item:first-child{border-top:1px solid var(--line)}.glos-item dt{color:var(--wine);margin-bottom:8px;font-family:Fraunces Display,serif;font-size:20px;font-weight:500}.glos-item dd{color:var(--ink-soft);max-width:64ch;margin:0;font-size:15.5px;line-height:1.65}.glos-note{color:var(--ink-faint);margin-top:28px;font-size:13px}.slider{position:relative}.slider-track{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;gap:24px;margin:0;padding:4px 0 8px;scroll-padding-left:0;list-style:none;display:flex;overflow-x:auto}.slider-track:focus-visible{outline:2px solid var(--wine);outline-offset:4px}.slider-track::-webkit-scrollbar{height:6px}.slider-track::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:3px}.slider-slide{scroll-snap-align:start;flex:0 0 min(680px,100%)}.slider-slide .magnet{grid-template-columns:1fr 210px;gap:32px;height:100%;padding:36px}.slider-slide .magnet h3{font-size:22px}.slider-slide .magnet p{max-width:46ch;font-size:14.5px}.slider-slide .magnet-cover{padding:18px}.slider-slide .magnet-cover .t{font-size:19px}.slider-ui{align-items:center;gap:14px;margin-top:20px;display:flex}.slider-ui[hidden]{display:none}.slider-arrow{cursor:pointer;background:var(--paper-raised);border:1px solid var(--line-strong);width:40px;height:40px;color:var(--ink);flex:none;font-size:15px;line-height:1;transition:border-color .15s,color .15s}.slider-arrow:hover:not(:disabled){border-color:var(--wine);color:var(--wine)}.slider-arrow:disabled{opacity:.35;cursor:default}.slider-arrow:focus-visible{outline:2px solid var(--wine);outline-offset:2px}.slider-dots{align-items:center;gap:8px;display:flex}.slider-dot{cursor:pointer;border:1px solid var(--line-strong);background:0 0;border-radius:50%;width:8px;height:8px;padding:0;transition:background-color .15s,border-color .15s}.slider-dot[aria-selected=true]{background:var(--wine);border-color:var(--wine)}.slider-dot:focus-visible{outline:2px solid var(--wine);outline-offset:3px}@media (width<=800px){.slider-slide{flex-basis:min(560px,88%)}.slider-slide .magnet{grid-template-columns:1fr;padding:30px}.slider-slide .magnet-cover{max-width:200px}}@media (prefers-reduced-motion:reduce){.slider-track{scroll-behavior:auto}.slider-arrow,.slider-dot{transition:none}}
