/* Digital Eye site styles. Tokens and rules come from brand/BRAND_GUIDELINES.md */
:root{
  --onyx:#141210;--walnut:#241F1A;--ivory:#F6F1E6;--sand:#E9E1D1;
  --stone:#C9BFAE;--umber:#5A5045;--amber:#F2B233;--burnt:#9A4F00;
  --sos:#2E7D32;--trust:#1565C0;--signal:#FFE600;
  --sans:"Atkinson Hyperlegible",Verdana,Arial,sans-serif;
  --bg:var(--ivory);--surface:#FFFCF5;--alt:var(--sand);--ink:var(--onyx);--muted:var(--umber);
  --accent:var(--burnt);--accent-ink:#fff;--line:#D9CFBD;
}
.dark{--bg:var(--onyx);--surface:var(--walnut);--ink:var(--ivory);--muted:var(--stone);
  --accent:var(--amber);--accent-ink:var(--onyx);--line:#40382F}
:root[data-contrast="high"],:root[data-contrast="high"] .dark{--bg:#000;--surface:#000;--alt:#000;--ink:var(--signal);--muted:var(--signal);
  --accent:var(--signal);--accent-ink:#000;--line:var(--signal)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.125rem/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:.2em}
button{font:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}
.wrap{max-width:1160px;margin:0 auto;padding:0 32px}
.skip{position:absolute;left:-999px;top:8px;background:#000;color:#fff;padding:10px 16px;z-index:5}
.skip:focus{left:16px}

h1,h2,h3{font-weight:700;margin:0;text-wrap:balance}
h1{font-size:clamp(2.6rem,5.2vw,4.25rem);line-height:1.05;letter-spacing:-.025em}
h2{font-size:clamp(1.9rem,3.2vw,2.75rem);line-height:1.12;letter-spacing:-.02em}
h3{font-size:1.375rem;line-height:1.3}
p{margin:0}
.muted{color:var(--muted)}
.lead{font-size:1.3125rem;line-height:1.5;color:var(--muted);max-width:30em}
.section-lead{font-size:1.1875rem;color:var(--muted);max-width:36em;margin-top:16px}

.logo{display:block;width:176px;height:44px;background:currentColor;
  -webkit-mask:url(logo/logo-mono.svg) left center/contain no-repeat;mask:url(logo/logo-mono.svg) left center/contain no-repeat}
.site-head{background:var(--bg);color:var(--ink);border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:12px;padding-bottom:12px}
.site-head nav{display:flex;align-items:center;gap:28px;font-size:1rem}
.site-head nav a{text-decoration:none}
.site-head nav a:hover{text-decoration:underline}
.toggle{background:none;color:var(--ink);border:1px solid var(--ink);border-radius:8px;padding:6px 14px;font-size:1rem;min-height:44px}

.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:var(--accent-ink);font-weight:700;
  text-decoration:none;padding:12px 24px;border-radius:8px;min-height:52px}
.btn:hover{filter:brightness(.88)}

.hero{padding:56px 0 72px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:64px;align-items:center}
.hero .lead{margin-top:24px}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:32px}
.facts{list-style:none;margin:40px 0 0;padding:24px 0 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px 32px;font-size:1.0625rem}
.demo-fig{margin:0}
.demo-fig figcaption{font-size:1rem;color:var(--muted);text-align:center;margin:20px auto 0;max-width:340px}

.tour{background:var(--alt);padding:80px 0}
.tour-grid{display:grid;grid-template-columns:380px minmax(0,1fr);gap:64px;margin-top:48px;align-items:start}
.tour-phone{position:sticky;top:24px}
.steps{list-style:none;margin:0;padding:0}
.step{display:block;width:100%;text-align:left;background:none;color:var(--ink);border:0;border-left:4px solid var(--line);padding:24px 0 24px 24px;min-height:44px}
.step strong{display:block;font-size:1.375rem;line-height:1.3}
.step span{display:block;color:var(--muted);margin-top:6px;max-width:30em}
.step:hover strong{text-decoration:underline}
.step[aria-current=true]{border-left-color:var(--accent)}

.section{padding:80px 0}
.section.alt{background:var(--alt)}
.table-wrap{margin-top:40px;overflow-x:auto}
table{width:100%;border-collapse:collapse;min-width:520px}
th,td{text-align:left;padding:16px 16px 16px 0;border-bottom:1px solid var(--line);font-weight:400}
thead th{font-weight:700;border-bottom:2px solid var(--ink)}
tbody th{font-weight:700}
td:nth-child(2){font-weight:700}
.tiers{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}
.tier{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:32px}
.tier ul{margin:16px 0 0;padding-left:1.2em}
.tier li{margin-bottom:8px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.split .btn{margin-top:32px}
.checks{list-style:none;margin:0;padding:0}
.checks li{padding:16px 0;border-top:1px solid var(--line);color:var(--muted)}
.checks strong{display:block;color:var(--ink);font-size:1.1875rem}
.plain-list{margin:0;padding-left:1.3em}
.plain-list li{margin-bottom:16px}
details{border-top:1px solid var(--line);padding:16px 0}
details:last-child{border-bottom:1px solid var(--line)}
summary{font-weight:700;font-size:1.1875rem;cursor:pointer;min-height:32px}
details p{margin-top:8px;color:var(--muted);max-width:38em}

.foot{background:var(--bg);color:var(--ink);padding:64px 0 32px;font-size:1rem}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px}
.foot .logo{margin-bottom:16px}
.foot-title{font-weight:700;margin-bottom:12px}
.foot ul{list-style:none;margin:0;padding:0}
.foot li{margin-bottom:8px}
.foot li a{text-decoration:none;color:var(--muted)}
.foot li a:hover{text-decoration:underline;color:var(--ink)}
.foot-base{border-top:1px solid var(--line);padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 40px;color:var(--muted)}
.foot-base p:last-child{max-width:40em}

/* Legal and brand pages */
.legal{padding:64px 0 96px;background:var(--bg);color:var(--ink)}
.legal .wrap{max-width:780px}
.legal h1{font-size:clamp(2.4rem,5vw,3.5rem);margin-bottom:16px}
.legal h2{font-size:1.625rem;line-height:1.25;margin:48px 0 12px;letter-spacing:-.01em}
.legal p,.legal ul{margin:0 0 16px}
.legal li{margin-bottom:8px}
.fill{background:var(--signal);color:#000;padding:0 .3em;border-radius:3px}
.draft{border:1px solid var(--line);border-radius:12px;padding:16px 20px;margin:32px 0 0}
.band{background:var(--bg);color:var(--ink);padding:80px 0}
.eyebrow{font-weight:700;color:var(--accent);margin-bottom:16px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:64px}

@media (max-width:960px){
  .wrap{padding:0 16px}
  .site-head nav a{display:none}
  .hero{padding:32px 0 56px}
  .hero-grid,.tour-grid,.split,.tiers,.two{grid-template-columns:1fr}
  .hero-grid,.split,.two{gap:40px}
  .tour,.section,.band{padding:56px 0}
  .tour-grid{gap:32px;margin-top:32px}
  .tour-phone{position:static}
  .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
  .foot-brand{grid-column:1/-1}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
