/* Sub-pages: path pages, forms, thank-you, legal. Extends styles.css tokens. */
.ph{position:relative;padding:150px 0 56px;overflow:hidden}
.ph .hero-bg .glow{top:260px;height:560px;opacity:.75}
.ph h1{margin-top:24px;font-size:clamp(40px,5.6vw,72px);line-height:1;letter-spacing:-.042em;font-weight:600;max-width:15em;
  background:linear-gradient(180deg,#fff 30%,rgba(255,255,255,.66));-webkit-background-clip:text;background-clip:text;color:transparent}
.ph h1 em{font-style:normal;background:linear-gradient(90deg,#FF7A5C,#FF5533 60%,#FF8A4C);-webkit-background-clip:text;background-clip:text;color:transparent}
.ph .lede{margin-top:22px;font-size:clamp(17px,1.4vw,20px);line-height:1.55;color:var(--tx2);max-width:38em;letter-spacing:-.01em}
.ph .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:56px;border:1px solid var(--line);border-radius:var(--r2);background:linear-gradient(180deg,var(--s2),var(--s1));box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.facts>div{padding:22px 24px;font-size:14px;color:var(--tx2)}
.facts>div+div{border-left:1px solid var(--line)}
.facts b{display:block;color:var(--tx);font-size:20px;font-weight:600;letter-spacing:-.02em;margin-bottom:4px}
.facts sup a,.fnref{color:var(--ac2);font-family:var(--mono);font-size:11px;margin-left:2px}

.apply{padding:72px 0 96px}
.apply-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:28px;align-items:start;margin-top:40px}
.ph-form-head h2{margin-top:14px}
form.fcard,.review{padding:36px;border-radius:var(--r2);border:1px solid var(--line2);background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(255,85,51,.08),transparent 70%),linear-gradient(180deg,var(--s2),var(--s1));box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 30px 80px -40px rgba(0,0,0,.8)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px 18px}
.f{display:flex;flex-direction:column;gap:8px;min-width:0;border:0}
.f.full{grid-column:1/-1}
.f>label,.f legend{font-size:13.5px;color:var(--tx);font-weight:500}
.f legend{margin-bottom:10px;padding:0}
.opt{color:var(--tx3);font-weight:400}
.f input[type=text],.f input[type=email],.f input[type=url],.f input[type=tel],.f input[type=date],.f select,.f textarea{width:100%;min-height:46px;padding:11px 14px;border-radius:12px;border:1px solid var(--line2);background:rgba(0,0,0,.35);color:var(--tx);font:inherit;font-size:15px;transition:border-color .2s,box-shadow .2s}
.f textarea{min-height:110px;resize:vertical}
.f select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--tx3) 50%),linear-gradient(135deg,var(--tx3) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}
.f select option{background:#121216;color:var(--tx)}
.f input::placeholder,.f textarea::placeholder{color:var(--tx3)}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:rgba(255,85,51,.6);box-shadow:0 0 0 3px rgba(255,85,51,.18)}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts label{position:relative;cursor:pointer}
.opts input{position:absolute;opacity:0;inset:0;cursor:pointer}
.opts span{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border-radius:999px;border:1px solid var(--line2);background:rgba(255,255,255,.02);font-size:14px;color:var(--tx2);transition:all .2s}
.opts input:checked+span{border-color:rgba(255,85,51,.7);background:rgba(255,85,51,.14);color:#fff}
.opts input:focus-visible+span{box-shadow:0 0 0 3px rgba(255,85,51,.25)}
.check{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--tx2);line-height:1.5;cursor:pointer;min-height:44px;padding-top:4px}
.check input{flex:none;width:20px;height:20px;margin-top:1px;accent-color:var(--ac)}
.check a{color:var(--tx);border-bottom:1px solid var(--line3)}
.submit{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.submit small{font-size:13px;color:var(--tx3);max-width:28em}
.submit .btn{height:48px;padding:0 26px;font-size:15px}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

.next{padding:30px;border-radius:var(--r2);border:1px solid var(--line);background:linear-gradient(180deg,var(--s2),var(--s1));box-shadow:inset 0 1px 0 rgba(255,255,255,.05);position:sticky;top:96px}
.next h3{font-size:14px;font-family:var(--mono);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--tx3)}
.tl{list-style:none;margin-top:18px;position:relative}
.tl::before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:1px;background:linear-gradient(var(--ac),var(--line))}
.tl li{position:relative;padding:0 0 22px 28px}
.tl li::before{content:"";position:absolute;left:0;top:6px;width:11px;height:11px;border-radius:50%;background:var(--bg);border:1.5px solid var(--ac)}
.tl li:first-child::before{background:var(--ac);box-shadow:0 0 12px rgba(255,85,51,.6)}
.tl b{display:block;font-family:var(--mono);font-size:12px;font-weight:500;color:var(--ac2);letter-spacing:.02em}
.tl span{display:block;font-size:14.5px;color:var(--tx2);margin-top:4px}
.next .mail{margin-top:6px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;color:var(--tx3)}
.next .mail a{color:var(--tx);border-bottom:1px solid var(--line3)}
.next .note{margin-top:16px;font-size:12.5px;color:var(--tx3);line-height:1.5}

