/* A compact section-led newspaper masthead, with an accessible full menu. */
.newspaper-header .masthead{grid-template-columns:190px minmax(0,1fr) 190px;min-height:80px;gap:12px}.newspaper-header .masthead-brand{font-size:36px}.newspaper-header .masthead-brand .brand-region{font-size:8px;letter-spacing:.1em;margin-top:7px}.masthead-left,.masthead-right{display:flex;align-items:center;gap:10px}.masthead-right{justify-content:flex-end}.newspaper-header .menu-button{width:auto;gap:9px;font-size:11px;font-weight:700}.newspaper-header .header-weather{font-size:10px;white-space:normal;line-height:1.25;max-width:134px}.newspaper-header .header-bottom{gap:20px;min-height:44px;border-top:1px solid #dce1df}.newspaper-header .primary-nav{gap:24px;flex:1;justify-content:center}.newspaper-header .primary-nav a{padding:14px 0;font-size:12px;font-weight:700}.nav-advertise{font-size:11px;font-weight:650;border-left:1px solid #cad4d4;padding:8px 0 8px 20px}.newspaper-menu{width:min(1120px,calc(100% - 32px))}.newspaper-menu .menu-columns{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.newspaper-menu .menu-group+.menu-group{padding-left:20px}.newspaper-menu .menu-links{grid-template-columns:1fr}.newspaper-menu .menu-links a{font-size:13px;min-height:44px}.menu-search{display:flex;gap:10px;max-width:580px;margin:0 0 24px}.menu-search input{min-width:0;flex:1}.menu-search .button{padding:10px 20px}.newspaper-menu .menu-utility{gap:8px 25px}.newspaper-menu .menu-utility a{font-size:12px}.newspaper-menu .menu-top h2{font-size:24px}.newspaper-menu .menu-content{padding-top:18px}
.ad-slot{clear:both;margin:30px auto;max-width:1000px;font:12px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#475e68}.ad-slot[hidden]{display:none!important}.ad-slot .ad-label{display:block;text-align:center;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#53626c;margin-bottom:7px}.ad-content{min-width:0}.ad-house{display:flex;align-items:center;justify-content:center;gap:30px;border-block:1px solid #dce3e1;background:#f0f4f2;min-height:66px;padding:15px 25px;color:#16445b;font-size:12px}.ad-house span:first-child{font-family:Georgia,serif;font-size:20px}.ad-house span:last-child{font-size:11px;font-weight:700;white-space:nowrap}.ad-slot-site-top{margin:18px auto 24px;min-height:87px}.ad-slot-site-top .ad-content{min-height:66px}.ad-creative{display:flex;align-items:center;justify-content:center;gap:20px;background:#f2f5f3;border:1px solid #dce3e1;padding:16px 24px;color:#153e52;min-height:80px}.ad-creative strong{font:22px/1.25 Georgia,serif}.ad-creative small{display:block;font-size:11px;margin-bottom:5px}.ad-creative .ad-action{font-size:11px;white-space:nowrap;font-weight:700}.ad-creative-image{display:block;padding:0;background:#f4f5f4;border:0}.ad-creative-image picture,.ad-creative-image img{display:block;margin:auto;max-width:100%;width:auto;max-height:250px;object-fit:contain}.ad-slot-site-top .ad-creative-image img{height:90px;max-height:90px}.ad-credit{text-align:center;margin:6px 0 0;font-size:10px;line-height:1.4}.ad-credit-mobile{display:none}.ad-slot-sidebar{max-width:300px;margin:0 auto}.ad-slot-sidebar .ad-creative{display:block;text-align:center}.ad-slot-sidebar .ad-action{display:block;margin-top:15px}.article-ad-rail{display:none}.article-body .ad-slot{margin-block:32px}.article-shell>.article-reading-layout{margin-top:30px}.article-reading-layout .article-body{margin-top:0}.article-shell>.article-reading-layout:has(.ad-slot-sidebar:not([hidden])){display:grid;grid-template-columns:minmax(0,690px) 300px;gap:34px}.article-shell:has(.ad-slot-sidebar:not([hidden])){max-width:1100px}.article-shell:has(.ad-slot-sidebar:not([hidden]))>.article-head,.article-shell:has(.ad-slot-sidebar:not([hidden]))>img,.article-shell:has(.ad-slot-sidebar:not([hidden]))>.photo-credit{max-width:850px;margin-inline:auto}.article-shell:has(.ad-slot-sidebar:not([hidden]))>img{display:block}.article-reading-layout:has(.ad-slot-sidebar:not([hidden]))>.article-ad-rail{display:block;padding-top:20px}
.ad-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.ad-editor-grid .field{margin:0}.ad-editor-wide{grid-column:1/-1}.ad-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 18px}.ad-choice-grid .check{margin:0;align-items:flex-start;min-height:38px;font-size:12px}.ad-fieldset{border:1px solid #cdd8d7;padding:16px;margin:20px 0}.ad-fieldset legend{font-size:13px;font-weight:700;padding:0 7px}.ad-form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-block:20px}.ad-preview{padding:18px;border:1px dashed #a4b6b5;background:#f7f9f8}.ad-preview img{max-width:100%;max-height:240px;object-fit:contain}.ad-preview a{overflow-wrap:anywhere}.ad-review-grid{display:grid;gap:8px}.ad-review-grid .check{margin:0;font-size:13px}.ad-media-box{border-top:1px solid #cdd8d7;margin-top:26px;padding-top:22px}.ad-library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:18px}.ad-library figure{margin:0;border:1px solid #d9e0dd;padding:12px;overflow-wrap:anywhere;font-size:12px}.ad-library img{width:100%;height:100px;object-fit:contain;background:#eef3f1}.ad-library figcaption{margin:8px 0}.ad-library .button{font-size:11px;margin:4px;padding:7px 9px}.ad-campaign-actions{display:flex;gap:7px;flex-wrap:wrap}.ad-campaign-actions .button{padding:8px 12px;font-size:11px}.ad-media-box summary{font-weight:700;cursor:pointer;min-height:44px}.ad-provenance-note{font-size:12px;overflow-wrap:anywhere}
@media(max-width:1100px){.newspaper-header .masthead{grid-template-columns:140px minmax(0,1fr) 140px}.newspaper-header .header-weather{display:none}.newspaper-header .primary-nav{gap:19px}.newspaper-header .primary-nav a{font-size:11px}.nav-advertise{padding-left:14px}.article-shell>.article-reading-layout:has(.ad-slot-sidebar:not([hidden])){display:block}.article-reading-layout:has(.ad-slot-sidebar:not([hidden]))>.article-ad-rail{display:none}.ad-slot-sidebar{display:none}}
@media(max-width:800px){.newspaper-header .masthead{grid-template-columns:44px minmax(0,1fr) 44px;min-height:66px;gap:8px}.newspaper-header .masthead-brand{font-size:29px;letter-spacing:-1px}.newspaper-header .masthead-brand .brand-region{display:none}.newspaper-header .masthead-brand .brand-region-short{display:block;font-size:10px;margin-top:4px;letter-spacing:.03em}.newspaper-header .menu-button span{display:none}.newspaper-header .masthead-left,.newspaper-header .masthead-right{gap:0}.newspaper-header .header-bottom{min-height:41px;display:block;overflow:hidden}.newspaper-header .primary-nav{overflow-x:auto;justify-content:flex-start;gap:23px;scrollbar-width:none;overscroll-behavior-inline:contain}.newspaper-header .primary-nav::-webkit-scrollbar{display:none}.newspaper-header .primary-nav a{font-size:11px;padding:13px 0;min-height:42px}.nav-advertise{display:none}.newspaper-menu .menu-columns{grid-template-columns:1fr 1fr;gap:24px}.newspaper-menu .menu-group+.menu-group{padding-left:0;border:0}.newspaper-menu .menu-content{padding:14px 20px}.newspaper-menu .menu-top{padding:14px 20px}.newspaper-menu .menu-top h2{font-size:21px}.newspaper-menu .menu-utility{gap:4px 22px}.ad-slot{margin:24px auto}.ad-slot-site-top{margin:14px auto 18px}.ad-house{padding:12px;gap:10px;min-height:64px}.ad-house span:first-child{font-size:17px}.ad-house span:last-child{font-size:10px}.ad-creative{padding:14px;gap:10px}.ad-creative strong{font-size:18px}.ad-creative-image{padding:0}.ad-creative-image img{max-height:250px}.ad-slot-site-top .ad-creative-image img{max-height:90px;height:90px}.ad-credit-desktop.has-mobile{display:none}.ad-credit-mobile{display:block}.ad-editor-grid{grid-template-columns:1fr}.ad-editor-wide{grid-column:auto}.ad-choice-grid{grid-template-columns:1fr 1fr}.ad-library{grid-template-columns:1fr 1fr}.menu-search{gap:7px}.menu-search .button{padding:10px 13px}.menu-search input{font-size:14px}.page-heading,.article-head{scroll-margin-top:118px}}
@media(max-width:380px){.newspaper-header .masthead-brand{font-size:25px}.newspaper-menu .menu-content{padding:12px 15px}.newspaper-menu .menu-top{padding:12px 15px}.newspaper-menu .menu-top h2{font-size:18px}.newspaper-menu .menu-columns{gap:15px}.newspaper-menu .menu-links a{font-size:12px}.ad-house{flex-direction:column;gap:5px}.ad-choice-grid,.ad-library{grid-template-columns:1fr}}
/* Keep the section bar visible where the previous mobile header hid it. */
.newspaper-header .primary-nav{display:flex}

/* Dedicated creative sizes preserve readable type and reserve the top placement. */
.ad-slot{max-width:900px}.ad-creative-image picture,.ad-creative-image img{width:100%;height:auto;max-height:none}.ad-slot-site-top .ad-content{aspect-ratio:3/1;display:grid;align-items:center}.ad-slot-site-top .ad-creative-image img{width:100%;height:auto;max-height:none}.ad-slot-site-top .ad-house{height:100%}.ad-slot-sidebar{width:100%;max-width:300px}.brief-rail .ad-slot-sidebar{margin-top:26px}.ad-slot-sidebar .ad-creative-image{padding:0}.ad-slot-sidebar .ad-creative-image img{aspect-ratio:6/5;object-fit:contain}.ad-creative:focus-visible{outline:3px solid #0a6b8c;outline-offset:4px}
@media(min-width:1101px){.lead-layout{grid-template-columns:minmax(0,1fr) 344px}.brief-rail{padding-inline:22px}}
@media(max-width:800px){.ad-slot:not(.ad-slot-sidebar){max-width:440px}.ad-slot-site-top .ad-content{aspect-ratio:2/1}.ad-slot-site-top .ad-creative-image img{height:auto;max-height:none}}
/* Credits stay in normal flow beneath the creative at every breakpoint. */
.ad-slot-site-top .ad-content{display:block;aspect-ratio:auto;min-height:min(324px,calc((100vw - 32px)/3 + 24px))}.ad-credit{font-size:11px;line-height:1.5;margin:7px 0 0}
@media(max-width:800px){.ad-slot-site-top .ad-content{min-height:min(244px,calc((100vw - 32px)/2 + 24px))}}

/* Photographic campaign banners: preserve their 900:250 desktop proportions. */
@media(min-width:801px){.ad-slot-site-top .ad-content{min-height:min(274px,calc((100vw - 32px)*250/900 + 24px))}}

/* Shared public controls: predictable sizes, readable choices and generous hit areas. */
main :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea),.menu-search input{font-size:16px;line-height:1.4;min-height:48px;border:1px solid #8ba6ab;border-radius:7px;padding:11px 14px;min-width:0}
main select,.town-finder-form select{appearance:none;padding-right:40px;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#275b69 50%),linear-gradient(135deg,#275b69 50%,transparent 50%);background-position:calc(100% - 19px) 21px,calc(100% - 14px) 21px;background-size:5px 5px;background-repeat:no-repeat;text-overflow:ellipsis;cursor:pointer}
main select:disabled{cursor:default;opacity:.65}
main :is(input,select,textarea):focus-visible,.menu-search input:focus-visible{outline:3px solid #086b7c;outline-offset:3px}
main .button,.menu-search .button{min-height:48px;border-radius:7px;padding:11px 18px;font-size:14px;line-height:1.4}
main .field{gap:7px;min-width:0}main .field label{font-size:13px;line-height:1.4}
.filters:has(#directory-region){display:grid;grid-template-columns:minmax(240px,1.6fr) repeat(3,minmax(170px,1fr));gap:16px;padding:20px;align-items:end}
.filters .field{width:100%;min-width:0}.filters :is(input,select){width:100%}
.town-finder-form{max-width:680px;gap:12px;align-items:end}.town-finder-form label{margin:0}.town-finder-form select{border-radius:7px;padding-right:40px}.town-finder-form .button{height:48px;padding:11px 18px}
.newspaper-header .menu-button{border:1px solid #ffffff50;border-radius:7px;padding:0 12px;min-width:44px}
.newspaper-header .masthead-right>.icon-button{border-radius:7px}.newspaper-header :is(.menu-button,.masthead-right>.icon-button):hover{background:#ffffff16}
.newspaper-menu .menu-top{padding:12px 22px;gap:16px}.newspaper-menu .menu-top h2{font-size:23px;line-height:1.2}.newspaper-menu .menu-top .icon-button{width:44px;height:44px;border-radius:7px}
.newspaper-menu .menu-content{padding:20px 24px 0}.newspaper-menu .menu-search{max-width:640px;gap:10px;margin:0 0 24px;align-items:stretch}.newspaper-menu .menu-search input{width:100%}
.newspaper-menu .menu-columns{gap:24px}.newspaper-menu .menu-group+.menu-group{padding-left:22px}.newspaper-menu .menu-links a{padding:11px 0;min-height:46px;line-height:1.4;font-size:14px}.newspaper-menu .menu-group h3{margin-bottom:8px;line-height:1.5}
.newspaper-menu .menu-utility{margin:22px -24px 0;padding:12px 24px;gap:8px 24px}.newspaper-menu .menu-utility a{display:flex;align-items:center;min-height:44px;line-height:1.4}
@media(max-width:1100px){.filters:has(#directory-region){grid-template-columns:repeat(2,minmax(0,1fr))}.newspaper-menu .menu-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.newspaper-menu .menu-group+.menu-group{padding-left:0;border:0}}
@media(max-width:800px){.newspaper-header .menu-button{width:44px;padding:0}.newspaper-menu .menu-top{padding:12px 16px}.newspaper-menu .menu-top h2{font-size:20px}.newspaper-menu .menu-content{padding:16px 16px 0}.newspaper-menu .menu-columns{gap:24px 18px}.newspaper-menu .menu-links a{font-size:13px}.newspaper-menu .menu-group h3{font-size:10px;letter-spacing:.07em}.newspaper-menu .menu-utility{margin:20px -16px 0;padding:12px 16px;gap:6px 18px}.newspaper-header .primary-nav a{min-height:44px;padding:13px 0}}
@media(max-width:600px){.filters:has(#directory-region){grid-template-columns:1fr;gap:16px;padding:16px}.town-finder-form{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.town-finder-form .button{width:100%;justify-content:center}.town-finder-form .button .icon{display:block}.newspaper-menu .menu-search{gap:8px}.newspaper-menu .menu-search .button{padding-inline:13px}.newspaper-menu .menu-search input{padding-inline:11px}}
@media(forced-colors:active){main select{appearance:auto;background-image:none}.newspaper-header .menu-button{border:1px solid ButtonText}}
