/* V2 palette and type, from the app's V2 tokens (ivory, bronze, cool near-black, EB Garamond only). */
:root{--solid:#121418;--panel:rgba(14,14,17,.78);--card:rgba(18,19,22,.94);--ivory:#f4ecdc;--ivory-dim:#d6cab3;--bronze:#d9a05e;--edge:rgba(201,151,96,.55);--soft:rgba(201,151,96,.24);--serif:'EB Garamond',Georgia,serif}
*{box-sizing:border-box}
body{margin:0;color:var(--ivory);font:19px/1.6 var(--serif);background:linear-gradient(to bottom,rgba(8,9,12,.55),rgba(8,9,12,.82) 520px,var(--solid) 900px),url(/assets/bg-desktop.webp) top center/cover no-repeat,var(--solid)}
@media (max-width:760px){body{background:linear-gradient(to bottom,rgba(8,9,12,.5),rgba(8,9,12,.85) 480px,var(--solid) 820px),url(/assets/bg-mobile.webp) top center/100% auto no-repeat,var(--solid)}}
a{color:var(--bronze)}
.wrap{max-width:980px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:var(--bronze);color:var(--solid);padding:8px}
.header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;padding-bottom:20px}
.logo{height:48px;width:auto;display:block}
nav{display:flex;flex-wrap:wrap;gap:6px 22px}
nav a{font-size:17px;text-decoration:none;color:var(--ivory-dim)}nav a:hover{color:var(--bronze)}
h1,h2{font-family:var(--serif);font-weight:500;line-height:1.1}
h1{font-size:clamp(40px,6.5vw,68px);margin:8px 0 18px}h1 span{color:var(--bronze);font-style:italic}
h2{font-size:26px;margin:34px 0 6px;color:var(--bronze)}
.eyebrow{font-size:15px;letter-spacing:.2em;text-transform:uppercase;color:var(--ivory-dim);opacity:.8;margin:44px 0 0}
.lead{font-size:23px;color:var(--ivory-dim);max-width:600px}
.button{display:inline-block;margin-top:10px;padding:13px 28px;border-radius:999px;border:1px solid var(--edge);background:linear-gradient(to bottom,#e3ad6d,#b98146);color:#17110a;font:500 20px var(--serif);text-decoration:none;transition:transform .15s,box-shadow .15s}
.button:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(217,160,94,.3)}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;padding:30px 0}
.hero-phones{position:relative;height:520px}
.hero-phones img{position:absolute;width:56%;border-radius:22px;border:1px solid var(--edge);box-shadow:0 30px 60px rgba(0,0,0,.6)}
.hero-phones img:first-child{right:0;top:40px;transform:rotate(5deg)}.hero-phones img:last-child{left:4%;top:0;transform:rotate(-4deg)}
.steps{padding:30px 0}
.step{display:grid;grid-template-columns:260px 1fr;gap:44px;align-items:center;margin:36px 0;padding:24px;border:1px solid var(--soft);border-radius:18px;background:var(--panel)}
.step.flip{grid-template-columns:1fr 260px}.step.flip img{order:2}
.step img{width:100%;border-radius:16px;border:1px solid var(--edge)}
.step h2{font-size:36px;margin:4px 0 10px}.step p{color:var(--ivory-dim);font-size:21px}
.rune{font-size:40px;color:var(--bronze);opacity:.6;line-height:1}
.strip{display:flex;gap:18px;overflow-x:auto;padding:16px 2px 20px;scroll-snap-type:x mandatory}
.strip img{flex:0 0 200px;width:200px;border-radius:16px;border:1px solid var(--edge);scroll-snap-align:start}
.cta-line{color:var(--ivory-dim);font-style:italic}
.closing{text-align:center;padding:50px 0 70px;border-top:1px solid var(--soft);margin-top:30px}.closing h2{font-size:clamp(30px,4vw,44px);color:var(--ivory)}
.legal{max-width:740px;margin:20px 0 50px;padding:10px 32px 30px;border:1px solid var(--soft);border-radius:18px;background:var(--card)}
.legal p,.legal li{color:var(--ivory-dim)}.legal strong{color:var(--ivory)}
.footer{border-top:1px solid var(--soft);padding-top:22px;padding-bottom:40px;color:var(--ivory-dim);font-size:16px}.footer nav a{font-size:15px}
@media (max-width:760px){.hero{grid-template-columns:1fr}.hero-phones{height:400px}.step,.step.flip{grid-template-columns:1fr;gap:18px}.step.flip img{order:0}.step img{max-width:260px}.legal{padding:4px 18px 20px}}
/* Policy pages: summary card, contents, tables */
.legal.policy{max-width:860px}
.legal .meta{font-size:16px;opacity:.8;margin-top:-6px}
.legal .lede{font-size:21px;color:var(--ivory)}
.summary{margin:26px 0;padding:6px 24px 14px;border:1px solid var(--edge);border-radius:14px;background:linear-gradient(to bottom,rgba(217,160,94,.10),rgba(217,160,94,.03))}
.summary h2{margin-top:14px}
.toc{margin:26px 0 10px;padding:14px 24px;border-left:2px solid var(--edge)}
.toc p{margin:0 0 6px;font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory-dim)}
.toc ol{columns:2;column-gap:32px;margin:0;padding-left:22px}.toc li{break-inside:avoid;margin:2px 0}
.toc a{text-decoration:none}.toc a:hover{text-decoration:underline}
.legal h2[id]{scroll-margin-top:20px;padding-top:10px;border-top:1px solid var(--soft)}
.table-wrap{overflow-x:auto;margin:14px 0;border:1px solid var(--soft);border-radius:12px}
.legal table{width:100%;border-collapse:collapse;font-size:17px;line-height:1.45}
.legal th{text-align:left;font-weight:500;color:var(--bronze);background:rgba(217,160,94,.08);padding:10px 14px}
.legal td{vertical-align:top;padding:10px 14px;border-top:1px solid var(--soft);color:var(--ivory-dim)}
.legal td:first-child{color:var(--ivory);white-space:nowrap}
.providers li{margin:6px 0}
@media (max-width:760px){.toc ol{columns:1}.legal td:first-child{white-space:normal}.legal table{font-size:16px}}
/* V2 components, matched to src/styles/v2.css (wordmark, primary/outline buttons) */
.logo{height:30px;filter:brightness(1.36) contrast(1.1) drop-shadow(0 0 .6px rgba(0,0,0,.95)) drop-shadow(0 0 .6px rgba(0,0,0,.95)) drop-shadow(0 1px 1px rgba(0,0,0,.7))}
.button{border-radius:10px;padding:12px 26px;border:1px solid transparent;color:#fff4e6;text-shadow:0 1px 3px rgba(48,14,3,.7);background-color:#b8431a;background-image:url(/assets/begin-scroll-button.webp);background-size:cover;background-position:right 66%;box-shadow:inset 0 0 0 1px rgba(208,166,60,.48),inset 0 1px 0 rgba(255,216,176,.22),inset 0 -2px 8px rgba(60,18,4,.42)}
.button:hover{box-shadow:inset 0 0 0 1px rgba(208,166,60,.7),0 8px 24px rgba(184,67,26,.35)}
.step,.legal,.cards div{border-radius:12px;border-color:var(--edge);background:rgba(18,19,22,.9)}
.summary{border-radius:12px}
/* V2 lockup (AuthV2): raven-nib emblem + V2 wordmark */
.lockup{display:flex;align-items:center;gap:10px}
.lockup__emblem{height:44px;width:auto;filter:drop-shadow(0 3px 8px rgba(0,0,0,.65))}
.brand{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:6px}
.brand__emblem{width:clamp(96px,12vw,140px);height:auto;filter:drop-shadow(0 6px 16px rgba(0,0,0,.65))}
.brand__wordmark{width:clamp(200px,26vw,300px);height:auto;margin-top:12px;filter:drop-shadow(0 3px 10px rgba(0,0,0,.7))}
.brand__tagline{margin:10px 0 0;font-style:italic;font-size:1.35rem;color:var(--ivory);text-shadow:0 1px 8px rgba(0,0,0,.85)}
@media (max-width:760px){.brand{align-items:center;text-align:center;width:100%}}
/* Art behind every page, not just the top: a fixed layer (works on mobile, unlike background-attachment:fixed) */
body{background:var(--solid)}
body::before{content:'';position:fixed;inset:0;z-index:-1;background:linear-gradient(to bottom,rgba(8,9,12,.35),rgba(8,9,12,.55) 60%,rgba(8,9,12,.7)),url(/assets/bg-desktop.webp) center/cover no-repeat}
@media (max-width:760px){body::before{background:linear-gradient(to bottom,rgba(8,9,12,.35),rgba(8,9,12,.6)),url(/assets/bg-mobile.webp) center/cover no-repeat}}
.legal,.step,.cards div{background:rgba(14,14,17,.74);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 20px 50px rgba(0,0,0,.45)}
.legal h1{background:linear-gradient(to bottom,#f4ecdc,#e8b77a);-webkit-background-clip:text;background-clip:text;color:transparent}
.legal h2[id]{display:flex;align-items:baseline;gap:10px;color:#e8b77a}
.legal .table-wrap{background:rgba(8,9,12,.45)}
.legal th{background:linear-gradient(to bottom,rgba(217,160,94,.22),rgba(217,160,94,.10))}
.legal tbody tr:nth-child(even) td{background:rgba(217,160,94,.04)}
.legal ul li::marker{color:var(--bronze)}
.toc{background:rgba(217,160,94,.06);border-radius:0 12px 12px 0}
/* Tables: let every column wrap; short label columns stay compact, long text gets the room */
.legal td:first-child{white-space:normal;min-width:7.5em}
.legal table{table-layout:auto}
.legal td,.legal th{overflow-wrap:anywhere}
@media (max-width:640px){
  .legal thead{display:none}
  .legal table,.legal tbody,.legal tr,.legal td{display:block;width:100%}
  .legal tr{padding:10px 14px;border-top:1px solid var(--soft)}
  .legal tbody tr:first-child{border-top:0}
  .legal td{border:0;padding:2px 0}
  .legal td:first-child{color:var(--bronze);font-weight:500}
}
/* Contents: not the header nav layout; label on top, even two-column grid */
.toc{display:block;padding:16px 24px 18px}
.toc p{margin:0 0 10px}
.toc ol{columns:auto;display:grid;grid-template-columns:1fr 1fr;grid-auto-flow:column;grid-template-rows:repeat(7,auto);gap:6px 32px;padding-left:1.6em;margin:0}
.toc li{margin:0;padding-left:4px}
.toc li::marker{color:var(--bronze)}
.toc a{color:var(--ivory)}.toc a:hover{color:var(--bronze)}
@media (max-width:640px){.toc ol{grid-template-columns:1fr;grid-auto-flow:row;grid-template-rows:none}}
/* Contents: same full rounded card as the summary above it */
.toc{border:1px solid var(--soft);border-left:1px solid var(--soft);border-radius:12px;background:rgba(14,14,17,.55)}
/* Legal documents: one calm, solid reading panel. No nested boxes, no zebra rows. */
.legal{max-width:820px;margin:24px auto 60px;padding:44px 56px 48px;background:rgba(16,16,19,.94);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--soft);border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.5)}
.legal h1{background:none;color:var(--ivory);-webkit-text-fill-color:currentColor;font-size:clamp(36px,5vw,52px);margin:6px 0 4px}
.legal .meta{margin:0 0 28px;color:var(--ivory-dim);font-size:16px;opacity:1}
.legal h2,.legal h2[id]{display:block;border:0;padding:0;margin:38px 0 10px;font-size:24px;color:var(--bronze)}
.legal h3{margin:22px 0 6px;font-size:19px;font-weight:500;color:var(--ivory)}
.legal p,.legal li{color:#ddd3c0;font-size:18px;line-height:1.7}
.legal ul,.legal ol{padding-left:1.3em}.legal li{margin:6px 0}
.legal ul li::marker{color:var(--bronze)}
.legal strong{color:var(--ivory);font-weight:500}
.legal a{color:var(--bronze);text-underline-offset:3px}
@media (max-width:760px){.legal{padding:26px 20px 30px;margin:12px auto 40px}.legal p,.legal li{font-size:17px}}
/* Home: lockup stacked and centred like AuthV2 (emblem centred over wordmark, tagline under both) */
.brand{display:inline-flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:10px}
/* Home: steps sit openly on the art, no panels */
.step,.step.flip{background:none;border:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;border-radius:0}
.step img{border:1px solid var(--soft);border-radius:18px;box-shadow:0 24px 50px rgba(0,0,0,.6)}
.step h2{color:var(--bronze)}
.step p{color:#ddd3c0;text-shadow:0 1px 8px rgba(0,0,0,.8)}
.steps .eyebrow,.gallery .eyebrow{color:var(--ivory)}