.faq{padding:24px 0 110px}
.faq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.faq-grid .card{padding:28px}
.faq-grid h4{font-size:17px;font-weight:600;letter-spacing:-.01em}
.faq-grid p{margin-top:10px;font-size:15px;color:var(--tx2)}

.notice{margin-top:28px;padding:16px 18px;border-radius:14px;border:1px solid rgba(245,181,68,.35);background:rgba(245,181,68,.06);font-size:14px;color:var(--tx2);max-width:46em}
.notice b{color:var(--amber);font-weight:500}

.review[hidden],[hidden]{display:none!important}
.review h2{font-size:clamp(28px,3vw,40px);margin-top:0}
.review .lead{color:var(--tx2);margin-top:10px}
.review dl{margin-top:24px;display:grid;grid-template-columns:minmax(140px,220px) 1fr;gap:10px 20px}
.review dt{font-size:13px;color:var(--tx3);font-family:var(--mono)}
.review dd{font-size:15px;white-space:pre-wrap;word-break:break-word}
.review-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.review-actions .btn{height:48px}

/* thank-you */
.ty{padding:150px 0 110px}
.ty .cta-box{text-align:left;padding:72px 56px}
.ty .cta-box h1{font-size:clamp(36px,4.6vw,56px);line-height:1.02;letter-spacing:-.04em;font-weight:600;margin-top:18px;max-width:16em}
.ty .cta-box p{margin:18px 0 0;text-align:left}
.ty .cta-box .row{justify-content:flex-start}
.ty .tl{margin-top:36px;max-width:640px}

