/* The Year Ahead Scorecard (preview), adapted from the Founder Leadership Scorecard. Brand: elviscumez.com (navy #14213D, cream #F6EFE0, red #9B1B1F accent, never on navy). */
@font-face{font-family:"DM Serif Display";src:url(../fonts/dm-serif-display-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Lato";src:url(../fonts/lato-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Lato";src:url(../fonts/lato-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
:root{
  --navy:#14213D;--navy-deep:#0E1830;--red:#9B1B1F;--cream:#F6EFE0;--white:#FFFFFF;--grey:#C9CED8;
  --mute:#555D6E;--line:#DCD3C0;--paper:#FBF8F1;--dl-leaf:#1E5640;--dl-green:#143C2C;
  --serif:"DM Serif Display",Georgia,"Times New Roman",serif;
  --sans:"Lato",Arial,Helvetica,sans-serif;
  --wrap:1160px;--gut:clamp(20px,4vw,40px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:1.0625rem;line-height:1.6;color:var(--navy);background:var(--white);-webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}
main{flex:1 0 auto;outline:none}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,.h2{font-family:var(--serif);font-weight:400;line-height:1.15;margin:0 0 .5em;letter-spacing:-.005em}
h1{font-size:clamp(2.2rem,5vw,3.5rem);line-height:1.08}
h2,.h2,h1.h2{font-size:clamp(1.8rem,3.4vw,2.5rem);line-height:1.15}
h3{font-size:1.45rem;line-height:1.2}
p{margin:0 0 1em}
a{color:var(--navy);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--red)}
:focus-visible{outline:3px solid var(--navy);outline-offset:3px;border-radius:2px}
.on-navy :focus-visible{outline-color:var(--cream)}
[tabindex="-1"]:focus{outline:none}
[hidden]{display:none!important}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.narrow-wrap{max-width:760px}
.narrow{max-width:720px}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--navy);color:var(--white);padding:10px 16px;font-weight:700;border-radius:2px}
.skip:focus{top:12px;color:var(--white);outline-color:var(--cream)}
.label{font-weight:700;font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;color:var(--red);margin:0 0 1rem;line-height:1.4}
.on-navy .label{color:var(--grey)}
.rule::before{content:"";display:block;width:44px;height:3px;background:var(--red);margin-bottom:1.1rem}
.on-navy .rule::before{background:var(--cream)}
.lead{font-size:clamp(1.1rem,1.6vw,1.25rem);line-height:1.6}
.muted{color:var(--mute)}
.small{font-size:.92rem}
.section{padding:clamp(48px,7vw,96px) 0}
.section--cream{background:var(--cream)}
.section--paper{background:var(--paper)}
.on-navy{background:var(--navy);color:var(--white)}
.on-navy p{color:var(--cream)}
.on-navy a{color:var(--cream)}
.on-navy a:hover{color:var(--white)}
.blocks{background-image:url(../img/pattern-blocks-cream.svg);background-size:240px 88px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;min-width:48px;padding:.8em 1.5em;font-family:var(--sans);font-weight:700;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border:2px solid transparent;border-radius:2px;cursor:pointer;line-height:1.2;text-align:center;transition:background-color .15s,color .15s,border-color .15s}
.btn--navy{background:var(--navy);color:var(--white)}
.btn--navy:hover{background:var(--navy-deep);color:var(--white)}
.btn--navy:disabled{background:#8A90A0;cursor:not-allowed;color:var(--white)}
.btn--line{border-color:var(--navy);color:var(--navy);background:transparent}
.btn--line:hover{background:var(--navy);color:var(--white)}
.on-navy .btn--cream{background:var(--cream);color:var(--navy)}
.on-navy .btn--cream:hover{background:var(--white);color:var(--navy)}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:2rem}

/* header and footer */
.site-header{background:var(--white);border-bottom:1px solid var(--red)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}
.brand{display:block;line-height:0}
.brand img{height:40px;width:auto}
.header-tag{margin:0;font-weight:700;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);text-align:right}
.site-footer{padding:36px 0;flex-shrink:0}
.footer{display:flex;flex-direction:column;gap:6px}
.footer p{margin:0;font-size:.9rem}
.footer__mark{width:36px;height:auto;margin-bottom:8px}
.noscript{padding:20px;text-align:center;background:var(--cream)}

