/* v6.90.12 Contact Us — secure rich-text ticket bridge */
.contact-page{min-height:calc(100vh - 160px);padding:54px 0 88px}
.contact-hero{position:relative;overflow:hidden;border:1px solid #e2e8f0;border-radius:30px;background:linear-gradient(135deg,#ffffff,#f8fafc);padding:44px;margin-bottom:24px;box-shadow:0 18px 55px rgba(15,23,42,.07)}
.dark .contact-hero{border-color:#1e293b;background:linear-gradient(135deg,#0f172a,#0b1220);box-shadow:0 18px 55px rgba(0,0,0,.2)}
.contact-hero:after{content:"";position:absolute;inset:auto -80px -130px auto;width:330px;height:330px;border-radius:999px;background:radial-gradient(circle,rgba(16,185,129,.18),transparent 68%);pointer-events:none}
.contact-kicker{display:inline-flex;align-items:center;gap:8px;color:#059669;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.contact-kicker:before{content:"";width:28px;height:3px;border-radius:99px;background:#10b981}
.contact-hero h1{position:relative;z-index:1;margin:11px 0 12px;color:#0f172a;font-size:clamp(2rem,4vw,3.7rem);line-height:1.08;font-weight:900;letter-spacing:-.035em}
.dark .contact-hero h1{color:#f8fafc}
.contact-hero p{position:relative;z-index:1;max-width:760px;margin:0;color:#64748b;font-size:1rem;line-height:1.95}
.dark .contact-hero p{color:#94a3b8}
.contact-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:24px;align-items:start}
.contact-side,.contact-form-card,.contact-cms-card{border:1px solid #e2e8f0;border-radius:26px;background:#fff;box-shadow:0 16px 45px rgba(15,23,42,.065)}
.dark .contact-side,.dark .contact-form-card,.dark .contact-cms-card{border-color:#1e293b;background:#0f172a;box-shadow:0 16px 45px rgba(0,0,0,.18)}
.contact-side{padding:26px;position:sticky;top:96px}
.contact-side h2,.contact-form-card h2{margin:0;color:#0f172a;font-size:1.2rem;font-weight:900}
.dark .contact-side h2,.dark .contact-form-card h2{color:#f8fafc}
.contact-side>p,.contact-form-head p{margin:8px 0 0;color:#64748b;font-size:.83rem;line-height:1.85}.dark .contact-side>p,.dark .contact-form-head p{color:#94a3b8}
.contact-steps{display:grid;gap:12px;margin-top:22px}
.contact-step{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start;padding:13px;border:1px solid #edf2f7;border-radius:15px;background:#f8fafc}
.dark .contact-step{border-color:#1e293b;background:#0b1220}
.contact-step-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#10b98114;color:#059669}.contact-step-icon svg{width:19px;height:19px}
.contact-step strong{display:block;color:#0f172a;font-size:.8rem}.dark .contact-step strong{color:#f1f5f9}.contact-step span{display:block;margin-top:3px;color:#64748b;font-size:.71rem;line-height:1.65}.dark .contact-step span{color:#94a3b8}
.contact-account-card{margin-top:18px;padding:14px;border-radius:16px;border:1px solid #dbeafe;background:#eff6ff;color:#1e3a8a;font-size:.76rem;line-height:1.75}.dark .contact-account-card{border-color:#1e3a5f;background:#0c2038;color:#bfdbfe}.contact-account-card a{font-weight:900;color:inherit;text-decoration:underline;text-underline-offset:3px}
.contact-form-card{padding:30px}
.contact-form-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:24px}
.contact-ticket-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:.68rem;font-weight:900;white-space:nowrap}.dark .contact-ticket-chip{background:#052e24;color:#6ee7b7}.contact-ticket-chip svg{width:14px;height:14px}
.contact-form{display:grid;gap:17px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-field{display:grid;gap:7px}.contact-field.full{grid-column:1/-1}.contact-field label{color:#334155;font-size:.76rem;font-weight:850}.dark .contact-field label{color:#cbd5e1}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:1px solid #dbe3ee;border-radius:13px;background:#f8fafc;color:#0f172a;padding:12px 13px;outline:0;font:inherit;font-size:.82rem;transition:border-color .18s,box-shadow .18s,background .18s}.dark .contact-field input,.dark .contact-field select,.dark .contact-field textarea{border-color:#263449;background:#0b1220;color:#e2e8f0}.contact-field textarea{min-height:190px;resize:vertical;line-height:1.8}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.11);background:#fff}.dark .contact-field input:focus,.dark .contact-field select:focus,.dark .contact-field textarea:focus{background:#0b1220}
.contact-form-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:3px}.contact-submit{border:0;border-radius:13px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;min-height:48px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-size:.8rem;font-weight:900;cursor:pointer;box-shadow:0 14px 28px -16px rgba(5,150,105,.8)}.contact-submit:disabled{opacity:.55;cursor:not-allowed}.contact-submit svg{width:17px;height:17px}
.contact-privacy{color:#94a3b8;font-size:.68rem;line-height:1.6;max-width:360px}
.contact-alert{display:none;margin-bottom:18px;padding:13px 14px;border-radius:14px;font-size:.76rem;line-height:1.7}.contact-alert.show{display:block}.contact-alert.info{border:1px solid #bfdbfe;background:#eff6ff;color:#1e40af}.contact-alert.success{border:1px solid #a7f3d0;background:#ecfdf5;color:#047857}.contact-alert.error{border:1px solid #fecaca;background:#fff1f2;color:#be123c}.dark .contact-alert.info{border-color:#1d4e75;background:#0c2038;color:#bfdbfe}.dark .contact-alert.success{border-color:#065f46;background:#052e24;color:#6ee7b7}.dark .contact-alert.error{border-color:#7f1d1d;background:#2b1015;color:#fecdd3}.contact-alert a{color:inherit;font-weight:900;text-decoration:underline;text-underline-offset:3px}
.contact-cms{margin-top:24px}.contact-cms:empty{display:none}.contact-cms-card{padding:24px}.contact-cms-card h2{margin:0 0 15px;font-size:1rem;color:#0f172a}.dark .contact-cms-card h2{color:#f8fafc}.contact-cms-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.contact-cms-grid .cms-contact-card{min-width:0}
@media(max-width:920px){.contact-layout{grid-template-columns:1fr}.contact-side{position:static}.contact-cms-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.contact-page{padding:36px 0 60px}.contact-hero{padding:28px 22px;border-radius:22px}.contact-layout{gap:16px}.contact-side,.contact-form-card{padding:21px;border-radius:21px}.contact-grid{grid-template-columns:1fr}.contact-field.full{grid-column:auto}.contact-form-head{display:block}.contact-ticket-chip{margin-top:12px}.contact-form-actions{align-items:stretch;flex-direction:column}.contact-submit{width:100%}.contact-cms-grid{grid-template-columns:1fr}}

/* Secure contact rich text editor */
.contact-rich-editor{overflow:hidden;border:1px solid #dbe3ee;border-radius:16px;background:#f8fafc;transition:border-color .18s,box-shadow .18s,background .18s}.dark .contact-rich-editor{border-color:#263449;background:#0b1220}.contact-rich-editor:focus-within{border-color:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.11);background:#fff}.dark .contact-rich-editor:focus-within{background:#0b1220}.contact-editor-toolbar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:8px;border-bottom:1px solid #e2e8f0;background:rgba(255,255,255,.88)}.dark .contact-editor-toolbar{border-color:#263449;background:#0d1727}.contact-editor-toolbar button{width:34px;height:34px;border:1px solid transparent;border-radius:9px;background:transparent;color:#475569;display:grid;place-items:center;cursor:pointer;transition:.16s}.dark .contact-editor-toolbar button{color:#cbd5e1}.contact-editor-toolbar button:hover,.contact-editor-toolbar button:focus-visible{border-color:#cbd5e1;background:#f1f5f9;color:#059669;outline:0}.dark .contact-editor-toolbar button:hover,.dark .contact-editor-toolbar button:focus-visible{border-color:#334155;background:#162235;color:#6ee7b7}.contact-editor-toolbar svg{width:16px;height:16px}.contact-editor-divider{width:1px;height:22px;background:#dbe3ee;margin:0 2px}.dark .contact-editor-divider{background:#334155}.contact-editor-surface{min-height:210px;max-height:520px;overflow:auto;padding:15px 16px;color:#0f172a;font:inherit;font-size:.84rem;line-height:1.9;outline:0;word-break:break-word;white-space:normal}.dark .contact-editor-surface{color:#e2e8f0}.contact-editor-surface:empty:before{content:attr(data-placeholder);color:#94a3b8;pointer-events:none}.contact-editor-surface p{margin:.35em 0}.contact-editor-surface ul,.contact-editor-surface ol{padding-inline-start:1.5rem;margin:.45em 0}.contact-editor-surface blockquote{margin:.6em 0;padding:.45em .8em;border-inline-start:3px solid #10b981;background:#ecfdf5;border-radius:8px;color:#334155}.dark .contact-editor-surface blockquote{background:#052e24;color:#cbd5e1}.contact-editor-surface a{color:#059669;text-decoration:underline;text-underline-offset:3px}.contact-editor-surface.is-over-limit{box-shadow:inset 0 0 0 1px #ef4444}.contact-editor-meta{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;border-top:1px solid #e2e8f0;color:#94a3b8;background:#fff;font-size:.65rem;line-height:1.45}.dark .contact-editor-meta{border-color:#263449;background:#0d1727}.contact-editor-meta b{font-variant-numeric:tabular-nums;color:#64748b}.dark .contact-editor-meta b{color:#cbd5e1}@media(max-width:640px){.contact-editor-toolbar{gap:3px}.contact-editor-toolbar button{width:32px;height:32px}.contact-editor-meta{align-items:flex-start;flex-direction:column}.contact-editor-surface{min-height:185px}}
