/* Institutional and support pages: scoped to the V2 preview. */
.v2-support { padding:24px 0 48px; background:#f2f3f3; color:#333; }
.v2-support [hidden] { display:none!important; }
.v2-support-heading { margin:24px 0 30px; max-width:760px; }
.v2-support-heading>span { font-size:11px; letter-spacing:1px; border-left:3px solid #f78400; padding-left:10px; }
.v2-support-heading h1 { font-size:30px; line-height:1.4; margin:14px 0; }
.v2-support p,.v2-support address { font-size:14px; line-height:1.8; }
.v2-support-heading p { color:#606873; }
.v2-support-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:24px; align-items:start; }
.v2-support-layout>* { min-width:0; }
.v2-support-card { padding:26px; background:#fff; border:1px solid #dedede; border-radius:10px; margin-bottom:20px; overflow-wrap:anywhere; }
.v2-support-card h2 { font-size:18px; line-height:1.5; margin:0 0 12px; }
.v2-support-card p { margin:0 0 16px; }
.v2-support a:not(.v2-button) { color:#333; text-decoration:underline; text-underline-offset:3px; }
.v2-support-link { display:flex; align-items:center; min-height:44px; font-size:13px; }
.v2-support-aside .v2-button { width:100%; white-space:normal; text-align:center; }
.v2-support-rich { font-size:14px; line-height:1.85; }
.v2-support-rich h2,.v2-support-rich h3,.v2-support-rich h4,.v2-support-rich h5,.v2-support-rich h6 { font-size:18px; line-height:1.5; margin:26px 0 12px; }
.v2-support-rich p { margin:0 0 16px; }
.v2-support-rich ul,.v2-support-rich ol { padding-left:24px; margin:12px 0 20px; }
.v2-support-rich li { margin-bottom:8px; }
.v2-support-rich img { display:block; max-width:100%; height:auto; }
.v2-support-rich blockquote { border-left:3px solid #f78400; margin:20px 0; padding:8px 20px; }
.v2-support-table { overflow-x:auto; }
.v2-support-table table { border-collapse:collapse; width:100%; }
.v2-support-table td,.v2-support-table th { padding:12px; border:1px solid #dedede; text-align:left; }
.v2-faq-search label,.v2-contact-form label { display:block; font-size:13px; font-weight:700; margin-bottom:8px; }
.v2-faq-search>div { display:flex; gap:10px; }
.v2-faq-search .v2-button { flex-shrink:0; white-space:nowrap; }
.v2-faq-search input,.v2-contact-form input,.v2-contact-form textarea { box-sizing:border-box; width:100%; min-width:0; min-height:46px; border:1px solid #737373; border-radius:5px; padding:12px; font:inherit; font-size:16px; background:#fff; color:#333; }
.v2-faq-search input { flex:1; }
.v2-support-count { color:#606873; margin:0 0 14px; }
.v2-faq-list details { background:#fff; border:1px solid #dedede; border-radius:8px; margin-bottom:12px; overflow-wrap:anywhere; }
.v2-faq-list summary { cursor:pointer; padding:20px; font-size:14px; font-weight:700; line-height:1.6; }
.v2-faq-list summary::marker { color:#333; }
.v2-faq-list details[open] { border-color:#737373; }
.v2-faq-list details[open] summary { border-bottom:1px solid #dedede; }
.v2-faq-list .v2-support-rich { padding:20px; }
.v2-contact-channels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.v2-contact-channels .fa { font-size:23px; margin-bottom:18px; }
.v2-contact-channels address { font-style:normal; }
.v2-contact-channels a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; max-width:100%; }
.v2-contact-channels p { margin:0; }
.v2-contact-form { display:grid; gap:20px; position:relative; }
.v2-contact-form textarea { resize:vertical; }
.v2-contact-form small { display:block; font-size:13px; margin-top:8px; }
.v2-contact-form [aria-invalid=true] { border-width:2px; }
.v2-contact-form>.v2-button { justify-self:start; }
.v2-contact-form .v2-contact-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.v2-support-notice { padding:14px 16px; border-left:4px solid #f78400; background:#f2f3f3; }
.v2-support-notice.is-success { border-color:#32743d; }
.v2-purchase-status:empty { display:none; }
.v2-contact-map { margin-top:4px; }
#v2-map-frame { background:#f2f3f3; border-radius:6px; padding:24px; }
#v2-map-frame:has(iframe) { padding:0; }
#v2-map-frame iframe { width:100%; height:320px; border:0; display:block; border-radius:6px; }
.v2-support :is(a,button,input,textarea,summary):focus-visible { outline:3px solid #333; outline-offset:3px; }
@media(max-width:900px) { .v2-support-layout { grid-template-columns:minmax(0,1fr); } .v2-support-aside { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; } .v2-contact-channels { gap:12px; } .v2-contact-channels .v2-support-card { padding:18px; } }
@media(max-width:600px) { .v2-support { padding-top:14px; } .v2-support-heading h1 { font-size:25px; } .v2-support-card { padding:20px 18px; } .v2-contact-channels,.v2-support-aside { grid-template-columns:minmax(0,1fr); gap:0; } .v2-faq-search>div { flex-direction:column; } .v2-faq-search .v2-button,.v2-contact-form>.v2-button { width:100%; } .v2-faq-list summary { padding:18px; } }
