@import url('fonts.css');
:root{--font-body:'Instrument Sans';--font-heading:'Sora';--font-mono:'IBM Plex Mono';--ink:#2b2320;--cream:#fbf3ef;--coral:#e8503a;--muted:#6b675c;--rule:#e3d9d1;--shell-bg:#fbf3ef;--shell-fg:#2b2320}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.55 var(--font-body),sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}img,svg{max-width:100%}button,a,input,select,textarea,summary{touch-action:manipulation}:focus-visible{outline:2px solid #a73725;outline-offset:5px}button:disabled{cursor:default}[hidden]{display:none!important}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.eyebrow{font:500 11px/1.5 var(--font-mono),monospace;letter-spacing:.09em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;padding:12px 23px;border:1px solid transparent;border-radius:4px;text-decoration:none;font-size:14px;font-weight:600;line-height:1.4;transition:background .18s,color .18s}.button-primary{background:var(--ink);color:var(--cream)}.button-primary:hover{background:#4a3830}.button-secondary{border-color:#c5b8af;color:var(--ink);background:transparent}.button-secondary:hover{background:#eee3db}.skip-link{position:fixed;top:-100px;left:20px;z-index:999;background:var(--ink);color:white;padding:12px 20px}.skip-link:focus{top:10px}
.review-bar{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#eee8e2;color:#544b43;font-size:11px;line-height:1}.review-home{text-decoration:none;font-weight:600;letter-spacing:.03em}.review-options{display:flex;gap:4px;height:100%;align-items:center}.review-options a{padding:7px 13px;border-radius:3px;text-decoration:none;white-space:nowrap}.review-options a[aria-current=page]{background:#fffaf6;color:#2b2320;box-shadow:0 1px 3px #2b23200d}.review-number{font-family:var(--font-mono);margin-right:6px;font-size:9px;color:#8a756a}
#site-header{position:sticky;top:0;z-index:40;background:var(--shell-bg);color:var(--shell-fg);border-bottom:1px solid var(--rule)}.header-row{height:84px;display:flex;align-items:center;gap:40px}.brand-link{display:flex;flex:0 0 113px;align-items:center;text-decoration:none}.brand-logo{display:block;width:113px;height:auto}.main-nav{display:flex;align-items:stretch;height:100%;gap:25px;flex:1}.nav-trigger{border:0;background:none;color:inherit;padding:0;font-size:14px;font-weight:500;display:flex;align-items:center;gap:7px;position:relative}.nav-trigger::after{content:'';border:solid currentColor;border-width:0 1px 1px 0;padding:2px;transform:rotate(45deg);margin-top:-3px;opacity:.6}.nav-trigger[aria-expanded=true]::before{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--coral)}.nav-trigger[aria-expanded=true]::after{transform:rotate(225deg);margin-top:3px}.header-actions{display:flex;align-items:center;gap:25px}.client-link{border:0;background:none;color:inherit;font-size:12px;padding:10px 0}.header-contact{font-size:12px;min-height:41px;padding:10px 17px}.mobile-toggle{display:none;border:1px solid var(--rule);padding:9px 12px;background:none;color:inherit;border-radius:3px;font-size:12px}.mega-panel{position:absolute;left:0;right:0;top:100%;background:var(--shell-bg);color:var(--shell-fg);border-bottom:1px solid var(--rule);box-shadow:0 22px 26px #2b232012}.mega-layout{display:grid;grid-template-columns:1fr 1fr 1fr 1.04fr;gap:38px;padding-block:37px 34px}.mega-column h2{font:500 10px var(--font-mono);letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin:0 0 21px}.mega-item{display:block;width:100%;padding:0;margin:0 0 18px;text-align:left;text-decoration:none;background:none;border:0;color:inherit;line-height:1.3}.mega-item strong{display:block;font-size:15px;font-weight:600;margin-bottom:4px}.mega-item small{display:block;font-size:12px;color:var(--muted);line-height:1.55;max-width:220px}.mega-item:hover strong{text-decoration:underline;text-underline-offset:4px;color:#a73725}.mega-aside{background:#f0e6df;padding:25px;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;min-height:255px}.mega-aside span{font:500 10px var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.mega-aside h3{font:500 26px/1.25 var(--font-heading);letter-spacing:-.04em;margin:22px 0 15px}.mega-aside p{font-size:13px;color:var(--muted);margin:0 0 24px}.mega-aside button{border:0;background:none;text-align:left;padding:0;font-size:13px;font-weight:600;color:inherit}.mega-aside button span{font:inherit;float:right;font-size:18px}.mega-footer{border-top:1px solid var(--rule);padding-block:14px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.mega-footer a{text-decoration:none}.menu-shade{position:fixed;inset:0;z-index:35;background:#21150e26;backdrop-filter:blur(2px);border:0;padding:0;cursor:default}
#site-footer{background:var(--shell-bg);color:var(--shell-fg);border-top:1px solid var(--rule);padding:48px 0 20px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.footer-brand img{width:105px;display:block}.footer-brand p{font-size:14px;margin-top:20px}.footer-col h3{font:500 10px var(--font-mono);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 18px}.footer-col a,.footer-col button{display:block;padding:4px 0;border:0;background:none;color:inherit;text-decoration:none;font-size:12px;text-align:left}.footer-col a:hover,.footer-col button:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:40px;padding-top:17px;border-top:1px solid var(--rule);font-size:10px;color:var(--muted)}
.prototype-dialog{border:1px solid #d3c3b7;border-radius:6px;padding:0;width:min(620px,calc(100% - 32px));max-height:88dvh;overflow:auto;background:#fbf3ef;color:#2b2320;box-shadow:0 20px 100px #160c0640}.prototype-dialog::backdrop{background:#21150e90;backdrop-filter:blur(4px)}.dialog-body{padding:42px}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:24px;padding:3px 10px;color:#6b675c}.dialog-kicker{font:500 10px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#887263;margin:0 0 25px}.prototype-dialog h2{font:500 34px/1.2 var(--font-heading);letter-spacing:-.04em;margin:0 0 18px}.dialog-description{font-size:16px;color:#6b675c}.dialog-price{font-size:26px;font-weight:600;line-height:1.4;margin:27px 0 7px}.dialog-price small{font-size:13px;font-weight:400}.dialog-features{padding:20px 0;list-style:none;border-block:1px solid #e3d9d1;font-size:14px}.dialog-features li{padding:5px 0}.dialog-features li::before{content:'—';margin-right:12px;color:#a73725}.dialog-note{font-size:11px;color:#86776c;margin-top:18px;line-height:1.6}.contact-form label{display:block;font-size:13px;font-weight:600;margin:20px 0 7px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #cdbfb3;border-radius:3px;padding:12px;background:#fffaf6;color:#2b2320;resize:vertical;font-size:14px}.contact-form .button{margin-top:20px}.form-success{border-left:2px solid #0e7c66;padding:12px 20px;background:#f0eee4;font-size:14px;margin-top:20px}.form-success p{margin:5px 0}.form-success small{color:#6b675c}.dialog-open{overflow:hidden}
body[data-direction=structure]{--shell-bg:#f7f7f5;--rule:#deded9;--muted:#6d6e69}body[data-direction=structure] .button,body[data-direction=structure] .mega-aside{border-radius:0}body[data-direction=structure] .mega-aside{background:#edede8}
body[data-direction=presence]{--shell-bg:#2b211e;--shell-fg:#fbf3ef;--rule:#53423a;--muted:#b6a59b}body[data-direction=presence] .header-contact{background:#fbf3ef;color:#2b211e}body[data-direction=presence] .mega-aside{background:#382a24}body[data-direction=presence] .mega-item:hover strong{color:#ff8e78}body[data-direction=presence] :focus-visible{outline-color:#ff8e78}body[data-direction=presence] .prototype-dialog :focus-visible{outline-color:#a73725}
@media(min-width:1500px){.wrap{width:min(1280px,calc(100% - 120px))}}@media(max-width:1200px){.header-row{gap:27px}.main-nav{gap:18px}.header-actions{gap:15px}.client-link{display:none}.mega-layout{gap:24px}.mega-aside{padding:20px}.wrap{width:calc(100% - 64px)}}
@media(max-width:960px){.wrap{width:calc(100% - 40px)}.header-row{height:72px;justify-content:space-between}.brand-link{flex-basis:100px}.brand-logo{width:100px}.mobile-toggle{display:block}.header-actions{margin-left:auto}.header-contact{display:none}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;height:auto;padding:12px 20px 18px;background:var(--shell-bg);border-bottom:1px solid var(--rule)}.main-nav.mobile-open{display:block}.nav-trigger{width:100%;justify-content:space-between;padding:13px 0;font-size:17px;border-bottom:1px solid var(--rule)}.nav-trigger[aria-expanded=true]::before{display:none}.mega-panel{position:static;box-shadow:none;border-bottom:0;max-height:58dvh;overflow:auto}.mega-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:23px 0 6px;width:100%}.mega-column h2{font-size:9px}.mega-item{margin-bottom:18px}.mega-item strong{font-size:14px}.mega-item small{font-size:11px}.mega-aside{min-height:200px}.mega-aside h3{font-size:20px}.mega-footer{display:none}.footer-top{grid-template-columns:1.6fr 1fr 1fr;gap:30px}.footer-col:last-child{display:none}.review-bar{padding:0 20px}.review-home{font-size:10px}.review-options a{padding:7px 9px}.review-number{display:none}}
@media(max-width:560px){.review-bar{height:38px;padding:0 13px}.review-home{font-size:9px}.review-options{gap:0}.review-options a{font-size:10px;padding:7px 8px}.review-home span{display:none}.mega-aside{display:none}.mega-layout{gap:20px}.mega-column:last-of-type{grid-column:1/-1}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{display:block;font-size:10px}.footer-bottom span{display:block;margin-top:7px}.dialog-body{padding:36px 24px}.prototype-dialog h2{font-size:27px}.dialog-price{font-size:22px}.button{padding:12px 18px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

@media(max-width:960px){.main-nav{max-height:calc(100dvh - 72px);overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:960px){.main-nav{max-height:calc(100dvh - 110px)}.mega-panel{max-height:none;overflow:visible}}
@media(max-width:960px){body:has(.main-nav.mobile-open){overflow:hidden}}