/* intro */
.screen--intro{padding:clamp(48px,7vw,96px) 0;overflow:hidden}
.intro{display:grid;grid-template-columns:1fr;gap:40px;align-items:center}
.intro__copy{max-width:640px}
.facts{list-style:none;padding:0;margin:1.6rem 0 0;display:flex;flex-wrap:wrap;gap:10px}
.facts li{border:1px solid rgba(246,239,224,.45);padding:.45em 1em;border-radius:2px;color:var(--cream);font-size:.95rem}
.facts strong{color:var(--white);font-weight:700}
.fine{margin-top:1.2rem;color:var(--cream)}
.intro__portrait{margin:0;max-width:240px}
.intro__portrait img{width:100%;aspect-ratio:2/3;object-fit:cover;border:6px solid var(--cream)}
.intro__portrait figcaption{font-size:.85rem;color:var(--cream);margin-top:10px;line-height:1.45}
.dim-cards{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;grid-template-columns:1fr;gap:16px}
.dim-cards li{background:var(--white);border-top:3px solid var(--red);padding:24px}
.dim-cards__no{font-family:var(--serif);font-size:1.6rem;color:var(--red);display:block;margin-bottom:6px}
.dim-cards p{margin:0}
@media (min-width:820px){
  .intro{grid-template-columns:1.5fr 1fr;gap:56px}
  .intro__portrait{justify-self:end;max-width:340px}
  .dim-cards{grid-template-columns:repeat(3,1fr)}
}

/* quiz */
.screen--quiz,.screen--details{min-height:calc(100vh - 73px)}
.progress{margin-bottom:28px}
.progress__count{font-weight:700;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin:0 0 10px}
.progress__track{height:8px;background:var(--line);border-radius:4px;overflow:hidden}
.progress__fill{display:block;height:100%;width:0;background:var(--navy);transition:width .3s ease}
.question{border:0;margin:0;padding:0;min-width:0}
.question__text{font-family:var(--serif);font-size:clamp(1.6rem,3.6vw,2.3rem);line-height:1.2;padding:0;margin:0 0 .6rem;display:block;max-width:100%}
.question__hint{color:var(--mute);margin:0 0 1.4rem}
.scale{display:grid;grid-template-columns:1fr;gap:10px}
.opt{font-weight:400;color:var(--mute);font-size:.9em}
.choice{position:relative}
.choice input{position:absolute;opacity:0;width:1px;height:1px}
.choice label{display:flex;align-items:center;gap:14px;min-height:56px;padding:12px 16px;background:var(--white);border:2px solid var(--line);border-radius:4px;cursor:pointer;font-weight:700;transition:border-color .15s,background-color .15s}
.choice label:hover{border-color:var(--navy)}
.choice__num{flex:0 0 auto;width:32px;min-width:32px;height:32px;border-radius:50%;border:2px solid var(--navy);display:inline-flex;align-items:center;justify-content:center;font-size:.9rem}
.choice input:checked+label{background:var(--navy);border-color:var(--navy);color:var(--white)}
.choice input:checked+label .choice__num{background:var(--cream);color:var(--navy);border-color:var(--cream)}
.choice input:focus-visible+label{outline:3px solid var(--navy);outline-offset:3px}
@media (min-width:768px){
  .scale{grid-template-columns:repeat(5,1fr)}
  .choice label{flex-direction:column;justify-content:flex-start;text-align:center;min-height:132px;padding:18px 10px;font-size:.95rem;line-height:1.3}
}
.keys{margin:1.2rem 0 0}
@media (hover:none),(max-width:639px){.keys{display:none}}
.quiz-nav{display:flex;justify-content:space-between;gap:12px;margin-top:2rem;flex-wrap:wrap}

