:root{--twm-secondary:#5a5a58}
body{margin:0;background:var(--surface-page);-webkit-text-size-adjust:100%;text-size-adjust:100%}
span[style*="aspect-ratio"] > image-slot{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important}
a{color:var(--text-body)}a:hover{color:var(--text-body);text-decoration:underline}
:is(#site-header, .twm-anchor--site-header){background-color:transparent;color:#fefefd;transition:background-color .25s ease,color .25s ease}
:is(#site-header, .twm-anchor--site-header)[data-solid]{background-color:#fefefd;color:#131313}
:is(#hdr-row, .twm-anchor--hdr-row){transition:height .25s ease}
:is(#site-nav, .twm-id--site-nav){transition:height .25s ease}
:is(#site-nav, .twm-id--site-nav){border-bottom-color:rgba(254,254,253,.28);transition:border-bottom-color .25s ease}
:is(#site-header, .twm-anchor--site-header)[data-solid] :is(#site-nav, .twm-id--site-nav){border-bottom-color:#eaeae9}
:is(#logo-white, .twm-id--logo-white){opacity:1;transition:opacity .25s ease}
:is(#logo-black, .twm-id--logo-black){opacity:0;transition:opacity .25s ease}
:is(#site-header, .twm-anchor--site-header)[data-solid] :is(#logo-white, .twm-id--logo-white){opacity:0}
:is(#site-header, .twm-anchor--site-header)[data-solid] :is(#logo-black, .twm-id--logo-black){opacity:1}
@keyframes drawerIn{from{opacity:0}to{opacity:1}}
@keyframes drawerRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes drawerImg{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}
:is(#hero-scrim, .twm-anchor--hero-scrim){opacity:0;transition:opacity .2s}
image-slot[data-filled] ~ :is(#hero-scrim, .twm-anchor--hero-scrim){opacity:1 !important}
:is(#hero-copy, .twm-anchor--hero-copy){position:absolute;z-index:2}
image-slot:not([data-filled]) ~ :is(#hero-copy, .twm-anchor--hero-copy){background:rgba(10,14,20,0.86) !important}
image-slot[data-filled] ~ :is(#hero-copy, .twm-anchor--hero-copy){background:transparent !important;padding-left:0 !important;padding-right:0 !important;margin-left:0 !important}
@media (max-width:1024px){
  :is(#drawer, .twm-anchor--drawer){flex-direction:column !important;overflow-y:auto !important}
  :is(#drawer-feature, .twm-anchor--drawer-feature){display:block !important;order:0 !important;flex:none !important;position:relative !important;width:100% !important;height:300px !important;margin-top:8px !important}
  :is(#drawer-feature, .twm-anchor--drawer-feature) > div:last-child{left:24px !important;right:24px !important;bottom:24px !important}
  :is(#drawer-feature, .twm-anchor--drawer-feature) > div:last-child > div:last-child{font-size:22px !important;line-height:30px !important;letter-spacing:0.5px !important;max-width:480px !important;margin-top:10px !important}
  :is(#drawer-panel, .twm-anchor--drawer-panel){width:100% !important;min-width:0 !important;flex:none !important;min-height:0 !important;box-sizing:border-box !important;padding:24px 24px 28px !important}
  :is(#drawer-panel, .twm-anchor--drawer-panel) > div:first-child{position:sticky !important;top:0 !important;z-index:3 !important;background:var(--surface-page) !important;border-bottom:0 !important;margin:-24px -24px 0 !important;padding:24px 24px 16px !important}
  :is(#drawer-panel, .twm-anchor--drawer-panel) > div:last-child{border-top:0 !important;padding-top:26px !important}
  :is(#drawer-scroll, .twm-anchor--drawer-scroll){overflow-y:visible !important;flex:none !important;display:block !important;padding:22px 0 0 !important}
  :is(#drawer-list, .twm-id--drawer-list){gap:0 !important}
  :is(#drawer-list, .twm-id--drawer-list) a[data-drawer-row]{display:flex !important;align-items:center !important;padding:19px 0 !important;border-top:1px solid var(--twm-hairline) !important;border-bottom:0 !important;margin:0 !important}
  :is(#drawer-list, .twm-id--drawer-list) a[data-drawer-row]:first-of-type{border-top:0 !important}
  :is(#drawer-list, .twm-id--drawer-list) a[data-drawer-row]:hover{transform:none !important}
  :is(#drawer-list, .twm-id--drawer-list) a[data-drawer-row] span{font-size:30px !important;line-height:40px !important;letter-spacing:1px !important}
  :is(#drawer-list, .twm-id--drawer-list) span[data-drawer-thumb]{display:none !important}
  :is(#drawer-list, .twm-id--drawer-list) a[data-drawer-sub]{display:none !important}
  :is(#page-body, .twm-anchor--page-body){padding-bottom:80px !important}
  :is(#site-footer, .twm-anchor--site-footer){height:auto !important;padding:44px 0 30px !important;gap:30px !important}
  :is(#footer-top, .twm-anchor--footer-top),:is(#footer-legal, .twm-anchor--footer-legal){max-width:none !important;padding-left:24px !important;padding-right:24px !important}
  :is(#footer-top, .twm-anchor--footer-top){flex-direction:row !important;align-items:flex-start !important;justify-content:space-between !important;gap:32px !important}
  :is(#footer-brand, .twm-anchor--footer-brand){gap:14px !important}
  :is(#footer-secondary, .twm-id--footer-secondary){display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:baseline !important;justify-content:flex-end !important;gap:12px 24px !important;border-top:0 !important;padding-top:0 !important;max-width:420px !important}
  :is(#footer-secondary, .twm-id--footer-secondary) a{color:rgba(254,254,253,0.75) !important}
  :is(#site-nav, .twm-id--site-nav),:is(#mega-panel, .twm-anchor--mega-panel){display:none !important}
  :is(#hdr-row, .twm-anchor--hdr-row){height:72px !important;padding:0 24px !important}
  :is(#hdr-burger, .twm-aid--hdr-burger .wp-block-button__link){width:38px !important;padding:12px 8px !important;margin:-12px -8px !important}
  :is(#hero, .twm-anchor--hero){height:min(78vh,660px) !important}
  :is(#hero-copy, .twm-anchor--hero-copy){left:24px !important;right:24px !important;width:auto !important;bottom:36px !important}
  :is(#hero-title, .twm-id--hero-title){font-size:34px !important;line-height:44px !important;letter-spacing:1px !important;margin-top:18px !important}
  :is(#hero-stand, .twm-id--hero-stand){margin-top:18px !important}
  :is(#week, .twm-anchor--week){padding:56px 24px 0 !important}
  :is(#week-grid, .twm-anchor--week-grid){grid-template-columns:repeat(2,1fr) !important;gap:24px 20px !important}
  :is(#seasons, .twm-anchor--seasons){margin-top:64px !important;padding:56px 0 60px !important}
  :is(#seasons-head, .twm-anchor--seasons-head),:is(#seasons-grid, .twm-anchor--seasons-grid){padding-left:24px !important;padding-right:24px !important}
  :is(#seasons-grid, .twm-anchor--seasons-grid){grid-template-columns:repeat(2,1fr) !important;gap:24px 20px !important}
  :is(#feature, .twm-anchor--feature){padding:64px 24px 0 !important;flex-direction:column !important;align-items:stretch !important;gap:24px !important}
  :is(#feature-img, .twm-id--feature-img){width:100% !important;aspect-ratio:4/3 !important}
  :is(#feature-title, .twm-id--feature-title){font-size:30px !important;line-height:40px !important}
  :is(#news-strip, .twm-anchor--news-strip){margin:64px 0 0 !important;max-width:none !important;flex-direction:column !important;align-items:flex-start !important;gap:18px !important}
  :is(#search-head, .twm-anchor--search-head){height:72px !important;padding:0 24px !important}
  :is(#search-body, .twm-anchor--search-body){padding:0 24px 72px !important;justify-content:flex-start !important;padding-top:48px !important}
  :is(#site-search-input, .twm-input-id--site-search-input .wp-block-search__input){font-size:30px !important;line-height:40px !important}
  :is(#search-sugg, .twm-anchor--search-sugg){flex-direction:column !important;gap:20px !important;margin-top:32px !important}
}
@media (max-width:640px){
  :is(#drawer-panel, .twm-anchor--drawer-panel) > div:first-child{margin:-20px -18px 0 !important;padding:20px 18px 14px !important}
  :is(#drawer-feature, .twm-anchor--drawer-feature){touch-action:pan-y !important}
  :is(#drawer-feature, .twm-anchor--drawer-feature) > div:last-child::before{content:"This week" !important;display:block !important;font-family:'proxima-nova',var(--font-sans) !important;font-weight:400 !important;font-size:12px !important;line-height:16.8px !important;letter-spacing:2px !important;text-transform:uppercase !important;color:rgba(254,254,253,0.7) !important;margin-bottom:12px !important}
  :is(#drawer-dots, .twm-anchor--drawer-dots){display:flex !important}
  :is(#drawer-feature, .twm-anchor--drawer-feature){height:240px !important}
  :is(#drawer-feature, .twm-anchor--drawer-feature) > div:last-child{left:18px !important;right:18px !important;bottom:18px !important}
  :is(#drawer-panel, .twm-anchor--drawer-panel){padding-bottom:24px !important}
  :is(#drawer-panel, .twm-anchor--drawer-panel){padding:20px 18px 34px !important}
  :is(#drawer-list, .twm-id--drawer-list) a[data-drawer-row]{padding:17px 0 !important}
  :is(#drawer-list, .twm-id--drawer-list) a[data-drawer-row] span{font-size:26px !important;line-height:34px !important}
  :is(#page-body, .twm-anchor--page-body){padding-bottom:64px !important}
  :is(#site-footer, .twm-anchor--site-footer){padding:40px 0 26px !important;gap:28px !important}
  :is(#footer-top, .twm-anchor--footer-top),:is(#footer-legal, .twm-anchor--footer-legal){padding-left:18px !important;padding-right:18px !important}
  :is(#footer-top, .twm-anchor--footer-top){flex-direction:column !important;align-items:flex-start !important;gap:26px !important}
  :is(#footer-secondary, .twm-id--footer-secondary){flex-direction:row !important;flex-wrap:wrap !important;justify-content:flex-start !important;gap:14px 22px !important;max-width:none !important}
  :is(#footer-legal, .twm-anchor--footer-legal){flex-direction:column !important;align-items:flex-start !important;gap:12px !important;padding-top:20px !important}
  :is(#hdr-row, .twm-anchor--hdr-row){padding:0 18px !important}
  :is(#hero, .twm-anchor--hero){height:min(80vh,560px) !important}
  :is(#hero-copy, .twm-anchor--hero-copy){left:18px !important;right:18px !important;bottom:28px !important;padding:20px !important}
  :is(#hero-title, .twm-id--hero-title){font-size:28px !important;line-height:38px !important;letter-spacing:0.6px !important}
  :is(#week, .twm-anchor--week),:is(#feature, .twm-anchor--feature){padding-left:18px !important;padding-right:18px !important}
  :is(#seasons-head, .twm-anchor--seasons-head),:is(#seasons-grid, .twm-anchor--seasons-grid){padding-left:18px !important;padding-right:18px !important}
  :is(#week-grid, .twm-anchor--week-grid),:is(#seasons-grid, .twm-anchor--seasons-grid){grid-template-columns:1fr !important;gap:32px !important}
  :is(#week-head, .twm-anchor--week-head),:is(#seasons-head, .twm-anchor--seasons-head){flex-direction:column !important;align-items:flex-start !important;gap:12px !important}
  :is(#feature-title, .twm-id--feature-title){font-size:22px !important;line-height:30px !important}

  :is(#site-search-input, .twm-input-id--site-search-input .wp-block-search__input){font-size:24px !important;line-height:34px !important}
}


/* ============================================================================
   Base geometry for the core-block homepage. Each rule carries the design's
   exact values onto the elements' stable ids; the responsive rules above key
   off the same ids. Query-loop list wrappers are neutralised so cards sit
   directly in the section grids.
   ========================================================================== */

/* query-loop wrapper neutralisation */
.twm-q-contents > .wp-block-post-template { display: contents; }
.twm-q-contents .wp-block-post-template > li.wp-block-post { display: block; list-style: none; margin: 0; padding: 0; }
.twm-q-flat > .wp-block-post-template, .twm-q-flat .wp-block-post-template > li.wp-block-post { display: contents; }
.wp-block-query { margin: 0; }

/* ---- hero (#hero: cover + latest post) ---- */
:is(#hero, .twm-anchor--hero) { position: relative; width: 100%; height: 1000px; min-height: 0; background: var(--surface-band); overflow: hidden; padding: 0; display: block; align-items: normal; justify-content: normal; }
:is(#hero, .twm-anchor--hero) > img.wp-block-cover__image-background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 45%; }
:is(#hero, .twm-anchor--hero) > span.wp-block-cover__background { display: none; }
:is(#hero, .twm-anchor--hero) > .wp-block-cover__inner-container { position: static; width: 100%; margin: 0; padding: 0; }
:is(#hero-scrim, .twm-anchor--hero-scrim) { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to bottom, rgba(10,14,20,0.46) 0%, rgba(10,14,20,0.34) 42%, rgba(10,14,20,0.5) 100%); opacity: 0; transition: opacity .2s; }
:is(#hero, .twm-anchor--hero):has(> img.wp-block-cover__image-background) :is(#hero-scrim, .twm-anchor--hero-scrim) { opacity: 1 !important; }
:is(#hero-copy, .twm-anchor--hero-copy) { position: absolute; z-index: 2; left: max(80px, calc(50% - 700px)); bottom: 170px; width: min(820px, 52%); box-sizing: border-box; padding: 36px 40px 40px; margin: 0 0 0 -40px; background: rgba(10,14,20,0.42); pointer-events: none; }
:is(#hero, .twm-anchor--hero):not(:has(> img.wp-block-cover__image-background)) :is(#hero-copy, .twm-anchor--hero-copy) { background: rgba(10,14,20,0.86) !important; }
:is(#hero, .twm-anchor--hero):has(> img.wp-block-cover__image-background) :is(#hero-copy, .twm-anchor--hero-copy) { background: transparent !important; padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; }
:is(#hero-kicker, .twm-anchor--hero-kicker) { display: flex; flex-wrap: nowrap; gap: 8px; margin: 0; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; color: var(--twm-white); }
:is(#hero-kicker, .twm-anchor--hero-kicker) :is(p, div, time, a) { margin: 0; font: inherit; letter-spacing: inherit; color: inherit; text-decoration: none; }
:is(#hero-kicker, .twm-anchor--hero-kicker) .twm-slash { opacity: 0.7; }
:is(#hero-title, .twm-id--hero-title) { margin: 26px 0 0; max-width: 860px; font-family: var(--font-headline); font-weight: 400; font-size: 48px; line-height: 60px; letter-spacing: 1.5px; color: var(--twm-white); text-wrap: pretty; }
:is(#hero-title, .twm-id--hero-title) a { color: inherit; text-decoration: none; }
:is(#hero-stand, .twm-id--hero-stand), :is(#hero-stand, .twm-id--hero-stand) p { margin: 0; max-width: 780px; font-family: var(--font-soft); font-weight: 400; font-size: 16px; line-height: 24px; letter-spacing: 0.2px; color: rgba(254,254,253,0.88); text-wrap: pretty; }
:is(#hero-stand, .twm-id--hero-stand) { margin-top: 30px; }

/* ---- the week in four (#week) ---- */
:is(#week, .twm-anchor--week) { max-width: 1360px; box-sizing: border-box; margin: 0 auto; padding: 72px 80px 0; }
:is(#week-head, .twm-anchor--week-head) { display: flex; align-items: baseline; gap: 28px; }
:is(#week-head, .twm-anchor--week-head) h2 { margin: 0; font-family: var(--font-headline); font-style: italic; font-weight: 400; font-size: 30px; line-height: 33px; letter-spacing: 0.9px; white-space: nowrap; }
:is(#week-head, .twm-anchor--week-head) hr.twm-rule { flex: 1; height: 1px; margin: 0; border: 0; background: var(--twm-hairline); align-self: center; }
:is(#week-range, .twm-anchor--week-range), :is(#week-range, .twm-anchor--week-range) p { margin: 0; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; white-space: nowrap; }
:is(#week-grid, .twm-anchor--week-grid) { margin-top: 36px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
:is(#week-grid, .twm-anchor--week-grid) figure.wp-block-post-featured-image, :is(#seasons-grid, .twm-anchor--seasons-grid) figure.wp-block-post-featured-image { margin: 0; background: var(--surface-band); overflow: hidden; }
:is(#week-grid, .twm-anchor--week-grid) figure.wp-block-post-featured-image { aspect-ratio: 2/3; }
:is(#week-grid, .twm-anchor--week-grid) figure.wp-block-post-featured-image img, :is(#seasons-grid, .twm-anchor--seasons-grid) figure.wp-block-post-featured-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 45%; }
:is(#week-grid, .twm-anchor--week-grid) .wp-block-post-terms, :is(#seasons-grid, .twm-anchor--seasons-grid) .wp-block-post-terms { display: block; margin: 18px 0 0; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; }
:is(#week-grid, .twm-anchor--week-grid) .wp-block-post-terms a, :is(#seasons-grid, .twm-anchor--seasons-grid) .wp-block-post-terms a { color: inherit; text-decoration: none; }
:is(#week-grid, .twm-anchor--week-grid) .wp-block-post-terms .wp-block-post-terms__separator, :is(#seasons-grid, .twm-anchor--seasons-grid) .wp-block-post-terms .wp-block-post-terms__separator { display: none; }
:is(#week-grid, .twm-anchor--week-grid) .wp-block-post-terms a:not(:first-child), :is(#seasons-grid, .twm-anchor--seasons-grid) .wp-block-post-terms a:not(:first-child) { display: none; }
:is(#week-grid, .twm-anchor--week-grid) h3.wp-block-post-title, :is(#seasons-grid, .twm-anchor--seasons-grid) h3.wp-block-post-title { margin: 10px 0 0; font-family: var(--font-headline); font-weight: 400; font-size: 22px; line-height: 30px; letter-spacing: 0.5px; text-wrap: pretty; }
:is(#week-grid, .twm-anchor--week-grid) h3.wp-block-post-title a, :is(#seasons-grid, .twm-anchor--seasons-grid) h3.wp-block-post-title a { color: var(--text-body); text-decoration: none; }
:is(#week-grid, .twm-anchor--week-grid) h3.wp-block-post-title a:hover, :is(#seasons-grid, .twm-anchor--seasons-grid) h3.wp-block-post-title a:hover { text-decoration: underline; }

/* ---- the Seasons band (#seasons) ---- */
:is(#seasons, .twm-anchor--seasons) { margin-top: 96px; background: var(--twm-ink); padding: 76px 0 84px; }
:is(#seasons-head, .twm-anchor--seasons-head) { max-width: 1360px; box-sizing: border-box; margin: 0 auto; padding: 0 80px; display: flex; align-items: flex-end; justify-content: space-between; }
:is(#seasons-head, .twm-anchor--seasons-head) h2 { margin: 0; font-family: var(--font-headline); font-style: italic; font-weight: 400; font-size: 30px; line-height: 40px; letter-spacing: 1px; color: var(--twm-white); }
:is(#seasons-head, .twm-anchor--seasons-head) p { margin: 14px 0 0; font-family: var(--font-soft); font-weight: 400; font-size: 16px; line-height: 24px; letter-spacing: 0.2px; color: var(--twm-white); }
:is(#seasons-head, .twm-anchor--seasons-head) .wp-block-buttons { margin: 0; }
:is(#seasons-head, .twm-anchor--seasons-head) .wp-block-button__link { display: inline-block; background: transparent; border-radius: 0; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; color: var(--twm-white); text-decoration: none; border: 1px solid rgba(254,254,253,0.5); padding: 11px 20px; transition: background .2s ease, color .2s ease, border-color .2s ease; }
:is(#seasons-head, .twm-anchor--seasons-head) .wp-block-button__link:hover { background: var(--twm-white); border-color: var(--twm-white); color: var(--twm-ink); }
:is(#seasons-grid, .twm-anchor--seasons-grid) { max-width: 1360px; box-sizing: border-box; margin: 44px auto 0; padding: 0 80px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
:is(#seasons-grid, .twm-anchor--seasons-grid) figure.wp-block-post-featured-image { aspect-ratio: 3/4; }
:is(#seasons-grid, .twm-anchor--seasons-grid) figure.wp-block-post-featured-image img { object-position: 50% 40%; }
:is(#seasons-grid, .twm-anchor--seasons-grid) .wp-block-post-terms { color: var(--twm-white); }
:is(#seasons-grid, .twm-anchor--seasons-grid) h3.wp-block-post-title a { color: var(--twm-white); }

/* ---- feature story (#feature) ---- */
:is(#feature, .twm-anchor--feature) { max-width: 1360px; box-sizing: border-box; margin: 0 auto; padding: 88px 80px 0; display: flex; gap: 64px; align-items: center; }
:is(#feature-img, .twm-id--feature-img) { position: relative; display: block; width: 600px; flex-shrink: 0; margin: 0; aspect-ratio: 2/3; background: var(--surface-band); }
:is(#feature-img, .twm-id--feature-img) a { display: block; position: static; }
:is(#feature-img, .twm-id--feature-img) img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; }
:is(#feature-body, .twm-anchor--feature-body) { flex: 1; }
:is(#feature-kicker, .twm-anchor--feature-kicker) { display: flex; flex-wrap: nowrap; gap: 8px; margin: 0; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; }
:is(#feature-kicker, .twm-anchor--feature-kicker) :is(p, div, time, a) { margin: 0; font: inherit; letter-spacing: inherit; color: inherit; text-decoration: none; }
:is(#feature-kicker, .twm-anchor--feature-kicker) .twm-slash { opacity: 0.6; }
:is(#feature-kicker, .twm-anchor--feature-kicker) .wp-block-post-date { font-weight: 300; }
:is(#feature-title, .twm-id--feature-title) { margin: 20px 0 0; max-width: 720px; font-family: var(--font-headline); font-weight: 400; font-size: 48px; line-height: 60px; letter-spacing: 1.5px; text-wrap: pretty; }
:is(#feature-title, .twm-id--feature-title) a { color: inherit; text-decoration: none; }
:is(#feature-stand, .twm-id--feature-stand), :is(#feature-stand, .twm-id--feature-stand) p { margin: 0; max-width: 620px; font-family: var(--font-soft); font-weight: 400; font-size: 16px; line-height: 24px; letter-spacing: 0.2px; text-wrap: pretty; }
:is(#feature-stand, .twm-id--feature-stand) { margin-top: 20px; }

/* ---- weekly-letter strip (#news-strip) ---- */
:is(#news-strip, .twm-anchor--news-strip) { max-width: 1360px; box-sizing: border-box; margin: 80px auto 0; border-top: 1px solid var(--twm-hairline); border-bottom: 1px solid var(--twm-hairline); padding: 34px 80px; display: flex; align-items: center; justify-content: space-between; }
:is(#news-strip, .twm-anchor--news-strip) > p { margin: 0; font-family: var(--font-headline); font-weight: 400; font-size: 22px; line-height: 30px; letter-spacing: 0.5px; }
:is(#news-strip, .twm-anchor--news-strip) > p em { font-style: italic; }
:is(#news-strip, .twm-anchor--news-strip) .wp-block-buttons { margin: 0; }
:is(#news-strip, .twm-anchor--news-strip) .wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; min-width: 110px; height: 30px; padding: 0 24px; box-sizing: border-box; border-radius: 0; background: var(--twm-ink); color: var(--twm-white); font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 1; letter-spacing: 1.2px; text-transform: uppercase; text-decoration: none; white-space: nowrap; }

/* post-excerpt "read more" is not part of the design */
.wp-block-post-excerpt__more-text, .wp-block-post-excerpt__more-link { display: none; }

/* ---- fixed footer (#site-footer) + reveal spacer ---- */
:is(#footer-spacer, .twm-anchor--footer-spacer) { height: 184px; flex: none; }
:is(#site-footer, .twm-anchor--site-footer) { position: fixed; bottom: 0; left: 0; width: 100%; height: 184px; z-index: 1; box-sizing: border-box; padding: 44px 0 34px; margin: 0; background: var(--twm-ink); color: var(--twm-white); display: flex; flex-direction: column; justify-content: space-between; gap: 34px; }
:is(#footer-top, .twm-anchor--footer-top) { max-width: 1360px; margin: 0 auto; width: 100%; box-sizing: border-box; padding: 0 80px; display: flex; align-items: flex-start; justify-content: space-between; gap: 56px; }
:is(#footer-brand, .twm-anchor--footer-brand) { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
:is(#footer-brand, .twm-anchor--footer-brand) .wp-block-site-logo { margin: 0; }
:is(#footer-brand, .twm-anchor--footer-brand) .wp-block-site-logo a { display: block; }
:is(#footer-brand, .twm-anchor--footer-brand) .wp-block-site-logo img { display: block; width: 80px; height: 28px; object-fit: contain; object-position: left center; filter: brightness(0) invert(1); }
:is(#footer-tagline, .twm-anchor--footer-tagline) { margin: 0; font-family: var(--font-headline); font-style: italic; font-weight: 400; font-size: 22px; line-height: 30px; letter-spacing: 0.5px; color: var(--twm-white); }
:is(#footer-secondary, .twm-id--footer-secondary) { position: static; display: flex; align-items: baseline; gap: 14px 32px; flex-wrap: wrap; justify-content: flex-end; margin: 0; }
:is(#footer-secondary, .twm-id--footer-secondary) :is(ul, li) { display: contents; }
:is(#footer-secondary, .twm-id--footer-secondary) a { font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; color: rgba(254,254,253,0.75); text-decoration: none; transition: color .2s ease; }
:is(#footer-secondary, .twm-id--footer-secondary) a:hover { color: var(--twm-white); text-decoration: none; }
:is(#footer-legal, .twm-anchor--footer-legal) { max-width: 1360px; margin: 0 auto; width: 100%; box-sizing: border-box; padding: 20px 80px 0; border-top: 1px solid rgba(254,254,253,0.14); display: flex; align-items: baseline; justify-content: space-between; gap: 24px; }
:is(#footer-legal, .twm-anchor--footer-legal) .twm-footer-copy { margin: 0; }
:is(#footer-legal, .twm-anchor--footer-legal) .twm-footer-copy, :is(#footer-legal, .twm-anchor--footer-legal) a { font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; color: rgba(254,254,253,0.55); text-decoration: none; transition: color .2s ease; }
:is(#footer-legal, .twm-anchor--footer-legal) a:hover { color: var(--twm-white); text-decoration: none; }
:is(#footer-legal, .twm-anchor--footer-legal) nav { display: flex; align-items: baseline; gap: 32px; margin: 0; }
:is(#footer-legal, .twm-anchor--footer-legal) nav :is(ul, li) { display: contents; }

/* ============================================================================
   Header chrome (core-block build): bar, nav underline, mega panel, drawer,
   search overlay. States are class-driven (.is-open / .is-active), toggled by
   header.js; the [data-solid] colour/crossfade rules above are unchanged.
   ========================================================================== */

/* ---- top bar ---- */
:is(#site-header, .twm-anchor--site-header) { position: fixed; top: 0; left: 0; width: 100%; z-index: 20; }
:is(#hdr-row, .twm-anchor--hdr-row) { height: 76px; padding: 0 44px; display: flex; align-items: center; justify-content: space-between; }
:is(#hdr-row, .twm-anchor--hdr-row) > * + * { margin-block-start: 0; }
.twm-hdr-left { display: flex; align-items: center; gap: 30px; }
.twm-hdr-left .wp-block-buttons, .twm-hdr-left .wp-block-button { margin: 0; }
:is(#hdr-burger, .twm-aid--hdr-burger .wp-block-button__link) { display: flex; flex-direction: column; gap: 5px; width: 30px; box-sizing: border-box; padding: 8px 4px; margin: -8px -4px; background: none; border: 0; border-radius: 0; color: inherit; font-size: 0; line-height: 0; cursor: pointer; text-decoration: none; }
:is(#hdr-burger, .twm-aid--hdr-burger .wp-block-button__link)::before, :is(#hdr-burger, .twm-aid--hdr-burger .wp-block-button__link)::after { content: ""; display: block; height: 1.4px; background: currentColor; flex: none; align-self: flex-start; }
:is(#hdr-burger, .twm-aid--hdr-burger .wp-block-button__link)::before { width: 22px; }
:is(#hdr-burger, .twm-aid--hdr-burger .wp-block-button__link)::after { width: 14px; margin-top: -5px; }
:is(#hdr-search, .twm-aid--hdr-search .wp-block-button__link) { display: flex; align-items: center; padding: 0; background: none; border: 0; border-radius: 0; color: inherit; font-size: 0; line-height: 0; cursor: pointer; text-decoration: none; }
:is(#hdr-search, .twm-aid--hdr-search .wp-block-button__link)::before { content: ""; display: block; width: 17px; height: 17px; background: currentColor; -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="19" height="19" viewBox="0 0 19 19" fill="none" stroke="black" stroke-width="1.3"><circle cx="8" cy="8" r="6.2"/><line x1="12.6" y1="12.6" x2="18" y2="18"/></svg>') center / contain no-repeat; mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="19" height="19" viewBox="0 0 19 19" fill="none" stroke="black" stroke-width="1.3"><circle cx="8" cy="8" r="6.2"/><line x1="12.6" y1="12.6" x2="18" y2="18"/></svg>') center / contain no-repeat; }
.twm-hdr-logo { position: absolute; left: 50%; transform: translateX(-50%); width: 80px; height: 28px; }
.twm-hdr-logo .wp-block-site-logo { position: absolute; inset: 0; margin: 0; overflow: clip; }
.twm-hdr-logo .wp-block-site-logo a { display: block; width: 100%; height: 100%; }
.twm-hdr-logo .wp-block-site-logo img { display: block; width: 100%; height: 100%; object-fit: contain; }
:is(#logo-white, .twm-id--logo-white) img { filter: brightness(0) invert(1); }
.twm-hdr-spacer { width: 52px; }

/* ---- section nav (core navigation, list wrappers flattened) ---- */
:is(#site-nav, .twm-id--site-nav) { position: static; height: 46px; margin: 0; padding: 0 44px; display: flex; align-items: center; justify-content: center; gap: 42px; border-bottom-width: 1px; border-bottom-style: solid; }
:is(#site-nav, .twm-id--site-nav) :is(ul, li) { display: contents; }
:is(#site-nav, .twm-id--site-nav) a { position: relative; height: 100%; display: flex; align-items: center; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; color: inherit; text-decoration: none; white-space: nowrap; }
:is(#site-nav, .twm-id--site-nav) a::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: transparent; }
:is(#site-nav, .twm-id--site-nav) a:hover::after, :is(#site-nav, .twm-id--site-nav) a.is-active::after { background: currentColor; }

/* ---- mega panel ---- */
:is(#mega-panel, .twm-anchor--mega-panel) { display: none; background: var(--twm-white); color: var(--text-body); border-bottom: 1px solid var(--twm-hairline); padding: 44px 44px 52px; }
:is(#mega-panel, .twm-anchor--mega-panel).is-open { display: block; }
.mega-section { display: none; }
.mega-section.is-active { display: block; }
.mega-grid { display: grid; grid-template-columns: minmax(180px, 240px) repeat(4, 1fr); gap: 32px; }
.mega-grid > .wp-block-query, .mega-grid .wp-block-post-template { display: contents; }
.mega-grid .wp-block-post-template > li.wp-block-post { display: block; list-style: none; margin: 0; padding: 0; }
.mega-col { display: flex; flex-direction: column; gap: 20px; padding-top: 2px; }
.mega-col p { margin: 0; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; }
.mega-col p a { color: var(--text-body); text-decoration: none; }
.mega-col p.mega-all { font-weight: 700; }
.mega-grid figure.wp-block-post-featured-image { margin: 0; aspect-ratio: 3/4; background: var(--surface-band); overflow: hidden; }
.mega-grid figure.wp-block-post-featured-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; }
.mega-kicker { display: flex; gap: 8px; margin-top: 16px; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; }
.mega-kicker :is(p, div, time, a) { margin: 0; font: inherit; letter-spacing: inherit; color: inherit; text-decoration: none; }
.mega-kicker .twm-slash, .mega-kicker .wp-block-post-date { font-weight: 300; }
.mega-grid h3.wp-block-post-title { margin: 10px 0 0; font-family: var(--font-headline); font-weight: 400; font-size: 22px; line-height: 30px; letter-spacing: 0.5px; text-wrap: pretty; }
.mega-grid h3.wp-block-post-title a { color: var(--text-body); text-decoration: none; }

/* ---- off-canvas drawer ---- */
:is(#drawer, .twm-anchor--drawer) { position: fixed; inset: 0; z-index: 50; background: var(--surface-page); display: none; flex-direction: row; }
:is(#drawer, .twm-anchor--drawer).is-open { display: flex; animation: drawerIn .28s ease both; }
:is(#drawer-panel, .twm-anchor--drawer-panel) { width: 42%; min-width: 540px; flex-shrink: 0; box-sizing: border-box; padding: 40px 80px 40px; display: flex; flex-direction: column; }
.drawer-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 28px; border-bottom: 1px solid var(--twm-hairline); }
.drawer-head .wp-block-site-logo { margin: 0; }
.drawer-head .wp-block-site-logo img { display: block; width: 80px; height: 28px; object-fit: contain; object-position: left center; }
.drawer-head .wp-block-buttons, .drawer-head .wp-block-button, .drawer-foot .wp-block-buttons, .drawer-foot .wp-block-button { margin: 0; }
:is(#drawer-close, .twm-aid--drawer-close .wp-block-button__link) { display: flex; align-items: center; gap: 10px; padding: 0; background: none; border: 0; border-radius: 0; color: var(--text-body); text-decoration: none; cursor: pointer; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; }
:is(#drawer-close, .twm-aid--drawer-close .wp-block-button__link)::after { content: ""; display: block; width: 13px; height: 13px; background: currentColor; -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="black" stroke-width="1.2"><line x1="2" y1="2" x2="16" y2="16"/><line x1="16" y1="2" x2="2" y2="16"/></svg>') center / contain no-repeat; mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="black" stroke-width="1.2"><line x1="2" y1="2" x2="16" y2="16"/><line x1="16" y1="2" x2="2" y2="16"/></svg>') center / contain no-repeat; }
:is(#drawer-scroll, .twm-anchor--drawer-scroll) { flex: 1; min-height: 0; overflow-y: auto; display: flex; flex-direction: column; justify-content: flex-start; padding: 24px 0; }
:is(#drawer, .twm-anchor--drawer) > * + *, :is(#drawer-panel, .twm-anchor--drawer-panel) > * + *, :is(#drawer-scroll, .twm-anchor--drawer-scroll) > * + * { margin-block-start: 0; }
:is(#drawer-list, .twm-id--drawer-list) { position: static; display: flex; flex-direction: column; gap: 12px; align-items: stretch; }
:is(#drawer-list, .twm-id--drawer-list) :is(ul, li) { display: contents; }
:is(#drawer-list, .twm-id--drawer-list) a { display: flex; align-items: center; justify-content: space-between; gap: 20px; color: var(--text-body); text-decoration: none; transition: transform .3s cubic-bezier(.2,.7,.2,1); font-family: var(--font-headline); font-weight: 400; font-size: 30px; line-height: 40px; letter-spacing: 1px; }
:is(#drawer-list, .twm-id--drawer-list) a[data-drawer-row]:hover { transform: translateX(12px); }
.drawer-foot { flex: none; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; border-top: 1px solid var(--twm-hairline); padding-top: 24px; }
:is(#drawer-search, .twm-aid--drawer-search .wp-block-button__link) { display: inline-flex; align-items: center; gap: 10px; padding: 11px 20px; background: none; border: 1px solid var(--twm-hairline); border-radius: 0; color: var(--text-body); text-decoration: none; cursor: pointer; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; transition: background .2s ease, border-color .2s ease, color .2s ease; }
:is(#drawer-search, .twm-aid--drawer-search .wp-block-button__link)::before { content: ""; display: block; width: 13px; height: 13px; background: currentColor; -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="black" stroke-width="1.2"><circle cx="7.6" cy="7.6" r="5.9"/><line x1="12" y1="12" x2="17" y2="17"/></svg>') center / contain no-repeat; mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="black" stroke-width="1.2"><circle cx="7.6" cy="7.6" r="5.9"/><line x1="12" y1="12" x2="17" y2="17"/></svg>') center / contain no-repeat; }
.drawer-mini { display: flex; flex-wrap: nowrap; align-items: center; gap: 20px; margin: 0; position: static; }
.drawer-mini :is(ul, li) { display: contents; }
.drawer-mini a { font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; color: var(--text-muted); text-decoration: none; }
:is(#drawer-feature, .twm-anchor--drawer-feature) { flex: 1; position: relative; overflow: hidden; background: var(--surface-band); }
:is(#drawer-feature, .twm-anchor--drawer-feature) .wp-block-query, :is(#drawer-feature, .twm-anchor--drawer-feature) .wp-block-post-template, :is(#drawer-feature, .twm-anchor--drawer-feature) li.wp-block-post { display: contents; }
.twm-drawer-cover { position: absolute; inset: 0; padding: 0; min-height: 0; display: block; align-items: normal; justify-content: normal; }
.twm-drawer-cover > img.wp-block-cover__image-background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; }
.twm-drawer-cover > span.wp-block-cover__background { display: none; }
.twm-drawer-cover::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to top, rgba(10,14,20,0.62) 0%, rgba(10,14,20,0.1) 44%, rgba(10,14,20,0) 70%); }
.twm-drawer-cover > .wp-block-cover__inner-container { position: absolute; left: 56px; right: 56px; bottom: 56px; z-index: 1; width: auto; margin: 0; padding: 0; }
.drawer-fmeta { display: flex; gap: 8px; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; color: var(--twm-white); }
.drawer-fmeta :is(p, div, time, a) { margin: 0; font: inherit; letter-spacing: inherit; color: inherit; text-decoration: none; }
.drawer-fmeta .twm-slash, .drawer-fmeta .wp-block-post-date { font-weight: 300; }
:is(#drawer-feature, .twm-anchor--drawer-feature) h3.wp-block-post-title { margin: 14px 0 0; max-width: 640px; font-family: var(--font-headline); font-weight: 400; font-size: 30px; line-height: 40px; letter-spacing: 1px; color: var(--twm-white); text-wrap: pretty; }
:is(#drawer-feature, .twm-anchor--drawer-feature) h3.wp-block-post-title a { color: inherit; text-decoration: none; }
:is(#drawer-dots, .twm-anchor--drawer-dots) { display: none; position: absolute; right: 24px; bottom: 26px; z-index: 2; align-items: center; gap: 7px; pointer-events: none; }
:is(#drawer-dots, .twm-anchor--drawer-dots) hr.twm-dot { display: block; width: 5px; height: 5px; margin: 0; border: 0; border-radius: 50%; background: rgba(254,254,253,0.45); }
:is(#drawer-dots, .twm-anchor--drawer-dots) hr.twm-dot:first-child { background: var(--twm-white); }

/* ---- search overlay ---- */
:is(#search-overlay, .twm-anchor--search-overlay) { position: fixed; inset: 0; z-index: 40; background: rgba(254,254,253,0.985); display: none; flex-direction: column; }
:is(#search-overlay, .twm-anchor--search-overlay).is-open { display: flex; }
:is(#search-head, .twm-anchor--search-head) { height: 100px; padding: 0 60px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--twm-hairline); }
:is(#search-head, .twm-anchor--search-head) > p { margin: 0; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; color: var(--text-body); }
:is(#search-head, .twm-anchor--search-head) .wp-block-buttons, :is(#search-head, .twm-anchor--search-head) .wp-block-button { margin: 0; }
:is(#search-close, .twm-aid--search-close .wp-block-button__link) { display: flex; align-items: center; gap: 12px; padding: 0; background: none; border: 0; border-radius: 0; color: var(--text-body); text-decoration: none; cursor: pointer; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; }
:is(#search-close, .twm-aid--search-close .wp-block-button__link)::after { content: ""; display: block; width: 18px; height: 18px; background: currentColor; -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="black" stroke-width="1.3"><line x1="2" y1="2" x2="16" y2="16"/><line x1="16" y1="2" x2="2" y2="16"/></svg>') center / contain no-repeat; mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none" stroke="black" stroke-width="1.3"><line x1="2" y1="2" x2="16" y2="16"/><line x1="16" y1="2" x2="2" y2="16"/></svg>') center / contain no-repeat; }
:is(#search-body, .twm-anchor--search-body) { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 0 60px 120px; }
:is(#search-body, .twm-anchor--search-body) form.wp-block-search { width: 1100px; max-width: 100%; display: flex; align-items: center; gap: 24px; border-bottom: 1px solid var(--twm-ink); padding-bottom: 22px; margin: 0; }
:is(#search-body, .twm-anchor--search-body) .wp-block-search__inside-wrapper { flex: 1; display: flex; align-items: center; gap: 24px; border: 0; padding: 0; }
:is(#search-body, .twm-anchor--search-body) .wp-block-search__inside-wrapper::before { content: ""; flex: none; display: block; width: 26px; height: 26px; background: var(--text-body); -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26" fill="none" stroke="black" stroke-width="1.2"><circle cx="11" cy="11" r="8.4"/><line x1="17.2" y1="17.2" x2="24.5" y2="24.5"/></svg>') center / contain no-repeat; mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26" fill="none" stroke="black" stroke-width="1.2"><circle cx="11" cy="11" r="8.4"/><line x1="17.2" y1="17.2" x2="24.5" y2="24.5"/></svg>') center / contain no-repeat; }
:is(#site-search-input, .twm-input-id--site-search-input .wp-block-search__input), :is(#search-body, .twm-anchor--search-body) input.wp-block-search__input { flex: 1; min-width: 0; border: 0; outline: none; background: transparent; padding: 0; font-family: var(--font-headline); font-weight: 400; font-size: 48px; line-height: 60px; letter-spacing: 1.5px; color: var(--text-body); }
:is(#search-sugg, .twm-anchor--search-sugg) { width: 1100px; max-width: 100%; margin-top: 44px; display: flex; align-items: flex-start; gap: 80px; }
:is(#search-sugg, .twm-anchor--search-sugg) > p { width: 200px; flex-shrink: 0; margin: 0; font-family: 'proxima-nova', var(--font-sans); font-weight: 400; font-size: 12px; line-height: 16.8px; letter-spacing: 2px; text-transform: uppercase; color: var(--text-body); padding-top: 8px; }
.sugg-links { flex: 1; display: flex; flex-wrap: wrap; gap: 14px 40px; margin: 0; position: static; }
.sugg-links :is(ul, li) { display: contents; }
.sugg-links a { font-family: var(--font-headline); font-weight: 400; font-size: 22px; line-height: 30px; letter-spacing: 0.5px; color: var(--text-body); text-decoration: none; border-bottom: 1px solid var(--twm-hairline); }
.sugg-links a:hover { border-bottom-color: var(--twm-ink); text-decoration: none; }
