@layer reset, base, layout, components, responsive;
@layer reset {
  *, *::before, *::after { box-sizing: border-box; }
  html { scroll-behavior: smooth; scroll-padding-top: 28px; }
  body, h1, h2, h3, p, ul, ol { margin: 0; }
  img, svg { display: block; max-width: 100%; }
  a { color: inherit; }
  button, input { font: inherit; }
}
@layer base {
  :root { --paper:#F6F7F9; --ink:#152536; --muted:#435A70; --line:#d6dee5; --accent:#ab492b; --orange:#F3A185; --pale:#e9eef3; --white:#ffffff; }
  body { font-family: Arial, Helvetica, sans-serif; color:var(--ink); background:var(--paper); font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased; }
  h1,h2,h3 { font-weight:600; letter-spacing:-.055em; line-height:1.04; }
  h1 { font-size:clamp(56px,6.5vw,94px); max-width:770px; }
  h2 { font-size:clamp(38px,4.4vw,60px); }
  h3 { font-size:28px; letter-spacing:-.035em; }
  a { text-decoration-thickness:1px; text-underline-offset:5px; }
  a:hover { color:var(--accent); }
  a:focus-visible, summary:focus-visible { outline:3px solid var(--accent); outline-offset:5px; border-radius:2px; }
  ::selection { background:#F3A185; color:var(--ink); }
  .skip { position:absolute; top:-100px; left:18px; padding:10px 16px; background:var(--white); z-index:20; }
  .skip:focus { top:14px; }
  .eyebrow { font-size:11px; line-height:1.4; font-weight:700; text-transform:uppercase; letter-spacing:.16em; }
  .accent { color:var(--accent); }
  .muted { color:var(--muted); }
  .body-lg { font-size:19px; line-height:1.65; }
  .mono { font-family:'Courier New', monospace; font-size:12px; font-weight:700; letter-spacing:.05em; }
}
@layer layout {
  .wrap { width:min(1232px, calc(100% - 96px)); margin-inline:auto; }
  .draftbar { background:var(--ink); color:#e7eadc; font-size:11px; text-transform:uppercase; letter-spacing:.08em; padding:10px 24px; text-align:center; }
  .draftbar a { margin-left:12px; color:#F3A185; white-space:nowrap; }
  .header { display:flex; align-items:center; justify-content:space-between; min-height:106px; border-bottom:1px solid var(--line); gap:24px; }
  .brand { display:flex; align-items:center; gap:10px; font-size:24px; font-weight:700; letter-spacing:-.065em; text-decoration:none; }
  .brand svg { width:36px; height:36px; flex:none; }
  .nav { display:flex; align-items:center; gap:30px; font-size:13px; }
  .nav a { text-decoration:none; }
  .nav .nav-contact { border:1px solid var(--ink); padding:10px 17px; border-radius:100px; }
  .hero { display:grid; grid-template-columns:1.1fr 1fr; gap:5%; align-items:center; padding-block:80px 94px; }
  .hero h1 { margin-top:29px; }
  .hero-copy > p { max-width:520px; margin-top:30px; color:var(--muted); }
  .hero .actions { margin-top:36px; }
  .actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; }
  .button { display:inline-flex; align-items:center; justify-content:center; gap:24px; background:var(--ink); color:var(--white); border:1px solid var(--ink); border-radius:100px; padding:14px 22px; text-decoration:none; font-size:13px; font-weight:700; min-height:50px; }
  .button:hover { background:var(--accent); border-color:var(--accent); color:var(--white); }
  .text-link { font-size:13px; font-weight:700; }
  .statusline { display:inline-flex; gap:9px; align-items:center; }
  .statusline::before { content:''; width:7px; height:7px; background:var(--accent); border-radius:50%; }
  .availability { margin-top:24px!important; font-size:12px; }
  .section { padding-block:80px; border-top:1px solid var(--line); }
  .section-head { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:end; margin-bottom:42px; }
  .section-head .eyebrow { margin-bottom:18px; }
  .section-head > p { max-width:430px; justify-self:end; color:var(--muted); }
  .features { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; }
  .feature { border-top:2px solid var(--ink); padding-top:20px; }
  .feature .number { font-size:12px; color:var(--accent); font-family:'Courier New',monospace; margin-bottom:52px; }
  .feature h3 { margin-bottom:16px; }
  .feature p { font-size:14px; color:var(--muted); max-width:330px; }
  .feature .tag { margin-top:25px; }
  .tag { display:inline-block; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; line-height:1.4; padding:7px 10px; border:1px solid var(--line); border-radius:100px; color:var(--muted); }
  .dark-section { background:#1E3349; color:var(--paper); padding-block:80px; }
  .dark-grid { display:grid; grid-template-columns:1fr 1fr; gap:12%; align-items:center; }
  .dark-grid h2 { margin-top:23px; }
  .dark-grid > div > p { margin-top:25px; color:#c3d0dd; max-width:430px; }
  .cycle-list { list-style:none; padding:0; counter-reset:cycle; }
  .cycle-list li { position:relative; padding:23px 0 24px 55px; border-top:1px solid #52677a; counter-increment:cycle; }
  .cycle-list li::before { content:'0' counter(cycle); position:absolute; left:0; top:24px; font:12px 'Courier New',monospace; color:#F3A185; }
  .cycle-list h3 { font-size:24px; letter-spacing:-.03em; }
  .cycle-list p { font-size:14px; color:#c3d0dd; margin-top:10px; }
  .development { display:grid; grid-template-columns:1fr 1fr; gap:8%; }
  .development h2 { margin-top:18px; }
  .development > div > p { margin-top:24px; max-width:480px; color:var(--muted); }
  .roadmap { list-style:none; padding:0; }
  .roadmap li { border-bottom:1px solid var(--line); padding:21px 0; display:grid; grid-template-columns:1fr auto; gap:10px 18px; }
  .roadmap li:first-child { padding-top:0; }
  .roadmap strong { font-size:18px; font-weight:600; letter-spacing:-.025em; }
  .roadmap p { grid-column:1/-1; font-size:13px; color:var(--muted); }
  .roadmap .tag { align-self:start; }
  .contact { display:grid; grid-template-columns:1.15fr 1fr; gap:40px; align-items:center; background:var(--pale); padding:48px; border-radius:2px; margin-bottom:75px; }
  .contact h2 { font-size:clamp(32px,3.5vw,48px); margin-top:15px; }
  .contact p { margin-top:16px; max-width:550px; color:var(--muted); font-size:14px; }
  .contact .contact-links { justify-self:end; }
  .email-link { font-size:16px; font-weight:700; overflow-wrap:anywhere; }
  .contact .small { font-size:12px; }
  .footer { border-top:1px solid var(--line); padding-block:30px 35px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
  .footer .brand { font-size:21px; }
  .footer .brand svg { width:28px; height:28px; }
  .footer-copy { font-size:11px; color:var(--muted); margin-top:8px; }
  .footer-nav { display:flex; flex-wrap:wrap; gap:22px; font-size:12px; }
}
@layer components {
  .visual { position:relative; background:var(--ink); color:var(--paper); border-radius:3px; min-height:615px; overflow:hidden; display:flex; flex-direction:column; }
  .visual-top { display:flex; align-items:center; justify-content:space-between; padding:25px 28px; z-index:1; }
  .visual-top .eyebrow { color:#c3d0dd; font-size:9px; }
  .visual-top .mono { color:#F3A185; font-size:10px; }
  .track-art { width:100%; height:300px; margin-top:-10px; }
  .visual-head { padding:0 30px; margin-top:-15px; position:relative; }
  .visual-head .eyebrow { font-size:10px; color:#c3d0dd; margin-bottom:12px; }
  .visual-head p { font-size:34px; letter-spacing:-.04em; font-weight:600; line-height:1.05; max-width:300px; }
  .example-week { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; padding:25px 30px 22px; }
  .day { display:flex; flex-direction:column; gap:14px; align-items:center; font:9px 'Courier New',monospace; color:#b0c1d1; }
  .day-line { width:100%; height:36px; background:#324c66; border-radius:3px; align-self:end; position:relative; }
  .day-line::after { content:''; position:absolute; left:0; right:0; bottom:0; background:#8ba2b7; border-radius:3px; height:var(--level,30%); }
  .day:nth-child(2) .day-line::after,.day:nth-child(7) .day-line::after { background:#F3A185; }
  .day.today { color:var(--paper); }
  .visual-caption { margin-top:auto; padding:16px 30px; border-top:1px solid #425b70; font-size:10px; color:#b6c8d9; }
  .legal-hero { padding-block:65px 50px; max-width:860px; }
  .legal-hero h1 { font-size:clamp(52px,6vw,80px); margin-top:22px; }
  .legal-hero .body-lg { margin-top:24px; color:var(--muted); max-width:710px; }
  .legal-meta { display:flex; flex-wrap:wrap; gap:12px 30px; margin-top:28px; font-size:12px; color:var(--muted); }
  .legal-layout { display:grid; grid-template-columns:225px 1fr; gap:75px; padding-block:20px 90px; align-items:start; }
  .legal-toc { border-top:1px solid var(--line); padding-top:20px; position:sticky; top:28px; }
  .legal-toc ol { list-style:none; padding:0; display:grid; gap:10px; margin-top:18px; font-size:12px; color:var(--muted); }
  .legal-toc a { text-decoration:none; }
  .legal-content { max-width:790px; min-width:0; }
  .legal-content section { border-top:1px solid var(--line); padding-block:28px 32px; }
  .legal-content h2 { font-size:28px; letter-spacing:-.04em; margin-bottom:18px; }
  .legal-content h3 { font-size:19px; letter-spacing:-.02em; margin-block:20px 10px; }
  .legal-content p, .legal-content ul, .legal-content ol { font-size:14px; color:#43544f; margin-top:14px; }
  .legal-content ul, .legal-content ol { padding-left:22px; }
  .legal-content li+li { margin-top:8px; }
  .legal-content a { overflow-wrap:anywhere; }
  .notice { border:1px solid #d4a98a; background:#f5e9da; padding:22px 25px; margin-bottom:32px; }
  .notice .eyebrow { color:#8c3c20; }
  .notice p { margin-top:9px; font-size:13px; color:#684d38; }
  .notice a { font-weight:700; }
  .review-content { max-width:860px; padding-bottom:80px; }
  .review-content h2 { font-size:30px; margin-bottom:22px; }
  .review-content section { border-top:1px solid var(--line); padding-block:30px; }
  .review-content p, .review-content li { font-size:14px; color:var(--muted); }
  .review-content ul, .review-content ol { padding-left:21px; }
  .review-content li+li { margin-top:12px; }
}
@layer responsive {
  @media(min-width:1550px) { .wrap { width:min(1370px,calc(100% - 140px)); } .hero { gap:8%; } }
  @media(max-width:1050px) { .wrap { width:calc(100% - 56px); } .nav { gap:20px; } .hero { gap:35px; padding-block:60px 70px; } h1 { font-size:64px; } .visual { min-height:570px; } .track-art { height:265px; } .visual-top { padding:23px 22px; } .visual-head,.visual-caption { padding-inline:23px; } .example-week { padding-inline:23px; } .legal-layout { gap:45px; grid-template-columns:180px 1fr; } }
  @media(max-width:780px) { .wrap { width:calc(100% - 40px); } .header { min-height:90px; } .brand { font-size:22px; } .nav { gap:18px; } .nav a:nth-child(2),.nav .nav-contact { display:none; } .hero { grid-template-columns:1fr; gap:44px; padding-block:50px 60px; } h1 { font-size:clamp(58px,11vw,84px); max-width:650px; } .hero-copy > p { max-width:610px; font-size:18px; margin-top:25px; } .visual { min-height:unset; max-width:600px; width:100%; justify-self:center; } .track-art { height:300px; } .visual-head p { max-width:100%; font-size:32px; } .visual-caption { padding-block:16px; } .section { padding-block:58px; } .section-head { grid-template-columns:1fr; gap:22px; margin-bottom:35px; } .section-head > p { justify-self:start; max-width:600px; } .features { gap:22px; } .feature .number { margin-bottom:30px; } .feature h3 { font-size:24px; } .dark-section { padding-block:58px; } .dark-grid { grid-template-columns:1fr; gap:40px; } .dark-grid > div > p { max-width:600px; } .development { grid-template-columns:1fr; gap:35px; } .development > div > p { max-width:610px; } .contact { grid-template-columns:1fr; padding:32px; gap:26px; margin-bottom:55px; } .contact .contact-links { justify-self:start; } .footer { align-items:start; } .footer-nav { max-width:220px; justify-content:end; gap:15px 20px; } .legal-hero { padding-top:48px; } .legal-layout { grid-template-columns:1fr; gap:25px; } .legal-toc { position:static; } .legal-toc ol { grid-template-columns:repeat(2,minmax(0,1fr)); } }
  @media(max-width:520px) { .draftbar { text-align:left; font-size:9px; padding:9px 20px; } .draftbar a { margin-left:6px; } .header { gap:12px; min-height:80px; } .brand { gap:7px; font-size:21px; } .brand svg { width:30px; height:30px; } .nav { font-size:11px; gap:17px; } .nav a:first-child { display:none; } .hero h1 { font-size:58px; } .hero { padding-top:42px; } .hero .actions { gap:20px; margin-top:28px; } .hero-copy > p { font-size:16px; } .button { padding:13px 20px; gap:20px; } .availability { font-size:11px; } .visual-top { padding:20px; } .visual-top .eyebrow { font-size:8px; } .track-art { height:250px; } .visual-head { padding-inline:22px; } .visual-head p { font-size:28px; max-width:250px; } .example-week { padding:23px 22px; } .visual-caption { padding-inline:22px; font-size:9px; } .features { grid-template-columns:1fr; gap:30px; } .feature { display:grid; grid-template-columns:30px 1fr; column-gap:15px; } .feature .number { grid-row:1/4; margin-top:5px; } .feature h3 { font-size:28px; margin-bottom:12px; } .feature p { max-width:100%; } .feature .tag { justify-self:start; margin-top:18px; } h2 { font-size:40px; } .section-head > p { font-size:14px; } .contact { padding:27px 23px; } .contact h2 { font-size:36px; } .email-link { font-size:14px; } .footer { display:block; } .footer-nav { max-width:none; justify-content:start; margin-top:23px; } .legal-hero h1 { font-size:54px; } .legal-hero .body-lg { font-size:17px; } .legal-meta { gap:8px 20px; } .legal-content h2 { font-size:25px; } .notice { padding:20px; } .legal-layout { padding-bottom:55px; } }
  @media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
}

@layer components {
.app-preview-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; align-items:start; }
.app-preview { margin:0; min-width:0; scroll-snap-align:start; }
.app-preview img { display:block; width:100%; max-width:360px; height:auto; margin-inline:auto; filter:drop-shadow(0 14px 16px rgba(21,37,54,.06)); }
.app-preview figcaption { max-width:360px; margin:22px auto 0; font-size:13px; line-height:1.6; color:var(--muted); padding-inline:8px; }
.app-preview figcaption strong { display:block; color:var(--ink); font-size:19px; font-weight:600; margin-bottom:4px; letter-spacing:-.02em; }
.app-preview-grid:focus-visible { outline:3px solid var(--accent); outline-offset:5px; }
@media(max-width:1050px) { .app-preview-grid { gap:20px; } }
@media(max-width:780px) { .app-preview-grid { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:min(82vw,340px); gap:22px; overflow-x:auto; scroll-snap-type:x mandatory; padding:0 0 22px; } .app-preview figcaption { margin-top:18px; } }
@media(prefers-reduced-motion:reduce) { .app-preview-grid { scroll-behavior:auto; } }
}

@layer components {
.visitor-privacy-copy { max-width:820px; color:var(--muted); font-size:13px; }
.visitor-privacy-copy p+p { margin-top:16px; }
.visitor-privacy-copy a { overflow-wrap:anywhere; }
}
