/* Shared mobile resilience and touch-first interaction layer. */
html{overflow-x:clip}body{min-width:0;overflow-x:clip}img,svg,video,iframe{max-width:100%}main,section,article,header,footer,nav,div,form,fieldset{min-width:0}p,h1,h2,h3,h4,a,span,small,li,td,th{overflow-wrap:break-word}
.menu-button{position:relative;min-width:48px;min-height:44px;padding:.55rem .7rem;border:1px solid rgba(23,53,31,.16);border-radius:999px;background:#fff;box-shadow:0 6px 20px rgba(13,77,41,.1);cursor:pointer}.menu-button i{width:18px;height:2px;margin:0;background:currentColor;border-radius:2px;transition:transform .25s ease,opacity .2s ease}.menu-button i+i{margin-top:4px}.menu-button[aria-expanded=true]{background:var(--green);color:#fff;border-color:var(--green)}.menu-button[aria-expanded=true] i:nth-of-type(1){transform:translateY(6px) rotate(45deg)}.menu-button[aria-expanded=true] i:nth-of-type(2){opacity:0}.menu-button[aria-expanded=true] i:nth-of-type(3){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:1180px){.menu-button{display:grid;grid-template-columns:auto 18px;column-gap:.55rem;align-items:center}.menu-label{grid-row:1/4;align-self:center}.menu-button i{grid-column:2}.mobile-nav{gap:0;padding-top:.75rem;padding-bottom:max(1.5rem,env(safe-area-inset-bottom));background:rgba(255,253,245,.98);backdrop-filter:blur(18px)}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:.8rem .25rem;border-bottom:1px solid rgba(23,53,31,.09);font:700 1rem Georgia,serif}.mobile-nav a:after{content:'›';font:400 1.5rem Arial,sans-serif;color:var(--green)}.mobile-nav a.active{color:var(--green)}.mobile-nav a:last-child{margin-top:.75rem;padding-inline:1rem;border:0;border-radius:999px;background:var(--ochre);font-family:Arial,sans-serif;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.mobile-nav a:last-child:after{content:'→'}}
@media(max-width:700px){.site-header{padding-inline:1rem}.brand{max-width:calc(100vw - 78px)}.brand b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-label{display:none}.menu-button{grid-template-columns:18px;width:46px;padding-inline:13px}.menu-button i{grid-column:1}.mobile-nav{padding-inline:1rem}.section,.inner-content,.inner-hero{padding-left:1rem;padding-right:1rem}.hero-content{margin-inline:1rem;max-width:calc(100vw - 2rem)}h2{font-size:clamp(2.15rem,10vw,3.15rem)}.inner-hero h1{font-size:clamp(2.6rem,12vw,4rem);line-height:.96}.button-row,.button-row .button{width:100%}.button{min-height:48px}.stats-grid{margin-top:2.5rem}.stat{overflow:hidden}.stat strong{font-size:clamp(2rem,12vw,3rem)}.metric-row{gap:1.5rem;flex-wrap:wrap}.footer-bottom div{flex-wrap:wrap}.map-label{right:1rem;min-width:0}.article-feature{aspect-ratio:1.25}.newsroom-grid article>small,.newsroom-grid article>h2,.newsroom-grid article>p,.newsroom-grid article>.text-link{margin-left:1.25rem;margin-right:1.25rem}.idea-form input,.idea-form select,.idea-form textarea{font-size:16px}.whatsapp-float{right:1rem;bottom:max(1rem,env(safe-area-inset-bottom))}}
@media(max-width:380px){.brand b{font-size:.88rem}.brand-mark{width:38px;height:38px}.site-header{gap:.5rem}.hero h1{font-size:2.85rem}.trust-points{grid-template-columns:1fr}.trust-points a{border-right:0}}

/* Touch-first public experience */
@media(max-width:700px){body{font-size:16px}.site-header{box-shadow:0 8px 24px rgba(13,77,41,.1)}.mobile-nav{overflow-y:auto;overscroll-behavior:contain;max-height:calc(100dvh - 70px)}.hero{min-height:calc(100dvh - 70px);padding-bottom:max(3rem,env(safe-area-inset-bottom))}.hero-content{padding:1rem 0}.hero h1{margin:.9rem 0 1.1rem}.hero-content>p{line-height:1.6}.button-row{margin-top:1.4rem}.button-row .button,.button-row .text-link{justify-content:center;width:100%;min-height:50px}.section{padding-top:4.5rem;padding-bottom:4.5rem}.section-kicker{margin-bottom:2rem}.priority,.story,.fact-grid article,.ward-grid article,.simple-grid article{box-shadow:0 10px 28px rgba(13,77,41,.08)}.priority{border-radius:1.1rem}.priority>.priority-body{padding:1.25rem;min-height:0}.priority h3{margin:1.4rem 0 .65rem}.stats-grid{border:0;gap:8px}.stat{border:1px solid var(--line)!important;border-radius:14px;background:#fff}.map-teaser{min-height:0}.map-teaser>div:first-child{padding:2rem 1.25rem}.google-map{min-height:340px}.inner-content{padding-top:3rem;padding-bottom:4rem}.inner-hero{padding-top:3.5rem;padding-bottom:3.5rem}.idea-form{gap:1rem}.idea-form input:not([type=checkbox]),.idea-form select,.idea-form textarea{min-height:50px;border-radius:10px}.footer{padding-inline:1rem}.footer-grid{gap:2.5rem}.footer-bottom{align-items:flex-start}.live-results-stream{padding:1rem}.live-results-stream__head>div{align-items:flex-start}.live-results-stream__body{gap:1rem}.live-results-candidates>div{padding:.55rem 0}}
.portal-main,.portal-header,.portal-footer,.panel,.auth-card{min-width:0}.table-scroll,.cms-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin}.table-scroll{max-width:100%}.cms-form input,.cms-form textarea,.cms-form select,.auth-card input,.station-filters input,.station-filters select{min-height:46px}.portal-main button,.admin-action,.portal-header a{min-height:44px}.review-form{min-width:430px}
@media(max-width:760px){.portal-header{position:relative;display:grid;grid-template-columns:1fr;padding:10px 16px 0;gap:8px;align-items:center}.portal-brand{width:max-content;max-width:100%}.portal-brand b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-header nav{width:calc(100% + 32px);margin-left:-16px;padding:7px 16px 10px;display:flex;flex-direction:row;align-items:center;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;border-top:1px solid var(--line);background:var(--cream)}.portal-header nav a{flex:0 0 auto;display:inline-flex;align-items:center;padding:.55rem .75rem;border-radius:999px;background:#fff;border:1px solid var(--line);scroll-snap-align:start}.portal-header nav a.active:not(.login-link){background:var(--green);color:#fff;border-color:var(--green)}.portal-header nav a.active:not(.login-link):after{display:none}.portal-header .login-link{padding:.55rem .75rem}.portal-main{padding:28px 12px 56px}.portal-hero{padding:26px 18px;border-radius:1rem}.portal-hero h1,.page-head h1{font-size:clamp(2rem,10vw,3rem);overflow-wrap:anywhere}.portal-hero p{font-size:1rem}.panel,.auth-card{padding:18px 15px;border-radius:1rem}.panel-title{flex-direction:column;gap:8px}.metrics{gap:10px}.metrics article{padding:1rem}.table-row{grid-template-columns:1fr;gap:4px}.cms-tabs{top:0;margin-inline:-12px;padding:10px 12px;background:var(--paper)}.cms-tabs a{min-height:42px;display:inline-flex;align-items:center}.field-row{grid-template-columns:1fr}.cms-table{min-width:640px}.review-form{grid-template-columns:120px minmax(170px,1fr) auto}.station-filters{padding:14px}.station-filters button{width:100%;justify-content:center}.station-filters>a{min-height:44px;display:flex;align-items:center}.station-table{min-width:520px}.station-table th:nth-child(2),.station-table td:nth-child(2){display:table-cell}.station-group{padding:14px}.station-summary span{display:block;margin-top:5px}.portal-footer{padding:26px 16px}.report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.portal-brand>span{width:38px;height:38px}.portal-brand b{font-size:.9rem}.portal-main{padding-inline:10px}.panel,.auth-card{padding-inline:13px}.report-summary{grid-template-columns:1fr}.metrics article{align-items:flex-start}.permission-grid{grid-template-columns:1fr;padding:11px}}

/* Repeating content must reflow instead of being cropped at the viewport edge. */
.social-links{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.25rem}.footer .social-links a{display:inline-flex;align-items:center;gap:.5rem;min-height:42px;padding:.45rem .8rem;border:1px solid #3d5149;border-radius:999px;color:#fff}.social-links a:hover{border-color:var(--ochre);background:rgba(244,207,32,.1)}.social-links span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ochre);color:var(--ink);font-weight:900}.social-settings{margin-top:20px;border-top:5px solid var(--green)}
.button,button:not(.menu-button),input[type=submit]{min-height:46px;border-radius:999px;box-shadow:0 8px 20px rgba(13,77,41,.16);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.button:hover,button:not(.menu-button):hover,input[type=submit]:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(13,77,41,.22);filter:saturate(1.06)}.button:active,button:not(.menu-button):active,input[type=submit]:active{transform:translateY(0) scale(.98);box-shadow:0 4px 12px rgba(13,77,41,.14)}.button:disabled,button:disabled,input[type=submit]:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.footer .footer-message{display:inline-flex;align-items:center;justify-content:space-between;gap:1.25rem;min-width:min(100%,220px);min-height:48px;margin-top:.8rem;padding:.55rem .6rem .55rem 1rem;border:1px solid rgba(244,207,32,.55);border-radius:999px;background:linear-gradient(135deg,var(--ochre),#ffe76f);color:var(--ink);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 10px 28px rgba(0,0,0,.2);transition:transform .2s ease,box-shadow .2s ease}.footer .footer-message b{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;font-size:1rem}.footer .footer-message:hover{color:var(--ink);transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.28)}.footer .footer-message:active{transform:scale(.98)}
@media(max-width:700px){.marquee{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;min-height:0;padding:0;white-space:normal;overflow:visible}.marquee span{display:grid;place-items:center;min-height:72px;padding:.8rem;text-align:center;line-height:1.35;border-right:1px solid rgba(23,53,31,.16);border-bottom:1px solid rgba(23,53,31,.16)}.marquee span:nth-of-type(2n){border-right:0}.marquee span:nth-last-of-type(-n+2){border-bottom:0}.marquee i{display:none}.trust-points{grid-template-columns:1fr}.trust-points a,.trust-points a:nth-child(2){border-right:0}.compact-pillar-grid{grid-template-columns:1fr}.event-list article{grid-template-columns:1fr;gap:.75rem;padding:1.25rem}.constituency-story,.profile-grid,.archive-note,.events-empty{padding-left:1.25rem;padding-right:1.25rem}}

/* End-to-end small-screen hardening */
html,body{width:100%;max-width:100%;overflow-x:clip}body{min-height:100dvh}input,select,textarea,button{max-width:100%}pre,code{white-space:pre-wrap;overflow-wrap:anywhere}.section,.inner-content,.inner-hero,.site-header,.footer{max-width:100%}.button-row,.header-actions,.map-actions,.footer-bottom{min-width:0;flex-wrap:wrap}.public-station-scroll{max-width:100%;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.public-station-ward table{min-width:0}.live-results-stream__body,.live-results-candidates,.live-results-candidates>div{min-width:0}.live-results-candidates strong{flex:0 0 auto}.idea-form label,.check{min-width:0}.check input{flex:0 0 auto}
@media(max-width:700px){.site-header{height:70px;padding-block:.55rem}.brand{min-width:0;flex:1}.brand>span:last-child{min-width:0}.brand small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-actions{flex:0 0 auto;gap:.45rem}.header-actions>.button{display:none}.hero{height:auto;min-height:calc(100svh - 70px)}.hero-content{width:auto}.hero-content:before{font-size:.52rem;letter-spacing:.1em}.section-kicker{gap:.6rem}.section-kicker:after{min-width:20px}.live-results-stream__head{align-items:flex-start}.live-results-stream__head>div{min-width:0}.live-results-stream__head small{padding-left:0}.live-results-candidates>div{align-items:flex-start}.live-results-candidates strong{text-align:right}.public-station-scroll{overflow:visible}.public-station-ward table,.public-station-ward thead,.public-station-ward tbody{display:block}.public-station-ward thead{display:none}.public-station-ward tbody{padding:.55rem}.public-station-ward tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem .75rem;padding:.8rem;border-bottom:1px solid var(--line)}.public-station-ward td{display:block!important;padding:0;border:0}.public-station-ward td:nth-child(1){grid-column:1}.public-station-ward td:nth-child(2){grid-column:1;color:var(--muted);font-size:.82rem}.public-station-ward td:nth-child(3){grid-column:2;grid-row:1}.public-station-ward td:nth-child(4){grid-column:2;grid-row:2;text-align:right}.footer-message{max-width:100%}}
@media(max-width:380px){.hero h1{font-size:clamp(2.45rem,14vw,3.1rem)}.marquee{grid-template-columns:1fr}.marquee span{border-right:0}.marquee span:nth-last-of-type(-n+2){border-bottom:1px solid rgba(23,53,31,.16)}.marquee span:last-of-type{border-bottom:0}.live-results-candidates>div{display:grid;grid-template-columns:minmax(0,1fr) auto}.public-station-ward tr{grid-template-columns:1fr}.public-station-ward td:nth-child(n){grid-column:1;grid-row:auto;text-align:left}}
@media(hover:none){.priority:hover,.story:hover,.ward-grid article:hover,.newsroom-grid article:hover,.button:hover,button:hover{transform:none}}
@media(max-width:380px){.hero h1{max-width:100%;font-size:clamp(2.25rem,12vw,2.8rem)!important;line-height:.94;letter-spacing:-.045em;overflow-wrap:anywhere}.hero h1 em{display:block}}

/* 2026 mobile-first interaction refresh */
*,*:before,*:after{box-sizing:border-box}.mobile-quick-nav{display:none}.footer-section{min-width:0}.footer-section>summary{list-style:none;color:#fff;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.footer-section>summary::-webkit-details-marker{display:none}.footer-section>div{display:grid;gap:.55rem;margin-top:1rem}.footer-section>div>a{width:max-content;max-width:100%}
@media(max-width:700px){
 body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
 .site-header{width:100%;overflow:visible}.header-actions{display:flex!important}.menu-button{display:grid!important;flex:0 0 46px}.brand{max-width:calc(100% - 54px)!important}.brand>span:last-child{max-width:calc(100% - 48px)}
 .hero,.inner-hero,.inner-content,.registration-directory,.events-empty{width:100%;max-width:100%;overflow:hidden}.hero-content,.inner-hero>*,.inner-content>*{max-width:100%}.hero-content p,.inner-hero p,.events-empty h2,.events-empty p{max-width:100%;overflow-wrap:anywhere}.hero-content .eyebrow{max-width:100%;white-space:normal}.hero h1{max-width:100%;word-break:normal}
 .mobile-nav{position:fixed;z-index:999;inset:70px 0 calc(68px + env(safe-area-inset-bottom));max-height:none!important;padding:0 1rem 1rem;box-shadow:0 20px 40px rgba(5,24,16,.25)}.mobile-nav>a{flex:0 0 auto}.mobile-nav>a:last-of-type{margin-top:0!important;padding:.8rem .25rem!important;border-bottom:1px solid rgba(23,53,31,.09)!important;border-radius:0!important;background:transparent!important;font:700 1rem Georgia,serif!important;text-transform:none!important;letter-spacing:0!important}.mobile-nav>a:last-of-type:after{content:'›'}
 .mobile-more{margin-top:.65rem;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.mobile-more summary{display:flex;align-items:center;justify-content:space-between;min-height:50px;padding:.8rem 1rem;color:var(--green);font-weight:900;cursor:pointer;list-style:none}.mobile-more summary::-webkit-details-marker{display:none}.mobile-more summary:after{content:'+';font-size:1.3rem}.mobile-more[open] summary:after{content:'−'}.mobile-more>div{padding:0 .8rem .5rem}.mobile-more a{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:.7rem .2rem;border-top:1px solid var(--line);color:var(--ink);font-weight:750}.mobile-more a:after{content:'›';color:var(--green);font-size:1.3rem}
 .footer{padding-bottom:2rem}.footer-grid{display:block}.footer-intro{margin-bottom:1rem}.footer-section{border-top:1px solid rgba(255,255,255,.18)}.footer-section:last-child{border-bottom:1px solid rgba(255,255,255,.18)}.footer-section>summary{display:flex;align-items:center;justify-content:space-between;min-height:54px;cursor:pointer}.footer-section>summary:after{content:'+';font-size:1.25rem}.footer-section[open]>summary:after{content:'−'}.footer-section>div{padding:0 0 1rem;margin:0}.footer-bottom{margin-top:1.5rem}
 .mobile-quick-nav{position:fixed;z-index:1001;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:.4rem max(.45rem,env(safe-area-inset-left)) max(.4rem,env(safe-area-inset-bottom));border-top:1px solid rgba(13,77,41,.14);background:rgba(255,253,245,.97);box-shadow:0 -10px 30px rgba(5,24,16,.12);backdrop-filter:blur(18px)}.mobile-quick-nav a{display:grid;place-items:center;gap:.15rem;min-width:0;min-height:54px;border-radius:12px;color:var(--ink);font-size:.67rem;font-weight:900;text-align:center;text-decoration:none}.mobile-quick-nav a span{color:var(--green);font-size:1.1rem}.mobile-quick-nav a.active{background:var(--green);color:#fff}.mobile-quick-nav a.active span{color:var(--lime)}
 .registration-directory article{cursor:pointer}.idea-form label{line-height:1.4}.idea-form small{line-height:1.45}.idea-form button{position:sticky;z-index:4;bottom:calc(68px + env(safe-area-inset-bottom));width:100%}
}
@media(max-width:380px){.brand small{display:none}.brand>span:last-child{max-width:calc(100% - 42px)}.mobile-quick-nav a{font-size:.63rem}.inner-content,.inner-hero{padding-inline:.85rem}}

/* Keep the final consent control and action in the document flow. A sticky
   submit button obscured the consent row when the fixed quick navigation was
   present, especially on short Android viewports. */
@media(max-width:700px){
 .idea-form{padding-bottom:1rem}
 .idea-form .check{position:relative;z-index:1;align-items:flex-start;padding:.85rem;border:1px solid var(--line);border-radius:10px;background:#fff}
 .idea-form .check>.required-marker{position:absolute;top:.55rem;right:.7rem;margin:0;color:#b42318}
 .idea-form .check input{width:20px;height:20px;margin:.05rem 0 0;accent-color:var(--green)}
 .idea-form .check .field-guidance{flex-basis:100%}
 .idea-form button{position:static;z-index:auto;bottom:auto;margin-top:.25rem;width:100%;min-height:54px}
}

/* Complete mobile navigation: every enabled destination is visible at once,
   with a compact two-column layout instead of a nested "More pages" control. */
@media(max-width:700px){
 .mobile-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:.55rem;padding:1rem;overflow-y:auto}
 .mobile-nav[hidden]{display:none!important}
 .mobile-nav>a,.mobile-nav>a:last-of-type{min-width:0;min-height:58px;margin:0!important;padding:.75rem .8rem!important;border:1px solid rgba(23,53,31,.12)!important;border-radius:12px!important;background:#fff!important;color:var(--ink)!important;font:700 .9rem/1.2 Georgia,serif!important;text-transform:none!important;letter-spacing:0!important;box-shadow:0 4px 12px rgba(13,77,41,.045)}
 .mobile-nav>a:after,.mobile-nav>a:last-of-type:after{content:'\203A';flex:0 0 auto;margin-left:.35rem;color:var(--green);font:400 1.25rem/1 Arial,sans-serif}
 .mobile-nav>a.active{border-color:var(--green)!important;background:#edf6ed!important;color:var(--green)!important;box-shadow:inset 0 0 0 1px var(--green)}
 .mobile-nav>a.mobile-staff-login,.mobile-nav>a.mobile-staff-login:last-of-type{grid-column:1/-1;min-height:56px;margin-top:.35rem!important;border-color:var(--green)!important;background:var(--green)!important;color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;font-size:.78rem!important;font-weight:900!important;letter-spacing:.09em!important;text-transform:uppercase!important;box-shadow:0 8px 20px rgba(13,77,41,.18)}
 .mobile-nav>a.mobile-staff-login:before{content:'\1F512';margin-right:.45rem;font-size:.9rem}
 .mobile-nav>a.mobile-staff-login:after,.mobile-nav>a.mobile-staff-login:last-of-type:after{color:var(--lime)}
 .mobile-nav>a.mobile-staff-login.active{border-color:var(--gold)!important;background:var(--deep)!important;color:#fff!important;box-shadow:inset 0 0 0 2px var(--gold),0 8px 20px rgba(13,77,41,.2)}
}
@media(max-width:340px){
 .mobile-nav{grid-template-columns:1fr}
}
.trail-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;margin-bottom:2rem;padding:clamp(1.5rem,4vw,3rem);border-radius:var(--radius);background:linear-gradient(135deg,var(--green-2),var(--green));color:#fff}.trail-intro>div:first-child>span{color:var(--lime);font-size:.68rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.trail-intro h2{margin:.6rem 0;font:700 clamp(2rem,4vw,3.5rem) Georgia,serif}.trail-intro p{max-width:700px;color:#d9e6de}.trail-intro>div:last-child{text-align:center}.trail-intro strong{display:block;color:var(--lime);font:700 4rem Georgia,serif}.trail-list{display:grid;gap:1rem}.trail-card{display:grid;grid-template-columns:125px minmax(0,1fr);gap:1.5rem;padding:1.5rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.trail-card.featured{border-top:5px solid var(--ochre)}.trail-card>time{display:grid;align-content:start;text-align:center;padding:1rem;border-radius:1rem;background:var(--cream);color:var(--green)}.trail-card>time b{font:700 3rem Georgia,serif;line-height:1}.trail-card>time span,.trail-card>time small{font-weight:900;text-transform:uppercase}.trail-meta{display:flex;gap:.5rem;flex-wrap:wrap}.trail-meta span{padding:.35rem .6rem;border-radius:999px;background:#edf5e8;color:var(--green);font-size:.62rem;font-weight:900;text-transform:uppercase}.trail-card h2{margin:.8rem 0;font:700 clamp(1.6rem,3vw,2.35rem) Georgia,serif}.trail-card p{color:var(--muted);line-height:1.7}.trail-card details{margin:1rem 0;padding:1rem;border-radius:.75rem;background:var(--cream)}.trail-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}.trail-past{margin-top:4rem}.trail-past article{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:1rem;padding:1rem;border-bottom:1px solid var(--line)}.trail-past article span{display:block;color:var(--muted);font-size:.85rem}@media(max-width:700px){.trail-intro,.trail-card{grid-template-columns:1fr}.trail-intro>div:last-child{text-align:left}.trail-card>time{grid-template-columns:auto auto 1fr;align-items:center;gap:.5rem;text-align:left}.trail-card>time b{font-size:2rem}.trail-actions{align-items:stretch;flex-direction:column}.trail-actions .button{width:100%}.trail-past article{grid-template-columns:1fr}}
@media(max-width:700px){.inner-hero{padding-top:2rem!important;padding-bottom:2rem!important}.inner-hero h1{margin:.5rem 0!important;font-size:clamp(2.15rem,10vw,3.15rem)!important;line-height:1}.inner-hero p{margin-top:.65rem;font-size:.96rem;line-height:1.55}}

/* Tournament service chooser: compact cards, never global pill buttons. */
@media(max-width:700px){
 .sports-action-picker{margin-inline:0;padding:1rem;border-radius:16px;box-shadow:0 10px 28px rgba(25,54,43,.08)}
 .sports-action-heading{padding-bottom:1rem}
 .sports-action-heading h2{font-size:clamp(1.75rem,8.5vw,2.25rem);line-height:1.05}
 .sports-action-heading p{font-size:.92rem;line-height:1.5}
 .sports-action-choices{gap:.75rem}
 button.sports-action-choice{display:grid;width:100%;min-height:0!important;padding:1rem!important;border:1px solid var(--line)!important;border-radius:14px!important;background:var(--cream)!important;box-shadow:none!important;transform:none!important}
 button.sports-action-choice:hover,button.sports-action-choice:focus,button.sports-action-choice:active{transform:none!important;box-shadow:none!important;filter:none!important}
 button.sports-action-choice:focus-visible{border-color:var(--green)!important;outline:3px solid rgba(244,207,32,.75);outline-offset:2px}
 .sports-action-choice small{font-size:.62rem}
 .sports-action-choice strong{margin:.4rem 0;font-size:1.45rem;line-height:1.12}
 .sports-action-choice span{font-size:.84rem;line-height:1.45}
 .sports-action-choice b{margin-top:.65rem;padding-top:0;font-size:.7rem}
 .sports-grid-focused>.sports-card{padding:1rem;border-radius:16px;box-shadow:0 10px 28px rgba(25,54,43,.08)}
 .sports-grid-focused>.sports-card h2{font-size:2rem}
 .sports-action-back{min-height:40px!important;border-radius:0!important;box-shadow:none!important}
}

/* Final component isolation from the global rounded-button treatment. */
button.sports-action-choice{display:flex!important;flex-direction:column!important;align-items:flex-start!important;width:100%!important;min-height:138px!important;padding:1rem!important;border:1px solid var(--line)!important;border-radius:12px!important;background:var(--cream)!important;box-shadow:none!important;text-align:left!important}
button.sports-action-choice:hover,button.sports-action-choice:focus-visible,button.sports-action-choice[aria-pressed="true"]{border-color:var(--green)!important;border-radius:12px!important;box-shadow:0 8px 20px rgba(25,54,43,.1)!important}
button.sports-action-back{position:static!important;inset:auto!important;z-index:auto!important;display:flex!important;width:fit-content!important;min-width:0!important;min-height:36px!important;margin:0 0 1rem!important;padding:.35rem 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}
@media(max-width:700px){button.sports-action-choice{min-height:0!important;border-radius:12px!important}button.sports-action-choice:hover,button.sports-action-choice:focus,button.sports-action-choice:active{box-shadow:none!important;transform:none!important}}

.footer-bottom .site-credit{display:inline-flex;align-items:center;width:max-content;color:#c6d2cd;font-size:.68rem;font-weight:800;letter-spacing:.04em}.footer-bottom .site-credit:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}@media(max-width:700px){.footer-bottom .site-credit{min-height:40px;font-size:.67rem}.brand>span:last-child{min-width:0}}

.announcement-bar{position:relative;z-index:60;width:100%;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.2);background:var(--green);color:#fff}.announcement-track{display:flex;width:max-content;min-width:100%;align-items:center;gap:4rem;padding:.62rem 0 .62rem 100vw;animation:announcement-scroll 24s linear infinite;will-change:transform}.announcement-bar:hover .announcement-track,.announcement-bar:focus-within .announcement-track{animation-play-state:paused}.announcement-item{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap;font-size:.76rem}.announcement-item>b{color:var(--lime);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}.announcement-item a{display:inline-flex;align-items:center;gap:.25rem;color:var(--ochre);font-weight:900;text-decoration:underline;text-underline-offset:3px}.announcement-item i{font-style:normal}@keyframes announcement-scroll{to{transform:translateX(-100%)}}@media(prefers-reduced-motion:reduce){.announcement-bar{overflow-x:auto}.announcement-track{width:auto;padding-left:1rem;animation:none}.announcement-item{white-space:normal}}@media(max-width:700px){.announcement-track{gap:2.5rem;padding-block:.55rem;animation-duration:18s}.announcement-item{font-size:.7rem}}

/* Flexible homepage calls-to-action above the fixed mobile quick navigation. */
@media(max-width:700px){
 .hero{min-height:max(650px,calc(100svh - 70px));padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}
 .hero-content .button-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1rem;width:100%;margin-top:1.15rem}
 .hero-content .button-row .hero-primary-action{grid-column:1/-1;width:100%;min-height:54px;padding:.85rem 1rem;border-radius:18px;font-size:.7rem}
 .hero-content .button-row .text-link{justify-content:center;width:100%;min-width:0;min-height:42px;padding:.55rem .25rem;font-size:.62rem;text-align:center;white-space:nowrap}
 .mobile-quick-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:360px), (max-height:700px) and (max-width:700px){
 .hero-content .button-row{gap:.45rem .75rem;margin-top:.85rem}
 .hero-content .button-row .hero-primary-action{min-height:48px}
 .hero-content .button-row .text-link{min-height:38px;font-size:.58rem}
}

.announcement-controlled .announcement-track{min-width:0;padding-left:1rem;animation:none}.announcement-item[hidden]{display:none}
/* Keep public announcements above the sticky navigation on every public page. */
.announcement-bar{position:sticky;top:0;z-index:1001}
body:has(.announcement-bar) .site-header{top:var(--announcement-height,40px)}
body:has(.announcement-bar) .mobile-nav{top:calc(var(--announcement-height,40px) + var(--public-header-height,82px));max-height:calc(100dvh - var(--announcement-height,40px) - var(--public-header-height,82px))}
body:has(.announcement-bar) [id]{scroll-margin-top:calc(var(--announcement-height,40px) + var(--public-header-height,82px) + 18px)}
@media(max-width:760px){body:has(.announcement-bar){--public-header-height:70px}}
