﻿:root{--ink:#102b35;--muted:#536871;--paper:#f7f7f2;--accent:#c53339;--line:#dce3df;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}img{max-width:100%;height:auto}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #dc8d23;outline-offset:5px}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:12px 20px;border-radius:10px}.skip-link:focus{top:12px}.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:left;z-index:60}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px max(5vw,calc((100vw - 1360px)/2));background:rgba(247,247,242,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:.94rem;font-weight:800;letter-spacing:-.025em}.brand img{width:42px;height:42px;border-radius:12px}.topbar nav{display:flex;gap:28px}.topbar nav a{text-decoration:none;font-size:.86rem;font-weight:650;position:relative;padding:8px 0;color:var(--muted)}.topbar nav a:hover,.topbar nav a[aria-current]{color:var(--accent)}.topbar nav a[aria-current]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:currentColor}.menu-toggle{border:1px solid var(--line);border-radius:10px;background:white;padding:8px 12px}.hero{max-width:1500px;margin:auto;display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:64px;padding:84px 6vw 90px}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 22px;text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:800;color:var(--muted)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px #c5333910}.hero h1{font-size:clamp(2.8rem,4.9vw,5rem);font-weight:800;line-height:1.04;letter-spacing:-.058em;margin:0 0 26px;text-wrap:balance}.lead{font-size:1.08rem;line-height:1.8;color:var(--muted);max-width:580px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:13px 18px;border:1px solid transparent;border-radius:9px;text-decoration:none;font-weight:750;font-size:.84rem;transition:background .2s,transform .2s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--accent);color:white;box-shadow:0 6px 16px #c5333915}.primary:hover{background:#a3232b}.secondary{background:transparent;border-color:#b5c2c0;color:var(--ink)}.secondary:hover{background:#102b3508}.hero-visual{position:relative;margin:0;padding:13px;background:#e8ece5;border-radius:120px 22px 22px 22px;transform:rotate(2deg)}.hero-visual img{display:block;width:100%;aspect-ratio:4/4.3;object-fit:cover;border-radius:108px 13px 13px 13px}.hero-visual figcaption{position:absolute;bottom:30px;left:-28px;padding:18px 24px;background:var(--ink);color:white;border-radius:12px;box-shadow:0 12px 28px #102b3525;font-weight:650;font-size:.9rem;transform:rotate(-2deg)}.hero-visual figcaption span{display:block;font-size:.59rem;letter-spacing:.17em;color:#bdcdc7;margin-bottom:4px}.statement{background:var(--ink);color:#fff;padding:26px 6vw;text-align:center}.statement p{max-width:960px;margin:auto;font-size:1.1rem}.statement strong{color:#f6bb98}.section{padding:88px 6vw;max-width:1500px;margin:auto;scroll-margin-top:10px}.section-head{display:flex;gap:22px;align-items:flex-start;margin-bottom:36px}.kicker{display:grid;place-items:center;flex-shrink:0;width:45px;height:45px;border:1px solid #bfcac5;border-radius:50%;color:var(--accent);font-size:.85rem;font-weight:800}.section h2{font-size:clamp(1.9rem,3.1vw,3rem);letter-spacing:-.045em;line-height:1.15;margin:0;text-wrap:balance}.section-head p{color:var(--muted);max-width:720px;margin:14px 0 0}.grid{display:grid;gap:18px}.three{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;transition:transform .25s,box-shadow .25s,border-color .25s}.card:hover{transform:translateY(-5px);border-color:#aabbb0;box-shadow:0 16px 35px #102b3508}.icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#edf2eb;color:#375b47;font-size:1.4rem;font-weight:700;margin-bottom:28px}.card:nth-child(2n) .icon{background:#fbefeb;color:#b04630}.card h3{font-size:1.13rem;letter-spacing:-.02em;margin:0 0 10px}.card p{font-size:.94rem;line-height:1.75;color:var(--muted);margin:0}.split{display:grid;grid-template-columns:1.35fr .65fr;gap:50px;align-items:start;border-top:1px solid var(--line)}.legal-stack{display:grid;gap:14px}.legal{padding:25px;border:1px solid var(--line);border-radius:16px;background:white;border-left:3px solid #7d9b94}.legal.red{border-left-color:var(--accent)}.pill{display:inline-block;color:#35594f;font-size:.69rem;letter-spacing:.045em;font-weight:800;text-transform:uppercase}.red .pill{color:#ad2c34}.legal h3{font-size:1.15rem;margin:9px 0}.legal p{color:var(--muted);font-size:.94rem;margin:0}.question{position:sticky;top:116px;background:var(--ink);color:white;border-radius:var(--radius);padding:32px}.big-q{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1px solid #78908e;font-family:Georgia,serif;font-size:2rem;color:#f5bca3}.question h3{font-size:1.65rem;letter-spacing:-.03em;margin:24px 0 12px}.question p{color:#e4ece9}.question .muted{color:#b7cbc7;font-size:.91rem}.quote{padding-top:36px;padding-bottom:46px}.quote blockquote{border-left:3px solid var(--accent);padding-left:32px;margin:0;font-family:Georgia,serif;font-size:clamp(1.8rem,3.2vw,3.1rem);line-height:1.3;letter-spacing:-.035em;max-width:1080px}.quote>p{padding-left:35px;color:var(--accent);font-size:.87rem;font-weight:700}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:26px}.poster{background:#e9eee8;padding:22px 22px 0;border-radius:var(--radius);border:1px solid var(--line);text-decoration:none;overflow:hidden;transition:background .2s}.poster:hover{background:#dfe7dc}.poster img{display:block;width:100%;aspect-ratio:1227/1282;object-fit:contain;border-radius:10px;transition:transform .3s}.poster:hover img{transform:scale(1.015)}.poster span{display:flex;justify-content:space-between;align-items:center;padding:20px 0;font-size:.95rem;font-weight:750}.poster span:after{content:'↗';display:grid;place-items:center;background:white;border-radius:50%;width:34px;height:34px;font-size:1.1rem}.cta{text-align:center;background:var(--ink);color:white;border-radius:28px;max-width:calc(1380px - 12vw);margin:20px auto 70px;padding:64px 32px}.cta p{color:#c3d1cc;max-width:630px;margin:18px auto 26px}.cta .secondary{color:white;border-color:#718a89;margin-left:8px}.cta .secondary:hover{background:#ffffff12}footer{display:flex;justify-content:space-between;gap:26px;padding:30px 6vw;border-top:1px solid var(--line);font-size:.85rem}footer div{display:flex;flex-direction:column;gap:4px}footer span,.footnote{color:var(--muted)}.footnote{text-align:right;max-width:420px}.lightbox{width:min(1000px,94vw);max-height:94dvh;padding:0;border:0;border-radius:20px;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px #0005}.lightbox[open]{display:flex;flex-direction:column}.lightbox::backdrop{background:#071b26dd;backdrop-filter:blur(8px)}.lightbox-header,.lightbox-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 24px;flex-shrink:0}.lightbox-header .eyebrow{font-size:.6rem;margin:0 0 4px}.lightbox-header h2{font-size:1.15rem;margin:0}.close-dialog,.gallery-controls button{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--ink);font-size:1.2rem}.lightbox-stage{min-height:0;overflow:auto;background:#e4e9e3;padding:16px;text-align:center}.lightbox-image{display:block;width:auto;max-height:65dvh;margin:auto;object-fit:contain}.gallery-controls{display:flex;align-items:center;gap:14px}.gallery-count{font-size:.8rem}.download-link{font-size:.85rem;font-weight:700;text-underline-offset:4px}.modal-open{overflow:hidden}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);max-width:calc(100vw - 32px);width:max-content;background:var(--ink);color:white;padding:13px 20px;border-radius:12px;box-shadow:0 6px 24px #0002;z-index:80;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;font-size:.9rem}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:801px){.menu-toggle{display:none}}@media(max-width:1000px){.hero{gap:32px;padding-top:60px}.hero-visual figcaption{left:-12px;font-size:.75rem}.three{grid-template-columns:repeat(2,1fr)}.split{gap:25px;grid-template-columns:1.2fr .8fr}.question{padding:24px}.hero h1{font-size:3.3rem}}@media(max-width:800px){html{scroll-padding-top:90px}.topbar{flex-wrap:wrap;padding:13px 5vw;gap:12px}.brand{font-size:.83rem}.brand img{width:36px;height:36px}.topbar nav{width:100%;gap:18px;flex-wrap:wrap}.topbar.nav-enhanced nav:not(.is-open){display:none}.hero{grid-template-columns:1fr;padding:48px 6vw 56px;gap:38px}.hero-copy{max-width:620px}.hero h1{font-size:clamp(2.8rem,8vw,4rem)}.hero-visual{max-width:600px;width:100%;transform:none;border-radius:70px 20px 20px 20px}.hero-visual img{aspect-ratio:4/3;border-radius:60px 12px 12px 12px}.hero-visual figcaption{transform:none;left:24px;bottom:24px}.section{padding:60px 6vw}.split{grid-template-columns:1fr}.question{position:static}.gallery{gap:16px}.poster{padding:12px 12px 0}.cta{max-width:88%;margin-bottom:50px}footer{flex-direction:column}.footnote{text-align:left}}@media(max-width:520px){.three,.gallery{grid-template-columns:1fr}.section-head{gap:14px}.kicker{width:35px;height:35px;font-size:.73rem}.section h2{font-size:1.9rem}.lead{font-size:1rem}.actions{flex-direction:column;align-items:stretch}.card{padding:24px}.icon{margin-bottom:20px}.statement p{font-size:.95rem}.quote blockquote{padding-left:20px}.cta{padding:40px 22px}.cta .btn{display:flex;width:100%;margin:10px 0 0}.lightbox-header,.lightbox-footer{padding:12px;gap:12px}.download-link{font-size:.73rem}.gallery-controls{gap:8px}.lightbox-stage{padding:8px}.hero-visual figcaption{left:22px;right:22px;font-size:.75rem}.brand{gap:8px}.menu-toggle{font-size:.8rem}.topbar nav a{font-size:.8rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media print{.topbar,.reading-progress,.actions,.share-button,.toast,.lightbox{display:none!important}body{background:white;color:black}.hero,.section{padding:22px 0}.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:30px}.hero-visual{transform:none}.section h2{font-size:24px}.card,.legal,.question,.poster{break-inside:avoid}.question{position:static}.cta{display:none}.statement,.question{background:#eee;color:black}.question p,.question .muted{color:#222}footer{padding:20px 0}.quote blockquote{font-size:24px}}

/* Official traffic bulletin */
.traffic-section{border-bottom:1px solid var(--line)}
.traffic-section .eyebrow{margin-bottom:12px}
.traffic-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:18px;padding:24px;background:#e9eee8;border-radius:16px}
.traffic-toolbar label{display:grid;gap:7px;flex:1;min-width:190px;font-size:.82rem;font-weight:700}
.traffic-toolbar select,.traffic-toolbar input{width:100%;min-height:46px;padding:10px 12px;border:1px solid #aebeb5;border-radius:8px;background:white;color:var(--ink);font:inherit}
.traffic-toolbar :is(select,input):focus-visible{outline:3px solid #dc8d23;outline-offset:3px}
.traffic-toolbar button:disabled{opacity:.5;cursor:wait}
.traffic-status{font-size:.86rem;color:#365846;margin:20px 0 8px}
.traffic-error{color:#9f2630;background:#fff0f0;border:1px solid #ecc2c2;padding:16px;border-radius:12px}
.traffic-help,.traffic-source{font-size:.83rem;color:var(--muted)}
.traffic-source a{text-underline-offset:3px}
.traffic-lines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}
.traffic-line{display:flex;flex-direction:column;align-items:start;gap:10px;padding:19px;background:white;border:1px solid var(--line);border-top:3px solid #9da9a5;border-radius:13px;font-size:.85rem;overflow-wrap:anywhere}
.traffic-line.stopped{border-top-color:#c53339}.traffic-line.running{border-top-color:#387b55}
.traffic-line.stopped>strong{color:#a1242c}.traffic-line.running>strong{color:#28603e}
.line-number{display:grid;place-items:center;min-width:45px;height:34px;padding:0 9px;background:var(--ink);border-radius:7px;color:white;font-weight:800}
.traffic-line p{margin:0;color:var(--muted);font-size:.79rem}.traffic-line details p{margin-top:10px}
.traffic-line summary{cursor:pointer;font-size:.75rem;text-underline-offset:3px}
.traffic-news h3{font-size:1.3rem;margin:35px 0 14px}
.traffic-bulletin{background:white;border:1px solid var(--line);border-radius:12px;margin:10px 0;padding:18px 22px}
.traffic-bulletin summary{font-weight:750;cursor:pointer}.bulletin-date{color:var(--muted);font-size:.8rem}
.bulletin-text{white-space:pre-line;font-size:.9rem;line-height:1.8}
@media(max-width:1000px){.traffic-lines{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar nav{gap:15px}}
@media(max-width:650px){.traffic-lines{grid-template-columns:repeat(2,minmax(0,1fr))}.traffic-toolbar{padding:18px;gap:14px}.traffic-toolbar label{min-width:100%}.traffic-toolbar button{width:100%}.traffic-line{padding:14px}}
@media print{.traffic-toolbar{display:none}.traffic-lines{grid-template-columns:repeat(3,1fr)}.traffic-line{break-inside:avoid}}
