:root{--midnight:#0b1514;--pine:#10211e;--spruce:#182c28;--graphite:#263a35;--bark:#3b4a44;--birch:#c9d2cc;--fog:#d9e0d8;--stone:#d8d2c5;--sand:#e8e0d2;--paper:#f2efe7;--white:#fafaf6;--teal:#4f9184;--moss:#75966f;--mint:#8fb4a3;--lake:#608594;--amber:#b98a4f;--timber:#a8755d;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:40px;--space-6:64px;--content:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--midnight);color:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit;text-underline-offset:3px}button,input,select,textarea{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,6.5vw,6rem);max-width:12ch;margin-bottom:24px}h2{font-size:clamp(1.8rem,3vw,3rem)}h3{font-size:1.45rem}.skip-link{position:absolute;left:16px;top:-60px;background:var(--white);color:var(--midnight);padding:12px;z-index:100}.skip-link:focus{top:8px}:focus-visible{outline:3px solid var(--amber);outline-offset:4px}.site-header{height:62px;padding:0 max(24px,calc((100vw - var(--content))/2));display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(16,33,30,.94);border-bottom:1px solid rgba(201,210,204,.15);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:.86rem;font-weight:750;letter-spacing:.015em;overflow-wrap:anywhere;min-width:0}.brand-mark{width:30px;height:34px;flex:none;color:var(--mint)}.primary-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(10px,1.4vw,22px);font-size:.78rem}.primary-nav a{text-decoration:none;color:var(--birch);white-space:nowrap}.primary-nav a:hover,.primary-nav a[aria-current=page]{color:var(--white)}.nav-contact{border:1px solid rgba(143,180,163,.5);border-radius:999px;padding:7px 13px}.menu-toggle{display:none}.section-shell{width:min(var(--content),calc(100% - 48px));margin-inline:auto}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:64px 80px}.hero-copy{min-width:0;padding:12px 0}.eyebrow{font-size:.7rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--mint);margin-bottom:16px}.hero-lede{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:54ch;color:var(--birch);margin-bottom:24px}.button-row{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:1px solid transparent;border-radius:4px;text-decoration:none;font-size:.88rem;font-weight:750;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s}.button-primary{background:var(--teal);color:#fff}.button-primary:hover{background:#3d796e}.button-quiet{background:transparent;color:var(--paper);border-color:rgba(201,210,204,.35)}.button-quiet:hover,.button-outline:hover{background:rgba(143,180,163,.12);border-color:var(--mint)}.button-outline{background:transparent;color:var(--paper);border-color:rgba(201,210,204,.45)}.button-small{min-height:40px;padding:8px 12px;font-size:.78rem}.hero-note{font-size:.76rem;color:var(--birch);margin:20px 0 0}.hero-visual,.page-hero-image{position:relative;min-width:0}.hero-visual img{width:100%;height:clamp(330px,45vw,590px);object-fit:cover;border-radius:5px;border:1px solid rgba(201,210,204,.2)}.visual-caption{display:flex;align-items:center;gap:10px;margin-top:12px;color:var(--birch);font-size:.68rem;font-weight:700;letter-spacing:.14em}.signal-dot{width:8px;height:8px;border-radius:50%;background:var(--moss)}.intro-band{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:start;padding:36px 40px;background:var(--paper);color:var(--midnight);border-radius:5px}.intro-band .eyebrow{color:#426d61}.intro-band h2{margin:0;font-size:2rem}.intro-band p:last-child{margin:0;max-width:68ch}.topic-section,.route-section{padding-block:88px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:32px}.section-heading h2{margin:0}.section-heading>p{max-width:38ch;color:var(--birch);margin:0}.topic-list{display:grid;gap:24px}.topic-card{display:grid;grid-template-columns:minmax(0,46%) minmax(0,1fr);gap:32px;align-items:stretch;padding:16px;background:rgba(24,44,40,.86);border:1px solid rgba(201,210,204,.18);border-radius:6px;box-shadow:0 18px 50px rgba(0,0,0,.14)}.card-image{position:relative;display:block;min-width:0;min-height:290px}.card-image img{width:100%;height:100%;min-height:290px;max-height:390px;object-fit:cover;border-radius:3px}.image-index{position:absolute;left:12px;bottom:12px;padding:7px 9px;background:rgba(11,21,20,.88);border:1px solid rgba(201,210,204,.32);color:var(--white);font-size:.65rem;font-weight:800;letter-spacing:.1em}.card-content{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:12px 18px 12px 0}.card-kicker{font-size:.68rem;font-weight:800;letter-spacing:.12em;color:var(--mint);margin:0 0 12px}.card-content h3{margin:0 0 12px}.card-content h3 a{text-decoration:none}.card-content h3 a:hover{text-decoration:underline}.card-content>p:not(.card-kicker){color:var(--birch);max-width:60ch;margin-bottom:18px}.metadata{display:flex;gap:12px 24px;flex-wrap:wrap;font-size:.75rem;color:var(--white);margin-bottom:16px}.metadata span:before{content:"/ ";color:var(--amber)}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.tag-row span{font-size:.63rem;letter-spacing:.1em;font-weight:800;padding:5px 8px;border:1px solid rgba(143,180,163,.35);color:var(--mint)}.text-link{color:var(--mint);font-weight:750;text-decoration:none;border:0;background:none;padding:0;cursor:pointer}.text-link:hover{color:var(--white);text-decoration:underline}.card-content .text-link{margin-top:auto}.route-section{padding-top:24px}.route-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.route-step{padding:22px 18px;background:rgba(24,44,40,.82);border:1px solid rgba(201,210,204,.17);min-width:0}.route-number{display:block;color:var(--amber);font-size:.72rem;letter-spacing:.12em;margin-bottom:18px}.route-step h3{margin-bottom:10px}.route-step p{color:var(--birch);font-size:.88rem;margin:0}.route-link{margin-top:20px;padding:20px 24px;border-left:2px solid var(--teal);background:linear-gradient(90deg,rgba(79,145,132,.15),rgba(16,33,30,.25));display:flex;align-items:center;gap:22px;flex-wrap:wrap}.route-link p{margin:0}.contour-mark{font-size:2rem;color:var(--mint);letter-spacing:-.3em}.site-footer{background:var(--pine);border-top:1px solid rgba(201,210,204,.2);padding:50px max(24px,calc((100vw - var(--content))/2)) 20px;color:var(--paper)}.footer-top{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(220px,1fr) minmax(400px,2fr);gap:34px;padding-bottom:34px}.footer-brand p:not(.eyebrow),.footer-company p{font-size:.8rem;color:var(--birch);max-width:38ch}.footer-domain{display:block;font-size:1.05rem;font-weight:800;overflow-wrap:anywhere;color:var(--white);margin-bottom:12px}.footer-company h2,.footer-nav h2{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mint);margin:0 0 12px}.footer-company>a{overflow-wrap:anywhere;color:var(--white);font-size:.83rem}.footer-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.footer-nav>div{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.footer-nav a{font-size:.78rem;color:var(--birch);text-decoration:none}.footer-nav a:hover,.footer-company a:hover,.footer-domain:hover{color:var(--white);text-decoration:underline}.footer-bottom{border-top:1px solid rgba(201,210,204,.2);padding-top:16px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.72rem;color:var(--birch)}
.page-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:40px;align-items:center;padding-block:54px}.page-hero-copy{min-width:0}.page-hero h1{font-size:clamp(2.5rem,5vw,4.6rem);max-width:13ch}.page-hero-image img{width:100%;height:clamp(280px,34vw,440px);object-fit:cover;border-radius:4px}.article-layout{display:grid;grid-template-columns:minmax(0, min(760px,1fr)) 260px;gap:64px;align-items:start;padding-block:32px 72px}.article-content{min-width:0;background:var(--paper);color:#1c2925;padding:clamp(24px,5vw,56px);border-radius:4px}.article-content h2{font-size:1.7rem;margin:36px 0 14px}.article-content h2:first-of-type{margin-top:28px}.article-content h3{font-size:1.2rem}.article-content p,.article-content li{font-size:.98rem;line-height:1.72}.article-content a{color:#286b5d;font-weight:700}.article-content ul,.article-content ol{padding-left:22px}.article-content li{padding-left:4px;margin:7px 0}.article-lead{font-size:1.16rem!important;line-height:1.6!important;color:#34443e}.article-note{border-left:3px solid var(--amber);padding:12px 16px;background:#e7e1d4;font-size:.86rem!important}.compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.compare-grid>div{padding:18px;background:#e6e4da;border:1px solid #c4c9be;min-width:0}.compare-grid h3{margin-bottom:12px}.compare-grid p{font-size:.88rem;line-height:1.55;margin:8px 0}.article-aside{position:sticky;top:20px;padding:24px;background:rgba(24,44,40,.8);border:1px solid rgba(201,210,204,.22);backdrop-filter:blur(8px)}.article-aside h2{font-size:1.35rem}.article-aside ol{padding-left:20px;color:var(--birch);font-size:.85rem}.article-aside li{padding:5px 0}.article-aside>a{display:block;color:var(--mint);font-size:.85rem;margin:10px 0;text-decoration:none}.article-aside>a:hover{text-decoration:underline}.aside-rule{height:1px;background:rgba(201,210,204,.25);margin:22px 0}.cta-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 36px;margin-bottom:76px;background:var(--paper);color:var(--midnight);border-radius:4px}.cta-strip .eyebrow{color:#426d61}.cta-strip h2{font-size:1.8rem;margin:0 0 8px}.cta-strip p:last-child{margin:0}.legal-hero{padding-block:58px 32px;max-width:var(--content)}.legal-hero h1{font-size:clamp(2.7rem,5vw,4.6rem);margin-bottom:12px}.legal-hero>p:last-child{max-width:72ch;color:var(--birch)}.legal-content{max-width:920px;background:var(--paper);color:#1c2925;padding:clamp(24px,5vw,56px);margin-bottom:80px;border-radius:4px}.legal-content h2{font-size:1.5rem;margin:30px 0 10px}.legal-content h2:first-child{margin-top:0}.legal-content p,.legal-content li{line-height:1.72}.legal-content a{color:#286b5d}.table-wrap{max-width:100%;overflow-x:auto}.legal-content table{width:100%;min-width:620px;border-collapse:collapse;font-size:.88rem}.legal-content th,.legal-content td{padding:12px;border:1px solid #b8c1b9;text-align:left;vertical-align:top}.legal-content th{background:#d9e0d8}.contact-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:28px;padding-bottom:80px}.contact-panel,.address-card{background:var(--paper);color:var(--midnight);padding:clamp(22px,4vw,40px);border-radius:4px}.contact-panel h2,.address-card h2{font-size:1.7rem}.contact-panel>p{color:#42514b}.contact-panel a,.address-card a{color:#286b5d}.field{margin:18px 0}.field label{display:block;font-weight:750;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;min-width:0;padding:12px;border:1px solid #8b9890;border-radius:3px;background:#fff;color:#14201c}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(79,145,132,.35);border-color:#286b5d}.field .is-invalid{border-color:#9b3e34}.field-error{display:block;color:#8b2d25;font-size:.83rem;min-height:1.2em}.form-status{margin:16px 0 0;font-weight:700}.form-status.is-visible{padding:12px;background:#d9e8dc;color:#153d2b}.contact-side{display:grid;gap:18px;align-content:start}.map-card{margin:0;background:var(--spruce);border:1px solid rgba(201,210,204,.25)}.map-card svg{display:block;width:100%;height:auto}.map-caption{padding:12px 16px;margin:0;color:var(--birch);font-size:.78rem}.address-card .eyebrow{color:#426d61}.cookie-banner{position:fixed;z-index:20;left:16px;right:16px;bottom:16px;max-width:1050px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 22px;padding:16px 18px;background:rgba(16,33,30,.98);border:1px solid rgba(143,180,163,.5);box-shadow:0 12px 40px rgba(0,0,0,.35);color:var(--white);backdrop-filter:blur(10px)}.cookie-banner[hidden],[hidden]{display:none!important}.cookie-copy strong{font-size:.92rem}.cookie-copy p{margin:4px 0 0;font-size:.78rem;color:var(--birch)}.cookie-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.cookie-preferences{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px;padding-top:12px;border-top:1px solid rgba(201,210,204,.2);font-size:.82rem}.cookie-preferences label{display:flex;gap:8px;align-items:center}.cookie-preferences input{accent-color:var(--teal)}@media(max-width:1080px){.primary-nav{gap:10px;font-size:.72rem}.site-header{padding-inline:22px}.footer-top{grid-template-columns:1fr 1fr}.footer-nav{grid-column:1/-1}.route-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:767px){.site-header{height:50px;padding-inline:16px}.brand{font-size:.76rem}.brand-mark{width:25px;height:29px}.menu-toggle{display:flex;width:42px;height:40px;flex:none;border:1px solid rgba(201,210,204,.35);border-radius:3px;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:var(--white);cursor:pointer}.menu-toggle span{display:block;width:18px;height:2px;background:currentColor}.primary-nav{display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;background:var(--pine);padding:12px 16px 18px;border-bottom:1px solid rgba(201,210,204,.2);align-items:stretch;gap:0;flex-direction:column}.primary-nav.is-visible{display:flex}.primary-nav a{white-space:normal;padding:12px 6px;font-size:.9rem;border-bottom:1px solid rgba(201,210,204,.12)}.primary-nav .nav-contact{border:0;border-radius:0}.section-shell{width:calc(100% - 32px)}.hero{grid-template-columns:1fr;gap:24px;padding-block:42px 54px}.hero h1{font-size:clamp(2.65rem,12vw,4.4rem)}.hero-visual img{height:clamp(250px,70vw,430px)}.intro-band{grid-template-columns:1fr;gap:14px;padding:24px}.topic-section,.route-section{padding-block:62px}.section-heading{align-items:flex-start;flex-direction:column;gap:14px}.topic-card{grid-template-columns:minmax(0,1fr);gap:24px;padding:12px}.card-image{min-height:220px}.card-image img{height:clamp(220px,62vw,350px);min-height:220px}.card-content{padding:0 8px 12px}.route-grid{grid-template-columns:1fr 1fr}.route-step{padding:18px 14px}.route-link{align-items:flex-start;flex-direction:column;gap:10px}.site-footer{padding:38px 16px 18px}.footer-top{grid-template-columns:1fr;gap:24px}.footer-nav{grid-column:auto;grid-template-columns:1fr 1fr;gap:24px 12px}.footer-nav>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px}.page-hero{grid-template-columns:1fr;gap:22px;padding-block:38px}.page-hero h1{font-size:clamp(2.5rem,10vw,4rem)}.page-hero-image img{height:clamp(230px,60vw,360px)}.article-layout{grid-template-columns:1fr;gap:20px;padding-block:20px 48px}.article-content{padding:24px}.article-aside{position:static;order:-1}.compare-grid{grid-template-columns:1fr}.cta-strip{align-items:flex-start;flex-direction:column;padding:24px;margin-bottom:48px}.legal-hero{padding-block:40px 24px}.legal-content{padding:24px;margin-bottom:48px}.contact-grid{grid-template-columns:1fr;padding-bottom:50px}.cookie-banner{left:8px;right:8px;bottom:8px;grid-template-columns:1fr;gap:10px;padding:14px}.cookie-actions{justify-content:flex-start}.cookie-preferences{grid-column:auto}.cookie-actions .button{flex:1 1 auto}}@media(max-width:380px){.section-shell{width:calc(100% - 28px)}.button-row{align-items:stretch;flex-direction:column}.button-row .button{width:100%}.route-grid{grid-template-columns:1fr}.footer-nav{grid-template-columns:1fr 1fr}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-actions .button:last-child{grid-column:1/-1}.cookie-preferences{align-items:flex-start;flex-direction:column}.brand span{max-width:225px;overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}