:root{--bg-canvas:#1e2530;--bg-surface:#303824;--bg-surface-hover:#3b472b;--text-primary:#fff;--text-muted:#d0d4c8;--accent-primary:#a3e635;--accent-secondary:#d9f99d;--border-subtle:rgba(255,255,255,.18);--ease-kinetic:cubic-bezier(.16,1,.3,1);--shadow-elevation:0 12px 32px -4px rgba(0,0,0,.35);--glow-accent:0 0 24px -4px rgba(163,230,53,.42);--glass-backdrop:blur(16px) saturate(150%);--serif:Charter,Cambria,Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font-family:var(--serif);line-height:1.65;overflow-wrap:anywhere;hyphens:auto}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{line-height:1.12}a{color:var(--accent-secondary);text-underline-offset:.2em}a:hover{color:var(--accent-primary)}:focus-visible{outline:3px solid var(--accent-primary);outline-offset:4px}img{display:block;width:100%;height:auto;object-fit:cover;border-radius:20px}.wrap{width:min(1200px,calc(100% - 40px));margin-inline:auto}.reading{max-width:70ch;margin-inline:auto}.eyebrow,.route-label,.smallcaps{font-variant:small-caps;letter-spacing:.12em;color:var(--accent-secondary)}.site-header{position:relative;padding:18px 0}.header-box{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:13px 18px;border:1px solid var(--border-subtle);border-radius:20px;background:rgba(48,56,36,.88);backdrop-filter:var(--glass-backdrop);box-shadow:var(--shadow-elevation)}.brand{display:flex;align-items:center;gap:.7rem;color:#fff;text-decoration:none;font-weight:bold;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--accent-primary);color:#1e2530;font-size:1.25rem}.nav-links{display:flex;align-items:center;gap:clamp(.6rem,1.6vw,1.4rem)}.nav-links a{font-size:.94rem;text-decoration:none;color:#fff}.menu-toggle{display:none;background:transparent;border:1px solid var(--border-subtle);color:#fff;border-radius:12px;font-size:1.6rem;line-height:1;padding:.35rem .7rem;cursor:pointer}.hero{min-height:min(760px,90vh);position:relative;display:grid;place-items:center;text-align:center;border-radius:20px;overflow:clip;background:linear-gradient(180deg,rgba(20,26,30,.25),rgba(20,26,30,.78)),url("images/observatory-road-hero.jpg") center 48%/cover no-repeat}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 78% 20%,rgba(163,230,53,.18),transparent 40%);pointer-events:none}.hero-content{position:relative;z-index:1;max-width:850px;padding:3rem 1.5rem}.hero h1{font-size:clamp(3rem,8vw,6.7rem);margin:.35em 0;letter-spacing:-.045em}.hero p{max-width:62ch;margin:0 auto 1.7rem;font-size:clamp(1.05rem,2vw,1.3rem)}.button{display:inline-block;border:0;border-radius:4px;padding:.9rem 1.25rem;background:var(--accent-primary);color:#1e2530;font:700 1rem var(--serif);text-decoration:none;box-shadow:4px 4px 0 #fff;transition:transform .25s var(--ease-kinetic),box-shadow .25s var(--ease-kinetic),background .25s}.button:hover{transform:translate(4px,4px);box-shadow:0 0 0 transparent;background:var(--accent-secondary);color:#1e2530}.section{position:relative;padding:clamp(3rem,7vw,6rem) 0}.section-glow{background:radial-gradient(ellipse at 10% 45%,rgba(163,230,53,.12),transparent 42%)}.section-heading{max-width:70ch;margin:0 auto 2rem}.section-heading h2{font-size:clamp(2rem,4vw,3.2rem);margin:.35rem 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.15rem}.card,.panel{border:1px solid var(--border-subtle);border-radius:20px;background:rgba(48,56,36,.82);backdrop-filter:var(--glass-backdrop);box-shadow:var(--shadow-elevation);overflow:hidden}.card{transition:transform .35s var(--ease-kinetic),box-shadow .35s var(--ease-kinetic)}.card:hover,.panel:hover{transform:translateY(-5px) scale(1.015);box-shadow:var(--shadow-elevation),var(--glow-accent)}.card img{aspect-ratio:4/3;border-radius:20px 20px 0 0}.card-body{padding:1.2rem}.card h3{margin:.35rem 0}.card p{color:var(--text-muted)}.card-link{display:inline-block;margin-top:.4rem;font-weight:bold}.route-panel{padding:1.35rem}.stat-strip{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0}.stat-strip span{padding:.35rem .65rem;border:1px solid var(--border-subtle);border-radius:999px;font-size:.88rem;color:var(--text-muted)}.feature-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:2rem}.feature-row img{aspect-ratio:16/9}.route-list{padding-left:1.4rem}.route-list li{padding:.35rem 0}.page-hero{padding:clamp(3rem,8vw,6rem) 0 2rem;background:radial-gradient(ellipse at 88% 35%,rgba(163,230,53,.16),transparent 35%)}.page-hero h1{font-size:clamp(2.8rem,7vw,5.4rem);margin:.25em 0}.page-hero p{max-width:70ch;color:var(--text-muted)}.article-copy{max-width:70ch;margin-inline:auto}.article-copy h2{margin-top:2.4rem}.article-copy p{color:#f1f2ed}.tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.tab{cursor:pointer;padding:.65rem .9rem;border:1px solid var(--border-subtle);border-radius:12px;background:#303824;color:#fff;font:inherit}.tab[aria-selected=true]{background:var(--accent-primary);color:#1e2530}.tab-panel{padding:1.2rem}.notes details{margin:.7rem 0;padding:1rem 1.1rem;border:1px solid var(--border-subtle);border-radius:16px;background:rgba(48,56,36,.8)}summary{cursor:pointer;font-weight:bold;color:var(--accent-secondary)}.reveal{opacity:0;transform:translateY(22px);transition:all .7s var(--ease-kinetic)}.reveal-visible{opacity:1;transform:translateY(0)}.site-footer{padding:2.5rem 0}.footer-box{padding:1.5rem;border:1px solid var(--border-subtle);border-radius:20px;background:rgba(48,56,36,.88);backdrop-filter:var(--glass-backdrop)}.footer-links{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;margin:.7rem 0 1.2rem}.footer-links a{color:#fff}.company{font-size:.94rem;color:var(--text-muted)}.contact-form label{display:block;margin:.8rem 0 .25rem}.contact-form input,.contact-form textarea{width:100%;padding:.8rem;border:1px solid var(--border-subtle);border-radius:12px;background:#1e2530;color:#fff;font:inherit}.contact-form textarea{min-height:110px}.contact-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1rem}.preview{white-space:pre-wrap;padding:1rem;border-radius:14px;background:#1e2530;color:#fff}.status{min-height:1.5em;color:var(--accent-secondary)}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:10;background:#fff;color:#111;padding:.6rem}.table-scroll{overflow-x:auto}.compare{width:100%;border-collapse:collapse;min-width:620px}.compare th,.compare td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-subtle)}@media(max-width:767px){.header-box{position:relative}.menu-toggle{display:block;margin-left:auto}.nav-links{display:none;position:absolute;top:calc(100% + 8px);right:0;left:0;z-index:5;padding:1rem;flex-direction:column;align-items:stretch;border:1px solid var(--border-subtle);border-radius:18px;background:#303824;box-shadow:var(--shadow-elevation)}.nav-links.is-open{display:flex}.nav-links a{padding:.55rem}.feature-row{grid-template-columns:1fr}.hero{min-height:78vh}.wrap{width:min(100% - 28px,1200px)}}@media(min-width:481px) and (max-width:768px){.grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}