:root { --blue:#006bb6; --dark:#1d252d; --yellow:#ffcd00; --paper:#fff; }
* { box-sizing:border-box; }
html { font-family:Montserrat,Arial,sans-serif; color:var(--dark); background:var(--paper); }
body { margin:0; line-height:1.55; }
a { color:var(--blue); }
.skip-link { position:absolute; left:-9999px; }
.skip-link:focus { left:1rem; top:1rem; z-index:100; background:#fff; padding:.7rem; }
.site-header { height:76px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(1rem,4vw,4rem); background:#fff; position:relative; z-index:20; box-shadow:0 1px 8px #0002; }
.brand { display:block; width:185px; height:51px; background:url('/Dawson2026/images/dawson-logo.png') center/contain no-repeat; text-indent:-9999px; }
.header-actions { display:flex; align-items:center; gap:1.5rem; }
.language { font-weight:700; text-decoration:none; }
.menu-button { border:0; background:transparent; cursor:pointer; width:46px; height:46px; padding:10px; }
.menu-button span,.menu-button::before,.menu-button::after { display:block; content:''; height:3px; margin:5px 0; background:var(--dark); }
.menu-overlay { position:fixed; inset:76px 0 0; background:#006bb6f5; overflow:auto; padding:2rem clamp(1rem,7vw,7rem); z-index:10; }
.menu-overlay[hidden] { display:none; }
.menu-list { max-width:900px; margin:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.4rem 2rem; }
.menu-list a { color:#fff; padding:.55rem .8rem; text-decoration:none; font-weight:650; border-left:4px solid transparent; }
.menu-list a:hover,.menu-list a[aria-current='page'] { border-color:var(--yellow); background:#ffffff14; }
.hero { min-height:490px; display:grid; place-items:center; padding:3rem 1rem; color:#fff; background-position:center; background-size:cover; position:relative; text-align:center; }
.hero::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#003b6785,#003b6745); }
.hero h1 { position:relative; max-width:1000px; margin:0; font-size:clamp(2.2rem,6vw,5.7rem); line-height:1.02; text-shadow:0 3px 15px #0008; }
.welcome-hero { background-image:url('/Dawson2026/images/welcome-hero.jpg'); }
.content { width:min(1100px,calc(100% - 2rem)); margin:0 auto; padding:clamp(2rem,5vw,5rem) 0; }
.welcome-content { display:grid; grid-template-columns:220px 1fr; gap:clamp(2rem,7vw,7rem); align-items:start; }
.button { display:inline-block; background:var(--blue); color:#fff; padding:.9rem 1.25rem; font-weight:800; text-decoration:none; text-transform:uppercase; border-radius:2px; }
.button:hover { background:#004f88; }
.stop-content { display:grid; grid-template-columns:minmax(280px,360px) 1fr; gap:clamp(2rem,7vw,7rem); align-items:start; }
.stop-tools { position:sticky; top:100px; }
audio { width:100%; margin-bottom:1.5rem; accent-color:var(--blue); }
.transcript { font-size:1.04rem; }
.transcript p:first-child { margin-top:0; }
.transcript h4 { font-size:1.35rem; }
.eyebrow { font-weight:800; text-transform:uppercase; color:var(--yellow); text-shadow:0 1px 4px #000; font-size:1rem; margin-bottom:.7rem; }
.footer { background:#eef2f4; text-align:center; padding:1.5rem; font-size:.9rem; }
.language-entry { min-height:100vh; background:#fff; }
.language-main { min-height:100vh; display:grid; grid-template-rows:minmax(300px,1fr) auto; }
.language-logo { min-height:420px; background:#fff url('/Dawson2026/images/dawson-logo.png') center/70% auto no-repeat; }
.language-panel { width:min(760px,calc(100% - 2rem)); margin:0 auto; padding:0 0 clamp(2rem,6vh,4rem); text-align:center; }
.language-panel h1 { margin:0 0 .65rem; font-size:clamp(1.35rem,3vw,2rem); line-height:1.25; color:var(--dark); }
.language-panel h1 span { font-weight:500; }
.language-suggestion { min-height:1.6em; margin:.4rem 0 1rem; color:#4b5963; }
.language-choices { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.choice-button { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:82px; padding:.8rem 1rem; color:#fff; background:#0165ce; border:3px solid transparent; border-radius:11px; text-decoration:none; box-shadow:0 5px 14px #003b6729; transition:transform .15s,background .15s,border-color .15s; }
.choice-button span { font-size:1.2rem; font-weight:800; text-transform:uppercase; }
.choice-button small { opacity:.9; }
.choice-button:hover,.choice-button:focus-visible { background:#004f9f; transform:translateY(-2px); }
.choice-button.is-recommended { border-color:var(--yellow); }
.language-note { margin:1rem 0 0; color:#5d6870; font-size:.9rem; }
@media (max-width:700px) {
  .site-header { height:66px; }
  .brand { width:145px; }
  .menu-overlay { inset-top:66px; }
  .menu-list { grid-template-columns:1fr; }
  .hero { min-height:360px; }
  .welcome-content,.stop-content { grid-template-columns:1fr; }
  .stop-tools { position:static; }
  .header-actions { gap:.6rem; }
  .language-main { grid-template-rows:minmax(240px,42vh) auto; }
  .language-logo { min-height:240px; background-size:88% auto; }
  .language-choices { grid-template-columns:1fr; }
}