/* legal */
.draft-banner{position:sticky;top:64px;z-index:40;background:#2A1E08;border-bottom:1px solid rgba(245,181,68,.4);color:#F8D58F;font-size:13.5px;text-align:center;padding:10px 20px}
.draft-banner b{font-weight:600}
.legal{padding:130px 0 110px}
.legal .wrap{max-width:820px}
.legal h1{font-size:clamp(40px,5vw,56px);letter-spacing:-.04em;font-weight:600;line-height:1.02}
.legal h2{font-size:24px;letter-spacing:-.02em;margin-top:44px;max-width:none}
.legal p,.legal li,.legal td,.legal th{font-size:16px;color:var(--tx2);line-height:1.65}
.legal p{margin-top:14px}
.legal ul{margin:14px 0 0 20px}
.legal li{margin-top:6px}
.legal strong{color:var(--tx);font-weight:500}
.legal a{color:var(--tx);border-bottom:1px solid var(--line3)}
.legal em{color:var(--tx3)}
.legal code{font-family:var(--mono);font-size:13px;background:var(--s2);padding:2px 6px;border-radius:6px}
.legal table{width:100%;border-collapse:collapse;margin-top:18px;border:1px solid var(--line);border-radius:12px;overflow:hidden;display:block;overflow-x:auto}
.legal th,.legal td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.legal th{color:var(--tx);font-weight:500;background:var(--s1)}

/* footnote + footer extras */
.fn{margin-top:36px;padding-top:22px;border-top:1px solid var(--line);font-size:12.5px;line-height:1.6;color:var(--tx3);max-width:62em}
.fn b{color:var(--tx2);font-weight:500}

@media (max-width:900px){
  .apply-grid{grid-template-columns:1fr}
  .next{position:static}
  .faq-grid{grid-template-columns:1fr}
  .facts{grid-template-columns:1fr}
  .facts>div+div{border-left:0;border-top:1px solid var(--line)}
}
@media (max-width:600px){
  .ph{padding:112px 0 32px}
  .ph h1{font-size:40px}
  .ph .ctas .btn{width:100%;height:48px}
  form.fcard,.review{padding:22px 18px}
  .fgrid{grid-template-columns:1fr}
  .submit{flex-direction:column;align-items:stretch}
  .submit .btn{width:100%}
  .review dl{grid-template-columns:1fr;gap:2px}
  .review dd{margin-bottom:12px}
  .ty{padding:110px 0 80px}
  .ty .cta-box{padding:48px 22px}
  .legal{padding:110px 0 80px}
  .draft-banner{font-size:12.5px}
}

.illus-tag{margin-left:auto;margin-right:10px;font-family:var(--mono);font-size:11px;color:var(--amber);border:1px solid rgba(245,181,68,.35);background:rgba(245,181,68,.07);border-radius:999px;padding:4px 10px;white-space:nowrap}
@media (max-width:600px){.illus-tag{font-size:10px;padding:3px 8px;margin-right:6px}}

.f-grid.f5{grid-template-columns:1.4fr repeat(4,1fr)}
@media (max-width:900px){.f-grid.f5{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.f-grid.f5{grid-template-columns:1fr}.code-h{flex-wrap:wrap}}
.next .mail a{display:inline-flex;align-items:center;min-height:44px}
.f input[type=date]{color-scheme:dark}
.next .mail a{border-bottom:0;text-decoration:underline;text-decoration-color:var(--line3);text-underline-offset:4px}
.hero-alt{display:flex;gap:28px;flex-wrap:wrap;margin-top:18px;justify-content:flex-end;font-size:14px;color:var(--tx3)}
.hero-alt a{display:inline-flex;align-items:center;min-height:44px;color:var(--tx2);border-bottom:0;text-decoration:underline;text-decoration-color:var(--line3);text-underline-offset:4px}
.hero-alt a:hover{color:#fff}
@media (max-width:900px){.hero-alt{justify-content:flex-start;gap:4px 20px}}

/* POSMAP START */
/* POSITIONING MAP */
.pmap{margin:56px 0 0}
.pm-frame{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;gap:0}
.pm-y{grid-row:1;grid-column:1;position:relative}
.pm-y span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-90deg);white-space:nowrap;font-size:13px;color:var(--tx2);letter-spacing:-.005em}
.pm-y em,.pm-x em{font-style:normal;color:var(--ac2);padding:0 4px}
.pm-y small{font-size:12px;color:var(--tx3)}
.pm-x{grid-row:2;grid-column:2;text-align:center;font-size:13px;color:var(--tx2);padding-top:14px}
.pm-plot{grid-row:1;grid-column:2;position:relative;aspect-ratio:16/9.6;border:1px solid var(--line2);border-radius:var(--r2);overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.02),transparent),var(--s1)}
.pm-plot::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:10% 10%;opacity:.35}
.pm-tr{position:absolute;left:50%;top:0;right:0;bottom:50%;background:radial-gradient(120% 120% at 100% 0%,rgba(255,85,51,.16),rgba(255,85,51,.04) 55%,transparent);border-left:1px dashed rgba(255,85,51,.25);border-bottom:1px dashed rgba(255,85,51,.25)}
.pm-vx{position:absolute;left:50%;top:0;bottom:0;border-left:1px dashed var(--line3)}
.pm-hz{position:absolute;top:50%;left:0;right:0;border-top:1px dashed var(--line3)}
.pm-q{position:absolute;font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--tx3)}
.pm-q.tl{left:16px;top:14px}.pm-q.bl{left:16px;bottom:14px}.pm-q.br{right:16px;bottom:14px}
.pm-q.tr{right:16px;top:14px;color:var(--ac2);font-weight:500}
.k-vec{--k:#8A8A94}.k-add{--k:#7D90A8}.k-srch{--k:#A8968A}.k-graph{--k:#CDB590}.k-multi{--k:#E4D2B0}.k-cb{--k:var(--ac)}
.pm-pt,.pm-cb{position:absolute;left:var(--x);top:var(--y);display:flex;align-items:center;gap:8px;transform:translate(-6px,-50%);white-space:nowrap}
.pm-pt i{width:11px;height:11px;border-radius:50%;background:var(--k);box-shadow:0 0 0 3px rgba(0,0,0,.45);flex:none}
.pm-pt b{font-weight:450;font-size:13.5px;color:#D4D4DA}
.pm-pt.s-l{flex-direction:row-reverse;transform:translate(calc(-100% + 6px),-50%)}
.pm-cb{flex-direction:row-reverse;transform:translate(calc(-100% + 10px),-50%);gap:12px}
.pm-cb i{width:20px;height:20px;border-radius:50%;background:var(--ac);box-shadow:0 0 0 6px rgba(255,85,51,.18),0 0 0 7px rgba(255,85,51,.45),0 0 34px 8px rgba(255,85,51,.35);flex:none}
.pm-cb b{font-weight:600;font-size:16px;letter-spacing:.06em;color:#fff}
.pm-halo{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(closest-side,color-mix(in srgb,var(--k) 22%,transparent),color-mix(in srgb,var(--k) 6%,transparent) 70%,transparent);border:1px dashed color-mix(in srgb,var(--k) 35%,transparent)}
.pm-cl{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:max-content;max-width:190px;text-align:center;font-size:13.5px;line-height:1.3;font-weight:500;color:#E2E2E6;padding:5px 11px;border-radius:999px;background:rgba(10,10,13,.72);border:1px solid color-mix(in srgb,var(--k) 55%,transparent)}
.pmap figcaption{display:flex;justify-content:space-between;align-items:center;gap:14px 28px;flex-wrap:wrap;margin:18px 0 0 34px}
.pm-leg{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12.5px;color:var(--tx2)}
.pm-leg span{display:inline-flex;align-items:center;gap:7px}
.pm-leg i{width:9px;height:9px;border-radius:50%;background:var(--k)}
.pm-cap{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--tx3)}
.pm-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.pm-notes .card{padding:24px}.pm-notes h4{font-size:16px;font-weight:550;margin-bottom:8px}.pm-notes p{font-size:14.5px;color:var(--tx2)}
.pmap-sec{padding:96px 0 40px}
@media (max-width:900px){.pm-notes{grid-template-columns:1fr}}
@media (max-width:600px){
  .pmap{margin-top:36px}
  .pm-frame{grid-template-columns:22px 1fr}
  .pm-y span{font-size:11px}.pm-y small{display:none}
  .pm-x{font-size:11.5px;padding-top:10px}
  .pm-plot{aspect-ratio:4/5;border-radius:14px}
  .pm-q{font-size:9px;letter-spacing:.02em}.pm-q.tl,.pm-q.bl{left:8px}.pm-q.br,.pm-q.tr{right:8px}.pm-q.tl,.pm-q.tr{top:8px}.pm-q.bl,.pm-q.br{bottom:8px}
  .pm-q.tr{max-width:46%;text-align:right;line-height:1.3}
  .pm-pt{gap:4px;transform:translate(-4px,-50%)}
  .pm-pt i{width:8px;height:8px;box-shadow:0 0 0 2px rgba(0,0,0,.5)}
  .pm-pt b{font-size:10.5px}
  .pm-cb{gap:8px}.pm-cb i{width:14px;height:14px;box-shadow:0 0 0 4px rgba(255,85,51,.18),0 0 0 5px rgba(255,85,51,.45),0 0 22px 6px rgba(255,85,51,.35)}
  .pm-cb b{font-size:12.5px}
  .pm-cl{font-size:11px;max-width:120px;padding:4px 9px}
  .pmap.named .pm-q.tl{display:none}
  .pm-halo{opacity:.7}
  .pmap figcaption{margin-left:22px}
  .pm-leg{font-size:11.5px;gap:6px 14px}
  .pmap-sec{padding:64px 0 24px}
}
/* POSMAP END */
