/* Contact and legal pages only; uses the existing light/dark theme tokens. */
.contact-heading{padding-top:70px;padding-bottom:46px}.contact-heading h1{font-size:clamp(40px,5.4vw,68px);max-width:850px}.contact-heading .lead{font-size:17px;max-width:690px;margin-top:23px;color:var(--muted);line-height:1.75}.contact-heading .eyebrow{margin-bottom:23px;color:var(--muted)}
.contact-layout{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);gap:28px;align-items:start}.contact-info{display:grid;gap:22px}.contact-card,.contact-small-card,.contact-form-panel{border:1px solid var(--line);border-radius:25px;padding:34px;background:var(--surface)}.contact-form-panel{background:var(--paper);padding:40px}.contact-card-label{font-size:10px;letter-spacing:.12em;color:var(--muted)}.contact-card h2,.contact-form-head h2{font-size:30px;margin:19px 0 14px;line-height:1.15}.contact-card p,.contact-small-card p,.contact-form-head p{font-size:14px;line-height:1.8;color:var(--muted)}.contact-card dl{margin:28px 0 0}.contact-card dt{font-size:11px;color:var(--muted);margin:22px 0 7px}.contact-card dd{font-size:16px;margin:0;line-height:1.8}.contact-card dd a{display:inline-flex;gap:12px;align-items:center}.contact-card dd a:hover{text-decoration:underline;text-underline-offset:5px}.contact-card address{font-size:14px;font-style:normal;line-height:1.85;unicode-bidi:isolate}.contact-card address strong{font-weight:600}.contact-small-card{background:var(--paper)}.contact-small-card h3{font-size:20px;line-height:1.35;margin-bottom:12px}.contact-small-card .text-link{font-size:12px;margin-top:20px}.contact-form-head h2{margin-top:0}.contact-form-head{margin-bottom:30px}
.contact-field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-field{margin-bottom:22px;min-width:0}.contact-field label{display:block;font-size:12px;font-weight:600;margin-bottom:9px;color:var(--ink)}.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;min-width:0;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);padding:13px 14px;font:inherit;font-size:15px;line-height:1.5}.contact-field select{min-height:50px}.contact-field textarea{resize:vertical;min-height:170px;max-height:500px}.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.contact-field [aria-invalid=true]{border-color:var(--ink);outline:1px solid var(--ink)}.contact-field small{display:block;margin-top:9px;color:var(--muted);font-size:11px;line-height:1.65}.contact-privacy{font-size:11px;line-height:1.85;color:var(--muted);margin:0 0 23px}.contact-privacy a{text-decoration:underline;text-underline-offset:3px;color:var(--ink)}.contact-submit-row{display:flex;gap:20px;align-items:center;justify-content:space-between}.contact-submit-row .button{min-width:165px}.contact-required{font-size:10px;color:var(--muted)}.contact-submit-row button:disabled{opacity:.55;transform:none}.contact-status{display:none;font-size:13px;line-height:1.8;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);padding:16px;margin-top:22px;overflow-wrap:anywhere}.contact-status.is-visible{display:block}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.legal-shell{display:grid;grid-template-columns:220px minmax(0,760px);gap:65px;max-width:1150px;margin:55px auto 0;padding:0 28px;align-items:start}.legal-sidebar{position:sticky;top:105px}.legal-eyebrow{font-size:10px;letter-spacing:.1em;color:var(--muted)}.policy-nav{display:grid;gap:5px;margin:24px 0 32px}.policy-nav a{font-size:12px;padding:11px 13px;border:1px solid transparent;border-radius:9px;color:var(--muted)}.policy-nav a[aria-current=page]{color:var(--ink);background:var(--surface);border-color:var(--line)}.policy-nav a:hover{color:var(--ink)}.policy-toc{border-top:1px solid var(--line);padding-top:23px}.policy-toc h2{font-size:11px;font-weight:650;letter-spacing:0;margin-bottom:12px}.policy-toc a{display:block;font-size:11px;color:var(--muted);line-height:1.7;padding:6px 0}.policy-toc a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--ink)}.legal-contact-link{display:inline-block;margin-top:24px;font-size:12px;color:var(--ink)}.legal-shell .legal-main{padding:0;margin:0;max-width:none;min-width:0}.legal-shell .legal-main h1{font-size:48px;line-height:1.12;margin:0 0 14px}.legal-shell .legal-notice{margin:0 0 22px;color:var(--muted);font-size:11px}.legal-shell .upd{font-size:12px;color:var(--muted);margin-bottom:26px}.legal-shell .legal-main p,.legal-shell .legal-main li{font-size:15px;line-height:1.85;color:var(--muted)}.legal-shell .legal-main b,.legal-shell .legal-main strong{color:var(--ink)}.legal-shell .policy-intro{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:22px 24px;margin:25px 0 34px}.legal-shell .policy-intro strong{font-size:16px;font-weight:600}.legal-shell .policy-intro p{font-size:13px;margin:8px 0 0}.policy-section{padding:8px 0 22px;border-bottom:1px solid var(--line);scroll-margin-top:110px}.policy-section:last-child{border:0}.legal-shell .legal-main h2{font-size:25px;line-height:1.25;margin:24px 0 16px}.legal-shell .legal-main h3{font-size:17px;letter-spacing:-.02em;line-height:1.4;margin:26px 0 10px}.legal-shell .legal-main ul{padding-left:22px}.legal-shell .legal-main a{color:var(--ink)}.legal-shell .legal-main table{width:100%;min-width:600px}.legal-shell .legal-main td,.legal-shell .legal-main th{vertical-align:top;line-height:1.75;color:var(--muted);font-size:13px}.legal-shell .legal-main th{color:var(--ink)}.legal-shell .legal-main .box{background:var(--surface);border-color:var(--line)}
@media(max-width:1000px){.contact-layout{grid-template-columns:minmax(235px,.8fr) minmax(0,1.2fr);gap:22px}.contact-card,.contact-small-card{padding:26px}.contact-form-panel{padding:28px}.contact-field-row{grid-template-columns:1fr;gap:0}.legal-shell{gap:36px;grid-template-columns:185px minmax(0,1fr)}}
@media(max-width:760px){.contact-heading{padding-top:44px;padding-bottom:30px}.contact-heading h1{font-size:42px}.contact-heading .lead{font-size:15px;margin-top:20px}.contact-layout{grid-template-columns:1fr;gap:24px}.contact-info{order:2}.contact-form-panel{padding:27px 22px;border-radius:20px}.contact-card,.contact-small-card{border-radius:20px}.contact-form-head h2{font-size:27px}.contact-field-row{grid-template-columns:1fr;gap:0}.contact-field input,.contact-field select,.contact-field textarea{font-size:16px}.contact-submit-row{align-items:flex-start;flex-direction:column;gap:12px}.contact-submit-row .button{width:100%}.legal-shell{grid-template-columns:1fr;gap:28px;margin-top:32px;padding:0 22px}.legal-sidebar{position:static}.policy-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:16px 0 20px}.policy-nav a{font-size:10px;padding:10px 8px;text-align:center;line-height:1.6}.policy-toc{padding-top:16px;display:flex;flex-wrap:wrap;gap:6px 15px}.policy-toc h2{width:100%;margin:0 0 4px}.policy-toc a{font-size:10px;padding:3px 0}.legal-contact-link{margin-top:17px;font-size:11px}.legal-shell .legal-main h1{font-size:38px}.legal-shell .legal-main h2{font-size:23px}.legal-shell .legal-main p,.legal-shell .legal-main li{font-size:14px}.legal-shell .policy-intro{padding:19px}.legal-shell .legal-notice{font-size:10px}}
.contact-honeypot{left:auto;clip-path:inset(50%);white-space:nowrap}
@media(prefers-reduced-motion:reduce){.contact-submit-row .button{transition:none;transform:none}}
