
:root{--bg:#F7F5F0;--white:#fff;--green:#183B36;--dark:#112E2A;--link:#275D55;--text:#263630;--muted:#51635D;--border:#D7DED7;--sand:#F2EBDD;--pale:#EAF0EA;--rust:#9A4935}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.8 system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif}img{display:block;max-width:100%;height:auto}a{color:var(--link);text-underline-offset:4px}a:hover{color:var(--rust)}a:focus-visible,button:focus-visible{outline:3px solid #B35B3B;outline-offset:3px;border-radius:3px}button{font:inherit}h1,h2,h3,p,figure,article{min-width:0}h1,h2,h3{line-height:1.35;color:var(--green);overflow-wrap:break-word}h1{font-size:34px;margin:8px 0 18px;letter-spacing:-.025em}h2{font-size:24px;margin:0 0 17px}h3{font-size:19px;margin:0 0 10px}p{margin:0 0 17px}.eyebrow{color:#8B4432;text-transform:uppercase;letter-spacing:.07em;font-size:13px;font-weight:750;margin:0 0 10px}.lead{font-size:16px;line-height:1.9;max-width:760px}.site-header{background:var(--green);color:#F4F7F2}.header-inner{width:100%;max-width:1120px;margin:auto;padding:0 30px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brandbar{border-bottom:1px solid rgba(244,247,242,.22)}.brandbar .header-inner{min-height:64px}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:#fff;min-width:0}.brand:hover{color:#fff}.brand-mark{display:flex;align-items:center;max-width:170px;border-radius:5px;background:#F7F5F0;padding:3px}.logo{max-height:34px;max-width:170px;width:auto}.brand-mark:empty{display:none}.brand-letter{display:flex;flex-direction:column;line-height:1.28}.brand-letter strong{font-size:17px;letter-spacing:.055em;white-space:nowrap}.brand-letter small{font-size:12px;color:#F4F7F2;white-space:nowrap}.header-actions{display:flex;gap:18px;align-items:center}.header-actions a,.header-actions button{color:#fff;font-weight:650;font-size:14px;text-decoration:none}.header-actions a{display:inline-flex;align-items:center;min-height:44px}.menu-toggle{border:1px solid rgba(255,255,255,.5);background:transparent;padding:7px 12px;min-height:44px;border-radius:7px;cursor:pointer;white-space:nowrap}.menu-toggle:hover{background:rgba(255,255,255,.12)}.mobile-home{display:none!important}.channel-band .header-inner{min-height:48px;justify-content:flex-start;gap:36px}.channels a{font-size:15px;font-weight:550;color:#F4F7F2;display:flex;align-items:center;min-height:48px;text-decoration:none;border-bottom:2px solid transparent;padding:2px 0 0}.channels a:hover,.channels a.active{color:#fff;border-bottom-color:#C9E1D7}.channels a.active{font-weight:800}.channel-map{background:#F2F5F0;color:var(--text);border-bottom:1px solid var(--border)}.channel-map[hidden]{display:none}.map-inner{max-width:1120px;margin:auto;padding:22px 30px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 26px}.map-group h2{font-size:16px;margin:0 0 8px}.map-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 10px}.map-links a{font-size:14px;display:flex;flex-direction:column;text-decoration:none;padding:5px 0;line-height:1.5}.map-links strong{font-size:14px}.map-links span{color:#51635D;font-size:13px}.nojs-nav{max-width:1120px;margin:auto;padding:12px 30px;display:flex;flex-wrap:wrap;gap:16px}.nojs-nav a{color:#fff}.skip-link{position:absolute;top:-80px;background:#fff;color:#112E2A;padding:12px;z-index:99}.skip-link:focus{top:4px}.site-main{width:100%;margin:auto;padding:34px 30px 58px}.home-container{max-width:1120px}.inner-container{max-width:1000px}.crumb{display:flex;gap:12px;align-items:center;font-size:14px;color:var(--muted);margin-bottom:24px}.page-intro{margin-bottom:28px;max-width:860px}.page-intro h1{font-size:32px}.feature-wrap{margin:0 0 28px}.feature-image{max-width:min(100%,420px);max-height:250px;width:auto;border-radius:9px;border:1px solid var(--border)}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 225px;gap:34px;align-items:start}.prose{min-width:0;max-width:740px}.single-prose{max-width:740px}.reading-section{margin:0 0 38px}.reading-section h2{padding-bottom:10px;border-bottom:1px solid var(--border)}.reading-section p{margin-bottom:17px}.page-aside{background:var(--pale);border:1px solid var(--border);border-radius:10px;padding:20px;font-size:14px}.page-aside h2{font-size:18px}.page-aside a{font-weight:700}.page-aside p{margin-bottom:12px}.mini-list{display:grid;gap:15px}.mini-list article{padding:16px;background:#fff;border:1px solid var(--border);border-radius:9px}.mini-list p{margin-bottom:0}.timeline,.numbered{padding-left:26px}.timeline li,.numbered li{padding:0 0 19px 8px}.timeline li::marker,.numbered li::marker{color:var(--rust);font-weight:800}.faq-list{display:grid;gap:14px}.faq-item{border-bottom:1px solid var(--border);padding-bottom:12px}.faq-item h2{font-size:19px;border:0;padding:0}.next-links{border-top:1px solid var(--border);padding-top:24px;margin-top:40px}.next-links h2{font-size:20px}.text-links{display:flex;gap:14px 24px;flex-wrap:wrap}.text-links a{font-weight:700}.hero{background:#fff;border:1px solid var(--border);border-radius:12px;padding:30px}.split{display:grid;grid-template-columns:minmax(0,58fr) minmax(0,42fr);gap:28px;align-items:center}.hero h1{font-size:34px}.hero p{margin-bottom:14px}.hero-image{max-height:265px;width:auto;margin:auto;border-radius:7px;border:1px solid var(--border)}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.actions a{border:1px solid var(--link);border-radius:7px;padding:9px 17px;min-height:44px;text-decoration:none;font-weight:700}.actions a:first-child{background:var(--green);color:#fff}.home-section{margin-top:58px}.section-heading{max-width:780px;margin-bottom:24px}.section-heading p:last-child{color:var(--muted)}.steps-grid{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:28px}.step-list article{padding:17px 0;border-top:1px solid var(--border);position:relative}.step-list article span{float:left;color:var(--rust);font-weight:800;width:38px}.step-list article h3,.step-list article p,.step-list article a{margin-left:38px}.step-list article p{margin-bottom:9px}.step-list article a{font-weight:650}.narrow-figure img{max-height:240px;width:auto}.screen-editorial{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:28px}.mid-image{max-width:420px;margin:20px 0}.index-aside{background:var(--pale);padding:22px;border-radius:10px;align-self:start}.tiny-image img{max-height:155px;width:auto}.compact-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,290px);gap:28px;align-items:center}.four-lines{padding:0;margin:0;list-style:none;counter-reset:num}.four-lines li{display:flex;gap:12px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--border)}.four-lines li::before{counter-increment:num;content:counter(num,decimal-leading-zero);color:var(--rust);font-weight:800}.four-lines strong{min-width:49px}.small-figure img{max-height:185px}.section-tail{margin-top:16px}.featured-story{max-width:740px}.medium-image{margin:23px 0;max-width:420px}.medium-image img{max-height:235px}.two-link-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 25px;max-width:830px}.two-link-columns p{border-top:1px solid var(--border);padding-top:12px}.two-link-columns span{display:block;font-size:14px;color:var(--muted)}.city-split{display:grid;grid-template-columns:minmax(0,43fr) minmax(0,57fr);gap:30px;align-items:center}.city-split img{max-height:260px;width:auto}.mood-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px}.mood-grid p{border-top:1px solid var(--border);padding-top:12px}.mood-grid strong{display:block;color:var(--green)}.route-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:8px}.route-bottom img{max-height:145px}.short-essay{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:23px;align-items:start}.essay-image{max-height:180px}.status-strip{border-top:1px solid var(--border);margin-top:22px;padding-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;font-size:14px}.status-strip p{margin-bottom:0}.tiny-date img{max-height:95px;margin-top:12px}.mobile-reading{display:grid;grid-template-columns:220px minmax(0,1fr);gap:36px;align-items:start;background:var(--pale);border:1px solid var(--border);border-radius:10px;padding:26px}.app-image{max-width:220px;max-height:370px;width:auto}.closing-links{margin-top:34px;border-top:1px solid var(--border);padding-top:20px;display:flex;flex-wrap:wrap;gap:12px 24px;font-size:14px}.site-footer{background:#18332F;color:#F4F7F2}.footer-inner{max-width:1120px;margin:auto;padding:35px 30px 24px}.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.footer-grid h2{font-size:16px;color:#fff;margin:0 0 11px}.footer-grid a,.footer-grid p{display:block;color:#F4F7F2;font-size:14px;margin:0 0 8px}.footer-grid a:hover{color:#fff}.footer-signoff{font-size:13px;border-top:1px solid rgba(255,255,255,.25);padding-top:18px;margin:22px 0 0}.mobile-bottom{display:none}
@media(max-width:900px){.header-inner{padding-inline:22px}.site-main{padding-inline:22px}.footer-inner{padding-inline:22px}.map-inner{padding-inline:22px;grid-template-columns:repeat(2,minmax(0,1fr))}.page-grid{grid-template-columns:minmax(0,1fr)}.page-aside{max-width:740px}.hero h1{font-size:31px}.steps-grid{grid-template-columns:minmax(0,1fr) 180px}.compact-row{grid-template-columns:minmax(0,1fr) 220px}.screen-editorial{grid-template-columns:minmax(0,1fr) 230px}}
@media(max-width:767px){body{padding-bottom:calc(57px + env(safe-area-inset-bottom))}.brandbar .header-inner{min-height:60px}.header-inner{padding:0 16px}.brand-letter strong{font-size:15px}.brand-letter small{font-size:11px}.logo{max-height:29px;max-width:110px}.brand-mark{max-width:110px}.header-actions{gap:9px}.mobile-home{display:inline-flex!important}.top-pick,.channel-band{display:none!important}.menu-toggle{padding:6px 9px}.map-inner{grid-template-columns:minmax(0,1fr);padding:16px;gap:14px}.map-links{grid-template-columns:minmax(0,1fr)}.map-links a{min-height:42px;padding:5px 0}.map-links span{font-size:13px}.site-main{padding:24px 16px 42px}.footer-inner{padding:28px 16px 24px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 18px}.home-section{margin-top:38px}.hero{padding:20px 17px}.hero h1{font-size:28px}.page-intro h1{font-size:27px}.hero,.split,.steps-grid,.screen-editorial,.compact-row,.city-split,.short-essay,.mobile-reading,.page-grid,.two-link-columns,.mood-grid,.status-strip{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.hero-image{max-height:195px}.feature-image{max-height:195px}.narrow-figure img,.medium-image img,.city-split img{max-height:195px}.mobile-reading{padding:18px}.app-image{max-width:180px;max-height:300px}.app-visual{justify-self:start}.reading-section{margin-bottom:32px}.reading-section h2{font-size:21px}.section-heading h2,.home-section h2{font-size:22px}.prose h3,.home-section h3{font-size:18px}.four-lines li{flex-wrap:wrap;gap:6px 10px}.four-lines li span{flex:1 1 100%;padding-left:32px}.mobile-bottom{position:fixed;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));bottom:0;left:0;right:0;min-height:56px;padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid var(--border);z-index:40}.mobile-bottom a{display:flex;justify-content:center;align-items:center;min-height:56px;text-decoration:none;color:var(--green);font-weight:700;font-size:14px}.mobile-bottom a[aria-current]{box-shadow:inset 0 3px 0 var(--link);background:#EAF0EA}.nojs-nav{padding:12px 16px}.footer-signoff{margin-bottom:0}}
@media(min-width:390px) and (max-width:767px){.map-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:350px){.header-inner{padding-inline:14px}.site-main{padding-inline:14px}.brand-letter small{font-size:10px}.brand-letter strong{font-size:14px}.logo{max-width:78px}.brand-mark{max-width:78px}.header-actions{gap:5px}.menu-toggle{padding:5px 8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Columns collapse gracefully when optional local artwork is absent. */
.split:has(>div:last-child:empty){grid-template-columns:minmax(0,1fr)}
.screen-editorial:has(.tiny-image:empty) .tiny-image{display:none}
/* Optional illustrations never reserve a vacant illustration column. */
.hero:has(>div:only-child),.steps-grid:has(>div:only-child),.compact-row:has(> :only-child),.city-split:has(>div:only-child),.screen-editorial:has(> :only-child),.short-essay:has(> :only-child),.mobile-reading:has(>div:only-child){grid-template-columns:minmax(0,1fr)}
