/* Cross-page production accessibility and editorial safeguards. */
[hidden]{display:none!important}
.skip-link{position:fixed!important;left:1rem;top:.75rem;z-index:100000;transform:translateY(-180%);padding:.75rem 1rem;border-radius:.4rem;background:#fff;color:#17235a;font-weight:800;box-shadow:0 4px 18px rgba(0,0,0,.28)}
.skip-link:focus,.skip-link:focus-visible{transform:translateY(0);outline:3px solid #17235a;outline-offset:3px}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #17235a!important;outline-offset:3px!important}
:where(button,.btn,.filter-chip,.route-link,.read-btn,summary){min-height:44px}
html.dialog-open,body.dialog-open{overflow:hidden;overscroll-behavior:none}
@media (scripting:none){
  .menu-btn{display:none!important}
  #dropdownNav[hidden]{display:flex!important;visibility:visible!important;opacity:1!important;transform:none!important;max-height:none!important;position:static!important;pointer-events:auto!important;flex-wrap:wrap!important}
  [data-reveal]{opacity:1!important;transform:none!important}
}
.dog-card{scroll-margin-top:7rem}
.dog-card h2[tabindex="-1"]{outline-offset:6px}
.application-closed-note{margin:.5rem 0;padding:.72rem .9rem;border-left:4px solid #76558f;background:#f4f0f7;color:#25204a;font-weight:750}
.editorial-confirmation,.editorial-warning,.payment-clarity{margin:1.5rem 0;padding:1.15rem 1.25rem;border:2px solid #d49b1f;border-radius:.75rem;background:#fff8dc;color:#27231b}
.editorial-confirmation ul,.payment-clarity ul{margin:.75rem 0 0;padding-left:1.3rem}
.editorial-confirmation li,.payment-clarity li{margin:.45rem 0}
.welfare-routes{padding-block:clamp(2.5rem,6vw,5rem)}
.welfare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.welfare-card{padding:1.35rem;border:1px solid rgba(23,35,90,.18);border-radius:1rem;background:#fff;box-shadow:0 10px 28px rgba(23,35,90,.08)}
.welfare-card h3{margin-top:0}
.welfare-card .btn,.welfare-card .text-link{display:inline-flex;margin-top:.6rem}
.sr-status{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
#storiesFeed [data-reveal]{opacity:1!important;transform:none!important}
.complete-story-index{padding-block:1.5rem 4rem}
.complete-story-index details{border:1px solid rgba(23,35,90,.2);border-radius:.8rem;background:#fff;padding:.75rem 1rem}
.complete-story-index summary{cursor:pointer;display:flex;align-items:center;font-weight:800;color:#17235a}
.complete-story-index h2{margin-top:1.25rem}
.complete-story-index ul{columns:2;column-gap:2rem;padding-left:1.2rem}
.complete-story-index li{break-inside:avoid;margin:.55rem 0}
.complete-story-index span{color:#5d6274;font-size:.92em}
.feed-empty[hidden]{display:none!important}
.share-sheet[hidden],.modal-overlay[hidden]{display:none!important}
.share-sheet,.modal-overlay{position:fixed;inset:0;z-index:99990}
.share-sheet{right:auto;bottom:auto;display:grid;place-items:center;width:100vw;height:100dvh;box-sizing:border-box;padding:clamp(12px,3vw,24px);overflow:hidden;isolation:isolate}
.share-sheet-backdrop{position:absolute;inset:0;z-index:0;width:100%;height:100%;padding:0;border:0;background:rgba(8,15,48,.82);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);cursor:pointer}
.share-sheet-panel{position:relative;inset:auto;z-index:1;transform:none;width:min(100%,560px);max-height:min(88dvh,740px);box-sizing:border-box;overflow:auto;margin:0;padding:28px 22px 22px;border:1px solid rgba(23,35,90,.14);border-radius:26px;background:#fffdf7;color:#17235a;box-shadow:0 28px 80px rgba(8,15,48,.42);outline:0}
.share-sheet-close{position:absolute;right:13px;top:13px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:2px solid #d9dce5;border-radius:50%;background:#fff;color:#17235a;font:800 1.55rem/1 Arial,sans-serif;cursor:pointer}
.share-sheet-close:hover,.share-sheet-close:focus-visible{border-color:#17235a;background:#f6d64b;outline:3px solid rgba(246,214,75,.45)!important;outline-offset:2px!important}
.share-sheet-kicker{display:block;margin:0 54px 8px 0;color:#59657d;font:800 .76rem/1.2 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.share-sheet-panel h2{margin:0 54px 8px 0;color:#17235a;font:800 clamp(1.72rem,4vw,2rem)/1.12 "Trebuchet MS",Arial,sans-serif}
#share-sheet-intro{margin:0 0 20px;color:#59657d;font-size:1rem;line-height:1.5}
.share-sheet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:0}
.share-destination{appearance:none;display:flex;align-items:center;justify-content:center;min-height:58px;padding:10px 13px;border:2px solid #dde0e8;border-radius:16px;background:#fff;color:#17235a;text-align:center;text-decoration:none;font:800 .95rem/1.2 "Trebuchet MS",Arial,sans-serif;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}
.share-destination:hover,.share-destination:focus-visible{transform:translateY(-2px);border-color:#17235a;background:#fff;box-shadow:0 10px 22px rgba(23,35,90,.13);outline:3px solid rgba(246,214,75,.5)!important;outline-offset:2px!important}
.share-sheet-status{min-height:1.4em;margin:15px 2px 0;color:#365940;font-size:.9rem;font-weight:700;line-height:1.45}
html body main .article-share{width:min(100%,680px)!important;margin:42px auto 26px!important}
.story-actions .share-options{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;margin:0!important}
@media(max-width:860px){.welfare-grid{grid-template-columns:1fr}.complete-story-index ul{columns:1}}
@media(max-width:520px){.share-sheet{padding:12px}.share-sheet-panel{max-height:calc(100dvh - 24px);padding:27px 20px 24px;border-radius:24px}.share-sheet-grid{grid-template-columns:1fr}.share-destination{min-height:58px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-reveal]{opacity:1!important;transform:none!important}}
/* The legacy dog modal stylesheet uses .open for display. The accessible controller
   uses the native hidden attribute, so visible state follows that attribute directly. */
.modal-overlay:not([hidden]){display:flex!important}
/* Override high-specificity legacy mobile navigation rules. */
html:not(.no-js) #dropdownNav[hidden]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
html:not(.no-js) #dropdownNav.open:not([hidden]){display:grid!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:auto!important}
.feed-empty{width:min(1120px,calc(100% - 40px));margin:1rem auto 2rem;padding:1rem 1.2rem;border:1px solid rgba(23,35,90,.2);border-radius:.75rem;background:#fff;color:#17235a;font-weight:700;text-align:center}

/* CDR event facts grid 2026-07-21 */
.event-facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0 6px;padding:0}
.event-fact{margin:0;padding:18px 20px;border:1px solid rgba(23,35,90,.16);border-radius:16px;background:#f8f3e3;box-shadow:0 6px 18px rgba(23,35,90,.045)}
.event-fact--wide{grid-column:1/-1}
.event-fact dt{margin:0 0 5px;color:#17235a;font:800 12px/1.3 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.event-fact dd{margin:0;color:#3f455d;font-size:16px;line-height:1.55}
@media(max-width:640px){.event-facts-grid{grid-template-columns:1fr}.event-fact--wide{grid-column:auto}.event-fact{padding:16px 17px}}

/* Compact event details treatment 2026-07-21 */
main .article .event-details-section{padding:26px 28px 28px!important;background:#fffdf7!important}
main .article .event-details-section>h2{display:block!important;margin:0 0 18px!important;padding:0!important;border:0!important;background:transparent!important;color:#17235a!important;box-shadow:none!important;font-size:clamp(1.45rem,2.6vw,1.75rem)!important}
main .article .event-details-section>h2::before{display:none!important;content:none!important}
main .article .event-details-section .event-facts-grid{margin-top:0!important}
@media(max-width:640px){main .article .event-details-section{padding:22px 20px 24px!important}}
/* Charity dog walk artwork: preserve the complete square event design. */
.hero .photo.photo--poster{flex:0 0 410px;width:410px;height:410px;border-radius:24px;background:#0f1840;overflow:hidden}
.hero .photo.photo--poster img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
@media(max-width:950px){.hero .photo.photo--poster{width:min(100%,520px)!important;height:auto!important;min-height:0!important;aspect-ratio:1/1!important;flex:0 1 auto!important}}
