@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/hanken-grotesk-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/hanken-grotesk-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/hanken-grotesk-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/hanken-grotesk-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'DM Mono';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/dm-mono-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'DM Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/dm-mono-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-latin-400-italic.woff2) format('woff2')}
body{margin:0;background:#F4EDE0}
.herobg{background:#101A2E}
.vframe{background:#0A1222 url(hero-poster.webp) center/cover no-repeat}
@keyframes unroll{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 -40px 0)}}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.unroll{animation:unroll 1.3s cubic-bezier(.22,.8,.24,1) both}
.rise{animation:rise .8s .8s ease both}
.rise2{animation:rise .8s 1s ease both}
@media (prefers-reduced-motion:reduce){.unroll,.rise,.rise2{animation:none}}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #E9A23B;outline-offset:3px}
.stage:focus-within{outline:3px solid #E9A23B;outline-offset:4px}
.nav a:hover{text-decoration:underline}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nav a{min-height:44px;display:inline-flex;align-items:center}
@media (max-width:760px){.nav>div>a[href="#work"],.nav>div>a[href="#packages"],.nav>div>a[href="#process"],.nav>div>a[href="#faq"]{display:none}.nav>div{flex-wrap:nowrap!important;gap:12px 20px!important}.nav>a:first-child span{font-size:30px!important}}
summary{cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
details[open] .plus{transform:rotate(45deg)}
.skip{position:absolute;left:-9999px;top:8px;background:#F4EDE0;color:#101A2E;padding:10px 16px;border-radius:8px;z-index:100;font-weight:600}
.skip:focus{left:8px}
[hidden]{display:none!important}
/* legal pages */
.legal{max-width:46em;margin:0 auto;padding:56px 24px 96px;font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:18px;line-height:1.6;color:#101A2E}
.legal h1{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:clamp(40px,6vw,64px);line-height:1;margin:0 0 12px}
.legal h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:34px;line-height:1.1;margin:48px 0 12px}
.legal h3{font-size:19px;margin:28px 0 8px}
.legal table{border-collapse:collapse;width:100%;margin:12px 0 18px;font-size:16px}
.legal td,.legal th{border-top:1px solid #C9BB9B;padding:10px 8px;text-align:left;vertical-align:top}
.legal a{color:#8E1F0D}
mark.todo{background:#FFE08A;color:#101A2E;padding:0 4px;border-radius:4px}
.lnav{background:#101A2E;padding:20px 24px}
.lnav a{display:inline-flex;align-items:center;gap:12px;color:#F4EDE0;text-decoration:none;font-family:'Instrument Serif',Georgia,serif;font-size:30px;line-height:1}
/* ver31: audit fixes */
.mnav{display:none}
footer a{display:inline-flex;align-items:center;min-height:44px}
.hs button.soundbtn{min-height:44px}
.skip{min-height:44px;display:inline-flex;align-items:center}
.nav{position:relative}
.swipe{display:none}
.pkgscroll th:first-child,.pkgscroll td:first-child{position:sticky;left:0;background:#FBF7EE}
.mnav summary{display:flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid #4A5878;border-radius:999px;color:#F4EDE0;font-weight:500;font-size:15px}
.mnav .mpanel{position:absolute;left:0;right:0;top:100%;margin-top:6px;z-index:30;background:#101A2E;border:1px solid #33405C;border-radius:12px;padding:6px;display:flex;flex-direction:column;box-shadow:0 20px 40px -16px rgba(0,0,0,.7)}
.mnav .mpanel a{display:flex;align-items:center;min-height:48px;padding:0 14px;color:#F4EDE0;text-decoration:none;font-size:17px}
@media (max-width:760px){
.nav{flex-wrap:nowrap!important;justify-content:flex-start!important;gap:10px!important;padding-top:10px!important}
.nav>div>a:not([href="#book"]){display:none}
.nav>div{flex:0 0 auto;margin-left:0}
.nav>a:first-child{flex:0 0 auto;gap:8px!important}
.nav>a:first-child svg{width:34px;height:34px}
.nav>a:first-child span{font-size:26px!important}
.nav a[href="#book"]{padding:10px 14px!important;font-size:15px!important;white-space:nowrap}
.mnav{display:block;margin-left:auto}
.hs .vframe{aspect-ratio:4/3!important}
.pkgscroll td:first-child,.pkgscroll th:first-child{max-width:150px}
.swipe{display:block;font-size:14px;color:#4A4F5C;margin:10px 0 0}
}
summary{min-height:48px;display:flex;align-items:center}
