/* Off to the Golf — the shared design system. */
:root{--green:#0F3B2E;--ink:#1C2B24;--cream:#F8F5EE;--white:#FFFFFF;--sand:#E9E1D0;--gold:#C9A227;--muted:#5B6B63;--heading:'Fraunces',Georgia,serif;--body:'Inter',Arial,sans-serif;--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s5:40px;--s6:48px;--s7:56px;--s8:64px;--section:96px;--width:1200px;--reading:720px;--radius:12px;--shadow:0 1px 2px rgba(0,0,0,.06),0 8px 24px rgba(0,0,0,.06);--shadow-hover:0 2px 4px rgba(0,0,0,.08),0 12px 32px rgba(0,0,0,.1);--line:rgba(15,59,46,.18);--h1:56px;--h2:34px;--h3:22px}
*{box-sizing:border-box}html{scroll-padding-top:96px;scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.7 var(--body)}[hidden]{display:none!important}img{max-width:100%;height:auto}svg{max-width:100%}a{color:var(--green);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,select{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}h1,h2,h3,h4{font-family:var(--heading);font-weight:500;line-height:1.17;letter-spacing:-.025em;overflow-wrap:break-word}h1{font-size:var(--h1);margin:16px 0 24px;max-width:950px}h2{font-size:var(--h2);margin:0 0 24px}h3,h4{font-size:var(--h3);margin:24px 0 16px}p{margin:0 0 24px}ul,ol{padding-left:24px}li{margin:8px 0}figure{margin:0}section{scroll-margin-top:96px}.wrap{width:calc(100% - 64px);max-width:var(--width);margin-inline:auto}.eyebrow{display:block;font-size:12px;line-height:1.5;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.icon{display:inline-block;width:20px;height:20px;flex:0 0 20px;vertical-align:-4px}.skip{position:fixed;top:-90px;left:16px;z-index:100;padding:12px 22px;background:var(--gold);color:var(--ink)}.skip:focus{top:8px}.button,button[type=submit],.print-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--gold);color:var(--ink);font:600 15px/1.4 var(--body);padding:12px 22px;min-height:48px;border:1px solid transparent;border-radius:var(--radius);text-decoration:none;cursor:pointer}.button:hover,button[type=submit]:hover{box-shadow:var(--shadow-hover);text-decoration:none;transform:translateY(-2px)}.button.secondary{background:transparent;border:1px solid var(--green);color:var(--green)}
/* Compact masthead and fullscreen mobile navigation. */
body>header{position:sticky;top:0;z-index:30;background:var(--white);border-bottom:1px solid var(--line)}.header-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:8px;text-decoration:none;white-space:nowrap;font:500 24px/1 var(--heading);letter-spacing:-.04em}.brand img{width:48px;height:48px;object-fit:contain}.desktop-nav{display:flex;align-items:center;gap:16px}.desktop-nav>a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;white-space:nowrap;font-size:15px;font-weight:500}.desktop-nav>a:hover{text-decoration:underline}.desktop-nav .header-stay{font-weight:600;padding-inline:16px}.search-icon{justify-content:center;min-width:44px}.menu-toggle,.menu-close{display:none;background:transparent;border:1px solid var(--line);color:var(--green);padding:8px 16px;min-width:64px;min-height:44px;border-radius:var(--radius);font-weight:500}.mobile-panel{position:fixed;inset:0;z-index:60;background:var(--cream);padding:24px;overflow:auto}.menu-top{display:flex;align-items:center;justify-content:space-between;gap:16px;font:500 24px var(--heading)}.menu-close{display:block}.mobile-panel nav{display:flex;flex-direction:column;gap:8px;margin-top:32px}.mobile-panel .desktop-nav{display:contents}.mobile-panel nav a{display:flex;align-items:center;min-height:48px;text-decoration:none;font-size:22px;border-bottom:1px solid var(--line)}
/* Full bleed landscapes with continuous, legible overlays. */
.hero{position:relative;isolation:isolate;min-height:60vh;background:var(--green);color:var(--white);display:flex;align-items:center}.hero-figure{position:absolute;inset:0;z-index:-2;margin:0}.hero-art{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,28,21,.92) 0%,rgba(8,28,21,.83) 48%,rgba(8,28,21,.55) 76%,rgba(8,28,21,.22) 100%)}.hero .wrap{padding-block:80px}.hero-copy{max-width:760px}.hero-copy h1{color:var(--white)}.hero-copy>p:not(.checked):not(.byline){font-size:18px;line-height:1.7;max-width:680px}.hero .eyebrow{color:var(--white)}.hero .button{margin-top:8px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap}.hero .secondary{color:var(--white);border-color:var(--white)}.hero a:focus-visible,.footer a:focus-visible{outline-color:var(--white)}.hero-figure figcaption{position:absolute;bottom:8px;right:16px;max-width:90%;font-size:11px;line-height:1.6;background:rgba(8,28,21,.85);padding:4px 8px;color:var(--white);z-index:3}.hero-figure figcaption a{color:var(--white);display:inline-block;min-height:24px}.page-head{padding-block:64px 48px;max-width:960px}.page-head .dek{font-size:21px;line-height:1.6;max-width:var(--reading)}.crumb{font-size:12px;color:var(--muted);margin:24px 0 0}.crumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;list-style:none;margin:0;padding:0}.crumb li{margin:0}.crumb li+li:before{content:'/';margin-right:12px;color:var(--muted)}.crumb a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);text-decoration:none}.editorial-meta{font-size:12px;color:var(--muted);margin:0 0 40px}.editorial-meta a{color:inherit}.future-link{font-size:14px}
/* Quiet reading column and useful right rail. */
.article-layout{display:grid;grid-template-columns:minmax(0,var(--reading)) minmax(220px,1fr);gap:64px;padding-bottom:var(--section);align-items:start}.article{min-width:0;font-size:18px;line-height:1.7}.article section{margin:0 0 56px}.article section section{margin-block:32px}.article section>h2{padding-top:8px}.article p,.article li{overflow-wrap:anywhere}.article .lead{font-size:21px;line-height:1.7}.article-layout>aside{position:sticky;top:104px;min-width:0}.aside-box{padding:24px;background:var(--sand);border-radius:var(--radius);font-size:14px}.toc summary{font:500 22px/1.4 var(--heading);list-style:none;pointer-events:none}.toc summary::-webkit-details-marker{display:none}.toc ol{margin:16px 0 0;padding-left:20px}.toc a{display:inline-block;min-height:44px;padding:8px 0;text-decoration:none}.toc a:hover{text-decoration:underline}.context-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px;background:var(--sand);border-radius:var(--radius);padding:8px 24px;margin:0 0 40px;font-size:13px;font-weight:500}.context-bar a{display:inline-flex;align-items:center;min-height:44px}.suggestion{padding:24px;background:var(--sand);border-left:4px solid var(--gold);border-radius:0 var(--radius) var(--radius) 0}.suggestion strong{font-weight:600}.article-layout.no-aside{display:block}.no-aside .article{max-width:var(--reading)}.is-index .article-layout{display:block}.is-index .article{max-width:none;font-size:16px}.is-index .article-layout>aside{display:none}.is-index .article>section>p,.is-index .article>p{max-width:var(--reading)}.is-index .context-bar{display:none}
/* Media and progressive venue maps. */
.course-photo{margin:32px 0}.course-photo img{display:block;width:100%;height:auto;border-radius:var(--radius)}figcaption,.map-credit{font-size:12px;line-height:1.65;color:var(--muted);padding-top:8px}figcaption a{display:inline-block;min-height:24px}.location-map{background:var(--white);border:1px solid var(--line);padding:16px;border-radius:var(--radius)}.venue-map{width:100%;max-width:100%;height:380px;min-width:0;background:var(--sand);isolation:isolate;z-index:0;border-radius:8px}.venue-map .leaflet-control-attribution{font-size:11px;line-height:1.4;max-width:100%;white-space:normal}.venue-map a{min-width:0!important;min-height:0!important;display:inline!important}.venue-map .leaflet-control-zoom a{display:block!important;width:44px!important;height:44px!important;line-height:44px!important}.golf-map-pin{background:transparent;border:0}.golf-map-pin span{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--green);color:var(--white);border:2px solid var(--white);box-shadow:var(--shadow);font:600 15px/1 var(--body)}.golf-map-pin--rail span{background:#855537}.golf-map-pin--base span{background:#436366}.map-load-status{font-size:13px}.map-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;font-size:14px;padding-left:24px}.map-credit{margin-bottom:0}.venue-map .leaflet-popup-content{max-width:190px;overflow-wrap:anywhere}
/* Quick facts, booking cards, FAQs, and next steps. */
#quick-facts{border:1px solid var(--line);border-radius:var(--radius);padding:32px;background:var(--white)}#quick-facts dl{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;margin:0}#quick-facts dl>div{border-top:1px solid var(--line);padding:16px 0}#quick-facts dt{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;display:flex;gap:8px;align-items:flex-start}#quick-facts dd{margin:8px 0 0;font-size:15px;line-height:1.6}#quick-facts dd a{font-size:12px}.stay-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;list-style:none;padding:0}.stay-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;margin:16px 0;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.stay-card h3{margin:8px 0;font-size:22px}.stay-card .eyebrow{display:inline-block;margin-left:8px}.stay-card .stay-context{font-size:14px;color:var(--muted);margin:0}.stay-card .button{margin-top:8px}.stay-card .icon{color:var(--green)}.disclosure,.affiliate-note{font-size:12px;color:var(--muted);line-height:1.6}details{border-bottom:1px solid var(--line)}details summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:56px;padding:16px 0;cursor:pointer;font-weight:500;list-style:none}details summary::-webkit-details-marker{display:none}details:not(.toc-details) summary:after{content:'+';font:500 24px var(--body);flex:none}details[open]:not(.toc-details) summary:after{content:'−'}details>p{padding-bottom:16px}#faq details p{font-size:16px}.next-links{display:grid;grid-template-columns:1fr 1fr;gap:16px;list-style:none;padding:0}.next-links li{margin:0}.next-links a{display:flex;align-items:center;background:var(--white);border:1px solid var(--line);padding:16px 24px;min-height:64px;border-radius:var(--radius);text-decoration:none;font-size:15px}.countdown{display:inline-flex;align-items:center;font-size:12px;font-weight:600;padding:8px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--sand);margin-bottom:24px}.article table{display:block;width:100%;max-width:100%;overflow:auto;border-collapse:collapse;font-size:15px}.article td,.article th{padding:16px;border:1px solid var(--line);min-width:128px;vertical-align:top;text-align:left}.article th{background:var(--sand);font-weight:600}.cluster-link-list{columns:2;column-gap:32px}.cluster-link-list li{break-inside:avoid}.print-checklist{list-style:none;padding:0}.check-square{margin-right:8px}.bunker-cartoon img{width:100%;height:auto;border-radius:var(--radius)}
/* Editorial cards: full-width indexes and responsive three-up grids. */
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.card{position:relative;min-width:0;background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;overflow:hidden;display:flex;flex-direction:column;font-size:16px}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.card:focus-within{outline:3px solid var(--green);outline-offset:4px}.card>figure{position:relative}.card-art{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.card>figure figcaption{font-size:10px;line-height:1.5;padding:8px 16px;background:var(--sand);position:relative;z-index:2}.card>figure figcaption a{min-height:24px}.type-art{aspect-ratio:16/10;background:var(--green);color:var(--white);padding:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.type-art>span{font:500 26px/1.2 var(--heading);max-width:85%}.type-art img{width:40px;height:40px;align-self:flex-end}.card-body{padding:24px;flex:1}.card h3,.card h4{font:500 22px/1.25 var(--heading);margin:8px 0 16px;letter-spacing:-.02em}.card h3 a,.card h4 a{color:var(--ink);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card h3 a:after,.card h4 a:after{content:'';position:absolute;inset:0;z-index:1}.card h3 a:hover,.card h4 a:hover{text-decoration:underline}.card-body>p:not(.card-meta):not(.countdown){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;line-height:1.65;color:var(--muted);margin:0}.card .eyebrow{font-size:10px;color:var(--muted);margin-bottom:16px}.card-meta{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 16px}.card-meta .icon{width:14px;height:14px;vertical-align:-3px}.card-event{font-size:12px;margin-top:16px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}.filters button{min-height:44px;padding:8px 16px;border-radius:24px;background:transparent;color:var(--green);border:1px solid var(--line);cursor:pointer;font-size:14px}.filters button[aria-pressed=true]{background:var(--green);color:var(--white)}.article .cards{grid-template-columns:repeat(3,minmax(0,1fr))}.is-index .article .cards{grid-template-columns:repeat(3,minmax(0,1fr))}.cluster-group{margin-block:32px}
/* Homepage: two major features, the season list, and planning paths. */
.home-section{padding-block:var(--section)}.home-section+.home-section{padding-top:0}.features{display:grid;grid-template-columns:1fr 1fr;gap:32px}.feature-card .card-art{aspect-ratio:16/10}.feature-card h3{font-size:34px}.feature-card .countdown{margin-top:24px}.feature-links{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:0 16px;border-top:1px solid var(--line);padding-top:16px}.feature-links a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}.feature-card .card-body>p:not(.countdown){max-width:480px}.calendar-section{background:var(--white);padding-block:var(--section)}.calendar-list{list-style:none;padding:0;margin:32px 0 0}.calendar-list li{display:grid;grid-template-columns:64px 1fr 24px;gap:24px;align-items:center;padding:16px 0;margin:0;border-top:1px solid var(--line);position:relative}.calendar-list time{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--sand);width:64px;height:64px;line-height:1.1;border-radius:8px}.calendar-list time span{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em}.calendar-list time strong{font:500 27px/1.2 var(--heading);margin-top:4px}.calendar-list h3{font-size:22px;margin:0 0 4px}.calendar-list h3 a{text-decoration:none}.calendar-list h3 a:after{position:absolute;inset:0;content:''}.calendar-list h3 a:hover{text-decoration:underline}.calendar-list p{font-size:13px;color:var(--muted);margin:0}.plan-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.plan-tile{background:var(--sand);border-radius:var(--radius);padding:32px 24px;text-decoration:none;display:flex;flex-direction:column;box-shadow:var(--shadow)}.plan-tile>.icon{width:32px;height:32px}.plan-tile p{font-size:14px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.plan-tile>span:last-child{margin-top:auto}.plan-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px}.section-heading>a{font-size:14px;min-height:44px}.trust-strip{text-align:center;background:var(--sand);padding:24px;font-size:12px;letter-spacing:.04em}
/* Footer and search. */
.footer{background:var(--green);color:var(--cream);padding-block:64px 32px;font-size:13px}.footer a{color:var(--cream);text-decoration:none}.footer a:hover{text-decoration:underline}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;gap:32px;padding-bottom:48px}.footer-grid h2{font-size:22px;margin-bottom:16px}.footer-grid>div>a{display:flex;align-items:center;min-height:44px}.footer-operator{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;border-top:1px solid #ffffff40;padding-top:32px;margin-bottom:24px}.dydq-card{padding:24px;background:#ffffff0d;border:1px solid #ffffff40;border-radius:var(--radius);max-width:640px}.operator-wordmark{display:inline-flex;align-items:center;min-height:44px;font:500 26px var(--heading);margin-bottom:8px}.dydq-card p{font-size:12px;margin:0 0 8px}.dydq-card>a:last-child{display:inline-flex;align-items:center;min-height:44px}.footer-bottom{font-size:12px;line-height:1.8;margin:0}.search-row{display:flex;gap:16px;margin:16px 0}input[type=search]{width:100%;min-width:0;min-height:48px;border:1px solid var(--muted);border-radius:var(--radius);padding:12px 16px;background:var(--white);color:var(--ink)}#search-results{list-style:none;padding:0}#search-results li{padding:24px;border:1px solid var(--line);background:var(--white);border-radius:var(--radius);margin:16px 0}#search-results a{font:500 22px var(--heading)}#search-results p{font-size:15px;margin:8px 0 0}
@media(min-width:1101px){.page-cluster .article .cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1150px){.desktop-nav{display:none}.menu-toggle{display:block}.article-layout{gap:40px;grid-template-columns:minmax(0,1fr) 240px}.brand{font-size:26px}}
@media(max-width:900px){.cards,.is-index .article .cards{grid-template-columns:repeat(3,minmax(0,1fr))}.article-layout{display:flex;flex-direction:column;gap:32px}.article-layout>aside{position:static;order:-1;width:100%}.article{width:100%;max-width:var(--reading);margin-inline:auto}.is-index .article{max-width:none}.toc{padding:16px 24px}.toc summary{pointer-events:auto;min-height:44px}.toc summary:after{content:'+'}.toc details[open] summary:after{content:'−'}.toc ol{columns:2}.plan-tiles{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-operator{gap:32px}.hero-copy{max-width:680px}}
@media(max-width:600px){:root{--section:56px;--h1:36px;--h2:26px;--h3:20px}.wrap{width:calc(100% - 32px)}.header-inner{height:72px;gap:8px}.brand{font-size:23px}.brand img{width:44px;height:44px}.menu-toggle{font-size:13px;padding:8px 12px;min-width:60px}.hero{min-height:46vh}.hero .wrap{padding-block:56px 72px}.hero-copy>p:not(.checked):not(.byline){font-size:16px}.hero:after{background:linear-gradient(90deg,rgba(8,28,21,.9),rgba(8,28,21,.75))}.hero-figure figcaption{right:8px;left:8px;max-width:none;bottom:4px;font-size:10px;text-align:right}.hero h1{margin-top:16px}.hero .button{font-size:14px;padding:12px 16px}.hero-actions{gap:8px}.page-head{padding:40px 0 32px}.page-head .dek{font-size:18px}.crumb{font-size:11px}.editorial-meta{margin-bottom:24px}.article{font-size:18px;line-height:1.7}.article section{margin-bottom:40px}.article .lead{font-size:21px}.cards,.article .cards,.is-index .article .cards,.features{grid-template-columns:1fr}.features{gap:24px}.card-body{padding:24px}.feature-card h3{font-size:26px}.section-heading{display:block}.section-heading>a{display:inline-flex;align-items:center;margin-bottom:16px}.plan-tiles{grid-template-columns:1fr 1fr;gap:16px}.plan-tile{padding:24px 16px}.plan-tile h3{font-size:20px}.plan-tile p{font-size:12px}.calendar-list li{grid-template-columns:56px 1fr 16px;gap:16px}.calendar-list time{width:56px;height:64px}.calendar-list h3{font-size:20px}.calendar-list p{font-size:12px}.footer-grid{gap:24px 16px}.footer-operator{grid-template-columns:1fr}.footer{padding-top:48px}.dydq-card{padding:16px}.footer-grid h2{font-size:20px}.footer-grid a{font-size:12px}.toc ol{columns:1}.context-bar{padding:8px 16px;gap:0 16px}.map-legend{grid-template-columns:1fr}.venue-map{height:340px}#quick-facts{padding:24px 16px}#quick-facts dl{gap:0 16px}#quick-facts dt{font-size:10px;letter-spacing:.04em}#quick-facts dd{font-size:13px}.next-links,.stay-grid{grid-template-columns:1fr}.cluster-link-list{columns:1}.search-row{flex-wrap:wrap}.search-row button{width:100%}.suggestion{padding:24px 16px}.article table{font-size:13px}.trust-strip{font-size:11px}.course-photo figcaption{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{body>header,.footer,.hero-figure,.crumb,.toc,.context-bar,#next,#useful-reading,#you-might-like,.print-button,.menu-toggle,.venue-map,.filters{display:none!important}.article-layout,.wrap{display:block!important;width:100%!important;max-width:none!important;padding:0!important}.hero,.hero-copy{background:white!important;color:black!important;padding:0!important;min-height:0!important}.hero:after{display:none}.hero h1{color:black}.article{font:11pt/1.45 Georgia,serif;max-width:none}.article a{color:black!important;text-decoration:none}.article section{break-inside:avoid}.checklist-only .article>section:not(.print-checklist-section){display:none!important}.checklist-only .article>p,.checklist-only .article>.countdown{display:none!important}}
.date-unconfirmed{width:64px;min-height:64px;background:var(--sand);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.summary-continuation{font-size:21px;line-height:1.7}.event-cards{margin-block:32px}.event-cards+.filters{margin-top:32px}
@media(min-width:601px) and (max-width:900px){.article .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hero-figure{z-index:auto;pointer-events:none}.hero-art{position:absolute;z-index:-2}.hero-figure figcaption{pointer-events:auto;z-index:3}.hero:after{pointer-events:none}.card .eyebrow,#quick-facts dt{font-size:12px}.type-art>span{min-width:0;overflow-wrap:anywhere}.suggestion-label{display:block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}
@media(min-width:901px){.article .type-art{padding:16px;gap:8px}.article .type-art>span{font-size:20px}.article .type-art img{width:28px;height:28px}.article .card-body{padding:16px}}
/* Muted text is reserved for cream/white; sand panels use ink for AA contrast. */
.card>figure figcaption,.plan-tile p{color:var(--ink)}.type-art{overflow:hidden}.type-art>span{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.card>figure figcaption{position:absolute;inset:auto 0 0;background:rgba(248,245,238,.96);padding:4px 12px;color:var(--ink)}
