@font-face {
  font-family: "Golos Text";
  src: url("assets/fonts/GolosText-Variable.ttf") format("truetype");
  font-weight: 400 900;
  font-style: normal;
  font-display: swap;
}

:root{--deep:#006e8f;--primary:#00a9c6;--aqua:#5fc9db;--sand:#efc774;--blue:#0091b3;--bg:#f1f5f6;--text:#16343d;--muted:#526d76;--border:#dce7e9;--white:#fff;--radius:28px;font-family:"Golos Text","Trebuchet MS",Arial,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-height:100svh;display:flex;flex-direction:column}button,input,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit}button,a,input{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--deep)}[hidden]{display:none!important}h1,h2,p{margin:0}img{display:block;max-width:100%}.header{padding:38px 24px 26px;display:flex;justify-content:center}.logo{width:224px;height:auto}main{flex:1;width:100%;padding:0 24px}.screen{margin:0 auto}.intro{max-width:720px;text-align:center;padding:42px 0 24px}.eyebrow,.section-kicker{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--deep)}.eyebrow{display:flex;align-items:center;justify-content:center;gap:10px}.small-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);flex-shrink:0}.intro h1{font-size:clamp(60px,7.4vw,94px);line-height:1.02;letter-spacing:-5px;font-weight:500;margin:27px 0 26px}.intro h1 span{color:var(--deep)}.intro-description{font-size:18px;line-height:1.65;max-width:465px;margin:auto;color:var(--muted)}.button{min-height:56px;border:0;border-radius:16px;background:var(--primary);color:#10313b;display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:17px 25px;font-size:16px;font-weight:700;line-height:1.4;text-decoration:none;cursor:pointer;transition:background .18s,transform .18s}.button:hover{background:var(--aqua);transform:translateY(-1px)}.button:active{transform:translateY(0)}.button span[aria-hidden]{font-size:23px;font-weight:400;line-height:1}.start-button{width:280px;margin-top:29px}.intro-meta{margin-top:17px;font-size:12px;color:var(--muted)}.intro-meta span{margin:0 9px}.intro-bottom{display:flex;align-items:center;gap:18px;max-width:410px;margin:43px auto 21px;color:var(--muted);font-size:11px;letter-spacing:.35px}.hairline{height:1px;background:#d2e2e5;flex:1}.rituals{display:flex;justify-content:center;gap:66px}.rituals div{display:flex;flex-direction:column;align-items:center;gap:5px}.rituals img{width:33px;height:33px}.rituals span{font-size:12px;color:var(--muted)}.footer{position:relative;display:flex;justify-content:center;padding:56px 20px 25px;margin-top:22px;min-height:118px}.footer-logo{width:125px;height:auto;align-self:flex-end}.quiz{max-width:660px;padding:20px 0}.quiz>.section-kicker{text-align:center;margin-bottom:23px}.card{background:var(--white);border:1px solid #e3ebed;border-radius:var(--radius)}.question-card{padding:34px 38px}.progress-heading{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:700}.progress-heading>span:first-child{color:var(--deep)}.progress-note{font-weight:400;color:var(--muted)}.progress{height:5px;background:#e4eff1;border-radius:5px;margin:15px 0 29px;overflow:hidden}.progress>div{height:100%;background:var(--primary);transition:width .25s}fieldset{border:0;padding:0;margin:0;min-width:0}legend{padding:0;float:left;width:100%;font-size:27px;font-weight:500;line-height:1.25;letter-spacing:-.6px}legend+.hint{clear:both;padding-top:14px}.hint{font-size:13px;color:var(--muted);line-height:1.5;margin-bottom:22px}.answers{display:grid;gap:11px}.answer{position:relative;display:flex;align-items:center;gap:14px;padding:17px 18px;min-height:65px;border:1px solid var(--border);border-radius:16px;cursor:pointer;line-height:1.5;font-size:15px;transition:background .15s,border-color .15s}.answer:hover{background:#f6fafb;border-color:#9dcbd4}.answer:has(input:checked){background:#eaf8fa;border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.answer input{appearance:none;-webkit-appearance:none;position:relative;flex:0 0 20px;width:20px;height:20px;border:1px solid #a9bec4;border-radius:50%;margin:0;background:white}.answer input:checked{border:6px solid var(--deep)}.answer:has(input:focus-visible){outline:3px solid var(--deep);outline-offset:3px}.answer input:focus-visible{outline:none}.answer-error{min-height:37px;padding-top:10px;font-size:13px;color:#914320;line-height:1.5}.invalid .answers{outline:2px solid #914320;outline-offset:5px;border-radius:16px}.question-navigation{display:flex;justify-content:space-between;gap:15px}.question-navigation .button{min-width:146px}.question-navigation #next{margin-left:auto}.under-card{text-align:center;font-size:12px;color:var(--muted);margin-top:20px;line-height:1.6}.loading{text-align:center;max-width:600px;padding:115px 0 150px}.loading h2{font-size:32px;line-height:1.3;font-weight:500;letter-spacing:-.7px}.loading p{margin-top:18px;color:var(--muted);font-size:15px}.loading-symbol{display:flex;gap:7px;align-items:center;justify-content:center;height:60px;margin-bottom:27px}.loading-symbol span{height:6px;width:34px;border-radius:10px;background:var(--primary);animation:breathe 1.2s infinite ease-in-out}.loading-symbol span:nth-child(2){animation-delay:.15s}.loading-symbol span:nth-child(3){animation-delay:.3s}@keyframes breathe{0%,100%{transform:scaleX(.65);opacity:.35}50%{transform:scaleX(1);opacity:1}}.result{max-width:700px;padding:23px 0 0}.result-ready{letter-spacing:.8px;font-size:12px;margin-bottom:23px}.result-card{padding:34px 38px 35px;text-align:center}.result-card h1{font-size:19px;font-weight:400;letter-spacing:-.3px}.percentage{font-size:104px;line-height:1.15;letter-spacing:-6px;color:var(--deep);margin:7px 0 29px;font-weight:500}.percent-sign{font-size:50px;letter-spacing:-2px;margin-left:5px}.fatigue-scale{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;text-align:left}.scale-segment::before{content:"";display:block;height:8px;background:#dbecef;border-radius:6px;margin-bottom:10px}.scale-segment.active::before{background:var(--primary)}.scale-range{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.scale-label{display:block;color:var(--muted);font-size:11px;line-height:1.45;overflow-wrap:anywhere}.scale-segment.active .scale-label,.scale-segment.active .scale-range{color:var(--deep);font-weight:700}.result-description{border-top:1px solid var(--border);padding-top:27px;margin-top:27px;text-align:left}.result-description h2{font-size:25px;font-weight:500;letter-spacing:-.5px;margin-bottom:12px}.result-description p{color:var(--muted);font-size:16px;line-height:1.7}.plan-card{padding:35px 38px;margin-top:20px}.plan-heading h2{font-size:28px;line-height:1.3;letter-spacing:-.6px;font-weight:500;margin-top:13px}.plan-heading h2 span{color:var(--deep)}.rest-plan{list-style:none;padding:0;margin:31px 0 26px}.rest-plan li{position:relative;display:grid;grid-template-columns:32px 33px 1fr;align-items:start;gap:15px;padding-bottom:27px}.rest-plan li:last-child{padding-bottom:0}.rest-plan li:not(:last-child)::before{content:"";position:absolute;left:15px;top:33px;bottom:0;width:1px;background:#cce6eb}.step-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#e9f7f9;color:var(--deep);font-size:12px;font-weight:700}.rest-plan img{width:33px;height:33px}.step-text{font-size:15px;line-height:1.6;padding-top:3px}.recommendation{border-top:1px solid var(--border);padding-top:21px;font-size:13px;line-height:1.7;color:var(--muted)}.ticket-button{width:100%;margin-top:23px;justify-content:space-between}.disclaimer{font-size:12px;line-height:1.7;color:var(--muted);text-align:center;max-width:520px;margin:20px auto 0}.error{max-width:650px;padding:40px;margin:50px auto;text-align:center}.error h1{font-size:25px;line-height:1.4;font-weight:500;margin-bottom:26px}.noscript{padding:20px;text-align:center;color:#914320}h1:focus,h2:focus,legend:focus{outline:none}
@media(min-width:1500px){.intro{padding-top:65px}.header{padding-top:48px}}
@media(max-width:600px){main{padding:0 18px}.header{padding:27px 20px 19px}.logo{width:190px}.intro{padding-top:40px}.intro h1{font-size:67px;letter-spacing:-3.5px;margin:26px 0}.eyebrow,.section-kicker{font-size:9px;letter-spacing:1.6px}.intro-description{font-size:16px;max-width:335px}.intro-bottom{font-size:10px;gap:11px;margin-top:36px}.rituals{gap:48px}.footer{margin-top:12px;padding-top:49px;min-height:105px}.quiz{padding-top:17px}.quiz>.section-kicker{margin-bottom:19px}.question-card{padding:24px 20px;border-radius:23px}.progress-heading{font-size:12px}.progress-note{font-size:11px}.progress{margin-bottom:25px}legend{font-size:24px}.hint{font-size:12px}.answer{font-size:14px;padding:15px 13px;gap:12px}.question-navigation .button{min-width:0;flex:1;padding:15px 16px;gap:15px}.question-navigation #next{max-width:55%}.under-card{font-size:11px}.result{padding-top:15px}.result-card,.plan-card{padding:27px 22px;border-radius:23px}.result-ready{font-size:11px}.percentage{font-size:92px}.scale-label{font-size:10px}.scale-range{font-size:10px}.fatigue-scale{gap:5px}.result-description h2{font-size:23px}.result-description p{font-size:15px}.plan-heading h2{font-size:25px}.rest-plan li{grid-template-columns:28px 28px 1fr;gap:11px}.step-number{width:28px;height:28px}.rest-plan li:not(:last-child)::before{left:13px;top:29px}.rest-plan img{width:28px;height:28px}.step-text{font-size:14px;padding-top:0}.disclaimer{font-size:11px;padding:0 8px}.ticket-button{font-size:15px;padding:17px;gap:12px}.loading{padding:95px 0 110px}.loading h2{font-size:27px}.error{padding:25px}.error h1{font-size:23px}}
@media(max-width:350px){main{padding:0 12px}.intro h1{font-size:59px}.question-card,.result-card,.plan-card{padding-left:17px;padding-right:17px}.progress-note{display:none}.scale-label{font-size:10px}.start-button{width:100%}.rituals{gap:38px}.rest-plan li{gap:8px;grid-template-columns:26px 24px 1fr}.rest-plan img{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Brandbook palette, local Golos and original icons. No decorative background. */
.header { padding-top: 40px; padding-bottom: 30px; }
.logo { width: 235px; }
.intro h1 { font-weight: 400; letter-spacing: -4px; }
.intro-description { font-size: 17px; }
.eyebrow, .section-kicker { letter-spacing: 1.6px; }
.rituals { gap: 62px; }
.rituals img { width: 44px; height: 44px; }
.rituals div { gap: 10px; }
.button { font-weight: 500; }
.result-description h2, .plan-heading h2, legend { font-weight: 500; }
.rest-plan li { grid-template-columns: 32px 36px 1fr; }
.rest-plan img { width: 36px; height: 36px; }
.recommendation { border-top-color: var(--sand); }
.scale-label { font-size: 12px; }
.scale-range { font-size: 11px; }
.footer {
  background: transparent;
  margin-top: 24px;
  padding: 28px 24px 30px;
  min-height: 96px;
}
.footer-logo { width: 150px; }
@media (max-width: 600px) {
  .header { padding: 30px 20px 22px; }
  .logo { width: 205px; }
  .intro { padding-top: 30px; }
  .intro h1 { font-size: clamp(49px, 14.8vw, 67px); letter-spacing: -2.5px; }
  .intro-description { font-size: 16px; }
  .rituals { gap: 42px; }
  .rituals img { width: 38px; height: 38px; }
  .eyebrow, .section-kicker { letter-spacing: 1.2px; }
  .rest-plan li { grid-template-columns: 28px 32px 1fr; gap: 10px; }
  .rest-plan img { width: 32px; height: 32px; }
  .scale-label { font-size: 11px; }
  .scale-range { font-size: 11px; }
  .footer { padding: 22px 20px 26px; margin-top: 18px; min-height: 83px; }
  .footer-logo { width: 140px; }
}

/* Mobile is the main entry point: full-width CTA and readable answer cards. */
@media (max-width: 600px) {
  .start-button { width: 100%; max-width: 360px; }
  .answer { font-size: 16px; min-height: 68px; }
  .step-text { font-size: 15px; }
  .intro-bottom { margin-top: 29px; }
}
@media (max-width: 600px) and (max-height: 740px) {
  .header { padding-top: 22px; padding-bottom: 16px; }
  .intro { padding-top: 18px; }
  .intro h1 { margin-top: 20px; margin-bottom: 20px; }
}
