@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Outfit:wght@400;450;500;550;600;650;700&display=swap');
/* Dark palette shared across desktop and mobile components. */
:root{color-scheme:dark;--green:#70d3ed;--ink:#e7eff5;--muted:#b0c2cf;--line:#354c5c;--cream:#0b141c;--surface:#14232e;--accent:#70d3ed;--on-accent:#0b141c;--field:#192c39;--selected:#203f50;--hover:#24485b;--border:#819aab;--focus:#ffb18d;--error:#ffc5b5;--error-bg:#402820}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--cream);font-family:'Outfit',Arial,sans-serif;font-size:17px;background-image:radial-gradient(ellipse at 50% 0,#24485b55,transparent 700px)}button,input{font:inherit}button,a,label{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:4px}header{max-width:1440px;margin:auto;height:96px;padding:0 5.5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;font-weight:600;color:var(--ink);text-decoration:none;font-size:27px;letter-spacing:-1px}.brand svg{width:35px;margin-right:10px;stroke:var(--accent);stroke-width:1.6;fill:none}.brand-dot{color:var(--accent)}nav{display:flex;align-items:center;gap:30px}nav button{border:0;background:none;color:var(--muted);font-size:14px;padding:10px 0}nav button:hover{color:var(--ink)}nav button span{margin-left:8px}.private-label{font-size:11px;border:1px solid var(--border);border-radius:5px;padding:7px 10px;color:var(--muted);letter-spacing:.3px}main{max-width:840px;margin:0 auto;padding:65px 30px 90px}.intro{text-align:center;margin:0 auto 44px;max-width:680px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:550;color:var(--muted);display:flex;align-items:center;gap:10px}.intro .eyebrow{justify-content:center}.eyebrow>span{width:6px;height:6px;border-radius:50%;background:var(--accent)}h1{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:73px;line-height:1.02;letter-spacing:-1.9px;margin:28px 0 22px}h1 em{color:var(--accent);font-weight:400}.intro-copy{font-size:17px;line-height:1.8;max-width:535px;margin:0 auto;color:var(--muted)}.intro-topics{display:flex;justify-content:center;gap:22px;color:var(--muted);font-size:12px;margin-top:26px}.intro-topics span+span:before{content:'·';margin-right:22px;color:var(--muted)}.survey-shell{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:42px 48px 32px;box-shadow:0 20px 80px #00000026}.survey-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.survey-top .eyebrow{font-size:10px;letter-spacing:1.5px}.time{color:var(--muted);font-size:12px;white-space:nowrap}h2{font-size:33px;font-weight:500;letter-spacing:-1px;line-height:1.25;margin:23px 0 12px}.muted{color:var(--muted);line-height:1.75}.survey-sub{font-size:15px;margin:0;max-width:550px}.completion{margin:30px 0 38px}.completion>div:first-child{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:12px}.track{height:4px;background:var(--line);border-radius:3px;overflow:hidden}#progress-bar{width:0;height:100%;background:var(--accent);transition:width .25s}fieldset{border:0;border-bottom:1px solid var(--line);padding:0 0 32px;margin:0 0 32px;min-width:0}fieldset:last-of-type{border-bottom:0;margin-bottom:10px;padding-bottom:24px}legend{font-size:21px;line-height:1.5;font-weight:500;width:100%;margin-bottom:13px;display:flex;align-items:center;gap:13px;letter-spacing:-.4px}.number{display:inline-flex;width:29px;height:29px;border-radius:50%;border:1px solid var(--border);justify-content:center;align-items:center;font-size:11px;color:var(--muted);font-weight:400;flex-shrink:0}.required{font-size:14px;color:var(--muted)}.hint{font-size:14px;line-height:1.7;color:var(--muted);margin:-4px 0 19px 42px}.role-options{display:grid;gap:12px}.option{display:flex;align-items:center;position:relative;border:1px solid var(--border);background:var(--field);border-radius:8px;padding:20px;gap:17px;cursor:pointer;transition:background .2s,border .2s}.option:hover{background:var(--hover);border-color:var(--muted)}.option input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;margin:0}.option:has(input:checked){border-color:var(--accent);background:var(--selected);box-shadow:0 0 0 1px var(--accent)}.option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.option strong{display:block;font-size:17px;font-weight:500;margin-bottom:6px}.option small{display:block;color:var(--muted);font-size:14px;line-height:1.5}.option-icon{font-size:27px;color:var(--muted);width:29px;text-align:center;font-weight:400}.option i{margin-left:auto;width:18px;height:18px;border:1px solid var(--muted);border-radius:50%;flex-shrink:0}.option:has(input:checked) i{border:5px solid var(--accent)}.pills{display:flex;gap:12px;flex-wrap:wrap;margin-top:5px}.pills label{position:relative;cursor:pointer;flex:1;text-align:center}.pills input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}.pills span{display:block;border:1px solid var(--border);background:var(--field);padding:16px 12px;font-size:15px;border-radius:7px;white-space:nowrap;color:var(--muted)}.pills input:checked+span{border-color:var(--accent);background:var(--selected);color:var(--ink);box-shadow:0 0 0 1px var(--accent)}.pills input:focus-visible+span{outline:3px solid var(--focus);outline-offset:3px}.field-label{display:block;margin:24px 0 11px;font-size:15px;color:var(--muted)}.optional{color:var(--muted);font-weight:400}#address{width:100%;padding:17px;border-radius:6px;border:1px solid var(--border);color:var(--ink);background:var(--field);font-size:16px}#address::placeholder{color:var(--muted)}.checks{display:grid;gap:22px;margin:22px 0 0}.checks label{display:flex;gap:14px;align-items:flex-start;cursor:pointer;font-size:17px;color:var(--ink)}.checks input{accent-color:var(--accent);width:19px;height:19px;margin:3px 0 0;flex-shrink:0}.checks small{display:block;font-size:14px;line-height:1.7;color:var(--muted);margin-top:6px}.text-button{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;text-underline-offset:4px;font-size:14px;margin:22px 0 0 33px}.document-note{background:var(--selected);font-size:14px;line-height:1.8;color:var(--muted);padding:17px;border-radius:6px;margin-top:17px}.submit{display:flex;justify-content:center;align-items:center;position:relative;border:0;border-radius:7px;background:var(--accent);color:var(--on-accent);width:100%;padding:20px;font-size:18px;font-weight:600;transition:background .2s}.submit:hover{background:#a0e5f5}.submit span{position:absolute;right:22px;font-size:23px;font-weight:400}.form-foot{color:var(--muted);text-align:center;font-size:13px;margin:17px 0}.prototype-note{font-size:12px;text-align:center;line-height:1.8;color:var(--muted);margin:16px 0 0}.form-error{font-size:15px;line-height:1.7;color:var(--error);background:var(--error-bg);padding:16px;border-radius:6px}.result-tag{display:inline-block;font-size:11px;letter-spacing:1.5px;margin-top:14px;color:var(--accent)}h3{font-family:'DM Serif Display',Georgia,serif;font-size:46px;font-weight:400;line-height:1.15;margin:22px 0}#result .muted{font-size:16px}dl{border-top:1px solid var(--line);margin:30px 0}dt{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-top:22px}dd{font-size:17px;line-height:1.8;margin:7px 0 20px;overflow-wrap:anywhere}.next-step{padding:23px;background:var(--selected);border-radius:7px}.next-step strong{font-size:17px}.next-step p{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:0}#edit{margin-top:27px}dialog{border:1px solid var(--border);border-radius:13px;padding:42px;max-width:660px;width:calc(100% - 36px);color:var(--ink);background:var(--field);box-shadow:0 30px 100px #00000066}dialog::backdrop{background:#03080dbb;backdrop-filter:blur(6px)}.close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:29px;color:var(--muted);padding:5px 10px}dialog p,dialog li{font-size:16px;line-height:1.85;color:var(--muted)}dialog li{padding-bottom:18px}dialog h2{margin-top:7px}dialog .sample{border-top:1px solid var(--line);padding:18px 0}dialog .sample strong{font-size:17px}dialog .sample p{font-size:15px;margin-bottom:0}[hidden]{display:none!important}@media(max-width:760px){header{height:78px;padding:0 22px}.brand{font-size:24px}.brand svg{width:29px}nav{gap:15px}nav button:first-child{display:none}nav button{font-size:12px}.private-label{display:none}main{padding:43px 18px 50px}.intro{margin-bottom:32px;padding:0 5px}h1{font-size:57px;line-height:1.05;letter-spacing:-1.5px;margin-top:24px}.intro-copy{font-size:16px;max-width:420px}.intro-topics{font-size:10px;gap:12px}.intro-topics span+span:before{margin-right:12px}.survey-shell{padding:28px 22px 26px}.survey-top .eyebrow{font-size:9px;letter-spacing:1px}.time{font-size:11px}h2{font-size:29px}.survey-sub{font-size:15px}legend{font-size:19px;gap:10px;align-items:baseline}.number{width:25px;height:25px}.hint{margin-left:35px;font-size:14px}.option{padding:18px 14px;gap:13px}.option strong{font-size:17px}.option small{font-size:14px}.option-icon{font-size:24px;width:24px}.pills{gap:8px}.pills span{font-size:14px;padding:15px 8px}.checks small{font-size:14px}dialog{padding:35px 25px}dialog h2{font-size:28px}}@media(max-width:390px){h1{font-size:49px}.survey-shell{padding:26px 17px}.survey-top .eyebrow{font-size:8px}.time{font-size:10px}.pills span{font-size:12px}.intro-topics{gap:8px;font-size:9px}.intro-topics span+span:before{margin-right:8px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Editorial typography, with readable sans-serif survey labels. */
h1{font-size:69px;line-height:1.06;letter-spacing:-1.6px}h1 em{color:var(--accent)}h2{font-family:"DM Serif Display",Georgia,serif;font-size:36px;font-weight:400;letter-spacing:-.4px}.brand{font-weight:500;letter-spacing:-.7px}.option strong,legend{font-weight:450}.survey-top .eyebrow{color:var(--accent)}.number{border-color:var(--border);color:var(--accent)}.intro .eyebrow{color:var(--accent)}.intro-topics{color:var(--muted)}.text-button{color:var(--accent)}@media(max-width:760px){h1{font-size:54px;letter-spacing:-1px}h2{font-size:31px}}@media(max-width:390px){h1{font-size:46px}}

/* Temporary shark identity. */
header{height:112px}.brand{gap:12px;max-width:420px;font-size:23px;letter-spacing:-.5px;line-height:1.15}.brand img{width:94px;height:68px;object-fit:contain;flex-shrink:0}.brand-name{max-width:245px}.intro h1 em{color:var(--accent)}.option-icon{color:var(--accent)}.pills input:checked+span{color:var(--ink)}.submit{background:var(--accent);color:var(--on-accent)}.submit:hover{background:#a0e5f5}.option:has(input:checked) i{border-color:var(--accent)}nav button:hover{color:var(--accent)}.private-label{background:var(--field);border-color:var(--border);color:var(--muted)}.intro-topics{color:var(--muted)}dialog{background:var(--surface)}.close{color:var(--muted)}h2{color:var(--ink)}#progress-bar{background:var(--accent)}.form-error{background:var(--error-bg);color:var(--error)}
@media(max-width:760px){header{height:100px;padding:0 18px}.brand{font-size:18px;gap:7px;max-width:300px}.brand img{width:70px;height:55px}.brand-name{max-width:190px}nav button{font-size:11px;max-width:102px;text-align:right;line-height:1.5}nav{gap:9px}}@media(max-width:420px){header{padding:0 14px}.brand{font-size:16px;gap:4px}.brand img{width:60px;height:51px}.brand-name{max-width:153px}nav button{max-width:88px;font-size:10px}}

/* Mobile layout: the same survey with room for reading and touch input. */
.mobile-nav{display:none}header{position:relative}.option>span:not(.option-icon),.checks label>span{min-width:0;overflow-wrap:anywhere}.option-icon{flex-shrink:0}.pills label{min-width:0}.submit,.text-button,nav button,.close{min-height:44px}dialog{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}.close{min-width:44px;min-height:44px}dialog h2{padding-right:24px}.survey-shell{scroll-margin-top:20px}
@media(max-width:900px) and (min-width:761px){header{padding:0 25px}.brand{font-size:20px;max-width:350px}.brand img{width:78px}nav{gap:18px}nav button{font-size:13px}.private-label{display:none}}
@media(max-width:760px){
 header{height:auto;min-height:92px;padding:14px 20px;gap:12px}.brand{min-width:0;max-width:none;font-size:19px;gap:8px}.brand img{width:70px;height:54px}.brand-name{max-width:225px}.desktop-nav{display:none}.mobile-nav{display:block;flex-shrink:0}.mobile-nav summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 13px;border:1px solid var(--border);border-radius:7px;font-size:14px;color:var(--ink);cursor:pointer;list-style:none;background:var(--field)}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.mobile-nav[open] summary{background:var(--selected)}.mobile-nav-panel{position:absolute;right:20px;top:calc(100% - 5px);z-index:10;display:grid;width:230px;padding:8px;background:var(--surface);border:1px solid var(--border);border-radius:9px;box-shadow:0 12px 35px #00000055}.mobile-nav-panel button{border:0;background:transparent;color:var(--ink);min-height:50px;padding:12px;text-align:left;font-size:16px;border-radius:5px}.mobile-nav-panel button:hover{background:var(--selected)}
 main{padding:32px 18px max(40px,env(safe-area-inset-bottom))}.intro{padding:0 4px;margin-bottom:27px}.intro .eyebrow{font-size:10px;letter-spacing:1.6px}h1{font-size:clamp(39px,8.5vw,57px);line-height:1.1;letter-spacing:-.9px;margin:21px 0 17px;text-wrap:balance}.intro-copy{font-size:16px;line-height:1.7;max-width:490px}.intro-topics{flex-wrap:wrap;font-size:12px;gap:8px 16px;margin-top:18px}.intro-topics span+span:before{margin-right:16px}.survey-shell{padding:28px 25px 26px;border-radius:12px}.survey-top{flex-wrap:wrap;gap:10px}.survey-top .eyebrow{font-size:10px;letter-spacing:1.3px}.time{font-size:12px}h2{font-size:31px;line-height:1.2;margin-top:20px}.survey-sub{font-size:16px;line-height:1.7}.completion{margin:25px 0 30px}.completion>div:first-child{font-size:12px}.track{height:5px}fieldset{padding-bottom:27px;margin-bottom:27px}legend{font-size:20px;line-height:1.4;gap:10px;align-items:flex-start;letter-spacing:-.2px}.number{margin-top:1px;width:27px;height:27px;font-size:11px}.required{font-size:14px}.hint{font-size:15px;line-height:1.6;margin:0 0 17px}.role-options{gap:11px}.option{min-height:88px;padding:17px 15px;gap:13px}.option strong{font-size:18px;line-height:1.35;margin-bottom:5px}.option small{font-size:15px;line-height:1.5}.option-icon{font-size:26px;width:27px}.option i{width:20px;height:20px}.pills span{font-size:16px;line-height:1.45;min-height:54px;display:flex;align-items:center;justify-content:center;padding:14px 10px;white-space:normal}.field-label{font-size:16px;margin-top:20px}#address{font-size:16px;min-height:54px;padding:14px}.checks{gap:6px;margin-top:12px}.checks label{min-height:72px;padding:12px 0;gap:13px;font-size:17px;line-height:1.5}.checks input{width:22px;height:22px;margin-top:2px}.checks small{font-size:15px;line-height:1.6;margin-top:4px}.text-button{font-size:16px;padding:11px 0;margin:7px 0 0 35px}.document-note{font-size:15px;line-height:1.7;padding:15px}.submit{font-size:18px;min-height:58px;padding:18px 46px}.form-foot{font-size:14px;line-height:1.6}.prototype-note{font-size:13px;line-height:1.7}.form-error{font-size:15px}h3{font-size:37px}dd{font-size:17px}.next-step{padding:18px}.next-step p{font-size:16px}dialog{width:calc(100% - 28px);max-height:calc(100dvh - 28px);padding:45px 23px 25px}dialog h2{font-size:29px}dialog p,dialog li{font-size:16px}.close{top:6px;right:6px}dialog ol{padding-left:22px}
}
@media(max-width:480px){
 header{padding:12px 14px;min-height:84px;gap:8px}.brand{font-size:17px;gap:5px}.brand img{width:59px;height:50px}.brand-name{max-width:172px}.mobile-nav summary{font-size:13px;padding:0 10px;gap:6px}.mobile-nav-panel{right:14px}main{padding-left:12px;padding-right:12px}.survey-shell{padding:25px 19px 22px}.pills{display:grid;grid-template-columns:1fr;gap:9px}.pills span{justify-content:flex-start;padding-left:16px}.survey-top .eyebrow{font-size:9px}.time{font-size:11px}.intro-topics{font-size:11px;gap:7px 10px}.intro-topics span+span:before{margin-right:10px}legend{font-size:19px}.option{gap:11px}.option strong{font-size:17px}.option small{font-size:15px}
}
@media(max-width:350px){.brand{font-size:15px}.brand img{width:50px}.brand-name{max-width:149px}.mobile-nav summary{padding:0 8px;font-size:12px;gap:5px}.survey-shell{padding-left:16px;padding-right:16px}h1{font-size:39px}.intro-topics{gap:6px 8px;font-size:10px}.intro-topics span+span:before{margin-right:8px}.option-icon{display:none}}

/* Optional music; stays in the page flow on phones. */
.music-player{margin:24px auto 0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 20px;max-width:520px}.music-player audio{display:none}#music-toggle{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:137px;min-height:44px;padding:10px 15px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--ink);font-size:14px}#music-toggle:hover{background:var(--selected)}#music-icon{width:16px;color:var(--accent)}.music-volume{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.music-volume input{width:100px;min-height:44px;accent-color:var(--accent);cursor:pointer}.music-status{flex-basis:100%;font-size:12px;line-height:1.5;color:var(--muted);min-height:18px}@media(max-width:760px){.music-player{margin-top:20px;gap:6px 14px}#music-toggle{font-size:15px;min-height:46px}.music-volume{font-size:14px}.music-status{font-size:13px}}@media(max-width:350px){.music-player{gap:5px 9px}.music-volume input{width:78px}#music-toggle{min-width:125px;padding:10px}}
