/* 3-17 display only. Tokens and geometry follow the supplied publication example. */
.twkm-weekend-roundup{--twr-yellow:#ffe24a;--twr-sky:#4fc3d7;--twr-green:#63b96c;--twr-ink:#172a22;--twr-bottom-clearance:104px;width:100%;max-width:1080px;min-width:0;margin:0 auto calc(var(--twr-bottom-clearance) + env(safe-area-inset-bottom,0px));padding:0 3px;color:var(--twr-ink);font-family:inherit;line-height:1.8}
.twkm-weekend-roundup,.twkm-weekend-roundup *,.twkm-weekend-roundup *::before,.twkm-weekend-roundup *::after{box-sizing:border-box}
.twkm-weekend-roundup a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
.twkm-weekend-roundup a:focus-visible{outline:3px solid #1c96af;outline-offset:3px}
.twkm-weekend-roundup .twr-hero{position:relative;isolation:isolate;overflow:hidden;padding:32px clamp(20px,4.4vw,52px) 34px;border:1px solid #f0e4a1;border-radius:22px;background:linear-gradient(125deg,#fff9da 0%,#fff8d7 58%,#e5f7f4 100%);box-shadow:0 7px 24px #1849360e}
.twkm-weekend-roundup .twr-hero::before,.twkm-weekend-roundup .twr-hero::after{content:"";position:absolute;z-index:-1;border-radius:50%;pointer-events:none}
.twkm-weekend-roundup .twr-hero::before{width:280px;height:280px;right:-125px;top:-130px;background:var(--twr-sky);opacity:.28}
.twkm-weekend-roundup .twr-hero::after{width:135px;height:135px;right:12%;bottom:-100px;background:var(--twr-green);opacity:.23}
.twkm-weekend-roundup .twr-hero h2{margin:0 0 10px!important;padding:0!important;border:0!important;background:none!important;color:var(--twr-ink)!important;font-size:clamp(24px,5vw,39px)!important;line-height:1.42!important;font-weight:900!important;letter-spacing:-.02em;overflow-wrap:anywhere}
.twkm-weekend-roundup .twr-hero h2 strong{font-weight:900;box-shadow:inset 0 -.37em 0 var(--twr-yellow)}
.twkm-weekend-roundup .twr-hero p{margin:0 0 18px;color:#496259;font-size:14px}
.twkm-weekend-roundup p.twr-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 11px;padding:4px 13px;background:white;border:1px solid #eee3a5;border-radius:99px;color:#356b53;font-size:12px;font-weight:800;letter-spacing:.04em}
.twkm-weekend-roundup p.twr-hero-lead{margin-bottom:20px;font-size:clamp(15px,1rem,17px);font-weight:500;line-height:1.9}
.twkm-weekend-roundup .twr-hero-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.twkm-weekend-roundup .twr-date-hero{display:inline-block;padding:10px 17px;background:var(--twr-ink);color:white;border-radius:12px;font-size:15px;font-weight:850}
.twkm-weekend-roundup .twr-counts{font-size:13px;font-weight:750;color:#38594b}
.twkm-weekend-roundup .twr-counts strong{background:var(--twr-yellow);padding:0 .3em}
.twkm-weekend-roundup p.twr-summary{font-size:14px;line-height:1.8;margin:16px 0 10px}
.twkm-weekend-roundup p.twr-asof{font-size:13px;line-height:1.8;margin:0;color:#496259}
.twkm-weekend-roundup .twr-legend{margin:20px 1px 0;font-size:14px;line-height:1.8;color:#52675b}
.twkm-weekend-roundup .twr-guide-title{margin:26px 3px 12px!important;padding:0!important;border:0!important;background:none!important;color:var(--twr-ink)!important;font-size:clamp(19px,3vw,23px)!important;font-weight:900!important;line-height:1.5!important}
.twkm-weekend-roundup .twr-day-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 30px}
.twkm-weekend-roundup .twr-day-box{min-width:0;border:1px solid #dfebe3;border-radius:14px;background:white;padding:17px 18px;box-shadow:0 3px 10px #193c2d08}
.twkm-weekend-roundup .twr-day-box h3{margin:0 0 7px!important;padding:0!important;border:0!important;background:none!important;color:var(--twr-ink)!important;font-size:16px!important;font-weight:900!important;line-height:1.5!important}
.twkm-weekend-roundup .twr-day-box p{margin:0;font-size:14px;line-height:1.8;color:#506b60}
.twkm-weekend-roundup .twr-day-links{margin:0;padding-left:1.15em;font-size:15px;line-height:1.75}
.twkm-weekend-roundup .twr-day-links li{margin:6px 0}
.twkm-weekend-roundup .twr-day-links a{display:inline-block;min-block-size:40px;padding-block:6px;color:#126d78;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.twkm-weekend-roundup .twr-jumps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0 28px}
.twkm-weekend-roundup .twr-jumps a{display:flex;justify-content:space-between;align-items:center;gap:8px;min-width:0;min-height:48px;padding:13px 15px;border:1px solid #dce9e1;border-radius:12px;background:white;font-size:15px;font-weight:800}
.twkm-weekend-roundup .twr-jumps a span:last-child{font-size:12px;font-weight:400;color:#52675b;white-space:nowrap}
.twkm-weekend-roundup .twr-jumps a:hover{background:#e9f9f3;border-color:#80c1a3}
.twkm-weekend-roundup .twr-region{margin-top:34px;scroll-margin-top:100px}
.twkm-weekend-roundup .twr-region-header{display:flex;flex-wrap:wrap;align-items:center;gap:9px 14px;padding:16px 20px;border-left:6px solid var(--twr-green);border-radius:15px;background:#eaf7f0}
.twkm-weekend-roundup .twr-region:nth-of-type(even)>.twr-region-header{background:#e9f7fb;border-color:var(--twr-sky)}
.twkm-weekend-roundup .twr-region-header h2{margin:0!important;padding:0!important;border:0!important;background:none!important;color:var(--twr-ink)!important;font-size:clamp(20px,3vw,25px)!important;font-weight:900!important;line-height:1.5!important}
.twkm-weekend-roundup .twr-index{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;border-radius:10px;background:var(--twr-yellow);font-size:12px;font-weight:900}
.twkm-weekend-roundup .twr-region-summary{margin-left:auto;color:#537166;font-size:14px;font-weight:700}
.twkm-weekend-roundup small{font-size:.65em;font-weight:normal}
.twkm-weekend-roundup .twr-city{margin-top:27px;scroll-margin-top:90px}
.twkm-weekend-roundup .twr-city-header{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:0 0 12px;padding:0 2px 10px;border-bottom:2px solid #ecf1eb}
.twkm-weekend-roundup .twr-city h3{margin:0!important;padding:0!important;border:0!important;background:none!important;color:var(--twr-ink)!important;font-size:19px!important;font-weight:850!important;line-height:1.45!important}
.twkm-weekend-roundup .twr-city-count{font-size:13px;color:#476654;padding:4px 10px;border-radius:30px;background:#e9f4ef;font-weight:800}
.twkm-weekend-roundup .twr-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.twkm-weekend-roundup .twr-grid-single{grid-template-columns:1fr}
.twkm-weekend-roundup .twr-card{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;border:1px solid #e4ece6;border-radius:16px;background:white;overflow:hidden;box-shadow:0 3px 12px #172a2209;scroll-margin-top:104px}
.twkm-weekend-roundup .twr-card:hover{border-color:#84c7b1;box-shadow:0 7px 18px #172a2216}
.twkm-weekend-roundup .twr-media{position:relative;align-self:stretch;min-width:0;min-height:0;aspect-ratio:4/5;max-block-size:520px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#e5f6ee 0%,#d9f0f2 55%,#fff2b8 100%)}
.twkm-weekend-roundup .twr-media img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center center}
.twkm-weekend-roundup .twr-media-shape{text-align:center;font-size:24px;font-weight:900;line-height:1.3;color:#166b58}
.twkm-weekend-roundup .twr-main{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0;padding:20px 22px 22px;overflow-wrap:anywhere}
.twkm-weekend-roundup .twr-main h4{margin:0 0 12px!important;padding:0!important;border:0!important;background:none!important;color:var(--twr-ink)!important;font-size:clamp(18px,1.25rem,22px)!important;font-weight:800!important;line-height:1.55!important;letter-spacing:.01em;overflow-wrap:anywhere}
.twkm-weekend-roundup .twr-main p{max-inline-size:60ch;font-size:clamp(15px,1rem,17px);margin:0 0 12px;color:#50645a;line-height:1.8}
.twkm-weekend-roundup p.twr-status{display:inline-block;background:#fff1b7;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:800;color:#58491d;line-height:1.5}
.twkm-weekend-roundup .twr-card[data-verified="0"] .twr-status{background:#e1f4fb;color:#26667b}
.twkm-weekend-roundup .twr-finished .twr-status{background:#edf0ee;color:#425b50}
.twkm-weekend-roundup p.twr-date{font-weight:750;color:#345247}
.twkm-weekend-roundup p.twr-venue{margin-top:auto;padding-top:6px;font-size:14px;color:#476654}
.twkm-weekend-roundup .twr-read{display:inline-block;margin-top:6px;font-size:14px;font-weight:800;color:#126974;line-height:1.6}
.twkm-weekend-roundup .twr-reference-label{margin:16px 0 10px;font-size:14px;line-height:1.7;color:#26667b}
.twkm-weekend-roundup .twr-ended{font-weight:bold}
.twkm-weekend-roundup .twr-clock-notice,.twkm-weekend-roundup .twr-source-warning{font-size:14px;line-height:1.8;color:#58491d;background:#fff1b7;border-radius:10px;padding:13px 16px}
.twkm-weekend-roundup footer{border-top:1px solid #dfe9e2;padding:24px 5px;margin-top:40px;font-size:14px;line-height:1.8;color:#52675b}
.twkm-weekend-roundup .twr-neighbor{display:inline-block;padding:11px 16px;margin:5px;border:1px solid #bee1d7;border-radius:99px;background:#e9f6f3;font-size:13px;font-weight:850;color:#1d6b5d}
.twkm-weekend-roundup .twr-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Viewport fallback for engines without container queries. */
@media(min-width:600px){.twkm-weekend-roundup .twr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.twkm-weekend-roundup .twr-grid-single{grid-template-columns:minmax(0,1fr)}}
@media(min-width:960px){.twkm-weekend-roundup .twr-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.twkm-weekend-roundup .twr-grid-single{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){
.twkm-weekend-roundup .twr-day-guide{grid-template-columns:minmax(0,1fr);gap:14px}
.twkm-weekend-roundup .twr-jumps{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.twkm-weekend-roundup .twr-region-header{padding:15px 16px}
.twkm-weekend-roundup .twr-region-summary{margin-left:0}
}
@supports(container-type:inline-size){
.twkm-weekend-roundup{container-type:inline-size;container-name:twr}
.twkm-weekend-roundup .twr-grid{grid-template-columns:minmax(0,1fr)}
.twkm-weekend-roundup .twr-card,.twkm-weekend-roundup .twr-grid-single .twr-card{grid-template-columns:minmax(0,1fr)}
.twkm-weekend-roundup .twr-media,.twkm-weekend-roundup .twr-grid-single .twr-media{aspect-ratio:4/5;max-block-size:520px}
@container twr (max-width:599px){
.twkm-weekend-roundup .twr-day-guide{grid-template-columns:minmax(0,1fr)}
.twkm-weekend-roundup .twr-jumps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container twr (min-width:600px){
.twkm-weekend-roundup .twr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.twkm-weekend-roundup .twr-grid-single{grid-template-columns:minmax(0,1fr)}
.twkm-weekend-roundup .twr-grid-single .twr-card{grid-template-columns:minmax(0,min(42%,320px)) minmax(0,1fr)}
.twkm-weekend-roundup .twr-grid-single .twr-media{aspect-ratio:3/4;max-block-size:none}
}
@container twr (min-width:960px){
.twkm-weekend-roundup .twr-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.twkm-weekend-roundup .twr-grid-single{grid-template-columns:minmax(0,1fr)}
}
}
@media(prefers-reduced-motion:reduce){.twkm-weekend-roundup *{scroll-behavior:auto;transition:none;animation:none}}