/* details form */
.form{margin-top:1.5rem}
.field{margin-bottom:20px}
.field label{display:block;font-weight:700;margin-bottom:6px}
.field input,.field select{width:100%;min-height:50px;padding:10px 14px;font:inherit;color:var(--navy);background:var(--white);border:2px solid #767E8E;border-radius:4px}
.field input:focus-visible,.field select:focus-visible{outline:3px solid var(--navy);outline-offset:2px;border-color:var(--navy)}
.field input[aria-invalid="true"]{border-color:var(--red)}
.field__error{color:var(--red);font-weight:700;margin:6px 0 0;font-size:.95rem}
.field-row{display:grid;grid-template-columns:1fr;gap:0 20px}
@media (min-width:640px){.field-row{grid-template-columns:1fr 1fr}}
.privacy-line{color:var(--mute)}
.check{display:flex;gap:12px;align-items:flex-start;background:var(--white);border:1px solid var(--line);padding:16px;border-radius:4px}
.check input{flex:0 0 24px;width:24px;height:24px;margin:2px 0 0;accent-color:var(--navy);cursor:pointer}
.check label{cursor:pointer;font-size:.98rem}
.error-summary{border:3px solid var(--red);background:var(--white);padding:16px 20px;margin:1rem 0}
.error-summary h2{font-family:var(--sans);font-weight:700;font-size:1.05rem;margin:0 0 .4rem}
.error-summary ul{margin:0;padding-left:1.2em}
.error-summary a{color:var(--red);font-weight:700}

/* results */
.results-hero{padding:clamp(48px,7vw,88px) 0}
.results-hero__inner{display:grid;grid-template-columns:1fr;gap:32px;align-items:center}
@media (min-width:820px){.results-hero__inner{grid-template-columns:1.6fr 1fr}}
.ring{justify-self:center;width:min(240px,70vw)}
.ring svg{width:100%;height:auto;display:block}
.sub-h{font-family:var(--sans);font-weight:700;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin:0 0 1.2rem}
.results-grid{display:grid;grid-template-columns:1fr;gap:40px}
@media (min-width:900px){.results-grid{grid-template-columns:1.4fr 1fr;align-items:start}}
.bars{list-style:none;padding:0;margin:0;display:grid;gap:22px}
.bar__top{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap;margin-bottom:8px}
.bar__name{font-weight:700;font-size:1.05rem}
.bar__val{font-weight:700}
.bar__tag{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:2px;margin-left:8px;vertical-align:middle}
.tag--needs{background:#F6E3E3;color:#7A1518}
.tag--dev{background:var(--cream);color:var(--navy)}
.tag--strength{background:#E2EEE7;color:#143C2C}
.bar__track{height:14px;background:var(--line);border-radius:7px;overflow:hidden}
.bar__fill{display:block;height:100%;background:var(--navy);border-radius:7px;width:0;transition:width .8s ease}
.bar__focus .bar__fill{background:var(--red)}
.bar__focusnote{font-size:.85rem;color:var(--red);font-weight:700;margin:6px 0 0}
.radar-wrap svg{width:100%;max-width:360px;height:auto;display:block;margin:0 auto}
.focus{display:grid;grid-template-columns:1fr;gap:28px}
@media (min-width:820px){.focus{grid-template-columns:1.4fr 1fr}}
.focus h2{font-size:clamp(1.6rem,3vw,2.1rem)}
.books{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.books li{background:var(--white);padding:16px 18px;border-left:3px solid var(--red)}
.books a{font-weight:700}
.books span{display:block;color:var(--mute);font-size:.9rem}
.offers{list-style:none;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:1fr;gap:18px}
@media (min-width:700px){.offers{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.offers--many{grid-template-columns:repeat(4,1fr)}.offers--three{grid-template-columns:repeat(3,1fr)}}
.offer{border:1px solid var(--line);border-top:3px solid var(--navy);padding:24px;display:flex;flex-direction:column;background:var(--white)}
.offer--primary{border-top-color:var(--red);background:var(--paper)}
.offer__badge{font-weight:700;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin:0 0 .6rem}
.offer h3{font-family:var(--serif);font-weight:400;font-size:1.35rem;line-height:1.2;margin:0 0 .4rem}
.offer__price{font-weight:700;margin:0 0 .6rem}
.offer p{flex:0 0 auto}
.offer .btn{margin-top:auto;align-self:flex-start}
.dl__inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px}
.dl__inner > div:first-child{max-width:620px}
.dl .btn-row{margin-top:0}
.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.share-status{margin:0;flex-basis:100%}
.method{margin:1.6rem 0 0}
.res-date{margin:0;color:var(--grey)}
.signup-status{margin:1.2rem 0 0;padding:12px 16px;border-left:3px solid var(--cream);background:rgba(246,239,224,.08);color:var(--cream);max-width:640px}
.signup-status a{color:var(--cream);font-weight:700}
.signup-status a:hover{color:#fff}
@media print{.signup-status{display:none!important}}

@media (max-width:480px){
  .header-tag{font-size:.62rem;letter-spacing:.14em;max-width:140px}
  .brand img{height:34px}
  .quiz-nav .btn{flex:1 1 0}
  .actions .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important}
}
@media print{
  .site-header,.screen--intro,.intro-more,.actions-sec .actions,.skip{display:none!important}
  body{font-size:11pt;color:#000;display:block}
  .on-navy,.blocks{background:none!important;color:#000}
  .on-navy p,.on-navy .label{color:#000}
  .section,.results-hero{padding:14pt 0}
  .offers{grid-template-columns:repeat(2,1fr)!important}
  .offer{break-inside:avoid}
  .site-footer{background:none;color:#000;padding:10pt 0}
  .site-footer p,.site-footer a{color:#000}
  .footer__mark{display:none}
  a[data-print]::after{content:" (" attr(data-print) ")";font-size:8.5pt;font-weight:400}
  .offer .btn{display:inline!important;border:0;padding:0;min-height:0;background:none!important;color:#000!important;text-transform:none;letter-spacing:0;font-size:10pt;text-decoration:underline}
  .ring{width:150px}
  .dl .btn{background:none!important;color:#000!important;border:0;padding:0;min-height:0;text-transform:none;letter-spacing:0;text-decoration:underline}
  .ring__track{stroke:#DCD3C0}
  .ring__arc{stroke:#14213D}
  .ring__num{fill:#14213D}
  .ring__lab{fill:#555D6E}
  .results-grid{grid-template-columns:1.3fr 1fr!important}
  .radar-wrap,.bars li,.focus,.books li{break-inside:avoid}
  .site-footer{background:none!important}
  .bar__fill{print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .bar__track{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}

/* privacy page */
.prose h2{font-size:1.6rem;margin-top:2rem}
.prose ul{padding-left:1.2em}
.prose li{margin-bottom:.4em}
.draft-note{background:#FFF6D6;border:2px solid #8A6D00;color:#3D3000;padding:14px 18px;margin-bottom:2rem;border-radius:2px}
.ptable{width:100%;border-collapse:collapse;margin:0 0 1.2rem;font-size:.98rem}
.ptable th,.ptable td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line)}
.ptable th{background:var(--cream)}
@media (max-width:560px){.ptable,.ptable tbody,.ptable tr,.ptable td{display:block}.ptable thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.ptable tr{border-bottom:1px solid var(--line);padding:8px 0}.ptable td{border:0;padding:4px 0}}

/* Year Ahead preview additions */
.preview-banner{margin:0;padding:8px var(--gut);background:#FFF6D6;color:#3D3000;border-bottom:2px solid #8A6D00;font-size:.9rem;line-height:1.4;text-align:center}
.field select{appearance:auto;cursor:pointer}
.field__hint{margin:6px 0 0}
.books__title{font-weight:700}
@media print{.preview-banner{background:none;border:0;border-bottom:1px solid #000;color:#000}}
