/* Contact pages only: guided experience in the existing Music & Sport identity. */
.contact-page { display:block; max-width:1160px; margin-inline:auto; }
.contact-page .contact-intro { position:static; margin-bottom:clamp(32px,5vw,64px); }
.contact-page .contact-intro h1 { margin-bottom:20px; }
.contact-page .contact-intro>a { display:block; width:fit-content; overflow-wrap:anywhere; }
#experience-form { --wizard-cream:#F4F0E8; --wizard-surface:#FAF7F2; color:#113656; width:100%; min-width:0; scroll-margin-top:120px; }
#experience-form *,#experience-form *::before,#experience-form *::after { box-sizing:border-box; }
#experience-form [hidden] { display:none!important; }
#experience-form .wizard-progress { margin-bottom:32px; }
#experience-form .wizard-progress ol { display:none; list-style:none; padding:0; margin:0 0 24px; }
#experience-form .wizard-mobile-step { font-size:.85rem; font-weight:600; margin:0 0 12px; }
#experience-form .wizard-progress-track { height:3px; background:rgb(17 54 86 / .13); border-radius:8px; overflow:hidden; }
#experience-form .wizard-progress-track>span { display:block; height:100%; background:#B72D24; transition:width 300ms ease; }
#experience-form .wizard-panel { animation:wizard-enter 300ms ease both; }
#experience-form .wizard-eyebrow { text-transform:uppercase; letter-spacing:.14em; font-size:.7rem; font-weight:700; margin:0 0 14px; }
#experience-form h2 { font-family:inherit; font-size:clamp(1.7rem,4vw,3.25rem); line-height:1.15; letter-spacing:-.035em; margin:0 0 28px; max-width:850px; }
#experience-form h2:focus { outline:none; }
#experience-form .wizard-intro { max-width:600px; margin:-8px 0 32px; }
#experience-form .wizard-group { border:0; padding:0; margin:0 0 28px; min-width:0; }
#experience-form .wizard-group legend { font-size:.95rem; margin-bottom:16px; padding:0; }
#experience-form .wizard-cards { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
#experience-form .wizard-card { display:flex; align-items:center; gap:14px; text-align:left; min-height:76px; padding:20px; border:1px solid rgb(17 54 86 / .18); background:#FAF7F2; color:#113656; border-radius:24px; font:inherit; font-size:.95rem; line-height:1.4; cursor:pointer; transition:background 250ms,color 250ms,transform 250ms,border-color 250ms,box-shadow 250ms; min-width:0; overflow-wrap:anywhere; }
#experience-form .wizard-card>span:first-of-type { flex:1; }
#experience-form .wizard-card svg { width:34px; height:34px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
#experience-form .wizard-check { display:grid; place-items:center; border:1px solid currentColor; width:21px; height:21px; border-radius:50%; flex-shrink:0; opacity:0; font-size:.8rem; transition:opacity 250ms; }
#experience-form .wizard-card[aria-checked=true] { background:#113656; color:#F4F0E8; border-color:#113656; }
#experience-form .wizard-card[aria-checked=true] .wizard-check { opacity:1; }
#experience-form .wizard-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; margin-bottom:24px; }
#experience-form .wizard-specific { margin-top:32px; }
#experience-form .wizard-field { min-width:0; margin-bottom:24px; }
#experience-form .wizard-grid .wizard-field { margin-bottom:0; }
#experience-form .wizard-field>label { display:block; font-size:.95rem; margin-bottom:10px; }
#experience-form input:not([type=checkbox]),#experience-form select,#experience-form textarea { appearance:auto; display:block; width:100%; max-width:100%; min-width:0; background:#FAF7F2; color:#113656; border:1px solid rgb(17 54 86 / .18); border-radius:16px; padding:15px 16px; min-height:54px; font:inherit; font-size:16px; line-height:1.5; }
#experience-form textarea { resize:vertical; }
#experience-form input:focus-visible,#experience-form select:focus-visible,#experience-form textarea:focus-visible,#experience-form button:focus-visible,#experience-form a:focus-visible { outline:3px solid #113656; outline-offset:4px; }
#experience-form [aria-invalid=true] { border-color:#B72D24!important; }
#experience-form .wizard-error { color:#B72D24; font-size:.85rem; margin:8px 0 0; }
#experience-form .wizard-actions { display:flex; flex-direction:column-reverse; gap:12px; margin-top:36px; }
#experience-form .wizard-actions .button { display:flex; justify-content:center; align-items:center; gap:20px; min-height:52px; width:100%; border:1px solid #B72D24; border-radius:999px; background:#B72D24; color:#FAF7F2; cursor:pointer; }
#experience-form .wizard-actions .wizard-back { border-color:#113656; background:transparent; color:#113656; }
#experience-form button:disabled { opacity:.6; cursor:wait; }
#experience-form .wizard-summary { background:#FAF7F2; padding:24px; border-radius:24px; margin:32px 0; }
#experience-form .wizard-summary h3 { font:inherit; font-size:1.15rem; font-weight:600; margin:0 0 24px; }
#experience-form .wizard-summary dl { display:grid; grid-template-columns:minmax(0,1fr); gap:20px; margin:0; }
#experience-form .wizard-summary dt { text-transform:uppercase; letter-spacing:.1em; font-size:.65rem; margin-bottom:6px; }
#experience-form .wizard-summary dd { margin:0; font-size:.95rem; overflow-wrap:anywhere; white-space:pre-wrap; }
#experience-form .wizard-edit { background:none; border:0; color:#113656; text-decoration:underline; text-underline-offset:4px; padding:12px 0; min-height:44px; font:inherit; font-size:.85rem; margin-top:16px; cursor:pointer; }
#experience-form .wizard-consent { display:flex; align-items:flex-start; gap:12px; font-size:.85rem; line-height:1.6; min-height:44px; cursor:pointer; }
#experience-form .wizard-consent input { flex-shrink:0; width:24px; height:24px; margin:2px 0 0; accent-color:#113656; }
#experience-form .wizard-consent a { display:inline-block; padding-block:10px; text-decoration:underline; }
#experience-form .wizard-backend-note { font-size:.85rem; line-height:1.6; margin-top:24px; }
#experience-form .wizard-status { color:#B72D24; font-size:.95rem; margin-top:20px; }
#experience-form .wizard-success { background:#FAF7F2; padding:clamp(24px,5vw,64px); border-radius:28px; }
@keyframes wizard-enter { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
@media(min-width:375px) { #experience-form .wizard-cards:not(.wizard-audience) { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(min-width:640px) {
 #experience-form .wizard-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #experience-form .wizard-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #experience-form .wizard-actions { flex-direction:row; justify-content:space-between; }
 #experience-form .wizard-actions .button { width:auto; min-width:160px; }
 #experience-form .wizard-next { margin-left:auto; }
 #experience-form .wizard-summary dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #experience-form .wizard-progress ol { display:flex; justify-content:space-between; gap:12px; }
 #experience-form .wizard-progress li { display:flex; align-items:center; gap:8px; font-size:.75rem; opacity:.5; }
 #experience-form .wizard-progress li>span { display:grid; place-items:center; width:28px; height:28px; border:1px solid #113656; border-radius:50%; }
 #experience-form .wizard-progress li[aria-current],#experience-form .wizard-progress li.is-complete { opacity:1; }
 #experience-form .wizard-progress li[aria-current]>span { background:#113656; color:#F4F0E8; }
 #experience-form .wizard-mobile-step { display:none; }
}
@media(min-width:1025px) { #experience-form .wizard-cards,#experience-form .wizard-cards:not(.wizard-audience) { grid-template-columns:repeat(3,minmax(0,1fr)); } #experience-form .wizard-audience .wizard-card { min-height:140px; } }
@media(hover:hover) { #experience-form .wizard-card:hover { transform:translateY(-2px); border-color:#113656; box-shadow:0 6px 18px rgb(17 54 86 / .06); } }
@media(prefers-reduced-motion:reduce) { #experience-form *,#experience-form *::before { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
/* Real submission confirmation; confetti are decorative and motion-aware. */
.wizard-thanks { width:min(560px,calc(100% - 40px)); max-height:calc(100dvh - 48px); overflow:auto; background:#FAF7F2; color:#113656; border:0; border-radius:28px; padding:clamp(28px,5vw,52px); text-align:center; }
.wizard-thanks::backdrop { background:rgb(17 54 86 / .55); backdrop-filter:blur(5px); }
.wizard-thanks h2 { font-family:inherit; font-size:clamp(1.8rem,4vw,2.7rem); line-height:1.15; letter-spacing:-.03em; margin:18px 0; }
.wizard-thanks p { line-height:1.6; }
.wizard-thanks .wizard-eyebrow { text-transform:uppercase; font-size:.75rem; letter-spacing:.12em; }
.wizard-thanks button { min-height:48px; margin-top:20px; cursor:pointer; }
.wizard-thanks button:focus-visible { outline:3px solid #113656; outline-offset:4px; }
.wizard-confetti { position:fixed; inset:0; width:100vw; height:100dvh; overflow:hidden; pointer-events:none; }
.wizard-confetti i { position:absolute; display:block; width:8px; height:14px; border-radius:2px; animation:wizard-confetti 2100ms cubic-bezier(.2,.6,.4,1) var(--delay) both; }
@keyframes wizard-confetti { 0% { opacity:0; transform:translate(0,0) rotate(0); } 10% { opacity:1; } 48% { opacity:1; transform:translate(var(--fly-x),var(--fly-y)) rotate(var(--spin)); } 100% { opacity:0; transform:translate(var(--fly-x),var(--fall-y)) rotate(calc(var(--spin) + 180deg)); } }
@media(prefers-reduced-motion:reduce) { .wizard-confetti { display:none!important; } }
