:root{--ink:#20382f;--forest:#244b3b;--moss:#526e53;--sand:#e5d4b6;--paper:#f6f5ef;--white:#fffefa;--muted:#7b8379;--line:#e9e7de;--rust:#bd754b;font-family:"IBM Plex Sans Arabic",Tahoma,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button,input{font:inherit}.site-header{height:78px;max-width:1240px;padding:0 38px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:10px;font-size:16px;white-space:nowrap}.brand b{font-weight:700}.brand-mark{width:35px;height:35px;border-radius:12px;background:var(--forest);color:#e7d3ae;display:grid;place-items:center;font-weight:700;font-size:20px}.main-nav{display:flex;gap:34px;font-size:13px;color:#626c62}.main-nav a:hover,.text-link:hover{color:var(--rust)}.header-cta,.primary-button{border:0;border-radius:7px;background:var(--forest);color:white;padding:11px 16px;font-size:12px}.header-cta span,.primary-button span{margin-inline-end:8px}.menu-toggle{display:none;background:none;border:0;color:var(--ink);font-size:23px}.hero{max-width:1240px;margin:0 auto;padding:24px 38px 70px;min-height:500px;display:grid;grid-template-columns:.84fr 1.16fr;gap:55px;align-items:center}.hero-copy{padding-inline-end:20px}.eyebrow{font-size:11px;color:var(--moss);font-weight:600;letter-spacing:.01em}.hero-copy>.eyebrow{display:flex;align-items:center;gap:8px}.hero-copy>.eyebrow i{width:7px;height:7px;border-radius:50%;background:#b88255}.hero h1{font-size:62px;line-height:1.35;letter-spacing:-2px;margin:16px 0 8px;font-weight:700}.hero h1 em{font-style:normal;color:var(--moss)}.hero-copy>p,.page-intro>p{max-width:390px;color:#6d766d;font-size:14px;line-height:2;margin:0 0 22px}.search-form{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:6px;display:flex;align-items:center;gap:8px;max-width:440px;box-shadow:0 7px 24px #2739290b}.search-form>span{font-size:25px;color:var(--moss);padding:0 7px}.search-form input{flex:1;min-width:40px;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}.search-form input::placeholder{color:#9b9f96}.search-form button{border:0;border-radius:5px;background:var(--forest);color:white;padding:10px 16px;font-size:12px;cursor:pointer}.search-form button span{margin-inline-end:8px}.hero-note{display:flex;align-items:center;gap:11px;margin-top:25px;font-size:11px;color:#72796f;line-height:1.9}.hero-note b{color:var(--ink);font-weight:600}.note-icon{font-size:19px;color:#ad7952}.hero-visual{height:395px;position:relative;overflow:hidden;border-radius:5px 70px 5px 5px;background:#d8dfd2}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#e3e7d5aa 0%,transparent 42%,#2c493c24 100%)}.sun{position:absolute;z-index:1;width:85px;height:85px;border-radius:50%;background:#e7cda0;top:54px;inset-inline-start:20%;box-shadow:0 0 0 18px #e7cda033}.peak{position:absolute;inset:auto -8% 0;height:72%;clip-path:polygon(0 100%,0 75%,13% 68%,29% 29%,40% 57%,53% 16%,67% 63%,78% 38%,100% 66%,100% 100%)}.peak-back{background:#849780;transform:scale(1.12);transform-origin:bottom}.peak-front{height:58%;background:#385b49;clip-path:polygon(0 100%,0 62%,17% 45%,26% 70%,47% 22%,62% 60%,77% 40%,100% 68%,100% 100%)}.path-line{position:absolute;z-index:1;width:29%;height:42%;inset-inline-end:34%;bottom:-8%;border-inline-start:3px solid #e5d4b6;border-radius:52% 0 0 0;transform:rotate(14deg);opacity:.86}.visual-label,.visual-coord,.visual-stamp{position:absolute;z-index:2;color:#fff}.visual-label{inset-inline-end:27px;top:24px;padding:7px 12px;background:#f5f2e6dd;border-radius:3px;color:var(--forest);font-size:10px}.visual-coord{inset-inline-end:27px;bottom:23px;font-size:10px}.visual-stamp{inset-inline-start:26px;bottom:23px;width:53px;height:53px;border:1px solid #fff9;border-radius:50%;display:grid;place-content:center;text-align:center;font-size:11px;line-height:1.25;transform:rotate(-12deg)}.section{max-width:1164px;margin:0 auto;padding:0 0 70px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.section-heading h2{font-size:25px;margin:6px 0 0;letter-spacing:-.5px}.text-link{color:var(--moss);font-size:11px}.text-link span{margin-inline-end:8px}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.category-card{background:var(--white);border:1px solid var(--line);min-height:95px;padding:16px;display:flex;align-items:center;gap:12px;border-radius:5px;transition:transform .2s,border-color .2s}.category-card:hover,.trail-card:hover{transform:translateY(-3px);border-color:#b8c1b1}.category-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#ecede4;color:var(--forest);font-size:21px}.category-2 .category-icon{background:#f4e8d9;color:#a26943}.category-3 .category-icon{background:#e4eee6}.category-4 .category-icon{background:#eee8df;color:#98734a}.category-card b,.category-card small{display:block}.category-card b{font-size:12px}.category-card small{font-size:10px;color:var(--muted);margin-top:5px}.category-arrow{margin-inline-end:auto;color:#8a9688;font-size:15px}.featured-section{padding-bottom:72px}.trail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.trail-card{display:block;overflow:hidden;border:1px solid var(--line);border-radius:5px;background:var(--white);transition:transform .2s,border-color .2s}.trail-art{height:176px;position:relative;overflow:hidden;background:#cdd6c8;display:flex;align-items:center;justify-content:center}.trail-art:before,.trail-art:after{content:"";position:absolute;inset:auto 0 0;height:78%;background:#879b82;clip-path:polygon(0 100%,0 58%,24% 19%,38% 50%,61% 4%,79% 55%,100% 31%,100% 100%)}.trail-art:after{height:53%;background:#3f614c;clip-path:polygon(0 100%,0 64%,21% 23%,40% 60%,64% 6%,80% 46%,100% 30%,100% 100%)}.art-tag{position:absolute;z-index:2;inset-inline-end:14px;top:13px;background:#fffdf0dc;padding:6px 9px;border-radius:3px;font-size:10px;color:var(--forest)}.art-glyph{position:relative;z-index:1;color:#f4dfb4;font-size:35px;margin-top:10px}.art-caption{position:absolute;z-index:2;bottom:12px;inset-inline-end:14px;color:#fff;font-size:10px}.trail-card-body{padding:15px 16px 17px}.trail-card-title{display:flex;align-items:center;justify-content:space-between}.trail-card h3{margin:0;font-size:17px}.arrow{color:var(--moss)}.muted{margin:5px 0 14px;color:var(--muted);font-size:11px}.trail-facts{border-top:1px solid var(--line);padding-top:12px;display:flex;gap:24px;color:#6c756b;font-size:10px}.bottom-banner{max-width:1164px;margin:0 auto 70px;padding:22px 26px;background:#e9ece2;display:flex;align-items:center;gap:17px;border-radius:5px}.bottom-banner>span{color:#a97b52;font-size:24px}.bottom-banner h2{font-size:16px;margin:0 0 4px}.bottom-banner p{font-size:11px;color:var(--muted);margin:0}.bottom-banner>a{margin-inline-end:auto;background:var(--forest);color:white;border-radius:5px;padding:11px 14px;font-size:11px}.bottom-banner>a span{margin-inline-end:9px}.site-footer{border-top:1px solid var(--line);max-width:1240px;margin:auto;padding:23px 38px;display:flex;align-items:center;gap:26px;color:var(--muted);font-size:10px}.site-footer p{margin:0}.site-footer>span{margin-inline-end:auto}.page-intro{max-width:1164px;margin:46px auto 29px;padding:0 0 27px;border-bottom:1px solid var(--line)}.page-intro h1{font-size:38px;margin:7px 0}.page-intro>p{max-width:600px;margin:0}.listing-wrap{max-width:1164px;margin:0 auto 90px}.listing-tools{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.listing-search{max-width:530px;width:100%}.results-count{font-size:11px;color:var(--muted)}.listing-grid{grid-template-columns:repeat(3,1fr)}.empty-state{text-align:center;padding:75px 20px;color:var(--muted)}.empty-state>span{font-size:35px;color:var(--moss)}.empty-state h2{color:var(--ink);font-size:20px}.detail-top{max-width:1164px;margin:31px auto 25px}.back-link{font-size:11px;color:var(--moss)}.detail-title{display:flex;justify-content:space-between;align-items:center;margin-top:30px}.detail-title h1{font-size:42px;margin:4px 0}.detail-title p{font-size:13px;color:var(--muted);margin:0;max-width:600px}.detail-badge{border:1px solid #d9ddcf;border-radius:20px;padding:8px 13px;font-size:10px;color:var(--moss)}.detail-layout{max-width:1164px;margin:0 auto 90px;display:grid;grid-template-columns:1.5fr .8fr;gap:22px}.detail-main,.detail-side{min-width:0}.map-placeholder{height:320px;position:relative;overflow:hidden;border-radius:5px;background-color:#e7e8dc;background-image:linear-gradient(30deg,transparent 48%,#bec8b55c 49%,#bec8b55c 50%,transparent 51%),linear-gradient(140deg,transparent 48%,#bec8b55c 49%,#bec8b55c 50%,transparent 51%);background-size:70px 70px,90px 90px;display:grid;place-items:center}.map-contour{position:absolute;width:430px;height:230px;border:1px solid #aebda57a;border-radius:48%;transform:rotate(-24deg)}.contour-two{width:350px;height:190px;transform:rotate(20deg)}.map-pin{font-size:38px;color:var(--forest)}.map-placeholder-label{position:absolute;bottom:15px;inset-inline-end:17px;background:#fffefaed;padding:9px 12px;border-radius:4px}.map-placeholder-label b,.map-placeholder-label span{display:block}.map-placeholder-label b{font-size:11px}.map-placeholder-label span,.map-grid-label{font-size:9px;color:var(--muted)}.map-grid-label{position:absolute;inset-inline-start:15px;top:14px;letter-spacing:.08em}.detail-panel,.metrics-panel,.media-panel{background:var(--white);border:1px solid var(--line);border-radius:5px;padding:21px;margin-top:16px}.detail-panel h2,.media-panel h2{font-size:16px;margin:0 0 8px}.detail-panel>p,.info-block p{font-size:12px;line-height:1.9;color:#72796f;margin:0}.section-divider{border-top:1px solid var(--line);margin:20px 0}.info-block{padding:13px 0;border-bottom:1px solid var(--line)}.info-block:last-child{border-bottom:0;padding-bottom:0}.info-block h3{font-size:13px;margin:0 0 5px}.metric-list{margin-top:12px}.metric{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);gap:12px}.metric:last-child{border-bottom:0}.metric span{font-size:11px;color:#777f76}.metric strong{font-size:11px;color:var(--ink);font-weight:600;text-align:end}.media-panel{margin-top:16px}.photo-placeholder{height:130px;background:#f0f0e9;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#899284;margin:13px 0 22px}.photo-placeholder span{font-size:23px}.photo-placeholder p,.gpx-placeholder p{font-size:10px;margin:6px 0}.gpx-placeholder{border:1px dashed #d9ddd1;border-radius:4px;padding:15px;text-align:center;color:#859080}.gpx-placeholder>span{font-size:21px}.gpx-placeholder button{margin-top:7px;border:0;border-radius:4px;padding:7px 10px;background:#eeefe9;color:#8c9187;font-size:9px}.about-note{background:#e9ece2;padding:17px 20px;margin:24px 0;border-radius:5px;max-width:520px}.about-note b{font-size:13px}.about-note p{font-size:12px;color:var(--muted);margin:5px 0}.primary-button{display:inline-block}.listing-grid .trail-card{max-width:none}
@media(max-width:1220px){.section,.page-intro,.listing-wrap,.detail-top,.detail-layout,.bottom-banner{margin-inline-end:38px;margin-inline-start:38px}.section{padding-inline-end:0;padding-inline-start:0}}@media(max-width:800px){.site-header{height:68px;padding:0 22px}.main-nav{gap:18px}.header-cta{display:none}.hero{padding:18px 24px 52px;gap:26px;min-height:440px}.hero h1{font-size:48px}.hero-visual{height:340px}.section,.page-intro,.listing-wrap,.detail-top,.detail-layout,.bottom-banner{margin-inline-end:24px;margin-inline-start:24px}.category-grid{grid-template-columns:repeat(2,1fr)}.trail-grid,.listing-grid{grid-template-columns:repeat(2,1fr)}.detail-layout{grid-template-columns:1fr .82fr;gap:13px}.detail-panel,.metrics-panel,.media-panel{padding:16px}.site-footer{padding:22px 24px}}@media(max-width:580px){.site-header{padding:0 18px;height:64px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;z-index:5;top:59px;inset-inline-end:14px;inset-inline-start:14px;background:var(--white);border:1px solid var(--line);border-radius:6px;padding:16px;box-shadow:0 10px 30px #20382f18}.main-nav.nav-open{display:flex;flex-direction:column;gap:17px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:24px 19px 50px;gap:25px}.hero-copy{padding:0}.hero h1{font-size:46px;margin-top:11px}.hero-copy>p{font-size:13px}.hero-visual{height:270px;border-radius:5px 48px 5px 5px}.hero-note{margin-top:15px}.section,.page-intro,.listing-wrap,.detail-top,.detail-layout,.bottom-banner{margin-inline-end:19px;margin-inline-start:19px}.section{padding-bottom:48px}.section-heading{align-items:start;gap:12px}.section-heading h2{font-size:21px}.text-link{white-space:nowrap;margin-top:12px}.category-grid{gap:9px}.category-card{padding:12px 10px;gap:8px;min-height:85px}.category-icon{width:35px;height:35px;flex:0 0 35px}.category-card b{font-size:10px}.category-card small{font-size:9px}.category-arrow{font-size:12px}.trail-grid,.listing-grid{grid-template-columns:1fr}.trail-art{height:190px}.featured-section{padding-bottom:45px}.bottom-banner{padding:16px;gap:10px;align-items:flex-start;flex-wrap:wrap;margin-bottom:45px}.bottom-banner h2{font-size:14px}.bottom-banner p{font-size:10px}.bottom-banner>a{margin-inline-end:35px}.site-footer{padding:20px 19px;flex-wrap:wrap;gap:12px}.site-footer p{display:none}.site-footer>span{font-size:9px}.page-intro{margin-top:32px}.page-intro h1{font-size:31px}.listing-tools{align-items:flex-start;gap:12px;flex-direction:column}.listing-search{max-width:none}.results-count{align-self:flex-end}.detail-top{margin-top:24px}.detail-title{align-items:flex-start;gap:10px;flex-direction:column;margin-top:21px}.detail-title h1{font-size:36px}.detail-title p{font-size:12px}.detail-layout{grid-template-columns:1fr;margin-bottom:55px}.detail-side{display:grid;grid-template-columns:1fr;gap:0}.map-placeholder{height:245px}.metrics-panel,.media-panel{margin-top:13px}.listing-wrap{margin-bottom:55px}}

/* Homepage visual refinement */
.hero{max-width:1320px;min-height:545px;grid-template-columns:.9fr 1.1fr;gap:clamp(34px,6vw,88px);padding-top:35px;padding-bottom:76px}
.hero-copy{padding-inline-end:clamp(0px,2vw,24px)}
.hero h1{font-size:clamp(54px,5.3vw,72px);line-height:1.28;letter-spacing:-1px;margin:17px 0 13px}
.hero-copy>p{font-size:15px;line-height:2;max-width:430px;margin-bottom:26px}
.hero-copy>.eyebrow{font-size:12px}
.hero-visual{height:435px;border-radius:8px 100px 8px 8px;background:radial-gradient(ellipse at 74% 22%,#e5c99a 0 7%,transparent 7.3%),linear-gradient(170deg,#dfe5d8 0%,#b8c7b6 45%,#657e67 100%);box-shadow:0 24px 50px #263a2d1c}
.hero-visual:before{content:"";position:absolute;inset:0;opacity:.32;background:repeating-linear-gradient(168deg,transparent 0 24px,#f4f0df 25px 26px,transparent 27px 45px);mask-image:linear-gradient(transparent 25%,#000 65%)}
.hero-visual:after{background:linear-gradient(180deg,#e3e7d52b 0%,transparent 40%,#1b352e55 100%)}
.sun{width:103px;height:103px;top:54px;inset-inline-start:20%;background:#e7cda0;box-shadow:0 0 0 24px #e7cda033,0 0 75px #efdaaa55}
.peak-back{background:linear-gradient(145deg,#a9b69d,#728a73 67%,#647c69);clip-path:polygon(0 100%,0 72%,12% 66%,27% 37%,37% 48%,53% 12%,67% 51%,79% 28%,100% 66%,100% 100%)}
.peak-front{background:linear-gradient(160deg,#617b61 5%,#315543 75%);clip-path:polygon(0 100%,0 59%,16% 43%,25% 67%,46% 17%,61% 54%,76% 34%,100% 68%,100% 100%)}
.path-line{width:34%;height:55%;inset-inline-end:34%;bottom:-12%;border-inline-start:3px solid #f1dfb8;border-radius:54% 0 0 0;filter:drop-shadow(0 0 4px #31473d80)}
.hero-visual-card{position:absolute;z-index:3;top:24px;inset-inline-end:25px;display:flex;align-items:center;gap:10px;background:#fffdf1e8;padding:10px 14px;border-radius:7px;box-shadow:0 10px 25px #1b352e20}
.visual-card-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--forest);color:#e8d4ad;font-size:21px}
.hero-visual-card b,.hero-visual-card small{display:block}.hero-visual-card b{font-size:11px}.hero-visual-card small{font-size:9px;color:#768072;margin-top:3px}
.visual-coord{font-size:11px;inset-inline-end:25px;bottom:22px;letter-spacing:.02em}
.visual-stamp{inset-inline-start:24px;bottom:25px;width:58px;height:58px;color:#fff;border-color:#ffffffb8}
.search-form#home-search{max-width:490px;min-height:66px;padding:7px;border-radius:9px;border-color:#e0dfd4;box-shadow:0 12px 30px #27392914}
.search-form#home-search>span{font-size:29px}.search-form#home-search input{font-size:13px;padding:0 3px}.search-form#home-search button{padding:13px 18px;font-size:12px;white-space:nowrap}
.hero-note{margin-top:22px}.note-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#ede8d8}
.section.categories-section,.section.featured-section{max-width:1244px}
.categories-section{padding-bottom:76px}
.section-heading{margin-bottom:25px}.section-heading h2{font-size:28px}
.category-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.category-card{min-height:112px;padding:16px 14px;border-radius:8px;gap:11px;box-shadow:0 6px 18px #27392908}
.category-card:hover{box-shadow:0 12px 25px #27392910}
.category-icon{width:44px;height:44px;flex:0 0 44px;background:#e9eee5}
.category-2 .category-icon{background:#f2e9dc}.category-3 .category-icon{background:#e4ece4}.category-4 .category-icon{background:#eee8df}.category-5 .category-icon{background:#edf0e7;color:#71815c}
.category-card b{font-size:12px}.category-card small{line-height:1.7;font-size:10px}
.featured-section{padding-bottom:75px}
.trail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.trail-card{border-radius:9px;box-shadow:0 7px 23px #2739290b}
.trail-card:hover{box-shadow:0 15px 30px #27392915}
.trail-art{height:188px;background:linear-gradient(145deg,#e0e5d7 0%,#b9c8b6 47%,#728a71 100%)}
.trail-art:before{height:83%;background:linear-gradient(145deg,#95a88c,#728d73 70%);clip-path:polygon(0 100%,0 69%,16% 57%,31% 21%,41% 43%,57% 11%,73% 56%,83% 31%,100% 59%,100% 100%)}
.trail-art:after{height:57%;background:linear-gradient(145deg,#6e8669,#345744 75%);clip-path:polygon(0 100%,0 57%,19% 33%,34% 66%,54% 14%,66% 48%,82% 29%,100% 61%,100% 100%)}
.trail-art .art-tag{background:#fffdf0e8;border-radius:20px;padding:6px 11px;font-size:9px}
.art-glyph{font-size:40px;text-shadow:0 2px 10px #243f31}.art-caption{font-size:10px;text-shadow:0 1px 4px #20382f}
.trail-card-body{padding:16px 17px 17px}.trail-card h3{font-size:19px}
.trail-region{display:flex;align-items:center;gap:6px;margin:5px 0 15px;font-size:11px}.trail-region span{font-size:16px;color:var(--moss)}
.trail-facts{padding-top:13px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.trail-facts span{display:flex;flex-direction:column;gap:5px;font-size:10px;min-width:0}
.trail-facts small{font-size:9px;color:#92978d}.trail-facts b{font-size:10px;font-weight:600;color:#39483d;line-height:1.5}
.bottom-banner{border-radius:9px;background:linear-gradient(100deg,#e9ece2,#eff0e8);padding:25px 28px}
.bottom-banner>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e1e4d7}
.bottom-banner h2{font-size:17px}.bottom-banner>a{border-radius:6px;padding:12px 16px}
@media(max-width:1050px){.hero{grid-template-columns:.92fr 1.08fr;gap:32px}.hero-visual{height:390px}.category-card{padding:14px 10px;gap:8px}.category-icon{width:38px;height:38px;flex-basis:38px}.category-card b{font-size:11px}}
@media(max-width:800px){.hero{display:flex;flex-direction:column-reverse;align-items:stretch;min-height:0;gap:22px;padding-top:24px}.hero-copy{width:100%;padding:0}.hero h1{font-size:52px}.hero-visual{width:100%;height:330px;flex:none}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.trail-facts{gap:5px}}
@media(max-width:580px){.hero{display:flex;flex-direction:column-reverse;padding:15px 19px 45px;gap:22px}.hero-visual{width:100%;height:255px;border-radius:7px 55px 7px 7px}.hero-copy{padding:0}.hero h1{font-size:47px;line-height:1.3;margin:12px 0 8px}.hero-copy>p{font-size:13px;line-height:1.9;margin-bottom:18px}.search-form#home-search{min-height:60px}.search-form#home-search button{padding:12px 13px;font-size:11px}.hero-note{margin-top:15px}.section.categories-section,.section.featured-section{padding-bottom:49px}.section-heading{align-items:end;margin-bottom:18px}.section-heading h2{font-size:22px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.category-card{min-height:86px;padding:11px 9px;gap:8px}.category-icon{width:35px;height:35px;flex-basis:35px;font-size:19px}.category-card b{font-size:10px}.category-card small{font-size:9px}.category-arrow{font-size:12px}.category-5{grid-column:1/-1}.trail-grid{grid-template-columns:1fr;gap:13px}.trail-art{height:175px}.trail-card-body{padding:14px 15px}.trail-card h3{font-size:18px}.trail-facts{gap:10px}.trail-facts span{font-size:10px}.bottom-banner{padding:16px;gap:10px}.bottom-banner h2{font-size:14px}.bottom-banner p{font-size:10px}.bottom-banner>a{margin-inline-end:0;margin-top:5px}}

/* Refined trail-running identity and future photo slots */
:root{--ink:#192b25;--forest:#1e4134;--moss:#47664c;--sand:#d4bd96;--paper:#f8f7f3;--white:#fffefa;--muted:#667168;--line:#e3e1d8;--rust:#a65f3d}
body{color:var(--ink);background:#f8f7f3}
.site-header{border-bottom:1px solid #e9e7df}
.brand{color:#1d3029}.brand-mark{border-radius:8px;background:#1c4133;color:#dfc9a5}
.main-nav{color:#46544b}.main-nav a:hover,.text-link:hover{color:#a65f3d}
.hero{max-width:1320px;min-height:545px;grid-template-columns:.9fr 1.1fr;gap:clamp(34px,6vw,88px);padding-top:36px;padding-bottom:75px}
.hero-copy{padding-inline-end:clamp(0px,2vw,24px)}
.hero-copy>.eyebrow{color:#536c53;font-size:12px}.hero-copy>.eyebrow i{background:#ad6d45}
.hero h1{color:#182c24;font-size:clamp(56px,5.4vw,74px);line-height:1.26;letter-spacing:-1.4px;margin:18px 0 13px}
.hero h1 em{color:#47684b}
.hero-copy>p{color:#4e5c52;font-size:15px;line-height:2;max-width:440px;margin-bottom:25px}
.hero-visual{height:445px;position:relative;display:grid;place-items:center;overflow:hidden;border-radius:8px 82px 8px 8px;border:1px solid #d7d7ca;background:#dedfd4;box-shadow:0 25px 55px #263a2d18}
.hero-visual:before{content:"";position:absolute;inset:13px;border:1px solid #ffffff96;border-radius:4px 62px 4px 4px;pointer-events:none;z-index:1}
.hero-visual:after{content:none}
.hero-photo-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:linear-gradient(145deg,#e5e4d9 0%,#d1d4c8 56%,#b7c0ae 100%);color:#445447}
.hero-photo-placeholder:before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,transparent 0 39%,#ffffff27 39.2% 39.5%,transparent 39.7% 71%,#4358480a 71.2% 71.5%,transparent 71.7%)}
.hero-photo-placeholder>*{position:relative}
.hero-photo-placeholder b{font-size:14px;letter-spacing:.02em;color:#263b2e}
.hero-photo-placeholder small{font-size:10px;color:#58665a}
.photo-frame-icon{display:grid;place-items:center;width:50px;height:50px;border:1px solid #78867880;border-radius:50%;font-size:21px;color:#526553;margin-bottom:5px}
.visual-index{position:absolute;z-index:2;inset-inline-start:25px;bottom:23px;display:flex;align-items:center;gap:10px;direction:ltr;font-size:9px;letter-spacing:.13em;color:#425447}
.visual-index i{display:block;width:34px;height:1px;background:#7b8978}
.sun,.peak,.path-line,.hero-visual-card,.visual-coord,.visual-stamp{display:none}
.search-form#home-search{max-width:510px;min-height:72px;padding:8px;border:1px solid #d7d8ce;border-radius:9px;box-shadow:0 12px 32px #1c362711}
.search-form#home-search>span{font-size:29px;color:#354f3e}.search-form#home-search input{font-size:13px;color:#203329}.search-form#home-search input::placeholder{color:#80877d}
.search-form#home-search button{background:#1c4133;border-radius:6px;padding:14px 18px;font-size:12px;font-weight:600}.search-form#home-search button:hover,.header-cta:hover,.bottom-banner>a:hover{background:#2e5843}
.hero-note{color:#5d685e;margin-top:18px}.hero-note b{color:#273c30}.note-icon{background:#eee9dc;color:#92643e}
.section.categories-section,.section.featured-section{max-width:1244px}
.section-heading h2{color:#1b3027;font-size:27px}.eyebrow{color:#657360}
.category-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.category-card{min-height:108px;position:relative;gap:12px;padding:15px 14px;border:1px solid #e0dfd6;border-radius:7px;background:#fffefa;box-shadow:0 4px 14px #263b2d08;overflow:hidden}
.category-card:before{content:"";position:absolute;top:0;inset-inline-end:0;inset-inline-start:0;height:3px;background:#638064}.category-2:before{background:#b28a59}.category-3:before{background:#6d8975}.category-4:before{background:#8f7153}.category-5:before{background:#89926a}
.category-card:hover{border-color:#c7cec2;box-shadow:0 10px 23px #263b2d11;transform:translateY(-2px)}
.category-icon{width:42px;height:42px;flex:0 0 42px;border-radius:7px;background:#e9eee7;color:#34543d;font-size:20px}.category-2 .category-icon{background:#f1e8d9;color:#966e42}.category-3 .category-icon{background:#e7eee8;color:#4b6b52}.category-4 .category-icon{background:#eee8df;color:#836346}.category-5 .category-icon{background:#edf0e5;color:#69774e}
.category-card b{color:#26382e;font-size:11px;line-height:1.6}.category-card small{color:#737c72;font-size:9px;line-height:1.5}.category-arrow{color:#677767}
.featured-section{padding-bottom:72px}
.trail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.trail-card{border:1px solid #e0dfd6;border-radius:8px;background:#fffefa;box-shadow:0 6px 20px #22392d0c}
.trail-card:hover{border-color:#c5cec1;box-shadow:0 13px 30px #22392d16;transform:translateY(-3px)}
.trail-art{height:190px;position:relative;display:grid;place-items:center;background:#e6e5db;border-bottom:1px solid #e0dfd6}
.trail-art:before,.trail-art:after{content:none}
.trail-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.trail-photo-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:linear-gradient(145deg,#e8e7dd,#d7dbcf 65%,#c8d0c2);color:#6b7868}
.trail-photo-empty span{display:grid;place-items:center;width:39px;height:39px;border:1px solid #78867870;border-radius:50%;font-size:16px}
.trail-photo-empty small{font-size:9px;color:#687366}
.trail-art .art-tag{z-index:2;top:12px;inset-inline-end:13px;background:#fffef1ed;border:1px solid #ffffffaa;color:#304838;border-radius:4px;padding:6px 10px;font-size:9px}
.art-glyph,.art-caption{display:none}
.trail-card-body{padding:16px 17px 17px}.trail-card h3{font-size:18px;color:#1d3028}.trail-region{color:#58655a}.trail-region span{color:#597357}
.trail-facts{gap:8px;border-top:1px solid #e8e6de}.trail-facts span{padding:7px 8px;border-radius:4px;background:#f5f4ee}.trail-facts small{color:#717c70}.trail-facts b{color:#293e32;font-size:10px}
.bottom-banner{border:1px solid #e1e2d8;background:#eceee6;border-radius:8px}.bottom-banner h2{color:#20382c}.bottom-banner>a{background:#1c4133;border-radius:6px}
@media(max-width:1050px){.hero{grid-template-columns:.94fr 1.06fr;gap:30px}.hero-visual{height:390px}.category-card{padding:14px 10px;gap:8px}.category-icon{width:37px;height:37px;flex-basis:37px}.category-card b{font-size:10px}}
@media(max-width:800px){.hero{min-height:0;grid-template-columns:1fr 1fr;gap:22px;padding-top:24px}.hero h1{font-size:52px}.hero-visual{height:330px}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.trail-facts{gap:5px}}
@media(max-width:580px){.hero{display:flex;flex-direction:column-reverse;padding:15px 19px 45px;gap:21px}.hero-visual{width:100%;height:245px;border-radius:7px 48px 7px 7px}.hero-visual:before{inset:9px;border-radius:4px 35px 4px 4px}.hero-copy{padding:0}.hero h1{font-size:47px;line-height:1.3;margin:12px 0 8px}.hero-copy>p{font-size:13px;line-height:1.9;margin-bottom:18px}.search-form#home-search{min-height:62px}.search-form#home-search button{padding:12px 13px;font-size:10px}.search-form#home-search input{font-size:11px}.hero-note{margin-top:15px}.section.categories-section,.section.featured-section{padding-bottom:49px}.section-heading{align-items:end;margin-bottom:18px}.section-heading h2{font-size:22px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.category-card{min-height:86px;padding:11px 9px;gap:8px}.category-icon{width:35px;height:35px;flex-basis:35px;font-size:18px}.category-card b{font-size:10px}.category-card small{font-size:9px}.category-arrow{font-size:12px}.category-5{grid-column:1/-1}.trail-grid{grid-template-columns:1fr;gap:13px}.trail-art{height:175px}.trail-card-body{padding:14px 15px}.trail-card h3{font-size:18px}.trail-facts{gap:6px}.trail-facts span{padding:7px 6px}.bottom-banner{padding:16px;gap:10px}.bottom-banner h2{font-size:14px}.bottom-banner p{font-size:10px}.bottom-banner>a{margin-inline-end:0;margin-top:5px}}

.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
@media(max-width:580px){.hero-photo{object-position:50% 18%}}

/* Trail details */
.musaigrah-detail{max-width:1164px;margin:0 auto 88px}
.detail-summary{margin-top:0;padding:22px 24px}
.detail-summary>.eyebrow{display:block;margin-bottom:7px}
.detail-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:20px}
.detail-facts .metric{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;padding:13px 3px}
.detail-facts .metric span,.detail-facts .metric strong{text-align:start;overflow-wrap:anywhere}
.recording-info{margin-top:12px;padding:14px 16px;border:1px solid #e5e5dc;border-radius:5px;background:#f6f6f0}
.recording-info h2{margin:0 0 6px;font-size:13px;color:var(--ink)}
.recording-info p{margin:4px 0;color:#68736a;font-size:11px;line-height:1.8}
.recording-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:9px 0;padding:6px 0;border-top:1px solid #e3e3d9;border-bottom:1px solid #e3e3d9}
.recording-details>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0;font-size:10px}
.recording-details span{color:#72796f}
.recording-details b{color:#344a3c;font-weight:600;white-space:nowrap}
.recording-details code{direction:ltr;color:#344a3c;font:10px/1.5 ui-monospace,Consolas,monospace;white-space:nowrap}
.recording-caution{padding-inline-end:9px;border-inline-end:2px solid #bd9368;color:#685840!important}
.recording-filename{display:flex;align-items:center;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid #e3e3d9;font-size:10px;color:#72796f}
.recording-filename code{direction:ltr;color:#344a3c;font:10px/1.5 ui-monospace,Consolas,monospace}
.musaigrah-detail .detail-layout{margin:17px 0 0;grid-template-columns:1.45fr .8fr;gap:18px}
.musaigrah-detail .map-placeholder{height:300px}
.musaigrah-detail .map-card{display:block;isolation:isolate;background-color:#e7e8dc;background-image:linear-gradient(30deg,transparent 48%,#bec8b55c 49%,#bec8b55c 50%,transparent 51%),linear-gradient(140deg,transparent 48%,#bec8b55c 49%,#bec8b55c 50%,transparent 51%);background-size:70px 70px,90px 90px}
.google-map-canvas{position:absolute;inset:0;z-index:0}
.map-card .map-placeholder-label{z-index:1;max-width:calc(100% - 34px)}
.map-card .map-placeholder-label span{display:block;margin-top:3px}
.google-maps-link{position:absolute;z-index:2;bottom:15px;inset-inline-start:16px;display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:4px;background:#244b3b;color:#fff;font-size:11px;box-shadow:0 2px 8px #1b332526}
.google-maps-link:hover{background:#19392d}
.musaigrah-detail .detail-panel{padding:23px}
.musaigrah-detail .detail-panel>h2{font-size:18px;margin-bottom:9px}
.musaigrah-detail .detail-panel>p{font-size:13px}
.musaigrah-detail .info-block{padding:16px 0}
.musaigrah-detail .info-block h3{font-size:14px}
.musaigrah-detail .info-block p{font-size:12px;color:#667168}
.musaigrah-detail .detail-side{display:flex;flex-direction:column;gap:0}
.musaigrah-detail .media-panel{margin-top:0;margin-bottom:14px;padding:19px}
.musaigrah-detail .media-panel h2{font-size:15px}
.trail-photo-gallery{margin-top:12px}
.media-empty{min-height:148px;border:1px dashed #d7d9ce;border-radius:5px;background:#f2f2eb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#788176}
.media-empty span{display:grid;place-items:center;width:37px;height:37px;border:1px solid #cdd2c7;border-radius:50%;font-size:16px}
.media-empty p{margin:0;font-size:11px}
.media-empty-compact{min-height:105px}
.trail-detail-photo{margin:0;overflow:hidden;border-radius:5px}
.trail-detail-photo img{display:block;width:100%;max-height:310px;object-fit:cover}
.trail-videos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;margin-top:12px}
.video-card{min-width:0;overflow:hidden;border:1px solid #e0dfd6;border-radius:6px;background:#18231f;box-shadow:0 3px 12px #22392d12}
.video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#18231f}
.video-card.is-portrait .video-frame{aspect-ratio:3/4}
.trail-detail-video{display:block;width:100%;height:100%;object-fit:contain;background:#18231f}
.video-duration{position:absolute;top:9px;inset-inline-start:9px;z-index:1;padding:4px 7px;border:1px solid #ffffff55;border-radius:4px;background:#111a17d9;color:#fff;font:600 11px/1.2 system-ui,sans-serif;direction:ltr;font-variant-numeric:tabular-nums;pointer-events:none}
.video-duration[hidden]{display:none}
.gpx-link{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:5px;background:#1e4134;color:#fff;font-size:12px}
.gpx-link span{font-size:18px}
@media(max-width:800px){.musaigrah-detail{margin-inline-end:24px;margin-inline-start:24px}.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.musaigrah-detail .detail-layout{grid-template-columns:1fr}.musaigrah-detail .detail-side{display:grid;grid-template-columns:1fr 1fr;gap:12px}.musaigrah-detail .media-panel{margin:0}.musaigrah-detail .media-panel:last-child{grid-column:1/-1}.trail-videos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.musaigrah-detail{margin:0 19px 55px}.detail-summary{padding:17px}.detail-facts{column-gap:12px}.recording-info{padding:12px}.recording-details{grid-template-columns:1fr}.recording-details>div{align-items:flex-start}.musaigrah-detail .detail-layout{margin-top:12px;gap:12px}.musaigrah-detail .map-placeholder{height:230px}.musaigrah-detail .detail-panel{padding:17px}.musaigrah-detail .detail-side{grid-template-columns:1fr}.musaigrah-detail .media-panel:last-child{grid-column:auto}.trail-videos{grid-template-columns:1fr}}
.photo-gallery{margin-top:13px}
.gallery-main{position:relative;display:block;width:100%;padding:0;overflow:hidden;aspect-ratio:4/5;border:1px solid #e2e1d8;border-radius:5px;background:#ecebe4;cursor:zoom-in}
.gallery-main-image{display:block;width:100%;height:100%;object-fit:contain}
.gallery-counter{position:absolute;inset-inline-start:10px;bottom:10px;padding:5px 8px;border-radius:4px;background:#1d3028d9;color:white;font-size:10px;direction:ltr}
.gallery-thumbs{display:flex;gap:8px;margin-top:10px;padding:2px 1px 8px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-color:#a9b19f #eeeee7;scrollbar-width:thin}
.gallery-thumb{flex:0 0 76px;height:60px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:4px;background:#e9e8df;cursor:pointer;opacity:.78;transition:opacity .15s,border-color .15s}
.gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.gallery-thumb:hover,.gallery-thumb.is-active{opacity:1;border-color:#47664c}
.photo-lightbox{position:fixed;inset:0;max-width:min(96vw,1400px);max-height:94dvh;width:max-content;height:max-content;padding:44px 64px 28px;border:1px solid #ffffff3d;border-radius:8px;background:#14231ef2;color:#fff;overflow:visible}
.photo-lightbox::backdrop{background:#0a1510dc;backdrop-filter:blur(3px)}
.lightbox-image{display:block;max-width:min(82vw,1240px);max-height:calc(94dvh - 80px);object-fit:contain;margin:auto;border-radius:3px}
.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #ffffff70;border-radius:50%;background:#20382f;color:white;font:inherit;font-size:23px;cursor:pointer}
.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:#47664c}
.lightbox-close{top:10px;inset-inline-end:10px;font-size:26px}.lightbox-prev{top:50%;inset-inline-start:10px;transform:translateY(-50%)}.lightbox-next{top:50%;inset-inline-end:10px;transform:translateY(-50%)}
@media(max-width:580px){.gallery-thumb{flex-basis:68px;height:54px}.photo-lightbox{max-width:100vw;max-height:100dvh;width:100vw;padding:54px 38px 24px;border-radius:0}.lightbox-image{max-width:100%;max-height:calc(100dvh - 105px)}.lightbox-close,.lightbox-prev,.lightbox-next{width:36px;height:36px}.lightbox-prev{inset-inline-start:4px}.lightbox-next{inset-inline-end:4px}}

/* Home page detailed search */
.home-filter-panel{margin-top:17px;padding:14px;border:1px solid #e3e2d9;border-radius:7px;background:#fffefa;box-shadow:0 5px 17px #20382f0a}
.detailed-search-toggle{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;padding:8px 12px;border:1px solid #dbe0d6;border-radius:5px;background:#f0f2eb;color:#38533f;font:inherit;font-size:11px;cursor:pointer;transition:background .2s,border-color .2s}
.detailed-search-toggle:hover{background:#e7ebe1;border-color:#cbd4c8}
.detailed-search-toggle span{display:inline-block;transition:transform .25s ease}
.detailed-search-toggle.is-expanded span{transform:rotate(180deg)}
.home-filter-panel{max-height:10000px;opacity:1;overflow:hidden;transition:max-height .35s ease,opacity .25s ease,margin .25s ease,padding .25s ease,border-color .25s ease,visibility 0s linear}
.home-filter-panel.is-collapsed{max-height:0;opacity:0;visibility:hidden;margin-top:0;padding-top:0;padding-bottom:0;border-color:transparent;pointer-events:none;transition:max-height .35s ease,opacity .25s ease,margin .25s ease,padding .25s ease,border-color .25s ease,visibility 0s linear .35s}
.home-filter-close{display:block;margin-top:8px;padding:5px 0;border:0;background:transparent;color:#68766a;font:inherit;font-size:10px;cursor:pointer}
.home-filter-close:hover{color:#244b3b;text-decoration:underline}
.home-filter-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:11px}
.home-filter-heading .note-icon{font-size:17px;line-height:1.4}
.home-filter-heading h2{margin:0;color:#20382f;font-size:13px}
.home-filter-heading p{margin:3px 0 0;color:#72796f;font-size:10px;line-height:1.7}
.home-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.home-filter-control{display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px 7px;min-width:0;padding:8px 9px;border:1px solid #e7e6dd;border-radius:5px;background:#fcfcf7}
.home-filter-control>span{color:#566458;font-size:10px;font-weight:600}
.home-filter-control output{color:#526e53;font-size:9px;text-align:end;white-space:nowrap}
.home-filter-control select{grid-column:1/-1;width:100%;height:32px;padding:0 8px;border:1px solid #e4e4da;border-radius:4px;background:#fffefa;color:#263b30;font-size:10px}
.home-distance-filter input{grid-column:1/-1;width:100%;height:15px;margin:2px 0 0;accent-color:#526e53;direction:ltr}
.home-distance-filter input:disabled{opacity:.45}
.home-filter-reset,.home-filter-empty button{margin-top:9px;padding:7px 10px;border:1px solid #dbe0d6;border-radius:4px;background:#f0f2eb;color:#38533f;font-size:10px;cursor:pointer}
.trail-form{max-width:820px;margin:0 auto 80px;padding:24px;background:var(--white);border:1px solid var(--line);border-radius:6px}
.trail-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.trail-form-grid label{display:grid;gap:6px;color:#566458;font-size:12px;font-weight:600}
.trail-form input,.trail-form select,.trail-form textarea{width:100%;min-width:0;padding:10px 11px;border:1px solid #dedfd5;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-weight:400;font-size:13px}
.trail-form input:focus,.trail-form select:focus,.trail-form textarea:focus{outline:2px solid #526e5340;border-color:var(--moss)}
.trail-form select:disabled{color:#92988d;background:#f1f1eb}
.trail-form-wide{grid-column:1/-1}
.trail-form-note,.trail-form-error{font-size:11px;line-height:1.8;color:var(--muted)}
.trail-form-error{padding:9px 12px;border-radius:4px;color:#8b3e2f;background:#f8e8e2}
.trail-form-actions{display:flex;align-items:center;gap:18px;margin-top:15px}
.trail-form-actions .primary-button{cursor:pointer;font-family:inherit}
.detail-title-actions{display:flex;align-items:center;gap:12px}
.detail-title-actions .primary-button{font-size:11px}
.home-filter-reset:hover,.home-filter-empty button:hover{background:#e7ebe1}
.home-filter-results{margin-top:11px;padding-top:10px;border-top:1px solid #e8e7df}
.home-filter-count{margin:0 0 8px;color:#677367;font-size:10px}
.home-filter-results .trail-grid{grid-template-columns:1fr;gap:8px}
.home-filter-results .trail-art{height:105px}
.home-filter-results .trail-card-body{padding:10px 11px}
.home-filter-empty{text-align:center;padding:10px 5px;color:#68736a;font-size:11px}
.home-filter-empty p{margin:0}
.home-filter-empty button{margin-top:8px}
@media(max-width:580px){.home-filter-panel{padding:12px}.home-filter-grid{gap:7px}.home-filter-control{padding:7px}.home-filter-control select{font-size:9px}.trail-form{margin:0 19px 55px;padding:16px}.trail-form-grid{grid-template-columns:1fr;gap:12px}.trail-form-wide{grid-column:auto}.detail-title-actions{align-items:flex-start;flex-wrap:wrap}}
.section-nav{display:flex;justify-content:center;gap:2px;padding:0 max(19px,calc((100vw - 1164px)/2));overflow-x:auto;background:var(--white);border-top:1px solid #f0efe8;border-bottom:1px solid var(--line);scrollbar-width:thin;scrollbar-color:#c9d1c4 transparent}
.section-tab{position:relative;display:flex;flex:1 1 0;align-items:center;justify-content:center;min-width:0;min-height:58px;padding:9px 8px;border:0;border-radius:0;background:transparent;color:#536056;text-align:center;text-wrap:balance;font-family:inherit;font-size:11px;line-height:1.5;white-space:normal}
a.section-tab{cursor:pointer}
.section-tab.is-active{background:#f1f3ec;color:var(--forest);font-weight:700}
.section-tab.is-active:after{position:absolute;inset-inline-end:12px;bottom:0;inset-inline-start:12px;height:3px;background:var(--forest);border-radius:3px 3px 0 0;content:""}
.section-tab:disabled{color:#858c82;opacity:.82;cursor:default}
@media(max-width:800px){.section-nav{justify-content:flex-start;padding-inline:22px}.section-tab{flex:0 0 145px;min-height:54px;font-size:10px}}
@media(max-width:580px){.section-nav{padding-inline:18px;scroll-snap-type:x proximity}.section-tab{flex-basis:132px;min-height:48px;padding:8px 10px;scroll-snap-align:start}.section-tab.is-active:after{inset-inline-end:10px;inset-inline-start:10px}}
.site-header.site-header-sections{position:relative;width:100%;height:auto;max-width:none;margin:0;padding:0;display:block;border-bottom:1px solid var(--line)}
.site-brand-banner{width:100%;overflow:hidden;background:var(--white)}
.site-brand-banner img{display:block;width:100%;height:auto;object-fit:contain}
.site-header-sections .section-nav{max-width:1280px;margin:0 auto;padding-inline:19px;border:0}
.site-header-sections .section-tab{padding-inline-end:5px;padding-inline-start:5px;font-size:10px}
.site-header-sections .section-utility{color:#435348}
.site-header-sections .section-utility:hover{color:var(--rust);background:#f7f6f0}
@media(max-width:800px){.site-header-sections .section-nav{padding-inline:22px}.site-header-sections .section-tab{flex-basis:125px}}
@media(max-width:580px){.site-header-sections .section-nav{padding-inline:18px}.site-header-sections .section-tab{flex-basis:118px;min-height:48px;padding:8px 9px}}
.section-blank-page{min-height:56vh}

/* Cross-section news and announcements */
.announcement-ticker{display:flex;align-items:center;gap:16px;min-height:48px;padding:8px max(19px,calc((100vw - 1164px)/2));background:#f2f4ed;border-block:1px solid var(--line);overflow:hidden}
.announcement-ticker-title{flex:0 0 auto;color:var(--forest);font-size:13px;font-weight:700;text-decoration:none}
.announcement-ticker-items{display:flex;align-items:center;min-width:0;flex:1;overflow:hidden;direction:ltr}
.announcement-ticker-track,.announcement-ticker-sequence{display:flex;width:max-content;align-items:center;flex:0 0 auto;gap:10px}
.announcement-ticker-track{animation:announcement-ticker-scroll 34s linear infinite;will-change:transform}
.announcement-ticker-sequence{padding-inline-end:10px}
.announcement-ticker:hover .announcement-ticker-track,.announcement-ticker:focus-within .announcement-ticker-track{animation-play-state:paused}
@keyframes announcement-ticker-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
html[dir="rtl"] .announcement-ticker-sequence{direction:rtl}
.announcement-ticker-item,.announcement-ticker-empty{display:flex;align-items:center;gap:7px;flex:0 0 auto;max-width:min(360px,70vw);padding:7px 10px;border:1px solid #dce2d7;border-radius:999px;background:#fff;color:#293d31;font-size:12px;text-decoration:none;white-space:nowrap}
.announcement-ticker-item>span:last-child{overflow:hidden;text-overflow:ellipsis}
.announcement-kind{color:#788778;font-size:10px}
@media(prefers-reduced-motion:reduce){.announcement-ticker-track{animation:none;will-change:auto}}
.news-directory{max-width:1164px;margin:0 auto 64px;padding:0 20px}
.news-results-heading{display:flex;align-items:center;justify-content:space-between;margin:26px 0 16px}
.news-results-heading h2{margin:0;color:var(--forest);font-size:20px}
.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.news-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff}
.news-card-link{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:180px;color:inherit;text-decoration:none}
.news-card-link>img,.news-card-image-empty{width:150px;height:100%;min-height:180px;object-fit:cover;background:#eef0e9}
.news-card-image-empty{display:grid;place-items:center;color:var(--forest);font-size:24px}
.news-card-copy{padding:15px 16px 36px}
.news-card-tags{display:flex;flex-wrap:wrap;gap:6px;color:#647263;font-size:11px}
.news-card-tags span{padding:3px 8px;border-radius:99px;background:#f2f4ed}
.news-card h3{margin:9px 0 6px;color:#25362b;font-size:17px}
.news-card-copy>p{margin:0;color:#68736a;font-size:13px;line-height:1.6}
.news-card dl{display:flex;flex-wrap:wrap;gap:8px 18px;margin:12px 0 0;color:#68736a;font-size:11px}
.news-card dl div{display:flex;gap:5px}.news-card dl dt{font-weight:400}.news-card dl dd{margin:0;color:#334638;font-weight:600}
.news-card-open{position:absolute;inset-inline-end:16px;bottom:12px;color:var(--forest);font-size:12px;font-weight:700}
.news-card-status{position:absolute;inset-inline-start:10px;top:10px;padding:4px 8px;border-radius:99px;background:#e7f1e8;color:#27613b;font-size:10px}
.news-card.is-scheduled-or-expired .news-card-status{background:#f1eee7;color:#716c5c}
.announcement-controls{margin:18px 0;padding:14px;border:1px solid var(--line);border-radius:12px;background:#f9faf6}
.announcement-controls legend{padding:0 6px;color:var(--forest);font-weight:700}
.announcement-opt-in{display:flex;align-items:center;gap:9px;font-weight:600}
.announcement-opt-in input{accent-color:var(--forest)}
.announcement-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.announcement-options label{display:grid;gap:6px;font-size:12px;color:#59665b}
.announcement-options input{width:100%;min-height:38px;padding:7px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit;font:inherit}
@media(max-width:760px){.announcement-ticker{align-items:flex-start;flex-direction:column;gap:7px;padding:9px 16px}.announcement-ticker-items{width:100%;min-height:38px}.news-grid{grid-template-columns:1fr}.news-card-link{grid-template-columns:110px minmax(0,1fr)}.news-card-link>img,.news-card-image-empty{width:110px;min-height:166px}.announcement-options{grid-template-columns:1fr}}
.trail-listing-intro{display:flex;align-items:center;justify-content:space-between;gap:18px}
.trail-add-button{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.trail-add-button>span{font-size:19px;line-height:1}
@media(max-width:580px){.trail-listing-intro{align-items:stretch;flex-direction:column}.trail-add-button{align-self:flex-start}}

/* Home structure: platform hero, section navigation, news, then directories. */
.homepage-hero{position:relative;isolation:isolate;display:grid;place-items:center;min-height:clamp(350px,40vh,510px);overflow:hidden;background:#263c31;color:#fff}
.homepage-hero[hidden],.site-brand-banner[hidden]{display:none!important}
.homepage-hero-photo,.homepage-hero-shade{position:absolute;z-index:-1;inset:0;width:100%;height:100%}
.homepage-hero-photo{object-fit:cover;object-position:50% 40%}
.homepage-hero-shade{background:linear-gradient(90deg,#142920a6,#14292058 44%,#14292094),linear-gradient(0deg,#11271f87,transparent 70%)}
.homepage-hero-content{width:min(900px,calc(100% - 44px));padding:62px 0 44px;text-align:center}
.homepage-hero h1{margin:0;color:#fffefa;font-size:clamp(42px,6.4vw,76px);line-height:1.25;letter-spacing:-1px;text-shadow:0 3px 22px #10251b75}
.homepage-hero-tagline{margin:8px 0 27px;color:#f2e6d0;font-size:clamp(19px,2.7vw,29px);font-weight:600;line-height:1.5;text-shadow:0 2px 12px #10251b80}
.homepage-search{width:min(650px,100%);max-width:none;min-height:66px;margin:0 auto;padding:7px 9px;border:1px solid #ffffff9c;border-radius:8px;background:#fffefaed;box-shadow:0 12px 34px #10251b30}
.homepage-search>span{display:grid;place-items:center;width:40px;flex:0 0 40px;color:var(--forest);font-size:29px}
.homepage-search input{height:48px;font-size:15px}
.homepage-search input::placeholder{color:#7b8379}
.homepage-search button{display:grid;place-items:center;width:48px;height:48px;padding:0;border-radius:6px;background:var(--forest);font-size:20px}
.homepage-search button:hover{background:#315b46}
.site-header-sections .section-nav{min-height:78px;gap:0;padding-inline:max(12px,calc((100vw - 1320px)/2));border-top:0;border-bottom:1px solid var(--line)}
.site-header-sections .section-tab{display:flex;flex:1 1 0;flex-direction:column;gap:4px;min-width:88px;min-height:70px;padding:9px 6px;font-size:10px;line-height:1.35}
.section-tab-icon{font-size:19px;line-height:1.1;color:#6b7b68}
.section-tab-label{max-width:150px}
.site-header-sections .section-tab.is-active{background:#f2f3ed}
.site-header-sections .section-tab.is-active .section-tab-icon{color:var(--forest)}
.site-header-sections .section-tab.is-active:after{inset-inline:13px;bottom:0;height:3px}
.site-header-sections .section-utility{color:#67756a}
.site-header-sections .announcement-ticker{min-height:42px;padding-block:5px;background:#f3f4ef;border-top:0}
.announcement-ticker-title{font-size:12px}
.announcement-ticker-item{padding:6px 10px;font-size:11px}
.home-trails-block{margin-top:34px;padding-top:25px;border-top:1px solid var(--line)}
.home-subheading{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}
.home-subheading h3{margin:0;color:#304237;font-size:17px}
.home-recent-trails{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.home-recent-trails .trail-art{height:150px}
.home-recent-trails .trail-card-body{padding:13px}
.home-recent-trails .trail-card h3{font-size:16px}
.home-recent-trails .trail-facts{gap:5px}
.home-why{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.78fr);align-items:stretch;gap:30px;max-width:1244px;min-height:250px;margin:0 auto 75px;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#fffefa}
.home-why-copy{align-self:center;padding:34px 38px}
.home-why h2{margin:7px 0 10px;color:#1d3329;font-size:clamp(23px,3vw,31px);line-height:1.4}
.home-why-copy>p{max-width:700px;margin:0;color:#606c61;font-size:14px;line-height:2}
.home-about-link{display:inline-flex;align-items:center;gap:11px;margin-top:19px;padding:10px 15px;border-radius:5px;background:var(--forest);color:#fff;font-size:12px}
.home-about-link:hover{background:#315b46}
.home-why>img{width:100%;height:100%;min-height:250px;object-fit:cover;object-position:50% 36%}
.latest-section{padding-bottom:75px}
.latest-content-grid,.global-search-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.latest-content-card{display:grid;grid-template-columns:1fr;grid-template-rows:145px 1fr;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--white);transition:transform .18s,border-color .18s,box-shadow .18s}
.latest-content-card:hover{transform:translateY(-2px);border-color:#c6cfc3;box-shadow:0 9px 22px #263b2d12}
.latest-content-card>img,.latest-content-placeholder{width:100%;height:145px;object-fit:cover;background:#e8ebe2}
.latest-content-placeholder{display:grid;place-items:center;color:#648064;font-size:24px}
.latest-content-copy{min-width:0;padding:13px 14px 14px}
.latest-content-kind,.latest-content-section{display:block;color:#71806f;font-size:10px;line-height:1.5}
.latest-content-kind{color:#a36f43;font-weight:600}
.latest-content-card h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:6px 0;color:#23382e;font-size:15px;line-height:1.55;overflow-wrap:anywhere}
.latest-content-card p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:0 0 10px;color:#70796f;font-size:11px;line-height:1.7}
.latest-content-section{margin-top:auto;padding-top:6px}
.latest-content-copy{display:flex;flex-direction:column;align-items:flex-start}
.home-empty-message{grid-column:1/-1;margin:0;padding:20px;border:1px dashed #d8ddd3;border-radius:6px;color:#68766a;font-size:12px;line-height:1.8}
.global-search-intro{margin-top:42px}
.global-search-results{max-width:1164px;margin:0 auto 80px}
.global-search-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.global-search-card{grid-template-rows:170px 1fr}
.global-search-card>img,.global-search-card .latest-content-placeholder{height:170px}
.global-search-empty{grid-column:1/-1;padding:60px 20px;text-align:center;color:#68766a}
.global-search-empty>span{font-size:29px;color:var(--moss)}
.global-search-empty h2{margin:8px 0;color:var(--ink);font-size:20px}
.global-search-empty p{margin:0;font-size:12px}
.site-footer-expanded{max-width:none;display:grid;grid-template-columns:1.05fr 1.35fr .95fr 1.1fr;gap:25px;align-items:start;padding:32px max(24px,calc((100vw - 1244px)/2));background:#f0f1eb;color:#536157}
.site-footer-expanded h2{margin:0 0 10px;color:#304237;font-size:13px}
.site-footer-expanded .brand{color:#20382f;font-size:16px;font-weight:700}
.footer-brand-block,.footer-link-block,.footer-social-block,.footer-newsletter{min-width:0}
.footer-terms-link{display:inline-flex;margin-top:10px;color:#355644;font-size:12px;font-weight:750;text-decoration:underline;text-underline-offset:3px}
.footer-tagline{margin:8px 0;color:#9b7049;font-size:12px;font-weight:600}
.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.footer-links a{color:#5d6a5f;font-size:11px;line-height:1.6}
.footer-links a:hover{color:var(--rust)}
.footer-social-block p,.footer-newsletter>p{margin:0;color:#738074;font-size:10px;line-height:1.8}
.footer-newsletter label{display:block;margin-bottom:6px;color:#6b756c;font-size:10px}
.footer-newsletter form>div{display:flex;gap:6px}
.footer-newsletter input{width:0;min-width:0;flex:1;padding:9px;border:1px solid #dde0d6;border-radius:4px;background:#f8f8f4;color:#788176;font-size:10px}
.footer-newsletter button{padding:8px 10px;border:0;border-radius:4px;background:#d9ddd4;color:#737d72;font-size:10px}
.footer-newsletter form>p{margin:6px 0 0;color:#738074;font-size:10px;line-height:1.8}
.footer-newsletter button:disabled{cursor:not-allowed;opacity:.72}
.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:18px;padding-top:15px;border-top:1px solid #dedfd7;color:#768075;font-size:10px}
.footer-bottom span:last-child{direction:ltr;text-align:end}
.search-form#home-search.homepage-search{width:min(650px,100%);max-width:none;min-height:66px;margin:0 auto;padding:7px 9px}
.search-form#home-search.homepage-search button{width:48px;height:48px;padding:0;border-radius:6px;font-size:20px}
.trail-listing-filter-panel{margin:0 0 20px;padding:17px;border:1px solid var(--line);border-radius:7px;background:#fffefa}
.trail-listing-filter-panel>h2{margin:0 0 12px;color:#304237;font-size:15px}
.trail-listing-filter-panel .home-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.trail-listing-filter-panel .home-filter-control{min-height:68px}
.trail-listing-filter-panel .home-distance-filter{grid-column:span 2}
.trail-listing-filter-panel .home-filter-reset{margin-top:12px}
.listing-tools .results-count{white-space:nowrap}
@media(max-width:1100px){.home-recent-trails,.latest-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header-sections .section-tab{min-width:82px}.section-tab-label{font-size:9px}}
@media(max-width:760px){.homepage-hero{min-height:350px}.homepage-hero-content{width:min(700px,calc(100% - 38px));padding:58px 0 35px}.homepage-search{min-height:60px}.homepage-search input{font-size:13px}.site-header-sections .section-nav{justify-content:flex-start;min-height:72px;padding-inline:14px;scroll-snap-type:x proximity}.site-header-sections .section-tab{flex:0 0 112px;min-width:112px;min-height:65px;scroll-snap-align:start}.site-header-sections .section-tab-label{font-size:9px}.site-header-sections .announcement-ticker{align-items:center;flex-direction:row;gap:10px;padding:6px 15px}.announcement-ticker-items{width:auto;min-height:32px}.home-why{grid-template-columns:1fr;gap:0;margin-inline:24px}.home-why-copy{padding:25px 24px}.home-why>img{min-height:180px;height:190px}.home-recent-trails .trail-art{height:170px}.latest-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.global-search-results{margin-inline:24px}.trail-listing-filter-panel .home-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.homepage-hero{min-height:320px}.homepage-hero-photo{object-position:54% 35%}.homepage-hero-shade{background:linear-gradient(90deg,#1429209c,#14292058 48%,#1429209a),linear-gradient(0deg,#11271f8f,transparent 78%)}.homepage-hero-content{width:calc(100% - 34px);padding:53px 0 27px}.homepage-hero h1{font-size:clamp(35px,10vw,49px);letter-spacing:0}.homepage-hero-tagline{margin:5px 0 20px;font-size:19px}.homepage-search{min-height:56px;padding:5px}.homepage-search>span{width:34px;flex-basis:34px;font-size:26px}.homepage-search input{height:44px;font-size:12px}.homepage-search button{width:42px;height:42px}.search-form#home-search.homepage-search{min-height:56px;padding:5px}.search-form#home-search.homepage-search button{width:42px;height:42px}.site-language-switch{top:9px;left:9px;padding:6px 9px;font-size:11px}.site-language-switch .language-current{padding:3px 7px}.site-header-sections .section-nav{padding-inline:8px}.site-header-sections .section-tab{flex-basis:103px;min-width:103px;min-height:61px;padding:6px 5px}.site-header-sections .section-tab.is-active:after{inset-inline:11px}.site-header-sections .announcement-ticker{align-items:flex-start;flex-direction:column;gap:3px;padding:7px 13px}.announcement-ticker-title{font-size:11px}.announcement-ticker-items{width:100%;min-height:31px}.announcement-ticker-item{max-width:78vw;padding:5px 8px;font-size:10px}.home-trails-block{margin-top:26px;padding-top:19px}.home-subheading h3{font-size:15px}.home-recent-trails,.latest-content-grid,.global-search-grid{grid-template-columns:1fr;gap:11px}.home-recent-trails .trail-art{height:182px}.home-why{margin:0 19px 47px;border-radius:7px}.home-why-copy{padding:22px 18px}.home-why h2{font-size:23px}.home-why-copy>p{font-size:12px}.home-why>img{height:165px;min-height:165px}.latest-content-card{grid-template-columns:112px minmax(0,1fr);grid-template-rows:minmax(136px,auto);align-items:stretch}.latest-content-card>img,.latest-content-placeholder{width:112px;height:100%;min-height:136px}.latest-content-copy{padding:11px}.latest-content-card h3{font-size:13px}.latest-content-card p{font-size:10px}.global-search-results{margin-inline:19px}.global-search-card{grid-template-columns:112px minmax(0,1fr);grid-template-rows:minmax(145px,auto)}.global-search-card>img,.global-search-card .latest-content-placeholder{width:112px;height:100%;min-height:145px}.site-footer-expanded{grid-template-columns:1fr 1fr;gap:20px 14px;padding:24px 19px}.footer-brand-block{grid-column:1/-1}.footer-links{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:7px;font-size:9px}.footer-bottom span:last-child{text-align:start}.home-empty-message{padding:14px;font-size:11px}.trail-listing-filter-panel{padding:13px}.trail-listing-filter-panel .home-filter-grid{grid-template-columns:1fr}.trail-listing-filter-panel .home-distance-filter{grid-column:auto}}

/* Community groups: the first independently managed platform directory */
.homepage-hero{background:#dbeaf0;color:#173b2d}
.homepage-hero-photo{object-position:center}
.homepage-hero-shade{background:linear-gradient(90deg,#103b3022,transparent 20%,transparent 80%,#103b3022)}
.homepage-hero{place-items:end center}
.homepage-hero-content{width:min(700px,calc(100% - 44px));padding:0 0 22px;text-align:center;background:transparent;transform:none}
@media(max-width:580px){.homepage-hero-photo{object-position:center}.homepage-hero-shade{background:linear-gradient(90deg,#103b3025,transparent 18%,transparent 82%,#103b3025)}.homepage-hero-content{width:calc(100% - 34px);padding:0 0 17px}}
.community-intro{border-bottom:0;padding-bottom:18px}
.community-intro .primary-button{display:inline-flex;align-items:center;gap:10px;margin-top:13px}
.community-directory,.community-form-wrap,.community-detail-layout{max-width:1164px;margin:0 auto 84px}
.community-search-panel{padding:18px;border:1px solid var(--line);border-radius:7px;background:var(--white);box-shadow:0 8px 22px #20382f0a}
.community-search-field{display:flex;align-items:center;gap:10px;padding:5px 12px;border:1px solid #dfe2d8;border-radius:5px;background:#fffefa;color:var(--moss)}
.community-search-field>span{font-size:22px}
.community-search-field input{width:100%;height:40px;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:13px}
.community-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:13px}
.community-filter-grid label,.community-form-grid>label{display:grid;gap:6px;min-width:0;color:#566458;font-size:11px;font-weight:600}
.community-filter-grid select{width:100%;height:38px;padding:0 9px;border:1px solid #e1e2d9;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-size:11px}
.community-filter-grid select:disabled{color:#92988d;background:#f1f1eb}
.community-results-heading{display:flex;align-items:center;justify-content:space-between;margin:25px 0 13px}
.community-results-heading h2{margin:0;font-size:18px}
.community-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.community-card{display:flex;gap:15px;min-width:0;padding:17px;border:1px solid var(--line);border-radius:6px;background:var(--white);transition:transform .2s,border-color .2s}
.community-card:hover{transform:translateY(-2px);border-color:#b8c1b1}
.community-card-mark,.community-detail-logo{flex:0 0 76px;width:76px;height:76px;display:grid;place-items:center;overflow:hidden;border:1px solid #e5e6dc;border-radius:6px;background:#f0f1e9;color:var(--moss);font-size:33px}
.community-card-mark img,.community-detail-logo img{width:100%;height:100%;object-fit:contain}
.community-card-content{flex:1;min-width:0}
.community-card-title{display:flex;align-items:center;justify-content:space-between;color:var(--moss);font-size:12px}
.community-entity-tag{padding:4px 8px;border-radius:20px;background:#edf0e8;color:#526e53;font-size:10px}
.community-card h2{margin:7px 0 5px;color:var(--ink);font-size:16px}
.community-card-location{margin:0 0 8px;color:var(--muted);font-size:10px}
.community-chip-row{display:flex;flex-wrap:wrap;gap:6px}
.community-chip{display:inline-block;padding:4px 8px;border:1px solid #e3e6dc;border-radius:20px;background:#fafaf5;color:#52634f;font-size:9px}
.community-card-description{margin:9px 0 0;color:#72796f;font-size:11px;line-height:1.8}
.community-empty{text-align:center;grid-column:1/-1;padding:54px 20px;border:1px dashed #d9ddd1;border-radius:6px;color:var(--muted)}
.community-empty>span{color:var(--moss);font-size:28px}
.community-empty h2{margin:8px 0 5px;color:var(--ink);font-size:16px}
.community-empty p{margin:0;font-size:11px}
.community-form{padding:22px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.community-form fieldset{min-width:0;margin:0 0 21px;padding:0 0 19px;border:0;border-bottom:1px solid var(--line)}
.community-form fieldset:last-of-type{margin-bottom:14px}
.community-form legend{width:100%;margin:0 0 13px;color:var(--ink);font-size:15px;font-weight:700}
.community-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.community-form-grid input,.community-form-grid select,.community-form-grid textarea{width:100%;min-width:0;padding:10px 11px;border:1px solid #dedfd5;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-size:12px;font-weight:400}
.community-form-grid input:focus,.community-form-grid select:focus,.community-form-grid textarea:focus{outline:2px solid #526e5340;border-color:var(--moss)}
.community-form-grid select:disabled{color:#92988d;background:#f1f1eb}
.community-wide{grid-column:1/-1}
.required-mark{color:#a04d36}
.community-logo-field input{padding:8px}
.community-logo-hint,.community-form-note{color:var(--muted);font-size:10px;font-weight:400;line-height:1.8}
.community-logo-field img{width:94px;height:94px;object-fit:contain;border:1px solid var(--line);border-radius:5px;background:#f5f5ef}
.community-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.community-check{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #e7e6dd;border-radius:4px;background:#fcfcf7;color:#566458;font-size:11px;cursor:pointer}
.community-check input{accent-color:var(--forest)}
.community-form .trail-form-actions{margin-bottom:0}
.community-detail-hero{display:flex;align-items:center;gap:17px;margin-top:20px}
.community-detail-logo{flex-basis:88px;width:88px;height:88px}
.community-detail-hero h1{margin:4px 0;font-size:32px}
.community-detail-hero p{margin:0;color:var(--muted);font-size:12px}
.community-detail-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:15px}
.community-detail-panel{min-width:0;padding:21px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.community-detail-panel h2{margin:0 0 9px;font-size:15px}
.community-detail-panel h2:not(:first-child){margin-top:22px}
.community-detail-panel>p{margin:0;color:#72796f;font-size:12px;line-height:1.9;white-space:pre-wrap}
.community-source-link{display:inline-flex;align-items:center;gap:4px;margin-inline-start:8px;padding:2px 7px;border:1px solid #e3e6dc;border-radius:999px;color:var(--moss);font-size:10px;text-decoration:none;white-space:nowrap}
.community-source-link:hover{background:#f2f4ee}
.community-detail-row{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:11px}
.community-detail-row:last-child{border-bottom:0}
.community-detail-row span{color:var(--muted)}
.community-detail-row b{max-width:65%;overflow-wrap:anywhere;text-align:end;font-weight:500}
.community-detail-row a,.community-social-link{color:var(--moss)}
.community-social-list{display:flex;flex-wrap:wrap;gap:7px}
.community-social-link{padding:6px 9px;border:1px solid #e3e6dc;border-radius:4px;font-size:10px}
.community-muted{color:var(--muted);font-size:11px}
@media(max-width:1220px){.community-directory,.community-form-wrap,.community-detail-layout{margin-inline-end:38px;margin-inline-start:38px}}
@media(max-width:800px){.community-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.community-filter-grid label:first-child{grid-column:1/-1}.community-form,.community-search-panel{padding:16px}.community-detail-layout{grid-template-columns:1fr}}
@media(max-width:580px){.community-directory,.community-form-wrap,.community-detail-layout{margin-inline-end:19px;margin-inline-start:19px;margin-bottom:55px}.community-intro{margin-top:30px}.community-search-panel{padding:12px}.community-filter-grid{gap:7px}.community-filter-grid select{font-size:10px}.community-results{grid-template-columns:1fr;gap:9px}.community-results-heading{margin-top:19px}.community-card{gap:11px;padding:13px}.community-card-mark{flex-basis:58px;width:58px;height:58px}.community-form{padding:15px}.community-form-grid{grid-template-columns:1fr;gap:11px}.community-wide{grid-column:auto}.community-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.community-detail-hero{align-items:flex-start;gap:12px}.community-detail-logo{flex-basis:65px;width:65px;height:65px}.community-detail-hero h1{font-size:26px}.community-detail-panel{padding:16px}}

/* Guides directory and profile editor */
.mentor-intro{border-bottom:0;padding-bottom:18px}
.mentor-intro .primary-button{display:inline-flex;align-items:center;gap:10px;margin-top:13px}
.mentor-directory,.mentor-form-wrap,.mentor-detail-layout{max-width:1164px;margin:0 auto 84px}
.mentor-results-heading{display:flex;align-items:center;justify-content:space-between;margin:8px 0 14px}
.mentor-results-heading h2{margin:0;font-size:19px}
.mentor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.mentor-card{display:flex;gap:14px;min-width:0;padding:16px;border:1px solid var(--line);border-radius:6px;background:var(--white);transition:transform .2s,border-color .2s}
.mentor-card:hover{transform:translateY(-2px);border-color:#b8c1b1}
.mentor-card-photo,.mentor-detail-photo{flex:0 0 76px;width:76px;height:76px;display:grid;place-items:center;overflow:hidden;border:1px solid #e5e6dc;border-radius:6px;background:#f0f1e9;color:var(--moss);font-size:31px}
.mentor-card-photo img,.mentor-detail-photo img{width:100%;height:100%;object-fit:cover}
.mentor-card-content{min-width:0;flex:1}
.mentor-card-content h2{margin:8px 0 7px;color:var(--ink);font-size:15px;overflow-wrap:anywhere}
.mentor-permit-badge{display:inline-block;padding:4px 8px;border-radius:20px;background:#edf0e8;color:#526e53;font-size:9px}
.mentor-location{margin:10px 0 4px;color:var(--muted);font-size:10px}
.mentor-years{margin:0;color:#6f786e;font-size:10px}
.mentor-years b{color:var(--ink);font-weight:600}
.mentor-form{padding:22px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.mentor-form>fieldset{min-width:0;margin:0 0 21px;padding:0 0 19px;border:0;border-bottom:1px solid var(--line)}
.mentor-form>fieldset:last-of-type{margin-bottom:14px}
.mentor-form>fieldset>legend{width:100%;margin:0 0 13px;color:var(--ink);font-size:15px;font-weight:700}
.mentor-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.mentor-form-grid>label{display:grid;gap:6px;min-width:0;color:#566458;font-size:11px;font-weight:600}
.mentor-form-grid input,.mentor-form-grid select,.mentor-form-grid textarea{width:100%;min-width:0;padding:10px 11px;border:1px solid #dedfd5;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-size:12px;font-weight:400}
.mentor-form-grid input:focus,.mentor-form-grid select:focus,.mentor-form-grid textarea:focus{outline:2px solid #526e5340;border-color:var(--moss)}
.mentor-form-grid select:disabled,.mentor-form-grid input:disabled{color:#92988d;background:#f1f1eb}
.mentor-wide{grid-column:1/-1}
.mentor-photo-field input{padding:8px}
.mentor-photo-field img{width:100px;height:100px;object-fit:cover;border:1px solid var(--line);border-radius:5px;background:#f5f5ef}
.mentor-social-heading{margin:19px 0 11px;color:#536056;font-size:12px}
.mentor-certificate-row{position:relative;min-width:0;margin:10px 0;padding:14px;border:1px solid #e5e5dc;border-radius:5px;background:#fcfcf8}
.mentor-certificate-legend{padding-inline:5px;color:#516252;font-size:11px;font-weight:600}
.mentor-certificate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mentor-certificate-grid label{display:grid;gap:5px;min-width:0;color:#566458;font-size:10px}
.mentor-certificate-grid input,.mentor-certificate-grid select{width:100%;min-width:0;padding:9px 10px;border:1px solid #dedfd5;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-size:11px}
.mentor-remove-certificate{position:absolute;top:9px;inset-inline-start:10px;width:26px;height:26px;border:1px solid #e6ddd6;border-radius:50%;background:#fffefa;color:#97624f;font-size:17px;line-height:1;cursor:pointer}
.mentor-add-certificate{padding:8px 11px;border:1px solid #dbe0d6;border-radius:4px;background:#f0f2eb;color:#38533f;font:inherit;font-size:11px;cursor:pointer}
.mentor-add-certificate:hover{background:#e7ebe1}
.mentor-detail-hero{display:flex;align-items:center;gap:17px;margin-top:20px}
.mentor-detail-photo{flex-basis:94px;width:94px;height:94px;font-size:36px}
.mentor-detail-hero h1{margin:7px 0;color:var(--ink);font-size:32px}
.mentor-detail-hero p{margin:0;color:var(--muted);font-size:11px}
.mentor-detail-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}
.mentor-detail-panel{min-width:0;padding:21px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.mentor-detail-panel h2{margin:0 0 9px;font-size:15px}
.mentor-detail-panel h2:not(:first-child){margin-top:21px}
.mentor-detail-panel>p{margin:0;color:#72796f;font-size:12px;line-height:1.9;white-space:pre-wrap}
.mentor-detail-row{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:11px}
.mentor-detail-row span{color:var(--muted)}
.mentor-detail-row b{max-width:65%;overflow-wrap:anywhere;text-align:end;font-weight:500}
.mentor-detail-row a{color:var(--moss)}
.mentor-certificates-detail{display:grid;gap:9px}
.mentor-certificate-detail{padding:11px;border:1px solid #e7e6dd;border-radius:4px;background:#fcfcf7}
.mentor-certificate-detail h3{margin:0 0 6px;font-size:11px;color:var(--ink)}
.mentor-certificate-detail p{margin:0 0 4px;font-size:11px;color:#626e62}
.mentor-certificate-detail span{display:block;margin-top:3px;font-size:10px;color:var(--muted)}
@media(max-width:1220px){.mentor-directory,.mentor-form-wrap,.mentor-detail-layout{margin-inline-end:38px;margin-inline-start:38px}}
@media(max-width:900px){.mentor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mentor-detail-layout{grid-template-columns:1fr}}
@media(max-width:580px){.mentor-directory,.mentor-form-wrap,.mentor-detail-layout{margin-inline-end:19px;margin-inline-start:19px;margin-bottom:55px}.mentor-intro{margin-top:30px}.mentor-grid{grid-template-columns:1fr;gap:9px}.mentor-card{padding:13px}.mentor-card-photo{flex-basis:60px;width:60px;height:60px}.mentor-form{padding:15px}.mentor-form-grid,.mentor-certificate-grid{grid-template-columns:1fr;gap:11px}.mentor-wide{grid-column:auto}.mentor-detail-hero{align-items:flex-start;gap:12px}.mentor-detail-photo{flex-basis:69px;width:69px;height:69px}.mentor-detail-hero h1{font-size:26px}.mentor-detail-panel{padding:16px}}


/* People and impact-makers directory */
.impact-people-intro{border-bottom:0;padding-bottom:18px}
.impact-people-intro .primary-button{display:inline-flex;align-items:center;gap:10px;margin-top:13px}
.impact-people-directory,.impact-person-form-wrap,.impact-person-detail-layout{max-width:1164px;margin:0 auto 84px}
.impact-people-heading{display:flex;align-items:center;justify-content:space-between;margin:8px 0 14px}
.impact-people-heading h2{margin:0;font-size:19px}
.impact-people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.impact-person-card{display:flex;gap:14px;min-width:0;padding:16px;border:1px solid var(--line);border-radius:6px;background:var(--white);color:inherit;text-decoration:none;transition:transform .2s,border-color .2s}
.impact-person-card:hover{transform:translateY(-2px);border-color:#b8c1b1}
.impact-person-photo{flex:0 0 76px;width:76px;height:76px;display:grid;place-items:center;overflow:hidden;border:1px solid #e5e6dc;border-radius:6px;background:#f0f1e9;color:var(--moss);font-size:31px}
.impact-person-photo img{width:100%;height:100%;object-fit:cover}
.impact-person-card-content{min-width:0;flex:1}
.impact-person-status{display:inline-block;padding:4px 8px;border-radius:20px;background:#edf0e8;color:#526e53;font-size:9px}
.impact-person-card h2{margin:8px 0 7px;color:var(--ink);font-size:15px;overflow-wrap:anywhere}
.impact-person-location{margin:10px 0 5px;color:var(--muted);font-size:10px}
.impact-person-summary{display:-webkit-box;margin:0;color:#72796f;font-size:11px;line-height:1.8;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.impact-person-form{padding:22px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.impact-person-form>fieldset{min-width:0;margin:0 0 21px;padding:0 0 19px;border:0;border-bottom:1px solid var(--line)}
.impact-person-form>fieldset:last-of-type{margin-bottom:14px}
.impact-person-form>fieldset>legend{width:100%;margin:0 0 13px;color:var(--ink);font-size:15px;font-weight:700}
.impact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.impact-form-grid>label{display:grid;gap:6px;min-width:0;color:#566458;font-size:11px;font-weight:600}
.impact-form-grid input,.impact-form-grid select,.impact-form-grid textarea{width:100%;min-width:0;padding:10px 11px;border:1px solid #dedfd5;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-size:12px;font-weight:400}
.impact-form-grid input:focus,.impact-form-grid select:focus,.impact-form-grid textarea:focus{outline:2px solid #526e5340;border-color:var(--moss)}
.impact-form-grid select:disabled{color:#92988d;background:#f1f1eb}
.impact-wide{grid-column:1/-1}
.impact-photo-field input{padding:8px}
.impact-photo-field img{width:100px;height:100px;object-fit:cover;border:1px solid var(--line);border-radius:5px;background:#f5f5ef}
.impact-social-heading{margin:20px 0 10px;color:#536056;font-size:12px}
.impact-repeat-row{position:relative;min-width:0;margin:10px 0;padding:14px;border:1px solid #e5e5dc;border-radius:5px;background:#fcfcf8}
.impact-repeat-row legend{padding-inline:5px;color:#516252;font-size:11px;font-weight:600}
.impact-repeat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.impact-repeat-grid label{display:grid;gap:5px;min-width:0;color:#566458;font-size:10px}
.impact-repeat-grid input,.impact-repeat-grid textarea{width:100%;min-width:0;padding:9px 10px;border:1px solid #dedfd5;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-size:11px}
.impact-remove-row{position:absolute;top:9px;inset-inline-start:10px;width:26px;height:26px;border:1px solid #e6ddd6;border-radius:50%;background:#fffefa;color:#97624f;font-size:17px;line-height:1;cursor:pointer}
.impact-add-row{padding:8px 11px;border:1px solid #dbe0d6;border-radius:4px;background:#f0f2eb;color:#38533f;font:inherit;font-size:11px;cursor:pointer}
.impact-add-row:hover{background:#e7ebe1}
.impact-person-detail-hero{display:flex;align-items:center;gap:17px;margin-top:20px}
.impact-person-photo-large{flex-basis:94px;width:94px;height:94px;font-size:36px}
.impact-person-detail-hero h1{margin:7px 0;color:var(--ink);font-size:32px}
.impact-person-detail-hero p{margin:0;color:var(--muted);font-size:11px}
.impact-person-detail-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}
.impact-detail-panel{min-width:0;padding:21px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.impact-detail-panel h2{margin:0 0 9px;font-size:15px}
.impact-detail-panel h2:not(:first-child){margin-top:21px}
.impact-detail-panel>p{margin:0;color:#72796f;font-size:12px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}
.impact-record-list{display:grid;gap:9px}
.impact-detail-record{padding:11px;border:1px solid #e7e6dd;border-radius:4px;background:#fcfcf7;overflow-wrap:anywhere}
.impact-detail-record h3{margin:0 0 6px;color:var(--ink);font-size:11px}
.impact-detail-record p{margin:0 0 5px;color:#626e62;font-size:11px;line-height:1.8;white-space:pre-wrap}
.impact-detail-record span,.impact-detail-record a{display:inline-block;margin-top:3px;color:var(--moss);font-size:10px}
@media(max-width:1220px){.impact-people-directory,.impact-person-form-wrap,.impact-person-detail-layout{margin-inline-end:38px;margin-inline-start:38px}}
@media(max-width:900px){.impact-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.impact-person-detail-layout{grid-template-columns:1fr}}
@media(max-width:580px){.impact-people-directory,.impact-person-form-wrap,.impact-person-detail-layout{margin-inline-end:19px;margin-inline-start:19px;margin-bottom:55px}.impact-people-intro{margin-top:30px}.impact-people-grid{grid-template-columns:1fr;gap:9px}.impact-person-card{padding:13px}.impact-person-photo{flex-basis:60px;width:60px;height:60px}.impact-person-form{padding:15px}.impact-form-grid,.impact-repeat-grid{grid-template-columns:1fr;gap:11px}.impact-wide{grid-column:auto}.impact-person-detail-hero{align-items:flex-start;gap:12px}.impact-person-photo-large{flex-basis:69px;width:69px;height:69px}.impact-person-detail-hero h1{font-size:26px}.impact-detail-panel{padding:16px}}



/* Knowledge library and reference records */
.reference-intro{border-bottom:0;padding-bottom:18px}
.reference-intro .primary-button{display:inline-flex;align-items:center;gap:10px;margin-top:13px}
.reference-directory,.reference-form-wrap,.reference-detail-layout{max-width:1164px;margin:0 auto 84px}
.reference-results-heading{display:flex;align-items:center;justify-content:space-between;margin:8px 0 14px}
.reference-results-heading h2{margin:0;font-size:19px}
.reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.reference-card{display:block;min-width:0;padding:18px;border:1px solid var(--line);border-radius:6px;background:var(--white);color:inherit;text-decoration:none;transition:transform .2s,border-color .2s}
.reference-card:hover{transform:translateY(-2px);border-color:#b8c1b1}
.reference-card-top{display:flex;justify-content:space-between;gap:8px}
.reference-type,.reference-language{display:inline-block;padding:4px 8px;border-radius:20px;background:#edf0e8;color:#526e53;font-size:9px}
.reference-card h2{margin:13px 0 6px;color:var(--ink);font-size:16px;line-height:1.6;overflow-wrap:anywhere}
.reference-authors,.reference-date{margin:0 0 9px;color:var(--muted);font-size:10px}
.reference-summary{display:-webkit-box;margin:11px 0 0;color:#72796f;font-size:11px;line-height:1.8;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.reference-form{padding:22px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.reference-form>fieldset{min-width:0;margin:0 0 21px;padding:0 0 19px;border:0;border-bottom:1px solid var(--line)}
.reference-form>fieldset:last-of-type{margin-bottom:14px}
.reference-form>fieldset>legend{width:100%;margin:0 0 13px;color:var(--ink);font-size:15px;font-weight:700}
.reference-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.reference-form-grid>label{display:grid;gap:6px;min-width:0;color:#566458;font-size:11px;font-weight:600}
.reference-form-grid input,.reference-form-grid select,.reference-form-grid textarea{width:100%;min-width:0;padding:10px 11px;border:1px solid #dedfd5;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-size:12px;font-weight:400}
.reference-form-grid input:focus,.reference-form-grid select:focus,.reference-form-grid textarea:focus{outline:2px solid #526e5340;border-color:var(--moss)}
.reference-wide{grid-column:1/-1}
.reference-summary-grid{margin-top:15px}
.reference-author-row{position:relative;display:grid;gap:8px;min-width:0;margin:0 0 9px;padding:12px;border:1px solid #e5e5dc;border-radius:5px;background:#fcfcf8}
.reference-author-row legend{padding-inline:5px;color:#516252;font-size:11px;font-weight:600}
.reference-author-row label,.reference-keyword-row{display:grid;gap:5px;min-width:0;color:#566458;font-size:10px}
.reference-author-row input,.reference-keyword-row input{width:100%;min-width:0;padding:9px 10px;border:1px solid #dedfd5;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-size:11px}
.reference-remove-author,.reference-keyword-row button{width:27px;height:27px;border:1px solid #e6ddd6;border-radius:50%;background:#fffefa;color:#97624f;font-size:16px;line-height:1;cursor:pointer}
.reference-remove-author{position:absolute;top:8px;inset-inline-start:9px}
.reference-add-row{padding:8px 11px;border:1px solid #dbe0d6;border-radius:4px;background:#f0f2eb;color:#38533f;font:inherit;font-size:11px;cursor:pointer}
.reference-add-row:hover{background:#e7ebe1}
.reference-keywords-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:10px}
.reference-keyword-row>span{display:flex;align-items:center;gap:6px}
.reference-keyword-row input{flex:1}
.reference-detail-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}
.reference-detail-panel{min-width:0;padding:21px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.reference-detail-panel h2{margin:0 0 9px;font-size:15px}
.reference-detail-panel h2:not(:first-child){margin-top:21px}
.reference-detail-panel>p{margin:0;color:#72796f;font-size:12px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}
.reference-detail-row{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:11px}
.reference-detail-row:last-child{border-bottom:0}
.reference-detail-row span{color:var(--muted)}
.reference-detail-row b,.reference-detail-row a{max-width:70%;overflow-wrap:anywhere;text-align:end;font-weight:500;color:var(--moss)}
.reference-keywords{display:flex;flex-wrap:wrap;gap:7px}
.reference-keyword{padding:5px 9px;border:1px solid #e3e6dc;border-radius:20px;background:#fafaf5;color:#52634f;font-size:10px}
@media(max-width:1220px){.reference-directory,.reference-form-wrap,.reference-detail-layout{margin-inline-end:38px;margin-inline-start:38px}}
@media(max-width:900px){.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-detail-layout{grid-template-columns:1fr}}
@media(max-width:580px){.reference-directory,.reference-form-wrap,.reference-detail-layout{margin-inline-end:19px;margin-inline-start:19px;margin-bottom:55px}.reference-intro{margin-top:30px}.reference-grid{grid-template-columns:1fr;gap:9px}.reference-card{padding:14px}.reference-form{padding:15px}.reference-form-grid,.reference-keywords-grid{grid-template-columns:1fr;gap:11px}.reference-wide{grid-column:auto}.reference-detail-panel{padding:16px}}



/* Sports and outdoor events directory */
.sports-events-intro{border-bottom:0;padding-bottom:18px}
.sports-events-intro .primary-button{display:inline-flex;align-items:center;gap:10px;margin-top:13px}
.sports-events-directory,.sports-event-form-wrap,.sports-event-detail-layout{max-width:1164px;margin:0 auto 84px}
.sports-events-heading{display:flex;align-items:center;justify-content:space-between;margin:8px 0 14px}
.sports-events-heading h2{margin:0;font-size:19px}
.sports-events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.sports-event-card{display:block;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--white);color:inherit;text-decoration:none;transition:transform .2s,border-color .2s}
.sports-event-card:hover{transform:translateY(-2px);border-color:#b8c1b1}
.sports-event-art{position:relative;aspect-ratio:16/9;overflow:hidden;background:#e9e8df}
.sports-event-art>img{width:100%;height:100%;object-fit:cover}
.sports-event-photo-empty{width:100%;height:100%;display:grid;place-content:center;justify-items:center;gap:4px;color:#758074}
.sports-event-photo-empty span{font-size:28px}
.sports-event-photo-empty small{font-size:10px}
.sports-event-type{position:absolute;top:11px;inset-inline-end:11px;padding:5px 9px;border:1px solid #ffffff70;border-radius:18px;background:#163b30dc;color:#fff;font-size:10px}
.sports-event-card-body{padding:15px}
.sports-event-card-body h2{margin:0 0 9px;color:var(--ink);font-size:16px;line-height:1.6;overflow-wrap:anywhere}
.sports-event-date,.sports-event-place{margin:10px 0 0;color:var(--muted);font-size:10px}
.sports-event-form{padding:22px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.sports-event-form>fieldset{min-width:0;margin:0 0 21px;padding:0 0 19px;border:0;border-bottom:1px solid var(--line)}
.sports-event-form>fieldset:last-of-type{margin-bottom:14px}
.sports-event-form>fieldset>legend{width:100%;margin:0 0 13px;color:var(--ink);font-size:15px;font-weight:700}
.sports-event-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.sports-event-form-grid>label{display:grid;gap:6px;min-width:0;color:#566458;font-size:11px;font-weight:600}
.sports-event-form-grid input,.sports-event-form-grid select,.sports-event-form-grid textarea{width:100%;min-width:0;padding:10px 11px;border:1px solid #dedfd5;border-radius:4px;background:#fffefa;color:var(--ink);font:inherit;font-size:12px;font-weight:400}
.sports-event-form-grid input:focus,.sports-event-form-grid select:focus,.sports-event-form-grid textarea:focus{outline:2px solid #526e5340;border-color:var(--moss)}
.sports-event-form-grid input[type=file]{padding:8px}
.sports-event-form-grid input[type=checkbox]{width:auto}
.sports-event-wide{grid-column:1/-1}
.sports-event-image-field img{width:min(100%,360px);max-height:200px;object-fit:cover;border:1px solid var(--line);border-radius:5px;background:#f5f5ef}
.sports-event-detail-hero{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);align-items:center;gap:21px;margin-top:20px}
.sports-event-detail-hero>img,.sports-event-detail-empty{width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--line);border-radius:6px;background:#efeee7}
.sports-event-detail-empty{display:grid;place-items:center;color:#758074;font-size:36px}
.sports-event-detail-hero h1{margin:9px 0;color:var(--ink);font-size:32px}
.sports-event-type-detail{display:inline-block;padding:5px 9px;border-radius:18px;background:#edf0e8;color:#526e53;font-size:10px}
.sports-event-detail-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:15px}
.sports-event-detail-panel{min-width:0;padding:21px;border:1px solid var(--line);border-radius:6px;background:var(--white)}
.sports-event-detail-panel h2{margin:0 0 9px;font-size:15px}
.sports-event-detail-panel h2:not(:first-child){margin-top:21px}
.sports-event-detail-panel>p{margin:0;color:#72796f;font-size:12px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}
.sports-event-detail-row{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:11px}
.sports-event-detail-row:last-child{border-bottom:0}
.sports-event-detail-row span{color:var(--muted)}
.sports-event-detail-row b,.sports-event-detail-row a{max-width:70%;overflow-wrap:anywhere;text-align:end;font-weight:500;color:var(--moss)}
.sports-event-gpx-link{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid #dbe0d6;border-radius:5px;background:#f8f8f2;color:var(--moss);text-decoration:none;font-size:12px}
.sports-event-gpx-link small{flex:1;overflow-wrap:anywhere;color:var(--muted);font-size:10px}
.sports-event-gpx-link span{font-size:19px}

/* Sports event detail: full-width information and the shared trail GPX analyzer. */
.sports-event-detail-intro{margin-bottom:22px}
.sports-event-detail-hero{grid-template-columns:minmax(220px,320px) minmax(0,1fr);align-items:center;gap:24px}
.sports-event-detail-heading{min-width:0}
.sports-event-detail-heading h1{margin:9px 0 12px}
.sports-event-detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}
.sports-event-detail-actions .secondary-button,.sports-event-detail-actions .danger-button{min-height:34px;padding:7px 12px;font-size:11px;line-height:1.2}
.sports-event-detail-content{display:grid;gap:20px;max-width:1164px;margin:0 auto 84px}
.sports-event-about{width:100%}
.sports-event-about h2{margin:0 0 12px}
.sports-event-description{margin:0 0 16px;color:#59665c;font-size:13px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}
.sports-event-facts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;row-gap:0}
.sports-event-fact{display:flex;justify-content:space-between;gap:14px;min-width:0;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}
.sports-event-fact span{flex:0 0 auto;color:var(--muted)}
.sports-event-fact b{min-width:0;max-width:68%;overflow-wrap:anywhere;text-align:end;font-weight:600;color:var(--ink)}
.sports-event-links{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.sports-event-links h3{margin:0 0 10px;font-size:13px}
.sports-event-links>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}
.sports-event-detail-link{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px;text-decoration:none}
.sports-event-detail-link span{color:var(--muted)}
.sports-event-detail-link b{color:var(--moss);font-weight:600}
.sports-event-route-section{min-width:0}
.sports-event-section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.sports-event-section-heading h2{margin:3px 0 0;color:var(--ink);font-size:19px}
.sports-event-section-heading .eyebrow{font-size:10px}
.sports-event-section-heading .sports-event-gpx-link{max-width:min(100%,420px)}
.sports-event-gpx-empty{display:flex;align-items:center;gap:12px;min-height:62px;padding:14px 16px;border:1px dashed #d9ded3;border-radius:8px;background:rgba(255,255,255,.42);color:#687467}
.sports-event-gpx-empty>span{font-size:22px;color:var(--moss)}
.sports-event-gpx-empty p{margin:0;font-size:12px}
.sports-event-gpx-preview{margin-top:0}
@media(max-width:900px){.sports-event-detail-content{margin-inline:38px}.sports-event-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.sports-event-detail-intro{margin-bottom:16px}.sports-event-detail-hero{grid-template-columns:1fr;gap:14px}.sports-event-detail-hero h1{font-size:26px}.sports-event-detail-actions{margin-top:12px}.sports-event-detail-content{margin-inline:19px;margin-bottom:55px;gap:15px}.sports-event-detail-panel{padding:16px}.sports-event-facts-grid{grid-template-columns:1fr}.sports-event-links>div{grid-template-columns:1fr}.sports-event-section-heading{align-items:flex-start;flex-direction:column}.sports-event-section-heading .sports-event-gpx-link{width:100%;max-width:none}}
@media(max-width:1220px){.sports-events-directory,.sports-event-form-wrap,.sports-event-detail-layout{margin-inline-end:38px;margin-inline-start:38px}}
@media(max-width:900px){.sports-events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sports-event-detail-layout{grid-template-columns:1fr}}
@media(max-width:580px){.sports-events-directory,.sports-event-form-wrap,.sports-event-detail-layout{margin-inline-end:19px;margin-inline-start:19px;margin-bottom:55px}.sports-events-intro{margin-top:30px}.sports-events-grid{grid-template-columns:1fr;gap:10px}.sports-event-form{padding:15px}.sports-event-form-grid{grid-template-columns:1fr;gap:11px}.sports-event-wide{grid-column:auto}.sports-event-detail-hero{grid-template-columns:1fr;gap:14px}.sports-event-detail-hero h1{font-size:26px}.sports-event-detail-panel{padding:16px}}

/* Event detail refinement: compact title actions and centered, shared-width sections. */
.sports-event-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0}
.sports-event-title-row h1{min-width:0;margin:0 0 12px}
.sports-event-detail-actions{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:9px;flex:0 0 auto;margin:0 0 12px}
.sports-event-detail-actions .secondary-button,.sports-event-detail-actions .danger-button{display:inline-flex;align-items:center;justify-content:center;width:auto!important;min-width:108px;min-height:38px;margin:0;padding:8px 14px;border-radius:6px;font-size:13px;font-weight:700;line-height:1.35;text-decoration:none;white-space:nowrap}
.sports-event-detail-actions .sports-event-edit-button{border:1px solid #355e43;background:#426d50;color:#fff}
.sports-event-detail-actions .sports-event-edit-button:hover{background:#355e43}
.sports-event-detail-actions .sports-event-delete-button{border:1px solid #e3c7c3;background:#fbf0ee;color:#9a5148}
.sports-event-detail-actions .sports-event-delete-button:hover,.sports-event-detail-actions .sports-event-delete-button:focus-visible{border-color:#bd776e;background:#f4e2df;color:#873e36}
.sports-event-detail-content{width:calc(100% - 76px);max-width:1060px;margin:0 auto 84px}
@media(max-width:900px){.sports-event-detail-content{width:calc(100% - 56px);margin:0 auto 64px}}
@media(max-width:680px){.sports-event-title-row{align-items:flex-start;gap:10px;flex-wrap:wrap}.sports-event-title-row h1{flex:1 1 100%;margin-bottom:0}.sports-event-detail-actions{margin:0 0 10px}.sports-event-detail-content{width:calc(100% - 38px);margin-bottom:55px}}

/* Event-to-training handoff: compact context surfaces scoped to these two pages. */
.sports-event-training-prep{display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(100% - 76px,1060px);margin:0 auto 18px;padding:16px 18px;border:1px solid rgba(47,102,74,.16);border-radius:16px;background:rgba(255,255,255,.42)}
.sports-event-training-prep p{margin:4px 0 0;color:var(--muted,#65736b);font-size:.92rem}
.sports-event-training-prep .primary-button{width:auto;white-space:nowrap}
.workout-request-event-context{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:14px 18px;border:1px solid rgba(47,102,74,.16);border-radius:16px;background:rgba(255,255,255,.42);direction:rtl}
.workout-request-event-context[hidden]{display:none}
.workout-request-event-context h2{margin:3px 0 4px;font-size:1.12rem}
.workout-request-event-context p{margin:4px 0;color:var(--muted,#65736b);font-size:.9rem}
.workout-request-event-context small{color:var(--muted,#65736b)}
.workout-request-event-context .workout-event-gpx-suggestion{color:#7a5a24}
.workout-request-event-context .secondary-button{width:auto;white-space:nowrap}
@media(max-width:680px){.sports-event-training-prep,.workout-request-event-context{width:calc(100% - 38px);margin-inline:auto;align-items:flex-start;flex-direction:column}.sports-event-training-prep .primary-button,.workout-request-event-context .secondary-button{width:auto}}
.sports-event-training-prep{display:block}
.sports-event-training-prep-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.sports-event-prep-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sports-event-prep-actions .primary-button,.sports-event-prep-actions .secondary-button{width:auto;white-space:nowrap}
.sports-event-linked-plans{margin-top:16px;padding-top:14px;border-top:1px solid rgba(47,102,74,.13)}
.sports-event-linked-plans h3,.sports-event-plan-picker h3{margin:0;font-size:1rem}
.sports-event-linked-plan,.sports-event-plan-choice{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid rgba(47,102,74,.1)}
.sports-event-linked-plan:last-child,.sports-event-plan-choice:last-child{border-bottom:0}
.sports-event-linked-plan b,.sports-event-plan-choice b{display:block;color:var(--ink,#273d32)}
.sports-event-linked-plan small,.sports-event-plan-choice small{display:block;margin-top:4px;color:var(--muted,#65736b);font-size:.82rem;line-height:1.6}
.sports-event-linked-plan>div:last-child{display:flex;align-items:center;gap:8px}
.sports-event-plan-picker{margin-top:16px;padding-top:14px;border-top:1px solid rgba(47,102,74,.13)}
.sports-event-plan-picker[hidden]{display:none}
.sports-event-plan-picker>.community-results-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.sports-event-plan-choice .secondary-button,.sports-event-linked-plan .secondary-button{width:auto;white-space:nowrap}
.sports-event-plan-conflict{color:#8a5c23!important}
.workout-plan-linked-event{margin:6px 0 0;font-size:.86rem;color:var(--muted,#65736b)}
.workout-plan-linked-event a{color:var(--green-700,#2f664a);text-decoration:underline;text-underline-offset:2px}
@media(max-width:680px){.sports-event-training-prep-head,.sports-event-linked-plan,.sports-event-plan-choice{align-items:flex-start;flex-direction:column}.sports-event-prep-actions{width:100%}.sports-event-linked-plan>div:last-child{flex-wrap:wrap}.sports-event-plan-choice .secondary-button,.sports-event-linked-plan .secondary-button{width:auto}}



/* Structured about page */
.about-page{max-width:1240px;margin:0 auto;padding:0 38px 78px;color:var(--ink)}
.about-hero{position:relative;overflow:hidden;margin:14px 0 54px;padding:clamp(34px,6vw,78px);border:1px solid #d9dbcf;border-radius:8px;background:linear-gradient(115deg,#fdfcf6 0%,#f1f0e8 62%,#e4e8dc 100%)}
.about-hero:after{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:31%;background:linear-gradient(145deg,transparent 34%,#88967c18 34.4% 35%,transparent 35.4% 58%,#425d4910 58.4% 59%,transparent 59.4%);pointer-events:none}
.about-hero-inner{position:relative;z-index:1;max-width:760px}
.about-kicker{display:inline-block;padding:6px 11px;border:1px solid #dce0d5;border-radius:20px;color:var(--moss);font-size:11px}
.about-hero h1{margin:17px 0 0;color:#1c3329;font-size:clamp(38px,6vw,68px);line-height:1.25;letter-spacing:-1px}
.about-tagline{margin:4px 0 18px;color:#9a704a;font-size:clamp(21px,3vw,30px);font-weight:600}
.about-hero-statement{max-width:620px;margin:0;color:#576358;font-size:clamp(14px,1.8vw,18px);line-height:2}
.about-hero-rule{display:flex;align-items:center;gap:12px;margin-top:27px;color:#526550;font-size:11px;font-weight:600}
.about-hero-rule i{width:26px;height:1px;background:#c4caba}
.about-section{margin:0 auto 54px}
.about-section-heading{margin-bottom:22px}
.about-section-heading h2,.about-why h2,.about-geography h2,.about-info-panel h2,.about-mission h2{margin:7px 0 8px;color:#1d3329;font-size:clamp(22px,3vw,30px);line-height:1.5}
.about-section-heading>p{max-width:700px;margin:0;color:#68746a;font-size:13px;line-height:1.9}
.about-introduction{display:grid;grid-template-columns:.75fr 1.25fr;gap:34px;align-items:start}
.about-introduction .about-section-heading{margin:0}
.about-intro-copy>p,.about-why-copy>p,.about-geography>div:first-child>p{margin:0 0 13px;color:#5d695f;font-size:13px;line-height:2.1}
.about-pillars{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}
.about-pillars span{padding:7px 11px;border:1px solid #e4e5dc;border-radius:20px;background:#fffefa;color:#425642;font-size:11px}
.about-pillars b{color:#a47c55;font-size:12px}
.about-why{display:grid;grid-template-columns:1.25fr .75fr;gap:38px;align-items:center;padding:30px;border:1px solid var(--line);border-radius:7px;background:#fffefa}
.about-why-note{display:flex;align-items:center;gap:15px;padding:20px;border-radius:6px;background:#edf0e8;color:#38513e}
.about-why-note>span{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:50%;background:#fffefa;font-size:22px}
.about-why-note p{margin:0;font-size:14px;font-weight:600;line-height:1.9}
.about-sections-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.about-section-card{display:grid;grid-template-columns:40px minmax(0,1fr) 18px;gap:13px;align-items:start;min-width:0;padding:17px;border:1px solid var(--line);border-radius:6px;background:#fffefa;transition:border-color .18s,transform .18s}
.about-section-card:hover{border-color:#b8c1b1;transform:translateY(-2px)}
.about-section-index{color:#9b7958;font-size:11px;font-weight:700;direction:ltr}
.about-section-card h3{margin:0 0 6px;color:#294234;font-size:13px;line-height:1.6}
.about-section-card p{margin:0;color:#727a70;font-size:11px;line-height:1.9}
.about-section-arrow{align-self:center;color:#71806f;font-size:14px}
.about-geography{display:grid;grid-template-columns:1.2fr .8fr;gap:36px;align-items:center;padding:30px;border-radius:7px;background:#e9ede4}
.about-geography-flow{display:grid;justify-items:center;gap:6px;padding:20px;border:1px solid #d7ded3;border-radius:6px;background:#f9faf5}
.about-geography-flow>span{width:min(100%,210px);padding:9px 12px;border:1px solid #dfe3d9;border-radius:4px;background:#fffefa;text-align:center;color:#3e5944;font-size:12px;font-weight:600}
.about-geography-flow>b{color:#8a9a85;font-size:15px}
.about-geography-flow>p{margin:8px 0 0;color:#737e73;font-size:10px;line-height:1.8;text-align:center}
.about-principles-audience{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.about-info-panel{padding:24px;border:1px solid var(--line);border-radius:7px;background:#fffefa}
.about-info-panel ul{display:grid;gap:9px;margin:15px 0 0;padding:0 18px 0 0;color:#5d695f;font-size:12px;line-height:1.9}
.about-audience-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}
.about-audience-list span,.about-landscape-list span{padding:7px 10px;border:1px solid #e7e7de;border-radius:20px;background:#fafaf5;color:#5a685b;font-size:10px;line-height:1.6}
.about-landscape-list{display:flex;flex-wrap:wrap;gap:8px}
.about-landscape-list span{padding:9px 13px;background:#f2eee5;color:#7a634a}
.about-future-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.about-future-item{display:flex;align-items:flex-start;gap:13px;padding:14px;border:1px solid var(--line);border-radius:5px;background:#fffefa;color:#59665c;font-size:11px;line-height:1.8}
.about-future-item b{color:#a57d54;font-size:10px;direction:ltr}
.about-mission{padding:clamp(25px,5vw,54px);border-radius:8px;background:#203c30;color:#f8f7f0;text-align:center}
.about-mission .eyebrow{color:#c8d3be}
.about-mission h2{color:#fffefa}
.about-mission>p{max-width:850px;margin:12px auto;color:#e0e5db;font-size:13px;line-height:2.1}
.about-mission .primary-button{display:inline-flex;align-items:center;gap:8px;margin-top:12px;border:1px solid #78907b;background:#f5f4ec;color:#244b3b}
.about-mission .primary-button:hover{background:#e5e9de}
@media(max-width:900px){.about-introduction,.about-why,.about-geography{grid-template-columns:1fr;gap:20px}.about-why,.about-geography{padding:23px}.about-sections-grid{gap:9px}}
@media(max-width:600px){.about-page{padding:0 19px 55px}.about-hero{margin:20px 0 36px;padding:29px 22px;border-radius:6px}.about-hero:after{width:45%}.about-hero h1{font-size:41px}.about-hero-rule{flex-wrap:wrap;gap:8px;margin-top:19px}.about-hero-rule i{width:12px}.about-section{margin-bottom:38px}.about-introduction{gap:12px}.about-pillars{gap:6px}.about-pillars span{padding:6px 9px;font-size:10px}.about-why,.about-geography{padding:17px}.about-why-note{padding:14px}.about-sections-grid,.about-principles-audience,.about-future-grid{grid-template-columns:1fr}.about-section-card{grid-template-columns:30px minmax(0,1fr) 15px;gap:9px;padding:13px}.about-info-panel{padding:18px}.about-mission{padding:27px 19px}.about-mission>p{font-size:12px}}



/* Language switch and direction-aware layout */
.site-language-switch{position:absolute;z-index:3;top:14px;left:clamp(12px,calc((100vw - 1320px)/2 + 20px),54px);display:flex;align-items:center;justify-content:center;gap:8px;min-width:max-content;padding:8px 14px;border:1px solid #ffffff73;border-radius:999px;background:#173f32;color:#fff;font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;box-shadow:0 3px 14px #142d2466;cursor:pointer}
.site-language-switch .language-current{padding:4px 9px;border-radius:999px;background:#f0dfbd;color:#193b2f;font-weight:700}
.site-language-switch:focus-visible{outline:3px solid #edc783;outline-offset:3px}
html[dir="ltr"] .section-nav{direction:ltr}
html[dir="ltr"] .home-filter-grid,html[dir="ltr"] .trail-grid{direction:ltr}
@media(max-width:580px){.site-language-switch{top:8px;left:8px;gap:6px;padding:7px 10px;font-size:12px}}

/* Desert-inspired palette and stronger contrast across navigation and page surfaces. */
:root{--ink:#231a13;--forest:#5b4028;--moss:#80603b;--sand:#dfc39b;--paper:#f5eee3;--white:#fffaf2;--muted:#71675c;--line:#e4d5c0;--rust:#ad572c;background:var(--paper);color:var(--ink)}
body{background:var(--paper);color:var(--ink)}
.site-header-sections{background:#eee1cd;border-color:#d7c2a4!important}
.site-header-sections .section-nav{background:#eee1cd;border-color:#d7c2a4}
.site-header-sections .section-tab,.site-header-sections .section-tab-label{color:#20170f;font-weight:650}
.site-header-sections .section-tab-label{font-size:11.5px;font-weight:700;line-height:1.4;color:#000}
.site-header-sections .section-tab-icon{color:#6c4829}
.site-header-sections .section-tab.is-active{background:#e3cfb0;color:#1d150e}
.site-header-sections .section-tab.is-active .section-tab-icon{color:#57371d}
.site-header-sections .section-tab.is-active:after{background:#8f542b}
.site-header-sections .section-utility{color:#302216}
.site-header-sections .announcement-ticker{background:#f3e8d7;border-color:#e1cfb4}
.announcement-ticker-title{color:#342316}
.announcement-ticker-item{border-color:#dfc9a8;background:#fff9ef;color:#302318}
.home-trails-block{border-color:#dfcfb8}
.home-why{background:#fffaf2;border-color:#e4d5c0}
.latest-content-card,.trail-card,.category-card,.detail-panel,.metrics-panel,.media-panel{background:var(--white);border-color:var(--line)}
.category-card{color:#271b10}
.category-card small,.muted,.trail-facts{color:#66594b}
.site-footer-expanded{background:#e9dcc7;color:#493a2b}
.site-footer-expanded h2{color:#302116}
.site-footer-expanded .brand{color:#24170d}
.footer-links a{color:#4c3b29}
.site-footer-expanded .footer-tagline{color:#94572e}
.page-intro,.detail-panel,.metrics-panel,.media-panel{color:#271b10}
.home-why{position:relative;display:flex;align-items:center;max-width:none;min-height:330px;margin:0 0 75px;overflow:hidden;border:0;border-radius:0;background:#243b30}
.home-why::before{position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#141d17a8,#18231baa 48%,#141d1785);content:""}
.home-why>img{position:absolute;inset:0;z-index:0;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center 40%}
.home-why-copy{position:relative;z-index:1;width:min(1244px,100%);margin-inline:auto;padding:54px 7vw;color:#fff}
.home-why-copy .eyebrow,.home-why h2,.home-why-copy>p{color:#fff}
.home-why h2{max-width:850px;font-size:clamp(26px,3.2vw,38px)}
.home-why-copy>p{max-width:780px;font-size:15px;text-shadow:0 1px 8px #0007}
.home-about-link{border:1px solid #ffffff9c;background:#fff;color:#392619;font-weight:700}
.home-about-link:hover{background:#f0dfc4;color:#27190e}
@media(max-width:760px){.home-why{min-height:300px;margin-bottom:50px}.home-why-copy{padding:38px 25px}.home-why-copy>p{font-size:13px}.home-why>img{object-position:54% center}}
.latest-section{max-width:none;margin-inline:0;padding:0 0 75px}
.latest-section>.section-heading{padding-inline:7vw}
.latest-section .latest-content-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-inline:clamp(20px,5vw,72px)}
.latest-section .latest-content-card{grid-template-rows:118px 1fr;border-radius:7px}
.latest-section .latest-content-card>img,.latest-section .latest-content-placeholder{height:118px}
.latest-section .latest-content-copy{padding:11px 12px 12px}
.latest-section .latest-content-card h3{font-size:13px;line-height:1.45}
.latest-section .latest-content-card p{font-size:10px;line-height:1.55}
@media(max-width:900px){.latest-section .latest-content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}}
@media(max-width:580px){.latest-section{padding-inline:19px}.latest-section>.section-heading{padding-inline:0}.latest-section .latest-content-grid{grid-template-columns:1fr;gap:11px;padding-inline:0}.latest-section .latest-content-card{grid-template-columns:112px minmax(0,1fr);grid-template-rows:minmax(126px,auto);align-items:stretch}.latest-section .latest-content-card>img,.latest-section .latest-content-placeholder{width:112px;height:100%;min-height:126px}.latest-section .latest-content-copy{padding:11px}}
.site-header-sections .announcement-ticker{background:#31563a;border-color:#31563a;color:#fff}

/* Keep the existing section bar in place while visually joining it to the brand banner. */
.site-header-sections .section-nav{
  background:transparent;
  border-color:transparent;
}
.site-header.site-header-sections{
  background-color:#183b2d;
  background-image:linear-gradient(0deg,rgba(20,47,36,.84),rgba(20,47,36,.72)),url('../public/branding/masarat-header-alexandria-bilingual-copyfix2.png');
  background-repeat:no-repeat;
  background-position:center bottom;
  background-size:100% auto;
}
.site-header-sections .section-tab,
.site-header-sections .section-tab-label,
.site-header-sections .section-utility,
.site-header-sections .section-tab-icon{color:#fff}
.site-header-sections .section-tab{font-family:'Alexandria','IBM Plex Sans Arabic',Tahoma,sans-serif;font-weight:600}
.site-header-sections .section-tab-label{font-family:'Alexandria','IBM Plex Sans Arabic',Tahoma,sans-serif;font-size:11.5px;font-weight:600;color:#fff}
.site-header-sections .section-tab-icon{color:#fff}
.site-header-sections .section-tab.is-active{background:rgba(255,255,255,.14);color:#fff}
.site-header-sections .section-tab.is-active .section-tab-icon{color:#fff}
.site-header-sections .section-tab.is-active:after{background:#fff}
.site-header-sections .section-tab:disabled{color:rgba(255,255,255,.78)}
.site-header-sections .section-utility:hover{color:#fff;background:rgba(255,255,255,.12)}
.announcement-ticker-title{padding:7px 12px;border-radius:5px;background:#173e2a;color:#fff!important;white-space:nowrap}
.announcement-ticker-item,.announcement-ticker-empty{border-color:#e2d2b8;background:#fff8ea;color:#21180f}
.announcement-kind{color:#79542c}
.footer-social-icons{display:flex;flex-wrap:wrap;gap:8px;direction:ltr;margin:4px 0 9px}
.footer-social-icon{display:grid;width:38px;height:38px;place-items:center;border:1px solid #6f815e;border-radius:10px;background:#31563a;color:#fff}
.footer-social-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.footer-social-icon:nth-child(3) svg{stroke-width:0;fill:currentColor}
.footer-social-icon .social-play{fill:#31563a;stroke:none}
.footer-social-icon:nth-child(5) svg{fill:currentColor;stroke:none}
.site-footer-expanded{grid-template-columns:1.05fr .95fr 1.1fr}
.footer-social-block{text-align:center}
.footer-social-block .footer-social-icons{justify-content:center}
.footer-contact{margin-top:16px;padding-top:12px;border-top:1px solid #d9dfd2}
.footer-contact h3{margin:0 0 8px;color:#263f2d;font-size:14px;font-weight:800}
.footer-contact-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.footer-contact-option{display:flex;min-width:0;flex-direction:column;align-items:center;gap:3px;padding:7px 4px;border:1px solid #e0e5da;border-radius:9px;background:#fafbf8;color:#314832;font-size:11px;font-weight:700}
.footer-contact-option svg{width:18px;height:18px;fill:none;stroke:#52724a;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.footer-contact-option small{color:#838b7f;font-size:9px;font-weight:500}
@media(max-width:520px){.footer-contact-options{grid-template-columns:1fr}.footer-contact-option{flex-direction:row;justify-content:center}.footer-contact-option small{margin-inline-start:4px}}

/* Account entry and static account-flow previews. */
.account-entry{position:absolute;z-index:4;top:14px;right:clamp(12px,calc((100vw - 1320px)/2 + 20px),54px);display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid #ffffff73;border-radius:999px;background:#5b4028;color:#fff;font-size:12px;font-weight:700;box-shadow:0 3px 14px #142d2466}
.account-entry svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.account-entry:hover{background:#765536}
.account-entry:focus-visible,.account-future-tab:focus-visible,.account-auth-tab:focus-visible{outline:3px solid #d6a86a;outline-offset:2px}
.account-page{max-width:1020px;margin:38px auto 78px;padding:0 24px}
.account-page-heading{margin-bottom:22px}
.account-page-heading h1{margin:5px 0 7px;color:var(--ink);font-size:clamp(27px,4vw,38px)}
.account-page-heading>p{max-width:700px;margin:0;color:var(--muted);font-size:13px;line-height:1.9}
.account-auth-card,.account-dashboard{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--white);box-shadow:0 12px 32px #3e2c1910}
.account-auth-tabs,.account-future-tabs{display:flex;gap:5px;padding:8px;border-bottom:1px solid var(--line);background:#f1e8da}
.account-auth-tab,.account-future-tab{min-height:42px;padding:9px 15px;border:0;border-radius:8px;background:transparent;color:#6f6559;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.account-auth-tab.is-active,.account-future-tab.is-active{background:#fffaf2;color:#48341f;box-shadow:0 2px 8px #44341c14}
.account-future-tab:disabled{opacity:.58;cursor:default}
.account-auth-panel{max-width:750px;margin:auto;padding:clamp(20px,4vw,36px)}
.account-auth-panel h2,.account-profile-panel h2,.account-verification h2{margin:0 0 17px;color:#2b3c30;font-size:21px}
.account-form{display:grid;gap:14px}
.account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.account-form label,.account-verification>label{display:grid;gap:6px;color:#4e584f;font-size:12px;font-weight:650}
.account-form input:not([type=checkbox]),.account-verification input{width:100%;min-width:0;min-height:43px;padding:10px 12px;border:1px solid #dedfd6;border-radius:7px;background:#fffefa;color:var(--ink);font:inherit;font-weight:400}
.account-form input:focus,.account-verification input:focus{outline:2px solid #9baa8a;outline-offset:1px}
.account-consent{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:9px!important;line-height:1.8}
.account-consent input,.account-choice-chip input{flex:none;width:16px;height:16px;margin:3px 0 0;accent-color:#536c43}
.account-fieldset{min-width:0;margin:0;padding:15px;border:1px solid #e4dfd5;border-radius:9px}
.account-fieldset legend{padding:0 5px;color:#3f4c3f;font-size:13px;font-weight:750}
.account-fieldset .account-note{margin-bottom:0}
.account-whatsapp-mobile{max-width:380px;margin-top:10px}
.account-interest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:11px 0}
.account-choice-chip{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:8px!important;padding:8px 10px;border:1px solid #e7e2d8;border-radius:7px;background:#fffefa;font-size:11px!important;line-height:1.65}
.account-note{color:#77776d;font-size:11px;line-height:1.8}
.account-form>.primary-button{justify-self:start;min-width:145px;cursor:pointer}
.account-verification{margin-top:24px;padding:19px;border:1px solid #d9dfd1;border-radius:9px;background:#f5f6f0}
.account-verification>p{color:#667064;font-size:12px;line-height:1.8}
.account-verification>label{max-width:360px}
.account-role-note{margin:12px 0;color:#89867c;font-size:10px;line-height:1.8}
.account-profile-preview{display:inline-flex;margin-top:14px;color:#705538;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.account-dashboard{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:390px}
.account-future-tabs{flex-direction:column;align-items:stretch;border-bottom:0;border-inline-end:1px solid var(--line)}
.account-future-tab{text-align:start}
.account-profile-panel{padding:clamp(20px,4vw,36px)}
.account-avatar{display:grid;width:56px;height:56px;margin-bottom:13px;place-items:center;border-radius:50%;background:#e9e3d6;color:#766045;font-size:27px}
.account-avatar-caption{margin:-7px 0 14px;color:#888277;font-size:10px}
.account-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.account-profile-grid>div{display:grid;gap:5px;padding:12px;border:1px solid #e8e3d9;border-radius:7px}
.account-profile-grid span{color:#797b70;font-size:10px}
.account-profile-grid b{color:#4c554c;font-size:12px}
.account-edit-button,.account-signin-link{display:inline-flex;align-items:center;min-height:39px;margin-top:13px;padding:9px 13px;border:0;border-radius:7px;background:#d9d8cf;color:#77776e;font:inherit;font-size:12px;font-weight:700}
.account-signin-link{margin-inline-start:8px;background:#5b4028;color:#fff}
html[dir="ltr"] .account-future-tab{text-align:start}
@media(max-width:700px){.account-page{margin:24px auto 56px;padding-inline:18px}.account-entry{top:9px;right:9px;gap:5px;padding:6px 9px;font-size:10px}.account-entry svg{width:15px;height:15px}.account-dashboard{grid-template-columns:1fr}.account-future-tabs{flex-direction:row;overflow-x:auto;border-inline-end:0;border-bottom:1px solid var(--line)}.account-future-tab{flex:none;white-space:nowrap}.account-profile-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.account-form-grid,.account-interest-grid{grid-template-columns:1fr}.account-auth-tab{flex:1;padding-inline:7px}.account-profile-grid{grid-template-columns:1fr}.account-role-note{font-size:9px}}

/* Lighter, more compact section bar; its position and horizontal behavior stay unchanged. */
.site-header.site-header-sections{
  background-image:linear-gradient(0deg,rgba(27,59,44,.62),rgba(27,59,44,.46)),url('../public/branding/masarat-header-alexandria-bilingual-copyfix2.png');
}
.site-header-sections .section-nav{min-height:62px}
.site-header-sections .section-tab{min-height:56px;padding-block:6px;gap:3px}
.site-header-sections .section-tab-icon{font-size:17px}
@media(max-width:760px){.site-header-sections .section-nav{min-height:58px}.site-header-sections .section-tab{min-height:52px}}
@media(max-width:580px){.site-header-sections .section-nav{min-height:54px}.site-header-sections .section-tab{min-height:48px;padding-block:4px}.site-header-sections .section-tab-icon{font-size:15px}}

/* Soft Saudi trail atmosphere under the post-announcement homepage content. */
.home-content-atmosphere{position:relative;isolation:isolate;overflow:hidden;background:#f5eee3}
.home-content-atmosphere::before{position:absolute;z-index:0;inset:0;background-image:linear-gradient(180deg,rgba(246,239,228,.76),rgba(246,239,228,.84)),url('../public/branding/saudi-trail-atmosphere.jpg');background-repeat:no-repeat;background-position:center top;background-size:cover;content:"";pointer-events:none}
.home-content-atmosphere>.latest-section,.home-content-atmosphere>.home-why{position:relative;z-index:1}
@media(max-width:580px){.home-content-atmosphere::before{background-position:center top;background-size:auto 100%;opacity:.92}}

/* Trail detail additions only. */
.musaigrah-detail .detail-layout>* ,.musaigrah-detail .media-panel{min-width:0}
.trail-edit-link{display:inline-flex;align-items:center;gap:6px;color:#55665a;font-size:13px;text-decoration:none;padding:8px;border:1px solid #d9dfd6;border-radius:6px}
.trail-edit-link:hover{background:#eef2e9}
.visitor-notes{max-width:1244px;margin:32px auto 64px;padding:28px;background:#fffdf8;border:1px solid #e0e4d9;border-radius:12px;min-width:0;overflow-wrap:anywhere}
.visitor-notes h2{margin:0 0 8px;font-size:24px;color:#243d30}
.visitor-notes header>p,.visitor-notes-empty{color:#687367}
.visitor-notes [data-note-access]{padding:16px 0 24px;border-bottom:1px solid #e0e4d9;margin-bottom:20px}
.visitor-notes .secondary-button{padding:10px 16px;border:1px solid #bac7b7;border-radius:7px;background:#f5f7f0;color:#294433;font:inherit;cursor:pointer;white-space:normal}
.visitor-note-form{max-width:720px;display:grid;gap:16px;margin-top:20px}
.visitor-note-form[hidden]{display:none}
.visitor-note-form label{display:grid;gap:7px;min-width:0}
.visitor-note-form input,.visitor-note-form select,.visitor-note-form textarea{width:100%;min-width:0;max-width:100%;box-sizing:border-box;border:1px solid #bac7b7;border-radius:7px;padding:12px;background:white;color:#253c2e;font:inherit}
.visitor-note-form textarea{resize:vertical}
.visitor-note-form p{margin:0;color:#626e61;font-size:14px}
.visitor-note-actions{display:flex;flex-wrap:wrap;gap:12px}
.visitor-notes button:focus-visible,.visitor-notes a:focus-visible,.trail-edit-link:focus-visible{outline:3px solid #749b61;outline-offset:3px}
.visitor-note{padding:20px 0;border-bottom:1px solid #e6e9e0}
.visitor-note:last-child{border-bottom:0}
.visitor-note header,.visitor-note footer{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.visitor-note-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}
.visitor-note-type{font-size:12px;padding:4px 10px;background:#edf2e6;border-radius:20px;color:#3e5933}
.visitor-note-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}
.visitor-note footer{font-size:12px;color:#697464}
@media(max-width:1300px){.visitor-notes{margin-inline:24px}}
@media(max-width:580px){.visitor-notes{margin-inline:16px;padding:18px}.visitor-notes h2{font-size:21px}.visitor-note-actions>*{flex:1 1 auto}.visitor-note-form input[type=date]{min-height:46px}}

.trail-development-tools{max-width:1164px;margin:20px auto;padding:16px;border:2px dashed #ad7b28;border-radius:8px;background:#fff8df;color:#584018;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.trail-development-tools p{flex-basis:100%;margin:0;font-size:14px}
.trail-development-tools label{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.trail-development-tools select,.trail-development-tools button{font:inherit;padding:8px 12px;border:1px solid #aa8c5b;border-radius:6px;background:#fffdf7;max-width:100%}
@media(max-width:1220px){.trail-development-tools{margin-inline:19px}}
.trail-media-editor{margin:26px 0;padding:20px;border:1px solid #d8dfd4;border-radius:10px;min-width:0}
.trail-media-editor legend{padding-inline:8px;font-weight:700;color:#294433}
.trail-cover-editor{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;align-items:start;margin:16px 0 28px;padding:16px;border:1px solid #e1e5dc;border-radius:9px;background:#fbfcf8;min-width:0}
.trail-cover-editor h2{margin:0 0 10px;font-size:18px}
.trail-cover-editor label{display:grid;gap:6px;min-width:0}
.trail-cover-editor input{width:100%;min-width:0;padding:10px;border:1px solid #c8d1c5;border-radius:6px;font:inherit}
.trail-cover-upload-button{display:inline-flex!important;align-items:center;justify-content:center;width:max-content;max-width:100%;padding:11px 17px;border-radius:7px;background:#294b38;color:#fff!important;font-weight:600;cursor:pointer}
.trail-cover-upload-button input{position:absolute;width:1px!important;height:1px;padding:0!important;opacity:0;pointer-events:none}
.trail-cover-file-name{display:block;margin-top:8px;color:#687467;font-size:13px;overflow-wrap:anywhere}
.trail-cover-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.trail-cover-url-option{margin-top:12px;color:#4f6254}
.trail-cover-url-option summary{cursor:pointer;font-size:13px}
.trail-cover-url-option label{margin-top:9px}
.trail-cover-preview{display:grid;place-items:center;width:180px;aspect-ratio:16/10;overflow:hidden;border-radius:8px;background:#e9eee6;color:#667563;font-size:28px}
.trail-cover-preview img{width:100%;height:100%;object-fit:cover}
.trail-gpx-editor{margin:26px 0;padding:20px;border:1px solid #d8dfd4;border-radius:10px;min-width:0}
.trail-gpx-editor legend{padding-inline:8px;font-weight:700;color:#294433}
.trail-gpx-editor label{display:grid;gap:7px;min-width:0}
.trail-gpx-editor input{width:100%;min-width:0;padding:11px;border:1px solid #c8d1c5;border-radius:6px;font:inherit}
.trail-gpx-editor .text-link{display:inline-block;margin-top:10px}
.trail-media-edit-section+ .trail-media-edit-section{margin-top:28px;padding-top:24px;border-top:1px solid #e1e5dc}
.trail-media-edit-section>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.trail-media-edit-section>header h2{margin:0;font-size:18px}
.trail-media-edit-section>header span{color:#6b766a;font-size:13px}
.trail-media-edit-list{display:grid;gap:10px;min-width:0}
.trail-media-edit-row{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;border:1px solid #e2e6de;border-radius:8px;background:#fff;min-width:0}
.trail-media-edit-preview{display:grid;place-items:center;width:68px;height:58px;border-radius:6px;overflow:hidden;background:#eef1ea;color:#667563;font-size:22px}
.trail-media-edit-preview img{width:100%;height:100%;object-fit:cover}
.trail-media-edit-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.55fr);gap:10px;min-width:0}
.trail-media-edit-fields label{display:grid;gap:4px;min-width:0;font-size:12px;color:#5d695d}
.trail-media-edit-fields input{width:100%;min-width:0;padding:9px;border:1px solid #c8d1c5;border-radius:6px;font:inherit}
.trail-photo-upload-field{display:grid;gap:7px;min-width:0}
.trail-photo-upload-button{display:inline-flex!important;align-items:center;justify-content:center;width:max-content;max-width:100%;padding:9px 13px!important;border-radius:7px;background:#294b38;color:#fff!important;font-weight:600;cursor:pointer}
.trail-photo-upload-button input{position:absolute;width:1px!important;height:1px;padding:0!important;opacity:0;pointer-events:none}
.trail-photo-upload-field span{color:#687467;font-size:12px;overflow-wrap:anywhere}
.trail-photo-upload-field details{color:#4f6254}
.trail-photo-upload-field summary{cursor:pointer;font-size:12px}
.trail-photo-upload-field details label{margin-top:7px}
.trail-media-edit-actions{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}
.trail-media-edit-actions button{padding:7px 9px;border:1px solid #c8d1c5;border-radius:6px;background:#f7f8f3;color:#334b3a;font:inherit;cursor:pointer}
.trail-media-edit-actions button:disabled{opacity:.35;cursor:default}
@media(max-width:760px){.trail-media-editor,.trail-gpx-editor{padding:14px}.trail-cover-editor{grid-template-columns:120px minmax(0,1fr)}.trail-cover-preview{width:120px}.trail-media-edit-row{grid-template-columns:52px minmax(0,1fr)}.trail-media-edit-preview{width:52px;height:52px}.trail-media-edit-actions{grid-column:1/-1}.trail-media-edit-fields{grid-template-columns:1fr}}
@media(max-width:520px){.trail-cover-editor{grid-template-columns:1fr}.trail-cover-preview{width:100%;max-height:190px}}
@media(max-width:420px){.trail-media-edit-section>header{align-items:flex-start;flex-direction:column}.trail-media-edit-row{grid-template-columns:1fr}.trail-media-edit-preview{width:100%;height:120px}.trail-media-edit-actions{grid-column:auto;justify-content:flex-start}}

/* 2026 visual identity */
:root{--forest:#173f32;--moss:#31563a;--paper:#f3eadc;--white:#fffdf8;--line:#e4d8c5;--rust:#a76538}
body{
  background-color:var(--paper);
  background-image:linear-gradient(180deg,rgba(243,234,220,.9),rgba(243,234,220,.84)),url('../public/branding/background-2026.png.png');
  background-repeat:repeat-y;
  background-position:center top;
  background-size:100% auto;
}
.site-header.site-header-sections{
  position:relative;
  overflow:hidden;
  min-height:clamp(430px,52vw,650px);
  padding:0;
  border:0;
  background:#173f32;
  isolation:isolate;
}
.site-brand-banner{
  position:absolute;
  z-index:6;
  top:clamp(12px,2.2vw,24px);
  right:clamp(14px,calc((100vw - 1320px)/2 + 24px),64px);
  width:clamp(145px,17vw,238px);
  max-width:42vw;
  pointer-events:none;
}
.site-brand-banner img{display:block;width:100%;height:auto;background:transparent}
.homepage-hero{
  position:absolute;
  inset:0;
  z-index:1;
  min-height:100%;
  background:#173f32;
}
.homepage-hero[hidden]{display:block}
.homepage-hero[hidden] .homepage-hero-photo,.homepage-hero[hidden] .homepage-hero-content{display:none}
.homepage-hero[hidden]::before{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(23,63,50,.88),rgba(23,63,50,.75)),url('../public/branding/hero-2026-clean.jpg');
  background-repeat:no-repeat;
  background-position:center 34%;
  background-size:cover;
  content:"";
}
.homepage-hero-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 34%;
}
.homepage-hero-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(9,32,24,.34),rgba(9,32,24,.16) 46%,rgba(9,32,24,.58));
}
.homepage-hero-content{
  position:absolute;
  z-index:2;
  inset-inline:0;
  top:54%;
  display:flex;
  justify-content:center;
  width:auto;
  max-width:none;
  padding:0 22px;
  transform:translateY(-50%);
}
.homepage-search{
  width:min(620px,calc(100vw - 44px));
  max-width:620px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;
  background:rgba(255,253,248,.94);
  box-shadow:0 18px 44px rgba(7,25,18,.22);
}
.site-language-switch,.account-entry{
  top:clamp(14px,2.2vw,24px);
  left:auto;
  right:auto;
  border-color:rgba(255,255,255,.58);
  background:rgba(23,63,50,.82);
  color:#fff;
  box-shadow:0 8px 22px rgba(8,26,19,.22);
  backdrop-filter:blur(10px);
}
.site-language-switch{
  left:clamp(14px,calc((100vw - 1320px)/2 + 24px),64px);
}
.account-entry{
  left:clamp(162px,calc((100vw - 1320px)/2 + 175px),215px);
  right:auto;
  background:rgba(23,63,50,.82);
}
.account-entry:hover,.site-language-switch:hover{background:rgba(49,86,58,.92)}
.site-header-sections .section-nav{
  position:absolute;
  z-index:5;
  inset-inline:0;
  bottom:42px;
  display:flex;
  width:min(1280px,calc(100% - 48px));
  min-height:70px;
  margin:0 auto;
  padding:8px;
  overflow-x:auto;
  border:1px solid rgba(255,255,255,.32);
  border-radius:18px;
  background:rgba(13,43,32,.74);
  box-shadow:0 18px 45px rgba(7,24,17,.22);
  backdrop-filter:blur(12px);
  scrollbar-width:thin;
}
.site-header-sections .section-tab{
  flex:1 0 112px;
  min-height:54px;
  border-radius:12px;
  color:#fff;
}
.site-header-sections .section-tab-label,.site-header-sections .section-tab-icon{color:#fff}
.site-header-sections .section-tab.is-active{
  background:#fffdf8;
  color:#173f32;
}
.site-header-sections .section-tab.is-active .section-tab-label,.site-header-sections .section-tab.is-active .section-tab-icon{color:#173f32}
.site-header-sections .section-tab.is-active:after{display:none}
.site-header-sections .announcement-ticker{
  position:absolute;
  z-index:5;
  inset-inline:0;
  bottom:0;
  min-height:42px;
  background:rgba(23,63,50,.96);
  border:0;
  color:#fff;
}
.announcement-ticker-title{background:#fffdf8;color:#173f32!important}
.announcement-ticker-item,.announcement-ticker-empty{border-color:rgba(255,255,255,.35);background:rgba(255,253,248,.94);color:#173f32}
.home-content-atmosphere{
  background:transparent;
}
.home-content-atmosphere::before{
  background-image:linear-gradient(180deg,rgba(243,234,220,.54),rgba(243,234,220,.7)),url('../public/branding/background-2026.png.png');
  background-repeat:repeat-y;
  background-position:center top;
  background-size:100% auto;
}
.trail-card,.category-card,.latest-content-card,.global-search-card,.detail-panel,.metrics-panel,.media-panel,.community-card,.community-form,.community-detail-panel,.mentor-card,.mentor-form,.mentor-detail-panel,.impact-card,.impact-form,.impact-detail-panel,.reference-card,.reference-form,.reference-detail-panel,.sports-event-card,.sports-event-form,.sports-event-detail-panel{
  background:var(--white);
  box-shadow:0 10px 28px rgba(52,42,27,.06);
}
.home-why{
  justify-content:flex-end;
  min-height:390px;
  background:#173f32;
}
.home-why::before{
  background:linear-gradient(90deg,rgba(5,22,16,.18),rgba(8,28,20,.28) 40%,rgba(5,22,16,.82) 100%);
}
html[dir="ltr"] .home-why::before{background:linear-gradient(270deg,rgba(5,22,16,.18),rgba(8,28,20,.28) 40%,rgba(5,22,16,.82) 100%)}
.home-why>img{object-position:center 42%}
.home-why-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  width:min(1244px,100%);
  padding-inline:7vw;
  text-align:start;
}
html[dir="rtl"] .home-why-copy{align-items:flex-end;text-align:right}
.home-why-copy>p{max-width:600px}
@media(max-width:900px){
  .site-header.site-header-sections{min-height:560px}
  .site-header-sections .section-nav{width:calc(100% - 28px);bottom:47px}
  .homepage-hero-photo{object-position:center 36%}
  .homepage-hero-content{top:55%}
}
@media(max-width:580px){
  body{background-size:auto 760px}
  .site-header.site-header-sections{min-height:560px}
  .site-brand-banner{top:10px;right:10px;width:126px;max-width:38vw}
  .site-language-switch{top:12px;left:10px;padding:6px 8px;font-size:10px;gap:5px}
  .site-language-switch .language-current{padding:3px 6px}
  .account-entry{top:52px;left:10px;padding:6px 9px;font-size:10px}
  .account-entry svg{width:16px;height:16px}
  .homepage-hero-photo{object-position:center 38%}
  .homepage-hero-shade{background:linear-gradient(180deg,rgba(8,29,22,.28),rgba(8,29,22,.14) 42%,rgba(8,29,22,.68))}
  .homepage-hero-content{top:57%;padding:0 16px}
  .homepage-search{width:calc(100vw - 32px);min-height:52px}
  .site-header-sections .section-nav{width:calc(100% - 20px);bottom:47px;min-height:62px;padding:6px;border-radius:14px}
  .site-header-sections .section-tab{flex-basis:104px;min-width:104px;min-height:50px}
  .site-header-sections .announcement-ticker{align-items:flex-start;gap:4px}
  .home-why{min-height:330px;margin-inline:0;border-radius:0}
  .home-why-copy{padding:34px 22px}
}

/* Header-only refinement after 2026 identity review */
.site-brand-banner{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
  padding:0!important;
}
.site-brand-banner img{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
.site-language-switch,.account-entry{
  min-height:auto;
  padding:5px 9px;
  border:0;
  background:transparent!important;
  color:#fff;
  box-shadow:none!important;
  backdrop-filter:none;
  font-size:12px;
  font-weight:500;
  text-shadow:0 1px 5px rgba(0,0,0,.38);
}
.site-language-switch{
  gap:6px;
}
.site-language-switch .language-current{
  padding:0;
  border-radius:0;
  background:transparent;
  color:#fff;
  font-weight:700;
}
.account-entry{
  left:clamp(142px,calc((100vw - 1320px)/2 + 150px),190px);
  gap:5px;
}
.account-entry svg{
  width:15px;
  height:15px;
}
.account-entry:hover,.site-language-switch:hover{
  color:#f6e8cc;
  background:transparent!important;
}
.homepage-hero-content{
  top:56%;
}
.homepage-search,.search-form#home-search.homepage-search{
  width:min(500px,calc(100vw - 48px));
  min-height:52px;
  padding:4px 6px;
  border-color:rgba(255,255,255,.66);
  background:rgba(255,253,248,.9);
  box-shadow:0 10px 26px rgba(7,25,18,.16);
}
.homepage-search>span{
  width:34px;
  flex-basis:34px;
  font-size:23px;
}
.homepage-search input{
  height:42px;
  font-size:13px;
}
.homepage-search button,.search-form#home-search.homepage-search button{
  width:42px;
  height:42px;
  border-radius:999px;
  font-size:17px;
  background:#173f32;
}
.site-header-sections .section-nav{
  width:min(1210px,calc(100% - 56px));
  min-height:62px;
  padding:7px;
  border-color:rgba(255,255,255,.5);
  background:rgba(255,253,248,.84);
  box-shadow:0 16px 38px rgba(7,24,17,.14);
}
.site-header-sections .section-tab{
  min-height:48px;
  color:#173f32;
  background:transparent;
}
.site-header-sections .section-tab-label,.site-header-sections .section-tab-icon{
  color:#173f32;
}
.site-header-sections .section-tab:hover{
  background:rgba(23,63,50,.08);
}
.site-header-sections .section-tab.is-active{
  background:#173f32;
  color:#fff;
}
.site-header-sections .section-tab.is-active .section-tab-label,.site-header-sections .section-tab.is-active .section-tab-icon{
  color:#fff;
}
@media(max-width:580px){
  .site-language-switch{top:10px;left:9px;padding:4px 6px;font-size:10px;gap:5px}
  .site-language-switch .language-current{padding:0}
  .account-entry{top:36px;left:9px;padding:4px 6px;font-size:10px}
  .account-entry svg{width:13px;height:13px}
  .homepage-hero-content{top:57%;padding:0 14px}
  .homepage-search,.search-form#home-search.homepage-search{width:min(390px,calc(100vw - 44px));min-height:48px;padding:3px 5px}
  .homepage-search>span{width:30px;flex-basis:30px;font-size:21px}
  .homepage-search input{height:40px;font-size:12px}
  .homepage-search button,.search-form#home-search.homepage-search button{width:40px;height:40px;font-size:16px}
  .site-header-sections .section-nav{width:calc(100% - 22px);min-height:58px;padding:5px}
  .site-header-sections .section-tab{min-height:46px}
}

/* Header-only final spacing adjustment */
.site-header.site-header-sections{
  overflow:visible;
  margin-bottom:62px;
}
.homepage-hero-content{
  top:53.5%;
}
.homepage-search,.search-form#home-search.homepage-search{
  min-height:48px;
  padding:3px 5px;
}
.homepage-search input{
  height:38px;
}
.homepage-search button,.search-form#home-search.homepage-search button{
  width:38px;
  height:38px;
  font-size:16px;
}
.site-header-sections .announcement-ticker{
  position:absolute;
  z-index:4;
  inset-inline:0;
  bottom:-52px;
  width:min(1210px,calc(100% - 56px));
  min-height:38px;
  margin:0 auto;
  padding:5px 10px;
  border:1px solid rgba(23,63,50,.12);
  border-radius:14px;
  background:rgba(255,253,248,.88);
  color:#173f32;
  box-shadow:0 10px 24px rgba(52,42,27,.06);
  backdrop-filter:blur(8px);
}
.site-header-sections .announcement-ticker .announcement-ticker-title{
  background:rgba(23,63,50,.08);
  color:#173f32!important;
}
.site-header-sections .announcement-ticker .announcement-ticker-item,
.site-header-sections .announcement-ticker .announcement-ticker-empty{
  border-color:transparent;
  background:transparent;
  color:#173f32;
}
@media(max-width:580px){
  .site-header.site-header-sections{margin-bottom:66px}
  .homepage-hero-content{top:54.5%}
  .homepage-search,.search-form#home-search.homepage-search{min-height:46px;padding:3px 5px}
  .homepage-search input{height:36px}
  .homepage-search button,.search-form#home-search.homepage-search button{width:36px;height:36px;font-size:15px}
  .site-header-sections .announcement-ticker{bottom:-58px;width:calc(100% - 22px);min-height:42px}
}

/* Hero-only alignment review */
.homepage-hero-shade{
  background:linear-gradient(180deg,rgba(9,32,24,.16),rgba(9,32,24,.08) 48%,rgba(9,32,24,.36));
}
.homepage-hero-content{
  top:58%;
  align-items:center;
  flex-direction:column;
  gap:10px;
}
.homepage-search,.search-form#home-search.homepage-search{
  width:min(500px,calc(100vw - 48px));
  min-height:50px;
  padding:4px 6px;
}
.homepage-search input{
  height:40px;
}
.homepage-search button,.search-form#home-search.homepage-search button{
  width:40px;
  height:40px;
}
.homepage-hero-statement{
  max-width:min(920px,calc(100vw - 48px));
  margin:0;
  color:#fff;
  font-size:clamp(13px,1.55vw,18px);
  font-weight:600;
  line-height:1.8;
  text-align:center;
  text-shadow:0 2px 8px rgba(0,0,0,.48);
  white-space:nowrap;
}
.site-header-sections .section-nav{
  bottom:34px;
  min-height:54px;
  padding:4px 6px;
  gap:0;
  border-radius:14px;
  background:rgba(255,253,248,.82);
}
.site-header-sections .section-tab{
  min-height:44px;
  padding-block:5px;
  border-radius:10px;
  position:relative;
}
.site-header-sections .section-tab:not(:last-child)::before{
  position:absolute;
  inset-block:12px;
  inset-inline-end:0;
  width:1px;
  background:rgba(23,63,50,.14);
  content:"";
}
.site-header-sections .section-tab.is-active::before,
.site-header-sections .section-tab:has(+ .section-tab.is-active)::before{
  display:none;
}
@media(max-width:760px){
  .homepage-hero-content{top:58.5%;gap:8px}
  .homepage-hero-statement{white-space:normal;font-size:13px;line-height:1.7}
  .site-header-sections .section-nav{bottom:42px;min-height:54px}
  .site-header-sections .section-tab{min-height:44px}
}
@media(max-width:580px){
  .homepage-hero-content{top:59%;gap:7px}
  .homepage-search,.search-form#home-search.homepage-search{min-height:48px}
  .homepage-hero-statement{max-width:calc(100vw - 36px);font-size:12px}
  .site-header-sections .section-nav{bottom:46px;min-height:52px;border-radius:13px}
}

/* Hero-only precision alignment for review */
.homepage-hero-content{
  top:55.5%;
  inset-inline:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  max-width:none;
  padding-inline:24px;
  pointer-events:none;
}
.homepage-search,
.search-form#home-search.homepage-search{
  pointer-events:auto;
  width:min(480px,calc(100vw - 48px));
  max-width:480px;
  min-height:50px;
  padding:4px 6px;
  border-radius:999px;
  background:rgba(255,253,248,.92);
}
.homepage-search input{
  height:40px;
}
.homepage-search button,
.search-form#home-search.homepage-search button{
  width:40px;
  height:40px;
}
.homepage-hero-statement{
  display:block;
  max-width:min(960px,calc(100vw - 56px));
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent!important;
  box-shadow:none!important;
  color:#FFFFFF;
  font-size:clamp(13px,1.35vw,17px);
  font-weight:600;
  line-height:1.65;
  text-align:center;
  text-shadow:0 2px 7px rgba(0,0,0,.42);
  white-space:nowrap;
  pointer-events:none;
}
.homepage-about-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin-inline-start:9px;
  padding:5px 12px;
  border:1px solid rgba(255,255,255,.9);
  border-radius:999px;
  background:rgba(255,253,248,.96);
  box-shadow:0 5px 16px rgba(7,25,18,.2);
  color:#173f32;
  font-size:.82em;
  font-weight:800;
  line-height:1.35;
  text-decoration:none;
  white-space:nowrap;
  vertical-align:middle;
  pointer-events:auto;
}
.homepage-about-link:hover{background:#fff;color:#102f25;transform:translateY(-1px)}
.site-header-sections .section-nav{
  bottom:22px;
  width:min(1180px,calc(100% - 64px));
  min-height:50px;
  padding:3px 6px;
  gap:0;
  border-radius:13px;
  border-color:rgba(255,255,255,.52);
  background:rgba(255,253,248,.84);
  box-shadow:0 12px 28px rgba(7,24,17,.13);
  backdrop-filter:blur(10px);
}
.site-header-sections .section-tab{
  min-height:42px;
  padding:4px 12px;
  border-radius:9px;
  background:transparent;
  color:#173f32;
}
.site-header-sections .section-tab-label,
.site-header-sections .section-tab-icon{
  color:#173f32;
}
.site-header-sections .section-tab:not(:last-child)::before{
  inset-block:11px;
  background:rgba(23,63,50,.16);
}
.site-header-sections .section-tab.is-active{
  background:#173f32;
  color:#fff;
}
.site-header-sections .section-tab.is-active .section-tab-label,
.site-header-sections .section-tab.is-active .section-tab-icon{
  color:#fff;
}
@media(max-width:760px){
  .homepage-hero-content{top:56.5%;gap:7px;padding-inline:18px}
  .homepage-search,
  .search-form#home-search.homepage-search{width:min(430px,calc(100vw - 40px));min-height:48px}
  .homepage-hero-statement{white-space:normal;font-size:13px;line-height:1.55;max-width:calc(100vw - 40px)}
  .site-header-sections .section-nav{bottom:34px;width:calc(100% - 28px);min-height:52px;padding:4px 5px}
  .site-header-sections .section-tab{min-height:42px;padding-block:4px}
}
@media(max-width:580px){
  .homepage-hero-content{top:57%;gap:7px;padding-inline:14px}
  .homepage-search,
  .search-form#home-search.homepage-search{width:min(380px,calc(100vw - 36px));min-height:48px;padding:3px 5px}
  .homepage-search input{height:38px}
  .homepage-search button,
  .search-form#home-search.homepage-search button{width:38px;height:38px}
  .homepage-hero-statement{font-size:12px;line-height:1.5;max-width:calc(100vw - 32px)}
  .site-header-sections .section-nav{bottom:42px;width:calc(100% - 20px);min-height:50px;border-radius:12px}
  .site-header-sections .section-tab{min-height:40px;padding-inline:10px}
}

/* Hero-only horizontal alignment with SAUDI TRAILS */
.homepage-hero-content{
  transform:translate(9%, -50%);
}
html[dir="ltr"] .homepage-hero-content{
  transform:translate(9%, -50%);
}
@media(max-width:760px){
  .homepage-hero-content{
    transform:translate(4%, -50%);
  }
  html[dir="ltr"] .homepage-hero-content{
    transform:translate(4%, -50%);
  }
}
@media(max-width:580px){
  .homepage-hero-content{
    transform:translate(0, -50%);
  }
  html[dir="ltr"] .homepage-hero-content{
    transform:translate(0, -50%);
  }
}

/* Hero-only extra desktop horizontal nudge */
@media(min-width:761px){
  .homepage-hero-content{
    transform:translate(calc(9% + 40px), -50%);
  }
  html[dir="ltr"] .homepage-hero-content{
    transform:translate(calc(9% + 40px), -50%);
  }
}

/* Section nav only transparency and compactness */
.site-header-sections .section-nav{
  min-height:43px;
  padding-block:2px;
  background:rgba(255,255,255,.55);
  backdrop-filter:blur(4px);
}
.site-header-sections .section-tab{
  min-height:37px;
  padding-block:2px;
  background:transparent;
}
.site-header-sections .section-tab::after{
  display:none!important;
  content:none!important;
}
.site-header-sections .section-tab:not(.is-active){
  background:transparent!important;
}
.site-header-sections .section-tab:not(.is-active):hover{
  background:rgba(23,63,50,.06)!important;
}
.site-header-sections .section-tab.is-active{
  background:#173f32;
  color:#fff;
}
.site-header-sections .section-tab.is-active .section-tab-label,
.site-header-sections .section-tab.is-active .section-tab-icon{
  color:#fff;
}
@media(max-width:760px){
  .site-header-sections .section-nav{min-height:44px;padding-block:2px}
  .site-header-sections .section-tab{min-height:38px;padding-block:2px}
}
@media(max-width:580px){
  .site-header-sections .section-nav{min-height:43px;padding-block:2px}
  .site-header-sections .section-tab{min-height:37px;padding-block:2px}
}

/* Section nav only: remove the horizontal underline */
.site-header-sections .section-nav{
  border-bottom:0!important;
}
.site-header-sections .section-nav::before,
.site-header-sections .section-nav::after,
.site-header-sections .section-tab::after{
  display:none!important;
  content:none!important;
}

/* Why Saudi Trails section image and language alignment */
.home-why-copy{
  text-align:start;
}
html[dir="rtl"] .home-why-copy{
  align-items:flex-end;
  text-align:right;
}
html[dir="ltr"] .home-why-copy{
  align-items:flex-start;
  text-align:left;
}

/* Why Saudi Trails content position only */
html[dir="rtl"] .home-why{
  justify-content:flex-end;
}
html[dir="rtl"] .home-why-copy{
  width:min(42%,520px);
  margin-inline-start:auto;
  margin-inline-end:0;
  padding-inline-start:0;
  padding-inline-end:clamp(28px,7vw,96px);
  align-items:flex-end;
  direction:rtl;
  text-align:right;
}
html[dir="rtl"] .home-why-copy>*{
  text-align:right;
}
html[dir="rtl"] .home-why-copy>p{
  margin-inline-start:0;
  margin-inline-end:0;
}
@media(max-width:760px){
  html[dir="rtl"] .home-why-copy{
    width:min(78%,620px);
    padding-inline-end:24px;
  }
}
@media(max-width:580px){
  html[dir="rtl"] .home-why-copy{
    width:100%;
    padding-inline-end:18px;
  }
}

/* Why Saudi Trails: pin Arabic content to the visual right side */
html[dir="rtl"] .home-why-copy{
  margin-left:auto!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:clamp(28px,7vw,96px)!important;
}

/* Why Saudi Trails: lower text and move CTA left inside the same content block */
html[dir="rtl"] .home-why-copy{
  transform:translateY(46px);
}
html[dir="rtl"] .home-why-copy .home-about-link{
  align-self:flex-start;
  margin-inline-start:0;
  margin-inline-end:auto;
}
@media(max-width:760px){
  html[dir="rtl"] .home-why-copy{
    transform:translateY(28px);
  }
}
@media(max-width:580px){
  html[dir="rtl"] .home-why-copy{
    transform:translateY(16px);
  }
}

/* Mobile focal crop for the panoramic Why section image */
@media(max-width:580px){
  .home-why>img{object-position:38% 42%}
}

/* Home content background tone only */
.home-content-atmosphere{
  background:#ead9bd;
}
.home-content-atmosphere::before{
  background-image:linear-gradient(180deg,rgba(232,214,184,.82),rgba(232,214,184,.88)),url('../public/branding/background-2026.png.png');
}

/* Footer bottom logo replacement */
.footer-bottom{
  justify-content:center;
  align-items:center;
}
.footer-bottom-logo{
  display:block;
  width:min(220px,42vw);
  height:auto;
  background:transparent;
}

/* Footer brand logo replacement */
.footer-brand-logo{
  display:inline-flex;
  align-items:center;
  max-width:min(260px,58vw);
}
.footer-brand-logo img{
  display:block;
  width:100%;
  height:auto;
  background:transparent;
}

/* Footer single logo size aligned with header logo */
.footer-brand-logo{
  max-width:clamp(145px,17vw,238px);
}

/* Trail GPX upload button */
.trail-gpx-upload-button{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  margin:10px 0 8px;
  padding:11px 17px;
  border-radius:7px;
  background:#294b38;
  color:#fff!important;
  font-weight:600;
  cursor:pointer;
}
.trail-gpx-upload-button input{
  position:absolute;
  width:1px!important;
  height:1px;
  padding:0!important;
  opacity:0;
  pointer-events:none;
}
.trail-gpx-file-name{
  display:block;
  margin-bottom:10px;
  color:#687467;
  font-size:13px;
  overflow-wrap:anywhere;
}

.gpx-preview{
  margin-top:18px;
  padding:18px;
  border:1px solid #d7dfd0;
  border-radius:14px;
  background:linear-gradient(180deg,#fffdf7,#f6f1e6);
  box-shadow:0 14px 34px rgba(31,55,42,.08);
  direction:rtl;
}
.gpx-preview[hidden]{display:none!important}
.gpx-preview-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}
.gpx-preview-header h2{margin:3px 0 0;color:#213b2e;font-size:19px}
.gpx-preview-header p{max-width:360px;margin:0;color:#687467;font-size:12px;line-height:1.8}
.gpx-preview-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}
.gpx-preview-metrics>div{padding:13px 12px;border:1px solid #e0ded2;border-radius:10px;background:#fff;color:#667166}
.gpx-preview-metrics span{display:block;margin-bottom:7px;font-size:11px;color:#6f7b6c}
.gpx-preview-metrics strong{display:block;color:#1f3b2f;font-size:15px;font-weight:800}
.gpx-preview-panel{margin-top:14px;padding:14px;border:1px solid #e0ded2;border-radius:12px;background:#fff}
.gpx-preview-panel h3{margin:0 0 10px;color:#294433;font-size:15px}
.gpx-route-map,.gpx-elevation-profile{display:block;width:100%;height:auto;max-height:360px;overflow:visible}
.gpx-route-map rect{fill:#eef0e4;stroke:#cfd9c8;stroke-width:1}
.gpx-map-grid{fill:none;stroke:#c4cdbd;stroke-width:1;stroke-dasharray:5 9;opacity:.58}
.gpx-route-line{fill:none;stroke:#234d3b;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.gpx-route-start{fill:#2d6a4f;stroke:#fff;stroke-width:3}
.gpx-route-end{fill:#b35a2b;stroke:#fff;stroke-width:3}
.gpx-route-map text{fill:#1f3b2f;font-size:14px;font-weight:800;paint-order:stroke;stroke:#fff;stroke-width:4;stroke-linejoin:round}
.gpx-profile-wrap{position:relative}
.gpx-elevation-profile{background:linear-gradient(180deg,#fbfaf3,#f2eadc);border-radius:12px;border:1px solid #dfe2d6}
.gpx-profile-axis{fill:none;stroke:#788778;stroke-width:1.4}
.gpx-profile-line{fill:none;stroke:#b97835;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.gpx-profile-hit{fill:transparent;cursor:crosshair}
.gpx-profile-cursor{fill:#234d3b;stroke:#fff;stroke-width:2}
.gpx-elevation-profile text{fill:#687467;font-size:12px;font-weight:700}
.gpx-profile-tooltip{position:absolute;bottom:12px;transform:translateX(-50%);padding:7px 10px;border-radius:999px;background:#213b2e;color:#fff;font-size:12px;white-space:nowrap;box-shadow:0 8px 20px rgba(31,55,42,.18);pointer-events:none}
.gpx-preview-loading,.gpx-preview-error{padding:14px;border-radius:10px;background:#fff8e7;color:#6c5734;font-size:13px;line-height:1.8}
.gpx-preview-error{background:#fff0ed;color:#8d3526}
@media(max-width:820px){
  .gpx-preview{padding:14px}
  .gpx-preview-header{display:block}
  .gpx-preview-header p{margin-top:8px;max-width:none}
  .gpx-preview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gpx-preview-panel{padding:10px;overflow-x:auto}
  .gpx-route-map,.gpx-elevation-profile{min-width:540px}
}
@media(max-width:520px){.gpx-preview-metrics{grid-template-columns:1fr}.gpx-preview-metrics strong{font-size:14px}}
.trail-detail-gpx-preview{margin-top:18px}
/* Header search final sizing adjustment */
.search-form#home-search.homepage-search{
  width:min(344px,calc(100vw - 40px));
  min-height:38px;
  padding:2px 4px;
}
.search-form#home-search.homepage-search>span{
  font-size:21px;
  padding-inline:5px;
}
.search-form#home-search.homepage-search input{
  font-size:12px;
  height:34px;
}
.search-form#home-search.homepage-search button{
  width:34px;
  height:34px;
  font-size:14px;
}
@media(max-width:580px){
  .search-form#home-search.homepage-search{
    width:min(304px,calc(100vw - 36px));
    min-height:38px;
    padding:2px 4px;
  }
  .search-form#home-search.homepage-search button{width:34px;height:34px}
}

/* Main sections bar glass proposal */
.site-header-sections .section-nav{
  width:min(1100px,calc(100% - 48px));
  min-height:54px;
  padding:5px 8px;
  gap:0;
  border:1px solid rgba(255,255,255,.48);
  border-radius:16px;
  background:rgba(255,252,242,.62);
  box-shadow:0 14px 34px rgba(17,39,31,.16);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.site-header-sections .section-tab{
  flex:1 1 auto;
  min-width:0;
  min-height:44px;
  padding:5px 10px;
  border-radius:999px;
  background:transparent!important;
  color:#153d31!important;
  font-family:'Alexandria','IBM Plex Sans Arabic',Tahoma,sans-serif;
  font-size:10.5px;
  font-weight:650;
  line-height:1.35;
  gap:4px;
}
.site-header-sections .section-tab-label,
.site-header-sections .section-tab-icon{
  color:#153d31!important;
}
.site-header-sections .section-tab-icon{font-size:15px;line-height:1}
.site-header-sections .section-tab-label{font-size:10px;font-weight:650;white-space:normal}
.site-header-sections .section-tab:not(:last-child)::before{
  content:"";
  position:absolute;
  top:11px;
  bottom:11px;
  inset-inline-end:0;
  width:1px;
  background:rgba(21,61,49,.16);
}
.site-header-sections .section-tab.is-active{
  background:#173f32!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(23,63,50,.18);
}
.site-header-sections .section-tab.is-active .section-tab-label,
.site-header-sections .section-tab.is-active .section-tab-icon{color:#fff!important}
.site-header-sections .section-tab.is-active::after{display:none!important}
.site-header-sections .section-tab.is-active::before,
.site-header-sections .section-tab:has(+ .section-tab.is-active)::before{display:none}
.site-header-sections .section-tab:hover:not(.is-active){background:rgba(255,255,255,.36)!important}
@media(max-width:760px){
  .site-header-sections .section-nav{
    width:calc(100% - 24px);
    min-height:50px;
    padding:4px 6px;
    overflow-x:auto;
    justify-content:flex-start;
    scroll-snap-type:x proximity;
  }
  .site-header-sections .section-tab{
    flex:0 0 auto;
    min-width:92px;
    min-height:40px;
    padding:4px 9px;
    scroll-snap-align:start;
  }
  .site-header-sections .section-tab-label{font-size:9px}
  .site-header-sections .section-tab-icon{font-size:14px}
}
@media(max-width:580px){
  .site-header-sections .section-nav{width:calc(100% - 18px);min-height:48px;border-radius:13px}
  .site-header-sections .section-tab{min-width:88px;min-height:38px;padding-inline:8px}
}

/* Saudi Trails atmospheric page background */
body{
  position:relative;
  background-color:#ead8ba;
  background-image:
    radial-gradient(circle at 12% 18%,rgba(189,117,75,.18),transparent 28%),
    radial-gradient(circle at 82% 12%,rgba(36,75,59,.12),transparent 24%),
    radial-gradient(circle at 72% 78%,rgba(214,159,88,.14),transparent 30%),
    linear-gradient(180deg,#f1e3cb 0%,#e7d2ae 44%,#eadbc3 100%);
  background-attachment:fixed;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-image:
    url('../public/branding/background-2026.png.png'),
    repeating-radial-gradient(ellipse at 18% 22%,transparent 0 24px,rgba(104,79,48,.055) 25px 26px,transparent 27px 54px),
    repeating-radial-gradient(ellipse at 82% 64%,transparent 0 34px,rgba(36,75,59,.045) 35px 36px,transparent 37px 72px),
    linear-gradient(135deg,transparent 0 44%,rgba(123,83,45,.045) 45% 45.4%,transparent 46% 100%);
  background-size:980px auto,720px 420px,860px 520px,320px 320px;
  background-position:center top,left 180px top 120px,right -120px top 360px,center;
  background-repeat:repeat,repeat,repeat,repeat;
  opacity:.72;
  mix-blend-mode:multiply;
}
body::after{
  content:"";
  position:fixed;
  inset:auto 0 0 0;
  height:42vh;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(244,235,217,.38));
}
#app,.home-content-atmosphere,.page-intro,.listing-wrap,.detail-top,.musaigrah-detail,.about-page,.community-form-wrap,.community-detail-layout,.account-page{
  position:relative;
  z-index:0;
}
.trail-card,.latest-content-card,.category-card,.detail-panel,.metrics-panel,.media-panel,.community-detail-panel,.community-form fieldset,.account-auth-card,.account-profile-panel,.listing-wrap,.trail-listing-filter-panel{
  box-shadow:0 10px 28px rgba(57,43,28,.055);
}
.home-content-atmosphere{
  background:transparent;
}
.home-content-atmosphere::before{
  opacity:.46;
}
@media(max-width:580px){
  body::before{background-size:760px auto,560px 360px,680px 440px,260px 260px;opacity:.62}
}

/* Stronger atmospheric background review pass */
body{
  background-color:#dfc39a;
  background-image:
    radial-gradient(circle at 8% 18%,rgba(176,98,52,.26),transparent 30%),
    radial-gradient(circle at 88% 16%,rgba(28,71,54,.20),transparent 25%),
    radial-gradient(circle at 74% 82%,rgba(215,145,58,.24),transparent 34%),
    linear-gradient(180deg,#ead5b2 0%,#d9bb8d 48%,#e8d6ba 100%);
}
body::before{
  background-image:
    url('../public/branding/background-2026.png.png'),
    repeating-radial-gradient(ellipse at 18% 22%,transparent 0 22px,rgba(92,62,34,.12) 23px 24px,transparent 25px 50px),
    repeating-radial-gradient(ellipse at 82% 64%,transparent 0 31px,rgba(25,75,55,.09) 32px 33px,transparent 34px 66px),
    linear-gradient(135deg,transparent 0 42%,rgba(104,65,32,.09) 43% 43.5%,transparent 45% 100%);
  opacity:.9;
  background-size:820px auto,620px 380px,740px 460px,260px 260px;
}
.home-content-atmosphere::before{
  opacity:.34;
}

/* Dark forest footer identity pass */
.site-footer.site-footer-expanded{
  background:linear-gradient(180deg,#173f32 0%,#102d24 100%)!important;
  color:#e7d7ba!important;
  border-top:1px solid rgba(231,211,174,.18)!important;
  box-shadow:0 -18px 42px rgba(18,45,36,.18);
}
.site-footer-expanded h2,
.footer-contact h3{
  color:#fff7e8!important;
}
.site-footer-expanded p,
.footer-newsletter label,
.footer-contact-option small{
  color:#d8c7a9!important;
}
.footer-brand-logo img{
  filter:brightness(0) invert(1);
}

.footer-brand-block{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
}
.footer-terms-link{
  margin-top:4px;
  color:#e7d3ae!important;
}
.footer-social-icon{
  border-color:rgba(231,211,174,.34)!important;
  background:rgba(255,247,232,.08)!important;
  color:#fff7e8!important;
}
.footer-social-icon:hover{
  background:rgba(231,211,174,.18)!important;
  transform:translateY(-1px);
}
.footer-social-icon .social-play{fill:#173f32!important}
.footer-contact{
  border-top-color:rgba(231,211,174,.22)!important;
}
.footer-contact-option{
  border-color:rgba(231,211,174,.22)!important;
  background:rgba(255,247,232,.07)!important;
  color:#fff7e8!important;
}
.footer-contact-option svg{
  stroke:#e7d3ae!important;
}
.footer-newsletter input{
  border-color:rgba(231,211,174,.28)!important;
  background:rgba(255,247,232,.08)!important;
  color:#f8edd9!important;
}
.footer-newsletter input::placeholder{color:#d8c7a9!important}
.footer-newsletter button{
  background:rgba(231,211,174,.22)!important;
  color:#fff7e8!important;
}

/* Harmonized sand surfaces and translucent header search */
:root{
  --surface-sand:#f4ead8;
  --surface-sand-soft:#f8f1e5;
  --surface-sand-line:#dfcaa8;
}
.search-form#home-search.homepage-search{
  background:rgba(248,241,229,.74)!important;
  border-color:rgba(223,202,168,.72)!important;
  box-shadow:0 12px 30px rgba(50,36,20,.13)!important;
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}
.search-form#home-search.homepage-search input{
  color:#173f32!important;
}
.search-form#home-search.homepage-search input::placeholder{
  color:#5f6a5f!important;
}
.search-form#home-search.homepage-search>span{
  color:#173f32!important;
}
.category-card,
.trail-card,
.latest-content-card,
.global-search-card,
.detail-panel,
.metrics-panel,
.media-panel,
.trail-listing-filter-panel,
.community-detail-panel,
.community-form fieldset,
.account-auth-card,
.account-profile-panel,
.account-auth-panel,
.about-section,
.about-info-panel,
.gpx-preview,
.gpx-preview-panel,
.news-card-link,
.section-card,
.content-card{
  background:var(--surface-sand-soft)!important;
  border-color:var(--surface-sand-line)!important;
}
.listing-wrap,
.community-form-wrap{
  background:rgba(244,234,216,.58);
  border-radius:14px;
}
.search-form:not(#home-search),
.listing-search{
  background:var(--surface-sand-soft)!important;
  border-color:var(--surface-sand-line)!important;
}
.trail-card-body,
.latest-content-copy,
.global-search-card .latest-content-copy{
  background:transparent!important;
}
.photo-placeholder,
.media-empty,
.latest-content-placeholder,
.gpx-placeholder,
.map-placeholder{
  background-color:#eee0c9!important;
}

/* Apply sand harmony across all platform sections */
.community-card,
.community-form,
.community-form fieldset,
.community-detail-panel,
.mentor-card,
.mentor-form,
.mentor-form fieldset,
.mentor-certificate-row,
.mentor-detail-panel,
.mentor-certificate-detail,
.impact-person-card,
.impact-form,
.impact-form fieldset,
.impact-repeat-row,
.impact-person-detail-panel,
.impact-detail-panel,
.reference-card,
.reference-form,
.reference-form fieldset,
.reference-author-row,
.reference-detail-panel,
.sports-event-card,
.sports-event-form,
.sports-event-form fieldset,
.sports-event-detail-panel,
.about-why,
.about-section-card,
.about-geography-flow,
.about-geography-flow>span,
.about-info-panel,
.about-future-item,
.visitor-notes,
.trail-media-editor,
.trail-gpx-editor,
.trail-cover-editor,
.trail-media-edit-row,
.gpx-preview-metrics>div,
.gpx-preview-loading,
.sports-event-gpx-link,
.account-dashboard,
.account-choice-chip,
.account-verification{
  background:var(--surface-sand-soft)!important;
  border-color:var(--surface-sand-line)!important;
}
.community-empty,
.media-empty,
.sports-event-photo-empty,
.sports-event-detail-empty,
.photo-placeholder,
.latest-content-placeholder{
  background:#eee0c9!important;
  border-color:var(--surface-sand-line)!important;
}
.community-form input,
.community-form select,
.community-form textarea,
.mentor-form input,
.mentor-form select,
.mentor-form textarea,
.impact-form input,
.impact-form select,
.impact-form textarea,
.reference-form-grid input,
.reference-form-grid select,
.reference-form-grid textarea,
.reference-author-row input,
.reference-keyword-row input,
.sports-event-form-grid input,
.sports-event-form-grid select,
.sports-event-form-grid textarea,
.visitor-note-form input,
.visitor-note-form select,
.visitor-note-form textarea,
.trail-form input,
.trail-form select,
.trail-form textarea,
.account-form input:not([type=checkbox]),
.account-verification input{
  background:#fbf4e8!important;
  border-color:#dec6a1!important;
}
.community-chip,
.reference-keyword,
.about-pillars span,
.about-audience-list span,
.about-landscape-list span,
.sports-event-type-detail,
.mentor-permit-badge,
.impact-person-status{
  background:#efe0c6!important;
  border-color:#dcc198!important;
  color:#36543e!important;
}

/* Sports event form: dependent fields and the lightweight location picker. */
.sports-event-location-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;min-width:0}
.sports-event-location-fields[data-international-location]{grid-template-columns:repeat(2,minmax(0,1fr))}
.sports-event-location-fields[hidden],.sports-event-form-grid>label[hidden]{display:none!important}
.sports-event-map-picker-wrap{min-width:0}
.sports-event-map-picker-wrap h3{margin:0 0 5px;color:var(--ink);font-size:13px}
.sports-event-map-picker-wrap>p{margin:0 0 9px}
.sports-event-location-map{position:relative;height:320px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#e7e8df;touch-action:none;cursor:crosshair;isolation:isolate}
.sports-event-location-map-tiles{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.sports-event-location-map-tiles img{position:absolute;top:0;left:0;width:256px;height:256px;max-width:none;user-select:none}
.sports-event-location-map-marker{position:absolute;z-index:2;top:0;left:0;display:grid;width:28px;height:36px;place-items:start center;color:#b13d31;font-size:27px;line-height:27px;text-shadow:0 1px 2px #fff;pointer-events:none;transform:translate(-50%,-100%)}
.sports-event-location-map-marker[hidden]{display:none}
.sports-event-location-map-controls{position:absolute;z-index:3;top:10px;inset-inline-start:10px;display:grid;gap:5px}
.sports-event-location-map-controls button{width:34px;height:34px;border:1px solid #d4d8cf;border-radius:6px;background:#fff;color:var(--ink);font-size:20px;line-height:1;cursor:pointer}
.sports-event-location-map-status,.sports-event-location-map-attribution{position:absolute;z-index:3;bottom:9px;padding:5px 8px;border-radius:5px;background:#fffE;color:#465147;font-size:10px}
.sports-event-location-map-status{inset-inline-start:9px;max-width:75%}
.sports-event-location-map-attribution{inset-inline-end:9px;direction:ltr}
.sports-event-organizer-other.is-hidden,.sports-event-fee-field.is-hidden,.sports-event-currency-field.is-hidden{display:none!important}
@media(max-width:900px){.sports-event-location-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.sports-event-location-map{height:290px}}
@media(max-width:580px){.sports-event-location-fields,.sports-event-location-fields[data-international-location]{grid-template-columns:1fr;gap:11px}.sports-event-location-map{height:250px}}

/* Sand harmony for empty and directory states */
.mentor-directory,
.impact-people-directory,
.reference-directory,
.sports-events-directory,
.community-directory,
.section-blank-page,
.empty-state,
.community-empty{
  background:rgba(244,234,216,.58)!important;
  border:1px solid rgba(223,202,168,.72)!important;
  border-radius:14px;
}
.mentor-directory,
.impact-people-directory,
.reference-directory,
.sports-events-directory,
.community-directory{
  padding:18px;
}
.empty-state,
.community-empty{
  color:#5c614f!important;
}

/* Interactive GPX route map */
.gpx-map-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.gpx-map-panel-heading h3{margin:0!important}
.gpx-map-layer-toggle{display:inline-flex;gap:4px;padding:3px;border:1px solid #d8c29a;border-radius:999px;background:rgba(244,234,216,.72)}
.gpx-map-layer-toggle button{border:0;border-radius:999px;background:transparent;color:#294433;padding:6px 10px;font:inherit;font-size:11px;cursor:pointer}
.gpx-map-layer-toggle button.is-active{background:#173f32;color:#fff}
.gpx-map-layer-toggle button:disabled{cursor:not-allowed;opacity:.52}
.gpx-interactive-map{position:relative;width:100%;height:clamp(300px,44vw,470px);overflow:hidden;border:1px solid #d9c39c;border-radius:14px;background:#dfd5c0;touch-action:none;cursor:grab;isolation:isolate}
.gpx-interactive-map.is-dragging{cursor:grabbing}
.gpx-map-tiles,.gpx-map-overlay{position:absolute;inset:0;width:100%;height:100%}
.gpx-map-tile{position:absolute;left:0;top:0;width:256px;height:256px;user-select:none;pointer-events:none;will-change:transform}
.gpx-map-overlay{z-index:2;pointer-events:none;overflow:visible}
.gpx-map-route{fill:none;stroke:#174733;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 2px rgba(255,255,255,.9)) drop-shadow(0 3px 6px rgba(20,42,32,.28))}
.gpx-map-marker circle{stroke:#fff;stroke-width:3;filter:drop-shadow(0 3px 8px rgba(20,42,32,.25))}
.gpx-map-marker text{font-size:13px;font-weight:800;fill:#173f32;paint-order:stroke;stroke:#fff;stroke-width:4;stroke-linejoin:round}
.gpx-map-marker-start circle{fill:#2d6a4f}
.gpx-map-marker-end circle{fill:#b35a2b}
.gpx-map-controls{position:absolute;z-index:4;top:12px;inset-inline-start:12px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.gpx-map-controls button{min-width:36px;min-height:34px;border:1px solid rgba(23,63,50,.22);border-radius:9px;background:rgba(255,247,232,.92);color:#173f32;font:inherit;font-size:13px;font-weight:800;box-shadow:0 6px 18px rgba(31,55,42,.13);cursor:pointer;backdrop-filter:blur(5px)}
.gpx-map-controls button[data-gpx-map-fit]{padding-inline:11px;font-size:11px;white-space:nowrap}
.gpx-map-controls button:disabled{opacity:.5;cursor:not-allowed}
.gpx-map-attribution{position:absolute;z-index:4;bottom:8px;inset-inline-end:8px;padding:4px 7px;border-radius:999px;background:rgba(255,247,232,.88);color:#31523c;font-size:10px;direction:ltr}
@media(max-width:760px){
  .gpx-map-panel-heading{align-items:flex-start;flex-direction:column}
  .gpx-interactive-map{height:330px;min-width:0}
  .gpx-map-controls{top:10px;inset-inline-start:10px}
  .gpx-map-controls button{min-width:34px;min-height:32px}
  .gpx-map-marker text{font-size:12px}
}
@media(max-width:520px){.gpx-interactive-map{height:300px}.gpx-map-layer-toggle button{padding:5px 8px;font-size:10px}.gpx-map-controls button[data-gpx-map-fit]{font-size:10px}}
/* Garmin-inspired horizontal elevation profile */
.gpx-profile-wrap{position:relative;width:100%}
.gpx-elevation-profile{
  display:block;
  width:100%;
  height:clamp(132px,17vw,174px);
  min-width:0!important;
  max-height:174px;
  background:linear-gradient(180deg,rgba(251,244,231,.96),rgba(239,222,193,.96));
  border:1px solid rgba(172,130,78,.38);
  border-radius:10px;
  overflow:visible;
}
.gpx-profile-grid-row line{stroke:#8b7659;stroke-width:1;opacity:.18;shape-rendering:crispEdges}
.gpx-profile-grid-row text,.gpx-profile-distance-label{fill:#6f5636;font-size:11px;font-weight:700}
.gpx-profile-axis{fill:none;stroke:#856744;stroke-width:1.15;opacity:.78;shape-rendering:crispEdges}
.gpx-profile-area{fill:#c89352;opacity:.46}
.gpx-profile-line{fill:none;stroke:#8b5728;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round}
.gpx-profile-hit{fill:transparent;cursor:crosshair}
.gpx-profile-cursor{fill:#8b5728;stroke:#fffaf0;stroke-width:2}
.gpx-profile-tooltip{background:#704b2c;color:#fff7ea;box-shadow:0 8px 20px rgba(70,45,24,.2)}
@media(max-width:820px){
  .gpx-profile-wrap .gpx-elevation-profile{min-width:0!important;height:142px}
}
/* GPX profile-to-map hover link */
.gpx-map-hover-marker circle:first-child{fill:#f2c15f;stroke:#fffaf0;stroke-width:3;filter:drop-shadow(0 3px 8px rgba(50,35,20,.28))}
.gpx-map-hover-marker circle:last-child{fill:none;stroke:#f2c15f;stroke-width:2;opacity:.55}
.gpx-profile-hit{touch-action:none}
/* GPX route selection hit area */
.gpx-map-route-hit{fill:none;stroke:transparent;stroke-width:26;stroke-linecap:round;stroke-linejoin:round;pointer-events:stroke;cursor:pointer}
.gpx-map-hover-marker{pointer-events:all;cursor:grab}
.gpx-interactive-map.is-selecting-route-point .gpx-map-hover-marker{cursor:grabbing}
/* Global card image containment: show full original image without cropping */
.trail-art,
.latest-content-card > img,
.latest-content-placeholder,
.global-search-card > img,
.global-search-card .latest-content-placeholder,
.news-card-link > img,
.news-card-image-empty,
.community-card-mark,
.mentor-card-photo,
.impact-person-photo,
.sports-event-art,
.sports-event-photo-empty,
.reference-card .card-image,
.training-card .card-image,
.equipment-card .card-image,
.card-image,
.card-media,
.card-photo,
.card-thumb{
  background-color:#eee3cf!important;
  background-image:linear-gradient(135deg,rgba(255,250,239,.45),rgba(210,182,136,.22))!important;
  display:grid;
  place-items:center;
}
.trail-cover,
.latest-content-card > img,
.global-search-card > img,
.news-card-link > img,
.community-card-mark img,
.mentor-card-photo img,
.impact-person-photo img,
.sports-event-art > img,
.reference-card .card-image img,
.training-card .card-image img,
.equipment-card .card-image img,
.card-image img,
.card-media img,
.card-photo img,
.card-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.trail-art:has(.trail-cover)::before,
.trail-art:has(.trail-cover)::after{
  display:none!important;
}
/* Global card image cover mode: fill card media area edge-to-edge */
.trail-cover,
.latest-content-card > img,
.global-search-card > img,
.news-card-link > img,
.community-card-mark img,
.mentor-card-photo img,
.impact-person-photo img,
.sports-event-art > img,
.reference-card .card-image img,
.training-card .card-image img,
.equipment-card .card-image img,
.card-image img,
.card-media img,
.card-photo img,
.card-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:var(--card-image-position, center center)!important;
}
.trail-art:has(.trail-cover)::before,
.trail-art:has(.trail-cover)::after{
  display:none!important;
}
/* Strong latest-content card image fill */
.latest-content-card > img,
.latest-section .latest-content-card > img,
.global-search-card > img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:var(--card-image-position, center center)!important;
  background:#e8dcc6!important;
}
.latest-content-card,
.latest-section .latest-content-card,
.global-search-card{
  align-items:stretch!important;
}
.latest-content-card > img,
.latest-content-placeholder{
  grid-row:1!important;
}
@media(max-width:580px){
  .latest-content-card > img,
  .latest-section .latest-content-card > img,
  .global-search-card > img{
    width:112px!important;
    min-width:112px!important;
    max-width:112px!important;
    height:100%!important;
    min-height:100%!important;
  }
}
/* Development editor for About / Why Saudi Trails page */
.about-edit-button{display:inline-flex;align-items:center;gap:7px;width:max-content;margin-bottom:14px;padding:8px 12px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(255,255,255,.14);color:#fff;font-size:12px;font-weight:700;backdrop-filter:blur(6px)}
.about-edit-button:hover{background:rgba(255,255,255,.22)}
.about-editor-form{display:grid;gap:16px;padding:22px;border:1px solid var(--line);border-radius:10px;background:var(--white)}
.about-editor-form fieldset{display:grid;gap:12px;margin:0;padding:0 0 16px;border:0;border-bottom:1px solid var(--line)}
.about-editor-form fieldset:last-of-type{border-bottom:0}
.about-editor-form legend{margin-bottom:4px;color:var(--forest);font-weight:800}
.about-editor-form label{display:grid;gap:6px;color:#556459;font-size:12px;font-weight:700}
.about-editor-form textarea{width:100%;min-height:46px;padding:10px 11px;border:1px solid #dedfd5;border-radius:6px;background:#fffefa;color:var(--ink);font:inherit;font-size:12px;line-height:1.8;resize:vertical}
.about-editor-form textarea:focus{outline:2px solid #526e5340;border-color:var(--moss)}
/* Keep About edit control out of the page layout flow */
.about-hero .about-edit-button{
  position:absolute!important;
  top:14px;
  inset-inline-end:14px;
  z-index:3;
  margin:0!important;
  padding:7px 11px;
  border:1px solid rgba(36,75,59,.22);
  background:rgba(255,250,239,.86);
  color:var(--forest);
  box-shadow:0 8px 18px rgba(28,51,41,.10);
}
.about-hero .about-edit-button:hover{background:#fffaf0;color:#173f32}
@media(max-width:600px){
  .about-hero .about-edit-button{top:10px;inset-inline-end:10px;padding:6px 9px;font-size:11px}
}

/* Trail running knowledge article */
.trail-running-article{position:relative;max-width:980px;margin:42px auto 90px;padding:0 24px;direction:rtl;text-align:right;color:var(--ink)}
.trail-running-article-hero{padding:34px 36px;border:1px solid rgba(36,75,59,.12);border-radius:18px;background:linear-gradient(135deg,rgba(255,250,239,.92),rgba(230,211,179,.55));box-shadow:0 18px 45px rgba(32,56,47,.08)}
.trail-running-article-hero h1{max-width:760px;margin:8px 0 12px;font-size:clamp(30px,4vw,48px);line-height:1.45;letter-spacing:-.7px;color:var(--forest)}
.trail-running-article-hero p{max-width:680px;margin:0;color:#657061;font-size:14px;line-height:2}
.trail-running-toc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0;padding:16px;border:1px solid rgba(36,75,59,.1);border-radius:14px;background:rgba(255,250,239,.62);backdrop-filter:blur(4px)}
.trail-running-toc span{display:block;padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.34);color:#526e53;font-size:12px;line-height:1.7}
.trail-running-article-section{position:relative;margin:20px 0;padding:30px 34px;border:1px solid rgba(36,75,59,.10);border-radius:16px;background:rgba(255,250,239,.78);box-shadow:0 14px 34px rgba(32,56,47,.055)}
.trail-running-section-number{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:13px;border-radius:50%;background:var(--forest);color:#fff;font-weight:700;font-size:13px;direction:ltr}
.trail-running-article-section h2{margin:0 0 18px;color:var(--forest);font-size:clamp(22px,2.6vw,30px);line-height:1.55}
.trail-running-article-section h3{margin:23px 0 8px;color:#8f5f3e;font-size:16px;line-height:1.7}
.trail-running-article-section p{max-width:760px;margin:0 0 14px;color:#3f4d43;font-size:15px;line-height:2.15}
.trail-running-sources{margin-top:24px;padding:26px 30px;border:1px dashed rgba(36,75,59,.25);border-radius:16px;background:rgba(229,212,182,.36)}
.trail-running-sources h2{margin:0 0 10px;color:var(--forest);font-size:22px}
.trail-running-sources p{margin:0;color:#657061;font-size:13px;line-height:2}
.trail-running-edit-button{top:12px!important;inset-inline-end:36px!important}
@media(max-width:760px){.trail-running-article{margin-top:28px;padding-inline:18px}.trail-running-article-hero,.trail-running-article-section,.trail-running-sources{padding:22px 18px;border-radius:14px}.trail-running-toc{grid-template-columns:1fr}.trail-running-article-section p{font-size:14px;line-height:2}.trail-running-edit-button{top:8px!important;inset-inline-end:18px!important}}

/* Justify trail running article body copy */
.trail-running-article-section p,
.trail-running-article-hero p,
.trail-running-sources p{
  text-align:justify;
  text-align-last:right;
}

/* Trail running article full text alignment refinement */
.trail-running-article-hero p,
.trail-running-article-section p,
.trail-running-article-section h3,
.trail-running-sources p{
  width:100%;
  max-width:none;
  margin-inline:0;
}
.trail-running-article-section p,
.trail-running-article-section h3,
.trail-running-article-hero p,
.trail-running-sources p,
.trail-running-toc span{
  text-align:justify;
  text-align-last:right;
}
.trail-running-article-section h2{
  text-align:right;
}

/* Trail running table of contents links */
.trail-running-toc a{display:block;padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.34);color:#526e53;font-size:12px;line-height:1.7;text-align:justify;text-align-last:right;transition:background .2s,color .2s,transform .2s}
.trail-running-toc a:hover{background:rgba(36,75,59,.11);color:var(--forest);transform:translateY(-1px)}
.trail-running-article-section{scroll-margin-top:24px}

/* Sports events training and calendar */
.sports-events-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.sports-training-button{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(36,75,59,.18);border-radius:7px;background:rgba(255,250,239,.82);color:var(--forest);padding:11px 16px;font-size:12px;font-weight:700}
.sports-calendar-panel{max-width:1164px;margin:0 auto 28px;padding:22px;border:1px solid rgba(36,75,59,.12);border-radius:18px;background:rgba(255,250,239,.74);box-shadow:0 16px 40px rgba(32,56,47,.07)}
.sports-calendar-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}
.sports-calendar-heading h2{margin:4px 0 0;color:var(--forest);font-size:24px}.sports-calendar-heading p{max-width:430px;margin:0;color:#697467;font-size:12px;line-height:1.9}
.sports-calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px}.sports-calendar-month{min-width:0}.sports-calendar-month h3{margin:0 0 12px;color:var(--ink);font-size:18px}
.sports-calendar-weekdays,.sports-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.sports-calendar-weekdays span{color:#647267;font-size:10px;text-align:center}
.sports-calendar-day{min-height:96px;padding:8px;border:1px solid rgba(36,75,59,.1);border-radius:12px;background:rgba(255,255,255,.42);overflow:hidden}.sports-calendar-day.is-empty{background:rgba(255,255,255,.16)}
.sports-calendar-day>b{display:block;margin-bottom:6px;color:var(--forest);font-size:12px;direction:ltr}.sports-calendar-day small{display:block;margin-top:4px;color:var(--muted);font-size:10px}
.sports-calendar-item{display:block;margin-top:4px;padding:5px 6px;border-radius:8px;background:rgba(36,75,59,.08);color:var(--forest);font-size:10px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sports-calendar-item span{margin-inline-end:4px;color:#8f5f3e;font-weight:700}.sports-calendar-item.is-training{background:rgba(189,117,75,.13)}
.sports-calendar-upcoming{padding:16px;border-radius:14px;background:rgba(229,212,182,.28)}.sports-calendar-upcoming h3{margin:0 0 10px;color:var(--forest)}.sports-calendar-upcoming a{display:block;padding:10px 0;border-bottom:1px solid rgba(36,75,59,.12)}.sports-calendar-upcoming a:last-child{border-bottom:0}.sports-calendar-upcoming span,.sports-calendar-upcoming small{display:block;color:#6d786d;font-size:10px}.sports-calendar-upcoming b{display:block;margin:3px 0;color:var(--ink);font-size:13px;line-height:1.6}
@media(max-width:900px){.sports-calendar-layout{grid-template-columns:1fr}.sports-calendar-heading{align-items:flex-start;flex-direction:column}.sports-calendar-day{min-height:82px}.sports-calendar-weekdays span{font-size:9px}}
@media(max-width:580px){.sports-calendar-panel{margin-inline:18px;padding:16px}.sports-calendar-weekdays{display:none}.sports-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sports-calendar-day.is-empty{display:none}.sports-events-actions{flex-direction:column}.sports-events-actions a{justify-content:center}}

/* Interactive sports calendar controls */
.sports-calendar-controls{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.sports-calendar-controls h3{margin:0;min-width:150px;text-align:center}
.sports-calendar-nav{width:38px;height:38px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(20,67,48,.1);color:#103d2c;text-decoration:none;font-size:30px;line-height:1;font-weight:800;transition:background .2s ease,color .2s ease,transform .2s ease}
.sports-calendar-nav:hover,.sports-calendar-nav:focus-visible{background:#103d2c;color:#fff;transform:translateY(-1px)}
.sports-calendar-today{border:1px solid rgba(20,67,48,.24);border-radius:999px;padding:8px 13px;color:#103d2c;text-decoration:none;font-weight:800;background:rgba(255,255,255,.42)}
.sports-calendar-today:hover,.sports-calendar-today:focus-visible{background:#103d2c;color:#fff}
.sports-calendar-day.has-items{box-shadow:inset 0 0 0 1px rgba(181,116,43,.28)}
.sports-calendar-day.is-today>b{background:#103d2c;color:#fff;border-radius:999px;min-width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:580px){.sports-calendar-controls{justify-content:space-between}.sports-calendar-controls h3{order:-1;width:100%;min-width:0}.sports-calendar-nav{width:34px;height:34px;font-size:26px}.sports-calendar-today{padding:7px 11px}}

/* Compact closest sports events below the calendar */
.sports-calendar-upcoming{padding:12px;border-radius:14px;background:rgba(229,212,182,.28)}
.sports-calendar-upcoming-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.sports-calendar-upcoming-head h3{margin:0;color:var(--forest);font-size:16px}
.sports-calendar-upcoming-head small{color:#6d786d;font-size:10px;white-space:nowrap}
.sports-calendar-upcoming-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sports-calendar-upcoming-grid>a{display:block;min-width:0;padding:8px;border:1px solid rgba(36,75,59,.1);border-radius:10px;background:rgba(255,255,255,.34);text-decoration:none}
.sports-calendar-upcoming-grid>a:hover,.sports-calendar-upcoming-grid>a:focus-visible{background:rgba(255,255,255,.64);border-color:rgba(16,61,44,.28)}
.sports-calendar-upcoming-grid span,.sports-calendar-upcoming-grid small{display:block;color:#6d786d;font-size:9px;line-height:1.4}
.sports-calendar-upcoming-grid b{display:block;margin:3px 0;color:var(--ink);font-size:11px;line-height:1.45;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sports-calendar-upcoming-pager{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px;font-size:11px;font-weight:800;color:#6d786d}
.sports-calendar-upcoming-pager a,.sports-calendar-upcoming-pager span{padding:5px 9px;border-radius:999px;text-decoration:none;background:rgba(16,61,44,.08);color:#103d2c}
.sports-calendar-upcoming-pager span{opacity:.42}
.sports-calendar-upcoming-pager small{direction:ltr;color:#6d786d}
@media(max-width:900px){.sports-calendar-upcoming-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:580px){.sports-calendar-upcoming-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sports-calendar-upcoming{padding:10px}}

/* Sports calendar full-width layout with closest events below */
.sports-calendar-panel .sports-calendar-layout{grid-template-columns:1fr}
.sports-calendar-panel .sports-calendar-upcoming{margin-top:16px}

/* Center sports calendar description under title */
.sports-calendar-heading{display:block;text-align:center}
.sports-calendar-heading h2{text-align:center}
.sports-calendar-heading p{max-width:none;margin:8px auto 0;text-align:center;white-space:nowrap}
@media(max-width:760px){.sports-calendar-heading p{white-space:normal}}

/* Sports calendar type colors and interactive filter */
.sports-calendar-type-filter{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:14px 0 16px;padding:10px 12px;border-radius:14px;background:rgba(255,250,239,.54);border:1px solid rgba(36,75,59,.1)}
.sports-calendar-type-filter a{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;text-decoration:none;color:#173d30;font-size:11px;font-weight:800;background:rgba(255,255,255,.38);border:1px solid transparent;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.sports-calendar-type-filter a:hover,.sports-calendar-type-filter a:focus-visible,.sports-calendar-type-filter a.is-active{background:rgba(255,255,255,.82);border-color:currentColor;transform:translateY(-1px)}
.sports-calendar-type-filter a>span{width:10px;height:10px;border-radius:999px;background:var(--sports-type-color,#6b7f63);box-shadow:0 0 0 3px color-mix(in srgb,var(--sports-type-color,#6b7f63) 18%,transparent)}
.sports-calendar-type-filter .sports-type-all>span{background:linear-gradient(135deg,#2f7d32,#1976d2,#c7782b)}
.sports-calendar-item,.sports-calendar-upcoming-grid>a{border-inline-start:4px solid var(--sports-type-color,#6b7f63)}
.sports-calendar-item span,.sports-calendar-upcoming-grid>a small{color:var(--sports-type-color,#6b7f63)}
.sports-calendar-item{background:color-mix(in srgb,var(--sports-type-color,#6b7f63) 14%,white)}
.sports-calendar-upcoming-grid>a{background:color-mix(in srgb,var(--sports-type-color,#6b7f63) 8%,white)}
.sports-type-0{--sports-type-color:#1976d2}.sports-type-1{--sports-type-color:#2f7d32}.sports-type-2{--sports-type-color:#8e5a2a}.sports-type-3{--sports-type-color:#8b4bb3}.sports-type-4{--sports-type-color:#d9901f}.sports-type-5{--sports-type-color:#5d6d7e}.sports-type-6{--sports-type-color:#00897b}.sports-type-7{--sports-type-color:#6d4c41}.sports-type-8{--sports-type-color:#c03a2b}.sports-type-9{--sports-type-color:#607d3b}.sports-type-10{--sports-type-color:#6b7280}.sports-type-11{--sports-type-color:#2f7d32}
@media(max-width:580px){.sports-calendar-type-filter{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:12px}.sports-calendar-type-filter a{white-space:nowrap}}

/* Fit more sports events inside each calendar day */
.sports-calendar-day{min-height:112px;padding:6px}
.sports-calendar-item{margin-top:3px;padding:3px 5px;font-size:9px;line-height:1.35;border-radius:7px}
.sports-calendar-item span{font-size:8px}
.sports-calendar-more{display:inline-flex;margin-top:4px;padding:3px 7px;border-radius:999px;background:rgba(16,61,44,.1);color:#103d2c;text-decoration:none;font-size:10px;font-weight:900}
.sports-calendar-more:hover,.sports-calendar-more:focus-visible{background:#103d2c;color:#fff}
@media(max-width:900px){.sports-calendar-day{min-height:100px}}

/* Sports events map below closest events */
.sports-event-map-panel{margin-top:16px;padding:14px;border-radius:16px;background:rgba(229,212,182,.22);border:1px solid rgba(36,75,59,.1)}
.sports-event-map-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px;text-align:start}
.sports-event-map-head h3{margin:0;color:var(--forest);font-size:17px}
.sports-event-map-head p{margin:0;max-width:560px;color:#6d786d;font-size:11px;line-height:1.8}
.sports-event-map-canvas{position:relative;min-height:330px;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,rgba(237,222,190,.92),rgba(214,190,151,.86)),radial-gradient(circle at 35% 32%,rgba(47,125,50,.16),transparent 24%),radial-gradient(circle at 62% 62%,rgba(25,118,210,.12),transparent 26%);border:1px solid rgba(36,75,59,.12)}
.sports-event-map-canvas::before{content:"";position:absolute;inset:8%;border:2px dashed rgba(16,61,44,.16);border-radius:52% 42% 48% 44%;transform:rotate(-12deg)}
.sports-event-map-canvas::after{content:"المملكة العربية السعودية";position:absolute;inset:auto 18px 14px auto;color:rgba(16,61,44,.32);font-weight:900;font-size:13px}
.sports-event-map-marker{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:5px;transform:translate(-50%,-50%);padding:5px 7px;border-radius:8px;background:color-mix(in srgb,var(--sports-type-color,#6b7f63) 16%,white);border:1px solid var(--sports-type-color,#6b7f63);color:#173d30;text-decoration:none;font-size:10px;font-weight:900;box-shadow:0 8px 18px rgba(28,45,35,.16)}
.sports-event-map-marker>span{width:10px;height:10px;border-radius:3px;background:var(--sports-type-color,#6b7f63)}
.sports-event-map-marker:hover,.sports-event-map-marker:focus-visible{z-index:4;background:#fff;transform:translate(-50%,-50%) scale(1.06)}
.sports-event-map-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;color:#6d786d;font-weight:800;padding:20px}
@media(max-width:760px){.sports-event-map-head{display:block}.sports-event-map-head p{margin-top:6px}.sports-event-map-canvas{min-height:260px}.sports-event-map-marker b{display:none}}

/* Interactive sports events map */
.sports-event-map-canvas{cursor:grab;touch-action:none;background:#d9d0b7}
.sports-event-map-canvas:active{cursor:grabbing}
.sports-event-map-canvas::before,.sports-event-map-canvas::after{display:none}
.sports-event-map-tiles{position:absolute;inset:0;overflow:hidden;z-index:0}
.sports-event-map-tile{position:absolute;width:256px;height:256px;left:0;top:0;user-select:none;pointer-events:none}
.sports-event-map-markers{position:absolute;inset:0;z-index:2}
.sports-event-map-controls{position:absolute;z-index:3;top:12px;left:12px;display:flex;gap:6px;flex-wrap:wrap}
.sports-event-map-controls button{border:0;border-radius:999px;background:rgba(255,255,255,.9);color:#103d2c;font-weight:900;padding:8px 10px;box-shadow:0 8px 18px rgba(28,45,35,.14);cursor:pointer}
.sports-event-map-controls button:hover,.sports-event-map-controls button:focus-visible{background:#103d2c;color:#fff}
.sports-event-map-attribution{position:absolute;z-index:3;bottom:8px;left:10px;background:rgba(255,255,255,.78);border-radius:999px;padding:4px 8px;color:#435248;font-size:10px}
.sports-event-map-marker{left:0;top:0;transform:translate(-50%,-50%)}
.sports-event-map-marker:hover,.sports-event-map-marker:focus-visible{transform:translate(-50%,-50%) scale(1.08)}

/* Sports event edit action */
.sports-event-edit-button{display:inline-flex;margin-top:12px;padding:8px 13px;border-radius:999px;text-decoration:none;font-size:12px;font-weight:900}

/* Sports event form location picker */
.sports-location-picker{grid-column:1/-1;margin-top:14px;padding:12px;border-radius:16px;background:rgba(229,212,182,.24);border:1px solid rgba(36,75,59,.1)}
.sports-location-picker-map{position:relative;min-height:320px;border-radius:14px;overflow:hidden;background:#d9d0b7;cursor:crosshair;touch-action:none}
.sports-location-picker-map:active{cursor:grabbing}
.sports-location-tiles{position:absolute;inset:0;overflow:hidden;z-index:0}
.sports-location-marker{position:absolute;z-index:3;transform:translate(-50%,-100%);border:0;border-radius:999px;background:#103d2c;color:#fff;font-weight:900;padding:7px 11px;box-shadow:0 10px 22px rgba(0,0,0,.22);pointer-events:none}
.sports-location-marker::after{content:"";position:absolute;left:50%;bottom:-7px;transform:translateX(-50%);border:7px solid transparent;border-top-color:#103d2c}
.sports-location-controls{position:absolute;z-index:4;top:10px;left:10px;display:flex;gap:6px;flex-wrap:wrap}
.sports-location-controls button{border:0;border-radius:999px;background:rgba(255,255,255,.92);color:#103d2c;font-weight:900;padding:8px 10px;box-shadow:0 8px 18px rgba(28,45,35,.14);cursor:pointer}
.sports-location-controls button:hover,.sports-location-controls button:focus-visible{background:#103d2c;color:#fff}
[data-sports-country-other][hidden],[data-sports-manual-location][hidden],[data-sports-saudi-location][hidden]{display:none!important}
@media(max-width:580px){.sports-location-picker-map{min-height:260px}}

/* Refined sports event edit action and map marker labels */
.sports-event-edit-button{background:#103d2c!important;color:#fff!important;border:1px solid rgba(255,255,255,.2);box-shadow:0 10px 22px rgba(16,61,44,.18)}
.sports-event-edit-button:hover,.sports-event-edit-button:focus-visible{background:#0b2f22!important;color:#fff!important;transform:translateY(-1px)}
.sports-event-map-marker{align-items:flex-start;min-width:74px;max-width:150px;flex-wrap:wrap}
.sports-event-map-marker>span{flex:0 0 auto;margin-top:2px}
.sports-event-map-marker b{line-height:1.1}
.sports-event-map-marker small{display:block;flex-basis:100%;padding-inline-start:15px;margin-top:1px;font-size:9px;line-height:1.25;font-weight:700;color:#31433a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){.sports-event-map-marker small{display:none}}

/* Sports event sharing */
.sports-event-share{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.sports-event-share h2{margin:0 0 8px;font-size:15px;color:var(--ink)}
.sports-event-share>p{margin:0 0 12px;color:#72796f;font-size:12px;line-height:1.8}
.sports-event-share-actions{display:flex;flex-wrap:wrap;gap:8px}
.sports-share-button{border:1px solid rgba(16,61,44,.16);border-radius:999px;padding:9px 13px;background:#f6f0e3;color:#103d2c;font-size:12px;font-weight:900;cursor:pointer;text-decoration:none}
.sports-share-button.whatsapp{background:#e4f4e6;color:#0d5b31}
.sports-share-button.email{background:#edf2f5;color:#164861}
.sports-share-button.copy{background:#efe2ca;color:#704421}
.sports-share-button:hover,.sports-share-button:focus-visible{transform:translateY(-1px);box-shadow:0 8px 18px rgba(16,61,44,.12)}

/* Self hero profile entry */
.hero-self-profile{max-width:1164px;margin:0 auto 24px;padding:22px 24px;border:1px solid rgba(16,61,44,.16);border-radius:18px;background:linear-gradient(135deg,rgba(16,61,44,.1),rgba(229,212,182,.35));display:flex;align-items:center;justify-content:space-between;gap:18px}
.hero-self-profile h2{margin:6px 0 8px;color:var(--ink);font-size:24px}
.hero-self-profile p{margin:0;color:#5d695f;font-size:13px;line-height:1.9;max-width:720px}
@media(max-width:700px){.hero-self-profile{margin-inline:19px;align-items:flex-start;flex-direction:column}.hero-self-profile h2{font-size:21px}}

/* Self hero profile race entries */
.hero-race-row{position:relative;background:rgba(255,250,239,.58)}
.hero-race-row .impact-remove-row{top:12px;inset-inline-end:12px}
.hero-race-media{margin-top:6px;padding:12px;border-radius:14px;background:rgba(229,212,182,.28);border:1px solid rgba(36,75,59,.1)}
.hero-race-media h4{margin:0 0 6px;color:var(--forest);font-size:15px}
.hero-race-media-row{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(150px,1fr) minmax(220px,1.5fr) minmax(120px,.7fr);gap:10px;margin-top:10px;padding:10px;border-radius:12px;background:rgba(255,255,255,.36);border:1px solid rgba(36,75,59,.08)}
.hero-race-detail{background:rgba(255,250,239,.66)}
.hero-race-detail-media{margin-top:12px;padding-top:10px;border-top:1px solid rgba(36,75,59,.12)}
.hero-race-detail-media h4{margin:0 0 8px;color:var(--forest);font-size:14px}
@media(max-width:900px){.hero-race-media-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.hero-race-media-row{grid-template-columns:1fr}.hero-race-media{padding:10px}}

/* Self hero media upload control */
.hero-race-upload-field input[type="file"]{width:100%;font-size:11px}
.hero-race-upload-field .community-form-note{display:block;margin-top:4px;line-height:1.5}
@media(min-width:1000px){.hero-race-media-row{grid-template-columns:minmax(90px,.55fr) minmax(130px,.8fr) minmax(180px,1fr) minmax(180px,1fr) minmax(110px,.55fr)}}

/* Equipment, training, and store hub */
.equipment-intro p{max-width:760px}
.equipment-hub{display:grid;gap:22px}
.equipment-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.equipment-hub-card,.equipment-training-schedule,.equipment-store-panel{border:1px solid rgba(36,75,59,.12);border-radius:18px;background:rgba(255,250,239,.68);box-shadow:0 12px 28px rgba(41,54,43,.08)}
.equipment-hub-card{padding:20px;display:flex;flex-direction:column;gap:10px;min-height:220px}
.equipment-hub-icon{width:42px;height:42px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:rgba(16,61,44,.1);color:var(--forest);font-size:22px}
.equipment-hub-card h2,.equipment-store-panel h2{margin:0;color:var(--forest)}
.equipment-hub-card p,.equipment-store-panel p{margin:0;color:#5f6d64;line-height:1.9;font-size:13px}
.equipment-hub-card .text-link{margin-top:auto;font-weight:900;color:var(--forest)}
.equipment-training-schedule,.equipment-store-panel{padding:20px}
.equipment-training-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.equipment-training-item{display:block;padding:12px;border-radius:14px;text-decoration:none;background:rgba(229,212,182,.32);border:1px solid rgba(36,75,59,.1);color:var(--ink)}
.equipment-training-item:hover,.equipment-training-item:focus-visible{background:rgba(255,255,255,.72);border-color:rgba(16,61,44,.28)}
.equipment-training-item span,.equipment-training-item small{display:block;color:#6b766c;font-size:11px;line-height:1.6}
.equipment-training-item b{display:block;margin:4px 0;color:var(--forest);font-size:14px;line-height:1.5}
@media(max-width:900px){.equipment-hub-grid,.equipment-training-list{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.equipment-hub-grid,.equipment-training-list{grid-template-columns:1fr}.equipment-training-schedule .community-results-heading{align-items:flex-start;flex-direction:column}}

/* Independent training schedule placeholder */
.equipment-training-placeholder{padding:16px;border-radius:16px;background:rgba(229,212,182,.26);border:1px dashed rgba(16,61,44,.2)}
.equipment-training-placeholder h3{margin:0 0 8px;color:var(--forest)}
.equipment-training-placeholder p{margin:0 0 12px;color:#5f6d64;line-height:1.9;font-size:13px}

/* Coach profiles inside equipment section */
.coach-directory{display:grid;gap:18px}
.coach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.coach-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:16px;border-radius:16px;text-decoration:none;color:var(--ink);background:rgba(255,250,239,.68);border:1px solid rgba(36,75,59,.12);box-shadow:0 10px 22px rgba(41,54,43,.08)}
.coach-card:hover,.coach-card:focus-visible{border-color:rgba(16,61,44,.28);background:rgba(255,255,255,.74);transform:translateY(-1px)}
.coach-card-mark{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(16,61,44,.1);color:var(--forest);font-size:22px;font-weight:900}
.coach-card h2{margin:6px 0 5px;color:var(--forest);font-size:18px}
.coach-card p{margin:0 0 8px;color:#5f6d64;font-size:12px;line-height:1.7}
@media(max-width:900px){.coach-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.coach-grid{grid-template-columns:1fr}.coach-card{grid-template-columns:auto 1fr}}

/* Coach directory search and self-service */
.coach-search-panel,.coach-results-panel,.coach-self-service{border:1px solid rgba(36,75,59,.12);border-radius:18px;background:rgba(255,250,239,.68);box-shadow:0 10px 22px rgba(41,54,43,.08);padding:18px}
.coach-search-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.coach-search-grid label{display:grid;gap:6px;color:var(--forest);font-size:12px;font-weight:800}
.coach-search-grid input,.coach-search-grid select{width:100%;border:1px solid rgba(36,75,59,.16);border-radius:12px;background:rgba(255,255,255,.72);padding:10px 11px;color:var(--ink);font:inherit;font-size:12px}
.coach-self-service{display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(135deg,rgba(16,61,44,.1),rgba(229,212,182,.32))}
.coach-self-service h2{margin:6px 0 8px;color:var(--forest)}
.coach-self-service p{margin:0;color:#5f6d64;line-height:1.8;font-size:13px;max-width:700px}
@media(max-width:1000px){.coach-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.coach-search-grid{grid-template-columns:1fr}.coach-self-service{align-items:flex-start;flex-direction:column}}

/* Workouts page under equipment */
.workouts-page{display:grid;gap:20px}
.workout-generator-panel,.workout-calendar-panel,.workout-plan-preview{border:1px solid rgba(36,75,59,.12);border-radius:18px;background:rgba(255,250,239,.68);box-shadow:0 10px 22px rgba(41,54,43,.08);padding:18px}
.workout-generator-form{display:grid;gap:14px}
.workout-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.workout-form-grid label{display:grid;gap:6px;color:var(--forest);font-size:12px;font-weight:800}
.workout-form-grid input,.workout-form-grid select{width:100%;border:1px solid rgba(36,75,59,.16);border-radius:12px;background:rgba(255,255,255,.72);padding:10px 11px;color:var(--ink);font:inherit;font-size:12px}
.workout-plan-preview{margin-top:14px;background:rgba(229,212,182,.24)}
.workout-plan-preview h3{margin:0 0 12px;color:var(--forest)}
.workout-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:10px}
.workout-preview-grid span{display:block;padding:10px;border-radius:12px;background:rgba(255,255,255,.48);border:1px solid rgba(36,75,59,.08)}
.workout-preview-grid small{display:block;color:#6b766c;font-size:10px}.workout-preview-grid b{display:block;color:var(--forest);font-size:13px;margin-top:3px}
.workout-calendar-mock{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:12px}
.workout-calendar-mock button{min-height:74px;border:1px solid rgba(36,75,59,.1);border-radius:12px;background:rgba(255,255,255,.42);color:var(--ink);text-align:start;padding:8px;cursor:pointer}
.workout-calendar-mock button:hover,.workout-calendar-mock button:focus-visible{border-color:rgba(16,61,44,.28);background:rgba(255,255,255,.72)}
.workout-calendar-mock b,.workout-calendar-mock span{display:block}.workout-calendar-mock span{margin-top:14px;color:#6b766c;font-size:10px}
@media(max-width:900px){.workout-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workout-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.workout-form-grid,.workout-preview-grid{grid-template-columns:1fr}.workout-calendar-mock{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Interactive workout day form */
.workout-day-form{margin-top:14px;padding:16px;border-radius:16px;background:rgba(229,212,182,.28);border:1px solid rgba(36,75,59,.12)}
.workout-day-form h3{margin:0 0 12px;color:var(--forest)}
.workout-day-form[hidden],.workout-day-form [hidden]{display:none!important}

/* Real workout calendar */
.workout-calendar-real{margin-top:12px}
.workout-calendar-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px}
.workout-calendar-controls h3{margin:0;min-width:170px;text-align:center;color:var(--forest)}
.workout-calendar-controls button{width:36px;height:36px;border:0;border-radius:999px;background:rgba(16,61,44,.1);color:var(--forest);font-size:28px;font-weight:900;cursor:pointer}
.workout-calendar-controls button:hover,.workout-calendar-controls button:focus-visible{background:var(--forest);color:#fff}
.workout-calendar-weekdays,.workout-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.workout-calendar-weekdays{margin-bottom:6px}.workout-calendar-weekdays span{text-align:center;color:#6b766c;font-size:11px;font-weight:900}
.workout-calendar-grid button,.workout-calendar-empty{min-height:82px;border:1px solid rgba(36,75,59,.1);border-radius:12px;background:rgba(255,255,255,.42);color:var(--ink);text-align:start;padding:8px}
.workout-calendar-grid button{cursor:pointer}.workout-calendar-grid button:hover,.workout-calendar-grid button:focus-visible{border-color:rgba(16,61,44,.28);background:rgba(255,255,255,.72)}
.workout-calendar-grid b,.workout-calendar-grid span{display:block}.workout-calendar-grid span{margin-top:18px;color:#6b766c;font-size:10px}
.workout-calendar-empty{background:rgba(255,255,255,.18)}
@media(max-width:620px){.workout-calendar-weekdays span{font-size:9px}.workout-calendar-grid button,.workout-calendar-empty{min-height:66px;padding:6px}.workout-calendar-grid span{display:none}}

/* Saved workout calendar states */
.workout-calendar-grid button.is-workout{background:rgba(47,125,50,.16);border-color:rgba(47,125,50,.38)}
.workout-calendar-grid button.is-workout span{color:#1f6b35;font-weight:900}
.workout-calendar-grid button.is-rest{background:rgba(130,142,150,.18);border-color:rgba(93,109,126,.34)}
.workout-calendar-grid button.is-rest span{color:#5d6d7e;font-weight:900}
.workout-calendar-legend{display:flex;justify-content:center;gap:8px;margin:0 0 8px;flex-wrap:wrap}
.workout-calendar-legend span{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:900;background:rgba(255,255,255,.48)}
.workout-calendar-legend span::before{content:"";width:10px;height:10px;border-radius:999px}.legend-workout::before{background:#2f7d32}.legend-rest::before{background:#5d6d7e}


.workout-day-summary{margin-top:12px;padding:12px;border-radius:14px;background:rgba(255,250,239,.72);border:1px solid rgba(16,61,44,.12)}
.workout-day-summary h4{margin:0 0 8px;color:var(--forest);font-size:14px}
.workout-day-summary ol{margin:0;padding-inline-start:20px;display:grid;gap:7px}
.workout-day-summary li{color:var(--ink);font-size:12px;line-height:1.7}
.workout-day-summary li span{display:block;color:#6b766c;font-size:11px}
.workout-save-status{margin:10px 0 0;padding:9px 12px;border-radius:999px;background:rgba(47,125,50,.12);color:#1f6b35;font-size:12px;font-weight:900}

/* Workout reminder future option */
.workout-reminder-option{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(16,61,44,.07);color:var(--forest);font-size:12px;font-weight:800}
.workout-reminder-option input{width:auto}

/* Multiple workouts per day */
.workout-day-form .secondary-button{border:1px solid rgba(16,61,44,.18);background:rgba(255,250,239,.8);color:var(--forest);border-radius:999px;padding:10px 14px;font-weight:900;text-decoration:none;cursor:pointer}
.workout-calendar-grid button.is-workout span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Stronger workout calendar state colors */
.workout-calendar-grid button.is-workout{background:#2f7d32!important;border-color:#1b5e20!important;color:#fff!important;box-shadow:0 10px 20px rgba(47,125,50,.24)}
.workout-calendar-grid button.is-workout b,.workout-calendar-grid button.is-workout span{color:#fff!important}
.workout-calendar-grid button.is-rest{background:#5d6d7e!important;border-color:#34495e!important;color:#fff!important;box-shadow:0 10px 20px rgba(93,109,126,.22)}
.workout-calendar-grid button.is-rest b,.workout-calendar-grid button.is-rest span{color:#fff!important}
.workout-calendar-legend span{border:1px solid rgba(255,255,255,.5)}
.workout-calendar-legend .legend-workout{background:#2f7d32;color:#fff}
.workout-calendar-legend .legend-rest{background:#5d6d7e;color:#fff}

.workout-duration-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(max-width:520px){.workout-duration-pair{grid-template-columns:1fr}}

.workout-intensity-fieldset{border:1px solid rgba(16,61,44,.14);border-radius:14px;padding:12px;background:rgba(255,250,239,.48);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;grid-column:1/-1}
.workout-intensity-fieldset legend{padding:0 8px;color:var(--forest);font-weight:900}
.workout-intensity-fieldset .community-form-note{grid-column:1/-1;margin:0}
@media(max-width:760px){.workout-intensity-fieldset{grid-template-columns:1fr}}

.workout-description-fieldset{border:1px solid rgba(16,61,44,.14);border-radius:14px;padding:12px;background:rgba(255,250,239,.5);display:grid;gap:10px;grid-column:1/-1}
.workout-description-fieldset legend{padding:0 8px;color:var(--forest);font-weight:900}
.workout-description-head,.workout-description-row{display:grid;grid-template-columns:170px minmax(170px,1fr) 80px 120px 70px auto;gap:8px;align-items:center}
.workout-description-head{color:#6b766c;font-size:11px;font-weight:900}
.workout-part-duration{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.workout-duration-status{margin:0;padding:9px 12px;border-radius:12px;background:rgba(16,61,44,.08);color:var(--forest);font-size:12px;font-weight:900}
.workout-duration-status.is-complete{background:rgba(47,125,50,.14);color:#1f6b35}
.workout-duration-status.is-over{background:rgba(161,74,45,.15);color:#8f3f25}
@media(max-width:760px){.workout-description-head{display:none}.workout-description-row{grid-template-columns:1fr}.workout-part-duration{grid-template-columns:1fr 1fr}}

.workout-description-fieldset [data-treadmill-only]{display:none}
.workout-description-fieldset.is-treadmill [data-treadmill-only]{display:block}
.workout-description-fieldset.is-treadmill .workout-description-head,.workout-description-fieldset.is-treadmill .workout-description-row{grid-template-columns:160px minmax(160px,1fr) 72px 110px 64px 96px auto}
.workout-treadmill-status{margin:0;padding:9px 12px;border-radius:12px;background:rgba(16,61,44,.08);color:var(--forest);font-size:12px;font-weight:900}
.workout-treadmill-status.is-complete{background:rgba(47,125,50,.14);color:#1f6b35}
.workout-treadmill-status.is-over{background:rgba(161,74,45,.15);color:#8f3f25}
@media(max-width:760px){.workout-description-fieldset.is-treadmill .workout-description-head{display:none}.workout-description-fieldset.is-treadmill .workout-description-row{grid-template-columns:1fr}}

.workout-distance-status{margin:0;padding:9px 12px;border-radius:12px;background:rgba(16,61,44,.08);color:var(--forest);font-size:12px;font-weight:900}
.workout-description-fieldset.is-treadmill [data-outdoor-only]{display:none}
.workout-description-fieldset:not(.is-treadmill) [data-treadmill-only]{display:none}

/* Workout category calendar colors */
.workout-calendar-grid button.is-workout.category-running{background:#0b7a3b!important;border-color:#07582b!important}
.workout-calendar-grid button.is-workout.category-hiking{background:#b36b18!important;border-color:#824b0d!important}
.workout-calendar-grid button.is-workout.category-strength{background:#6f2dbd!important;border-color:#51208c!important}
.workout-calendar-grid button.is-workout.category-plyometric{background:#d62828!important;border-color:#9f1f1f!important}
.workout-calendar-grid button.is-workout.category-balance{background:#0077b6!important;border-color:#00547f!important}
.workout-calendar-grid button.is-workout.category-mobility{background:#2a9d8f!important;border-color:#1d7167!important}
.workout-calendar-grid button.is-workout.category-stretching{background:#d0006f!important;border-color:#990052!important}
.workout-calendar-grid button.is-workout.category-recovery{background:#4d908e!important;border-color:#356866!important}
.workout-calendar-grid button.is-workout.category-combo{background:#f77f00!important;border-color:#b85f00!important}
.workout-calendar-grid button.is-workout.category-custom{background:#495057!important;border-color:#2f3438!important}


.workout-custom-strength-fieldset{grid-column:1/-1;border:1px solid rgba(16,61,44,.14);border-radius:14px;padding:12px;background:rgba(255,250,239,.5);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.workout-custom-strength-fieldset legend{padding:0 8px;color:var(--forest);font-weight:900}
@media(max-width:760px){.workout-custom-strength-fieldset{grid-template-columns:1fr}}

.workout-strength-sets-fieldset{grid-column:1/-1;border:1px solid rgba(16,61,44,.14);border-radius:14px;padding:12px;background:rgba(255,250,239,.5);display:grid;gap:10px}
.workout-strength-sets-fieldset legend{padding:0 8px;color:var(--forest);font-weight:900}
.workout-strength-sets-head,.workout-strength-set-row{display:grid;grid-template-columns:90px 130px 90px 90px 190px auto;gap:8px;align-items:center}
.workout-strength-sets-head{color:#6b766c;font-size:11px;font-weight:900}
.workout-strength-set-row b{color:var(--forest)}
.workout-strength-set-row label{display:grid;gap:4px}.workout-strength-set-row small{color:#6b766c;font-size:10px;font-weight:800}
@media(max-width:760px){.workout-strength-sets-head{display:none}.workout-strength-set-row{grid-template-columns:1fr}}
.workout-strength-session-panel{grid-column:1/-1;border:1px solid var(--line);border-radius:14px;background:rgba(255,254,250,.58);padding:14px;margin-top:4px}
.workout-strength-session-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.workout-strength-session-head h4{margin:0;color:var(--forest);font-size:15px}
.workout-strength-exercise-card{border:1px solid #ded7c7;border-radius:12px;background:#fffefa;padding:12px;margin-top:10px;box-shadow:0 8px 22px rgba(62,49,30,.05)}
.workout-strength-exercise-card header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.workout-strength-exercise-card h5{margin:0;font-size:14px;color:var(--ink)}
.workout-strength-exercise-card p{margin:0 0 10px;color:var(--muted);font-size:12px}
.workout-strength-summary{display:block;margin-top:8px;padding:10px;border-radius:12px;background:rgba(244,238,224,.65)}
.workout-strength-summary>div{margin-top:8px}
.workout-strength-summary strong{display:block;color:var(--forest);margin-bottom:4px}
.workout-strength-summary ul{margin:0;padding-inline-start:20px;color:var(--muted);font-size:12px;line-height:1.8}
@media(max-width:700px){.workout-strength-session-head,.workout-strength-exercise-card header{align-items:flex-start;flex-direction:column}.workout-strength-set-row{grid-template-columns:1fr!important}}
.workout-strength-sets-head,.workout-strength-set-row{grid-template-columns:repeat(auto-fit,minmax(88px,1fr))!important}
.workout-strength-set-row input,.workout-strength-set-row select{width:100%;min-width:0}
.workout-summary-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.workout-edit-button{padding:6px 10px;font-size:11px;border-radius:999px}

/* Restored workout planner interface compatibility layer */
.workout-planner-page{direction:rtl;display:grid;gap:18px}
.workout-planner-page .community-results-heading{align-items:center;margin-top:18px}
.workout-planner-page .workout-generator-form,.workout-planner-page .workout-day-form{border:1px solid rgba(36,75,59,.12);border-radius:18px;background:rgba(255,250,239,.72);box-shadow:0 14px 34px rgba(32,56,47,.07);padding:20px}
.workout-day-form{display:grid;gap:14px;align-items:start}
.workout-day-form h3{margin:0;color:var(--forest);font-size:18px;line-height:1.6}
.workout-day-form>label,.workout-day-form [data-workout-dynamic]>label,.workout-day-form [data-category-fields]>label,.workout-strength-exercise-card label{display:grid;gap:7px;color:var(--forest);font-size:12px;font-weight:800;min-width:0}
.workout-day-form input,.workout-day-form select,.workout-day-form textarea{width:100%;min-width:0;border:1px solid rgba(36,75,59,.16);border-radius:12px;background:rgba(255,255,255,.78);padding:10px 11px;color:var(--ink);font:inherit;font-size:12px;font-weight:500}
.workout-day-form input:focus,.workout-day-form select:focus,.workout-day-form textarea:focus{outline:2px solid rgba(82,110,83,.25);border-color:var(--moss);background:#fffefa}
.workout-day-form [data-workout-dynamic],.workout-day-form [data-category-fields]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end}
.workout-day-form [data-category-fields]>fieldset,.workout-day-form [data-category-fields]>.workout-parts,.workout-day-form [data-strength-exercises-list],.workout-day-form [data-strength-exercise-select],.workout-day-form [data-workout-summary],.workout-day-form .community-form-note{grid-column:1/-1}
.workout-duration-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.workout-parts{border:1px solid rgba(36,75,59,.14);border-radius:16px;padding:14px;background:rgba(255,254,250,.68);display:grid;gap:10px;margin:4px 0 0;min-width:0}
.workout-parts legend{padding:0 8px;color:var(--forest);font-size:14px;font-weight:900}
.workout-parts-head,.workout-part-row{display:grid;grid-template-columns:150px minmax(150px,1fr) 76px 112px 76px 92px auto;gap:8px;align-items:center}
.workout-parts-head{color:#667265;font-size:11px;font-weight:900;line-height:1.5}
.workout-part-row{padding:8px;border-radius:14px;background:rgba(229,212,182,.18);border:1px solid rgba(36,75,59,.08)}
.workout-part-row button,.workout-strength-set-row button,.workout-strength-exercise-card header button{justify-self:start;white-space:nowrap}
.workout-parts .secondary-button,.workout-day-form .secondary-button{border:1px solid rgba(36,75,59,.18);background:rgba(255,250,239,.92);color:var(--forest);border-radius:999px;padding:9px 13px;font-weight:900;cursor:pointer;text-decoration:none}
.workout-parts .secondary-button:hover,.workout-day-form .secondary-button:hover{background:rgba(36,75,59,.08)}
.workout-day-form .primary-button{justify-self:start;border:0;border-radius:999px;background:var(--forest);color:#fff;padding:11px 18px;font-weight:900;cursor:pointer;box-shadow:0 10px 20px rgba(36,75,59,.14)}
.workout-day-form [data-workout-add-same-day]{justify-self:start;background:rgba(229,212,182,.34)}
.workout-day-form .community-check{display:flex!important;align-items:center;gap:8px;color:#506057;font-size:12px;font-weight:800}
.workout-day-form .community-check input{width:auto}
.workout-calendar{border:1px solid rgba(36,75,59,.12);border-radius:18px;background:rgba(255,250,239,.62);padding:16px;box-shadow:0 10px 24px rgba(32,56,47,.06)}
.workout-calendar .sports-calendar-controls{margin-bottom:14px}
.workout-calendar .sports-calendar-controls button{border:1px solid rgba(36,75,59,.14);border-radius:999px;background:rgba(255,254,250,.84);color:var(--forest);padding:9px 14px;font-weight:900;cursor:pointer}
.workout-calendar .sports-calendar-controls button:hover{background:var(--forest);color:#fff}
.workout-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.workout-calendar-day,.workout-calendar-empty{min-height:86px;border:1px solid rgba(36,75,59,.1);border-radius:14px;background:rgba(255,255,255,.46);padding:9px;text-align:start;color:var(--ink)}
.workout-calendar-day{cursor:pointer;position:relative;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.workout-calendar-day:hover,.workout-calendar-day:focus-visible{transform:translateY(-2px);border-color:rgba(36,75,59,.28);background:rgba(255,255,255,.78)}
.workout-calendar-day b{display:block;color:var(--forest);font-size:13px;direction:ltr}
.workout-calendar-day small{display:block;margin-top:17px;color:#667265;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workout-calendar-day em{position:absolute;inset-inline-end:7px;bottom:7px;padding:2px 7px;border-radius:999px;background:rgba(16,61,44,.1);color:var(--forest);font-size:10px;font-style:normal;font-weight:900}
.workout-calendar-day.has-workout{background:var(--workout-color,#2f7d32)!important;border-color:color-mix(in srgb,var(--workout-color,#2f7d32) 72%,black)!important;color:#fff!important;box-shadow:0 10px 22px color-mix(in srgb,var(--workout-color,#2f7d32) 24%,transparent)}
.workout-calendar-day.has-workout b,.workout-calendar-day.has-workout small{color:#fff!important;font-weight:900}
.workout-calendar-day.has-workout em{background:rgba(255,255,255,.2);color:#fff}
.workout-calendar-day.is-selected{outline:3px solid rgba(36,75,59,.2);outline-offset:2px}
.workout-day-entry{border-inline-start:5px solid var(--workout-color,#d9c7a1);border-radius:16px;background:rgba(255,254,250,.74);border:1px solid rgba(36,75,59,.1);padding:13px;margin-top:10px;box-shadow:0 8px 20px rgba(32,56,47,.05)}
.workout-day-entry b{color:var(--forest)}
.workout-day-entry ul{margin:8px 0 0;padding-inline-start:20px;color:#59665b;font-size:12px;line-height:1.8}
.workout-day-entry>div:last-child{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.workout-strength-exercise-card{border:1px solid #ded7c7;border-radius:16px;background:#fffefa;padding:14px;margin-top:12px;box-shadow:0 10px 24px rgba(62,49,30,.06);overflow:auto}
.workout-strength-exercise-card header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.workout-strength-exercise-card h5{margin:0;color:var(--forest);font-size:15px;line-height:1.5}
.workout-strength-exercise-card p{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.8}
.workout-strength-sets-head,.workout-strength-set-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px;align-items:center;min-width:760px}
.workout-strength-sets-head{color:#667265;font-size:11px;font-weight:900;padding:0 6px 4px}
.workout-strength-set-row{padding:8px;border:1px solid rgba(36,75,59,.08);border-radius:14px;background:rgba(229,212,182,.16);margin-top:8px}
.workout-strength-set-row b{color:var(--forest);font-weight:900}
.workout-strength-set-row input,.workout-strength-set-row select{padding:9px 10px;border-radius:11px}
[data-strength-exercise-select]{display:grid;gap:8px}.workout-parts .community-form-note,[data-running-parts-summary]{margin:0;padding:9px 12px;border-radius:12px;background:rgba(36,75,59,.08);color:var(--forest);font-size:12px;font-weight:800;line-height:1.8}.workout-parts .community-form-note.is-warning,[data-running-parts-summary].is-warning{background:rgba(161,74,45,.14);color:#8f3f25}
@media(max-width:900px){.workout-day-form [data-workout-dynamic],.workout-day-form [data-category-fields]{grid-template-columns:1fr}.workout-calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sports-calendar-weekdays{display:none}.workout-parts-head{display:none}.workout-part-row{grid-template-columns:1fr}.workout-strength-sets-head{display:none}.workout-strength-set-row{grid-template-columns:1fr;min-width:0}.workout-strength-exercise-card{overflow:visible}}
@media(max-width:560px){.workout-planner-page .workout-generator-form,.workout-planner-page .workout-day-form,.workout-calendar{padding:14px}.workout-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workout-calendar-empty{display:none}.workout-duration-pair{grid-template-columns:1fr}.workout-strength-exercise-card header{align-items:flex-start;flex-direction:column}}

/* Workout UI alignment fix after compatibility layer */
.workout-day-form [data-workout-dynamic]{display:grid!important;grid-template-columns:1fr!important;gap:12px;align-items:start}
.workout-day-form [data-workout-dynamic]>label{width:100%;max-width:none}
.workout-day-form [data-category-fields]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end;width:100%}
.workout-day-form [data-strength-exercise-select],.workout-day-form [data-strength-exercises-list],.workout-day-form [data-add-strength-exercise]{grid-column:1/-1;width:100%}
.workout-day-form [data-strength-exercises-list]{display:grid;gap:12px}
.workout-strength-exercise-card{width:100%;max-width:none}
.workout-strength-exercise-card [data-strength-sets-list]{overflow-x:auto;padding-bottom:4px}
.workout-strength-exercise-card [data-add-strength-set]{margin-top:10px}
@media(max-width:900px){.workout-day-form [data-category-fields]{grid-template-columns:1fr}}

/* Workout planner limited visual polish */
.workout-planner-page{gap:24px}
.workout-planner-page .community-results-heading{padding-inline:4px;margin:24px 0 10px}
.workout-planner-page .community-results-heading h2{margin:0;color:var(--forest);line-height:1.6}
.workout-planner-page .community-form-note{margin:4px 0 12px;line-height:1.9}
.workout-planner-page .workout-generator-form,.workout-planner-page .workout-day-form,.workout-calendar{padding:24px;border-radius:22px}
.workout-day-form{gap:18px;margin-top:22px}
.workout-day-form h3{padding:2px 2px 8px;margin-bottom:2px;border-bottom:1px solid rgba(36,75,59,.08)}
.workout-day-form>label,.workout-day-form [data-workout-dynamic]>label,.workout-day-form [data-category-fields]>label,.workout-strength-exercise-card label{gap:9px;line-height:1.7}
.workout-day-form [data-category-fields]{gap:18px 16px;align-items:start}
.workout-day-form input,.workout-day-form select,.workout-day-form textarea{min-height:44px;border-radius:14px;border-color:rgba(36,75,59,.14);background:rgba(255,254,250,.86);box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.workout-day-form input::placeholder,.workout-day-form textarea::placeholder{color:#8a9288}
.workout-duration-pair{gap:10px}
.workout-parts{padding:18px;margin-top:6px;border-radius:18px;background:rgba(255,254,250,.74);box-shadow:inset 0 1px 0 rgba(255,255,255,.72)}
.workout-parts legend{margin-inline-start:8px}
.workout-parts-head,.workout-part-row{gap:10px}
.workout-part-row{padding:12px;border-radius:16px;background:rgba(246,240,228,.72)}
.workout-parts [data-running-parts-list]{display:grid;gap:10px}
.workout-parts [data-add-running-part]{justify-self:start;min-width:130px}
[data-running-parts-summary]{margin-top:2px!important}
.workout-strength-exercise-card{padding:18px;border-radius:18px;background:rgba(255,254,250,.88)}
.workout-strength-exercise-card header{padding-bottom:10px;border-bottom:1px solid rgba(36,75,59,.08);margin-bottom:12px}
.workout-strength-exercise-card p{margin-bottom:14px}
.workout-strength-sets-head{padding:0 10px 6px;gap:10px}
.workout-strength-set-row{padding:12px;gap:10px;border-radius:16px;background:rgba(246,240,228,.72)}
.workout-strength-exercise-card [data-strength-sets-list]{display:grid;gap:10px}
.workout-strength-exercise-card [data-add-strength-set],.workout-day-form [data-add-strength-exercise]{justify-self:start;min-width:150px;text-align:center}
.workout-day-entry{padding:17px;border-radius:18px;margin-top:12px;background:rgba(255,254,250,.82)}
.workout-day-entry>div:last-child{gap:10px;margin-top:14px}
.workout-day-entry ul{line-height:2}
.workout-calendar{padding:20px;margin-top:4px}
.workout-calendar .sports-calendar-controls{gap:14px;margin-bottom:18px}
.workout-calendar .sports-calendar-controls h3{color:var(--forest);line-height:1.7}
.workout-calendar-grid{gap:10px}
.workout-calendar-day,.workout-calendar-empty{min-height:96px;padding:12px;border-radius:16px}
.workout-calendar-day small{margin-top:16px;max-width:100%;line-height:1.5}
.workout-calendar-day.has-workout:not(.has-multiple-categories){background:linear-gradient(145deg,color-mix(in srgb,var(--workout-color,#2f7d32) 88%,white),color-mix(in srgb,var(--workout-color,#2f7d32) 72%,black))!important}
.workout-calendar-day.has-multiple-categories{background:linear-gradient(145deg,rgba(255,254,250,.82),rgba(246,238,221,.74))!important;border-color:rgba(36,75,59,.16)!important;color:var(--ink)!important;box-shadow:0 12px 22px rgba(32,56,47,.1)}
.workout-calendar-day.has-multiple-categories::before{content:"";position:absolute;inset-inline:0;top:0;height:9px;border-radius:16px 16px 0 0;background:linear-gradient(90deg,var(--workout-stripes))}
.workout-calendar-day.has-multiple-categories b{color:var(--forest)!important}
.workout-calendar-day.has-multiple-categories small{color:#516154!important;font-weight:900}
.workout-calendar-segments{position:absolute;inset-inline-start:10px;bottom:10px;display:flex!important;gap:4px;margin:0!important}
.workout-calendar-segments span{width:12px;height:12px;border-radius:999px;background:var(--segment-color);box-shadow:0 0 0 2px rgba(255,255,255,.72);margin:0!important}
.workout-calendar-day.has-multiple-categories em{background:rgba(36,75,59,.12);color:var(--forest)}
.workout-calendar-day.has-workout:not(.has-multiple-categories) .workout-calendar-segments{display:none!important}
@media(max-width:900px){.workout-planner-page .workout-generator-form,.workout-planner-page .workout-day-form,.workout-calendar{padding:18px}.workout-calendar-grid{gap:8px}.workout-calendar-day,.workout-calendar-empty{min-height:86px}.workout-parts,.workout-strength-exercise-card{padding:14px}}
@media(max-width:560px){.workout-day-form{gap:14px}.workout-calendar-day,.workout-calendar-empty{min-height:80px}.workout-day-form input,.workout-day-form select,.workout-day-form textarea{min-height:42px}.workout-parts [data-add-running-part],.workout-strength-exercise-card [data-add-strength-set],.workout-day-form [data-add-strength-exercise]{width:100%}}


/* Workout planner background simplification only */
.workout-planner-page{background:linear-gradient(180deg,rgba(229,212,182,.26),rgba(255,250,239,.32));border-radius:22px}
.workout-planner-page .workout-day-form{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
.workout-planner-page .workout-day-form h3{border-bottom-color:rgba(36,75,59,.08)}
.workout-planner-page .workout-day-form input,.workout-planner-page .workout-day-form select,.workout-planner-page .workout-day-form textarea{background:rgba(255,254,250,.86)}
.workout-planner-page .workout-parts{background:rgba(255,254,250,.58)}
.workout-planner-page .workout-strength-exercise-card,.workout-planner-page .workout-day-entry{background:rgba(255,254,250,.72)}

/* Workout day/type row alignment only */
.workout-day-form{grid-template-columns:repeat(2,minmax(0,1fr))}
.workout-day-form>h3,.workout-day-form>[data-workout-summary],.workout-day-form>.community-check,.workout-day-form>.community-form-note,.workout-day-form>input[type="hidden"]{grid-column:1/-1}
.workout-day-form>[data-workout-dynamic]{display:contents!important}
.workout-day-form>[data-workout-dynamic]>label{grid-column:auto;width:100%}
.workout-day-form>[data-workout-dynamic]>[data-category-fields]{grid-column:1/-1;width:100%}
.workout-day-form>[data-workout-save],.workout-day-form>[data-workout-cancel],.workout-day-form>[data-workout-add-same-day]{justify-self:start}
@media(max-width:700px){.workout-day-form{grid-template-columns:1fr}.workout-day-form>[data-workout-dynamic]>label{grid-column:1/-1}}

/* Put day/category/running type/environment on one desktop row */
.workout-day-form{grid-template-columns:repeat(4,minmax(0,1fr))}
.workout-day-form>[data-workout-dynamic]>[data-category-fields]{display:contents!important}
.workout-day-form>[data-workout-dynamic]>[data-category-fields]>.workout-parts,
.workout-day-form>[data-workout-dynamic]>[data-category-fields]>fieldset,
.workout-day-form>[data-workout-dynamic]>[data-category-fields]>[data-strength-exercise-select],
.workout-day-form>[data-workout-dynamic]>[data-category-fields]>[data-strength-exercises-list],
.workout-day-form>[data-workout-dynamic]>[data-category-fields]>[data-add-strength-exercise]{grid-column:1/-1;width:100%}
@media(max-width:1050px){.workout-day-form{grid-template-columns:repeat(2,minmax(0,1fr))}.workout-day-form>[data-workout-dynamic]>[data-category-fields]{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.workout-day-form{grid-template-columns:1fr}.workout-day-form>[data-workout-dynamic]>[data-category-fields]{grid-template-columns:1fr!important}}

/* Desktop override for four workout selectors in one row */
@media(min-width:900px){
  .workout-day-form{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]{display:contents!important}
}

/* Workout details transparent area and refined running parts card */
.workout-planner-page .workout-day-form{background:transparent!important;border:0!important;box-shadow:none!important}
.workout-planner-page .workout-day-form::before,.workout-planner-page .workout-day-form::after{content:none!important}
.workout-parts{background:rgba(255,254,250,.92)!important;border:1px solid rgba(36,75,59,.14)!important;border-radius:16px!important;padding:14px!important;box-shadow:0 6px 16px rgba(32,56,47,.04)!important;gap:8px!important}
.workout-parts legend{float:right;padding:0 4px;margin:0 0 8px!important;color:var(--forest);font-size:13px;font-weight:900;line-height:1.5;text-align:right}
.workout-parts::after{content:"";display:block;clear:both}
.workout-parts-head{clear:both;grid-template-columns:132px minmax(220px,1.7fr) 64px 102px 64px 82px 64px!important;gap:8px!important;align-items:end;padding:0 4px 2px;color:#627064;font-size:10px;font-weight:900;line-height:1.45;text-align:right}
.workout-part-row{grid-template-columns:132px minmax(220px,1.7fr) 64px 102px 64px 82px 64px!important;gap:8px!important;align-items:center;padding:8px!important;border-radius:14px!important;background:rgba(246,240,228,.42)!important;border:1px solid rgba(36,75,59,.08)!important}
.workout-part-row input,.workout-part-row select{min-height:36px;padding:7px 9px;font-size:11px;border-radius:11px}
.workout-part-row [data-part-description]{min-width:0}
.workout-part-row [data-part-zone],.workout-part-row [data-part-rpe]{min-width:58px}
.workout-part-row [data-remove-running-part]{padding:7px 10px!important;min-width:0!important;font-size:10px!important;justify-self:center;background:rgba(255,250,239,.82)!important}
.workout-parts [data-add-running-part]{margin-top:2px;padding:8px 12px!important;min-width:120px!important;width:auto!important;justify-self:start;font-size:11px!important}
.workout-parts [data-running-parts-summary]{margin:2px 0 0!important;padding:7px 10px!important;border-radius:10px!important;background:rgba(36,75,59,.06)!important;color:#516154!important;font-size:10.5px!important;font-weight:700!important;line-height:1.7!important;box-shadow:none!important}
.workout-parts [data-running-parts-summary].is-warning{background:rgba(161,74,45,.1)!important;color:#8f3f25!important}
@media(max-width:900px){.workout-parts-head{display:none}.workout-part-row{grid-template-columns:1fr!important}.workout-part-row [data-remove-running-part]{justify-self:start}.workout-parts legend{float:none;display:block}}

/* Equipment hub: exactly three equal cards */
.equipment-hub .category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:100%}
.equipment-hub .category-card{min-width:0;width:100%;min-height:118px;border-radius:16px;padding:20px;align-items:center}
.equipment-hub .category-card .category-arrow{margin-inline-start:auto;margin-inline-end:0}
@media(max-width:820px){.equipment-hub .category-grid{grid-template-columns:1fr;gap:12px}.equipment-hub .category-card{min-height:96px}}

/* Equipment hub card typography increase */
.equipment-hub .category-card b{font-size:18px;line-height:1.5}
.equipment-hub .category-card small{font-size:12px;line-height:1.8;margin-top:6px}
.equipment-hub .category-icon{font-size:24px}

/* Equipment hub stronger card typography */
.equipment-hub .category-card b{font-size:22px!important;line-height:1.45;font-weight:900}
.equipment-hub .category-card small{font-size:14px!important;line-height:1.9;margin-top:8px;color:#5f6d61}
.equipment-hub .category-icon{width:54px;height:54px;font-size:28px!important}
.equipment-hub .category-arrow{font-size:20px}

/* Equipment hub cards: use page background directly */
.equipment-hub .category-card{background:transparent!important;box-shadow:none!important}

/* Equipment hub: no intermediate background between cards */
.equipment-hub,.equipment-hub .category-grid{background:transparent!important;box-shadow:none!important;border:0!important}
.equipment-hub{padding:0!important}
.equipment-hub .category-card{background:transparent!important}

/* Equipment hub cards subtle light background only */
.equipment-hub .category-card{background:rgba(255,250,239,.32)!important;border:1px solid rgba(36,75,59,.09)!important;box-shadow:none!important}

/* Workouts landing cards align with the equipment hub cards */
.workouts-choice-page,
.workouts-choice-page .category-grid{
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}
.workouts-choice-page{
  padding:0!important;
}
.workouts-choice-page .category-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  width:100%;
}
.workouts-choice-page .category-card{
  min-width:0;
  width:100%;
  min-height:118px;
  border-radius:16px;
  padding:20px;
  align-items:center;
  background:rgba(255,250,239,.32)!important;
  border:1px solid rgba(36,75,59,.09)!important;
  box-shadow:none!important;
}
.workouts-choice-page .category-card .category-arrow{
  margin-inline-start:auto;
  margin-inline-end:0;
  font-size:20px;
}
.workouts-choice-page .category-card b{
  font-size:22px!important;
  line-height:1.45;
  font-weight:900;
}
.workouts-choice-page .category-card small{
  font-size:14px!important;
  line-height:1.9;
  margin-top:8px;
  color:#5f6d61;
}
.workouts-choice-page .category-icon{
  width:54px;
  height:54px;
  font-size:28px!important;
}
@media(max-width:820px){
  .workouts-choice-page .category-grid{grid-template-columns:1fr;gap:12px}
  .workouts-choice-page .category-card{min-height:96px}
}

/* Workout calendar surrounding area cleanup */
.workout-planner-page{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.workout-calendar-title{
  margin:0 0 12px;
  color:var(--forest);
  font-size:24px;
  line-height:1.6;
  font-weight:900;
  text-align:start;
}

/* Center workout calendar title */
.workout-calendar-title{
  text-align:center!important;
}

/* Compact reminder checkbox inside workout form */
.workout-day-form>.community-check{
  justify-self:start;
  width:auto;
  max-width:min(100%,520px);
  min-height:44px;
  padding:9px 13px!important;
  border:1px solid rgba(36,75,59,.14)!important;
  border-radius:14px!important;
  background:rgba(255,254,250,.86)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
.workout-day-form>.community-check span{
  line-height:1.6;
}

/* Workout day saved entries grid */
.workout-day-form [data-workout-summary]{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.workout-day-form [data-workout-summary]>h4,
.workout-day-form [data-workout-summary]>.community-form-note{
  grid-column:1/-1;
  margin:0;
}
.workout-day-form [data-workout-summary]>h4{
  color:var(--forest);
  font-size:17px;
  line-height:1.6;
  font-weight:900;
}
.workout-day-form .workout-day-entry{
  margin-top:0!important;
  min-height:100%;
  padding:15px!important;
  display:flex;
  flex-direction:column;
  gap:9px;
  font-size:12px;
  line-height:1.8;
}
.workout-day-form .workout-day-entry b,
.workout-day-form .workout-day-entry strong{
  font-size:13px;
  line-height:1.7;
}
.workout-day-form .workout-day-entry ul{
  margin:4px 0 0!important;
  padding-inline-start:18px;
  font-size:12px!important;
  line-height:1.8!important;
}
.workout-day-form .workout-day-entry>div:last-child{
  margin-top:auto!important;
  gap:8px!important;
}
.workout-day-form .workout-day-entry .secondary-button{
  padding:7px 11px;
  font-size:11px;
}
@media(max-width:980px){
  .workout-day-form [data-workout-summary]{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .workout-day-form [data-workout-summary]{grid-template-columns:1fr}
}



/* Show workout fields only when adding or editing a saved day */
.workout-day-form.is-summary-only>label:not(.community-check),
.workout-day-form.is-summary-only>[data-workout-dynamic],
.workout-day-form.is-summary-only>[data-workout-save],
.workout-day-form.is-summary-only>[data-workout-cancel],
.workout-day-form.is-summary-only>.community-check,
.workout-day-form.is-summary-only>.community-form-note{
  display:none!important;
}
.workout-day-form.is-summary-only>[data-workout-add-same-day]{
  grid-column:1/-1;
  justify-self:start;
}

/* Calendar add marker and add-form title behavior */
.workout-calendar-day .workout-calendar-add{
  position:absolute;
  inset-inline-end:9px;
  top:9px;
  width:24px;
  height:24px;
  border-radius:999px;
  display:grid!important;
  place-items:center;
  background:rgba(255,254,250,.88);
  color:var(--forest)!important;
  border:1px solid rgba(36,75,59,.16);
  font-size:16px!important;
  line-height:1!important;
  font-weight:900;
  margin:0!important;
}
.workout-calendar-day.has-workout .workout-calendar-add{
  background:rgba(255,255,255,.22);
  color:#fff!important;
  border-color:rgba(255,255,255,.36);
}
.workout-calendar-day.has-multiple-categories .workout-calendar-add{
  background:rgba(36,75,59,.1);
  color:var(--forest)!important;
  border-color:rgba(36,75,59,.16);
}
.workout-calendar-day .workout-calendar-add:hover{
  transform:scale(1.06);
}
.workout-day-form.is-summary-only>h3{
  display:none!important;
}

/* Make add workout button match save button */
.workout-day-form [data-workout-add-same-day]{
  border:0!important;
  border-radius:999px!important;
  background:var(--forest)!important;
  color:#fff!important;
  padding:11px 18px!important;
  font-weight:900!important;
  box-shadow:0 10px 20px rgba(36,75,59,.14)!important;
}
.workout-day-form [data-workout-add-same-day]:hover{
  background:#1d3f31!important;
}

/* Place calendar add marker opposite the day number */
.workout-calendar-day .workout-calendar-add{
  inset-inline-end:auto!important;
  inset-inline-start:9px!important;
}

/* Light UX polish for workout logging review/add flow */
.workout-calendar-day .workout-calendar-add::after{
  content:"إضافة تمرين";
  position:absolute;
  inset-inline-start:50%;
  top:calc(100% + 6px);
  transform:translateX(-50%);
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  background:rgba(36,75,59,.95);
  color:#fff;
  border-radius:999px;
  padding:4px 8px;
  font-size:10px;
  line-height:1.4;
  box-shadow:0 8px 18px rgba(32,56,47,.16);
  z-index:4;
}
.workout-calendar-day .workout-calendar-add:hover::after,
.workout-calendar-day .workout-calendar-add:focus-visible::after{
  opacity:1;
}
.workout-empty-day{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  border:1px dashed rgba(36,75,59,.18);
  border-radius:16px;
  background:rgba(255,254,250,.62);
}
.workout-empty-day p{
  margin:0;
  color:#5f6d61;
  font-size:13px;
  line-height:1.8;
}
.workout-empty-day .primary-button{
  white-space:nowrap;
}
.workout-day-form [data-workout-summary]>h4{
  display:flex;
  align-items:center;
  gap:8px;
}
.workout-day-form [data-workout-summary]>h4::before{
  content:"";
  width:10px;
  height:10px;
  border-radius:999px;
  background:var(--forest);
}
.workout-day-form .workout-day-entry{
  position:relative;
  overflow:hidden;
}
.workout-day-form .workout-day-entry::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:0;
  bottom:0;
  width:5px;
  background:var(--workout-color,#d9c7a1);
}
.workout-day-form .workout-day-entry>div:last-child{
  padding-top:8px;
  border-top:1px solid rgba(36,75,59,.08);
}
@media(max-width:620px){
  .workout-empty-day{align-items:stretch;flex-direction:column}
  .workout-empty-day .primary-button{width:100%;text-align:center}
}

/* Harmonize workout action buttons and reminder box */
.workout-day-form [data-workout-save],
.workout-day-form [data-workout-add-same-day],
.workout-empty-day .primary-button{
  font-size:12px!important;
  line-height:1.6!important;
  min-height:42px;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:6px;
}
.workout-day-form>.community-check{
  position:relative;
  padding:10px 14px!important;
  gap:10px!important;
  background:linear-gradient(135deg,rgba(255,254,250,.9),rgba(246,238,221,.72))!important;
  border-color:rgba(36,75,59,.16)!important;
}
.workout-day-form>.community-check input{
  width:17px!important;
  height:17px;
  flex:0 0 auto;
}
.workout-day-form>.community-check span{
  color:#43584c;
  font-size:12px;
  font-weight:800;
}
.workout-day-form>.community-check::before{
  content:"✉";
  width:26px;
  height:26px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(36,75,59,.08);
  color:var(--forest);
  font-size:13px;
  flex:0 0 auto;
}

/* Stronger running field labels, keep inputs unchanged */
.workout-day-form [data-category-fields]>label,
.workout-day-form [data-workout-dynamic]>label{
  color:var(--ink)!important;
  font-weight:900!important;
}
.workout-day-form [data-category-fields]>label input,
.workout-day-form [data-category-fields]>label select,
.workout-day-form [data-category-fields]>label textarea,
.workout-day-form [data-workout-dynamic]>label select{
  color:var(--ink);
  font-weight:500!important;
}

/* Force workout form labels to appear as titles */
.workout-day-form label{
  color:#1f332b!important;
  font-weight:900!important;
}
.workout-day-form label>select,
.workout-day-form label>input,
.workout-day-form label textarea,
.workout-day-form .workout-duration-pair input,
.workout-day-form .workout-duration-pair select{
  color:var(--ink)!important;
  font-weight:500!important;
}

/* Explicit running field title styling */
.workout-field-title{
  display:block;
  color:#1f332b!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1.7!important;
  margin-bottom:2px;
}

/* Avoid duplicate add buttons on empty workout day */
.workout-day-form:not(.is-summary-only) .workout-empty-day + [data-workout-save] + [data-workout-cancel] + [data-workout-add-same-day],
.workout-day-form:not(.is-summary-only) .workout-empty-day ~ [data-workout-add-same-day]{
  display:none!important;
}

/* Hide duplicate add button when the selected day is empty */
.workout-day-form.has-empty-workout-day>[data-workout-add-same-day]{
  display:none!important;
}

/* Stable visual system for equipment and workout pages */
#app[data-route="equipment-workouts"],
.equipment-hub,
.workouts-choice-page,
.workout-request-page,
.workout-planner-page{
  --ui-space-1:8px;
  --ui-space-2:12px;
  --ui-space-3:16px;
  --ui-space-4:24px;
  --ui-space-5:32px;
  --ui-radius-sm:12px;
  --ui-radius-md:16px;
  --ui-radius-lg:22px;
  --ui-field-bg:rgba(255,254,250,.9);
  --ui-card-bg:rgba(255,254,250,.72);
  --ui-border:rgba(36,75,59,.14);
  --ui-border-soft:rgba(36,75,59,.09);
  --ui-text:#20382f;
  --ui-muted:#5f6d61;
  --ui-danger:#a74b42;
}
#app[data-route="equipment-workouts"] .page-intro h1,
.section[id="equipment"] .page-intro h1{
  font-size:clamp(32px,4vw,38px);
  line-height:1.35;
  font-weight:900;
}
.equipment-hub .category-card,
.workouts-choice-page .category-card{
  gap:var(--ui-space-3);
  padding:var(--ui-space-4)!important;
  border-radius:var(--ui-radius-md)!important;
  border-color:var(--ui-border-soft)!important;
}
.equipment-hub .category-card b,
.workouts-choice-page .category-card b{
  font-size:22px!important;
  line-height:1.45!important;
  font-weight:900!important;
  color:var(--ui-text);
}
.equipment-hub .category-card small,
.workouts-choice-page .category-card small{
  font-size:14px!important;
  line-height:1.85!important;
  color:var(--ui-muted)!important;
}
.workout-calendar-title{
  margin:0 0 var(--ui-space-3)!important;
  font-size:24px!important;
  line-height:1.5!important;
  font-weight:900!important;
}
.workout-planner-page{
  gap:var(--ui-space-4)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.workout-calendar{
  padding:var(--ui-space-4)!important;
  border-radius:var(--ui-radius-lg)!important;
  border-color:var(--ui-border)!important;
}
.workout-calendar .sports-calendar-controls{
  margin-bottom:var(--ui-space-3)!important;
  gap:var(--ui-space-3)!important;
}
.workout-calendar .sports-calendar-controls h3{
  font-size:18px;
  line-height:1.5;
  font-weight:900;
}
.workout-calendar .sports-calendar-controls button{
  min-height:38px;
  padding:8px 14px!important;
  font-size:12px;
  line-height:1.5;
}
.workout-calendar-grid{
  gap:var(--ui-space-2)!important;
}
.workout-calendar-day,
.workout-calendar-empty{
  padding:var(--ui-space-2)!important;
  border-radius:var(--ui-radius-md)!important;
}
.workout-calendar-day b{
  font-size:13px!important;
  line-height:1.4;
  font-weight:900;
}
.workout-calendar-day small{
  margin-top:var(--ui-space-4)!important;
  font-size:10.5px!important;
  line-height:1.45!important;
}
.workout-calendar-day em{
  inset-inline-end:var(--ui-space-2)!important;
  bottom:var(--ui-space-2)!important;
  font-size:10px!important;
  line-height:1.4!important;
}
.workout-calendar-day .workout-calendar-add{
  inset-inline-start:var(--ui-space-2)!important;
  top:var(--ui-space-2)!important;
  width:24px!important;
  height:24px!important;
}
.workout-calendar-segments{
  inset-inline-start:var(--ui-space-2)!important;
  bottom:var(--ui-space-2)!important;
  gap:4px!important;
}
.workout-day-form{
  gap:var(--ui-space-3)!important;
  margin-top:var(--ui-space-4)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.workout-day-form h3{
  margin:0 0 var(--ui-space-1)!important;
  padding:0 0 var(--ui-space-2)!important;
  color:var(--forest)!important;
  font-size:20px!important;
  line-height:1.5!important;
  font-weight:900!important;
  border-bottom:1px solid rgba(36,75,59,.08)!important;
}
.workout-day-form label,
.workout-day-form [data-category-fields]>label,
.workout-day-form [data-workout-dynamic]>label,
.workout-strength-exercise-card label{
  gap:var(--ui-space-1)!important;
  color:var(--ui-text)!important;
  font-size:13px!important;
  line-height:1.55!important;
  font-weight:900!important;
}
.workout-day-form input,
.workout-day-form select,
.workout-day-form textarea,
.workout-request-page input,
.workout-request-page select,
.workout-request-page textarea{
  min-height:42px!important;
  padding:9px 12px!important;
  border:1px solid var(--ui-border)!important;
  border-radius:var(--ui-radius-sm)!important;
  background:var(--ui-field-bg)!important;
  color:var(--ui-text)!important;
  font-size:12.5px!important;
  line-height:1.5!important;
  font-weight:500!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.workout-day-form input:focus,
.workout-day-form select:focus,
.workout-day-form textarea:focus,
.workout-request-page input:focus,
.workout-request-page select:focus,
.workout-request-page textarea:focus{
  outline:2px solid rgba(82,110,83,.24)!important;
  outline-offset:2px;
  border-color:rgba(36,75,59,.36)!important;
  background:#fffefa!important;
}
.workout-duration-pair{
  gap:var(--ui-space-1)!important;
}
.workout-field-title{
  margin-bottom:var(--ui-space-1)!important;
  color:var(--ui-text)!important;
  font-size:13px!important;
  line-height:1.55!important;
  font-weight:900!important;
}
.workout-day-form [data-category-fields],
.workout-day-form [data-workout-dynamic]{
  gap:var(--ui-space-3)!important;
}
.workout-parts,
.workout-strength-exercise-card,
.workout-day-entry,
.workout-empty-day{
  border:1px solid var(--ui-border)!important;
  border-radius:var(--ui-radius-md)!important;
  background:var(--ui-card-bg)!important;
  box-shadow:0 8px 20px rgba(32,56,47,.045)!important;
}
.workout-parts{
  padding:var(--ui-space-4)!important;
  margin-top:var(--ui-space-1)!important;
}
.workout-parts legend{
  padding:0 var(--ui-space-1)!important;
  color:var(--forest)!important;
  font-size:16px!important;
  line-height:1.5!important;
  font-weight:900!important;
}
.workout-parts-head,
.workout-part-row{
  gap:var(--ui-space-2)!important;
  align-items:end!important;
}
.workout-parts-head{
  margin-bottom:var(--ui-space-2)!important;
  color:var(--ui-muted)!important;
  font-size:11px!important;
  font-weight:900!important;
}
.workout-part-row{
  padding:var(--ui-space-2) 0!important;
  border-top:1px solid rgba(36,75,59,.06);
}
.workout-part-row:first-of-type{
  border-top:0;
}
.workout-part-row [data-part-description]{
  min-width:220px;
}
.workout-parts [data-running-parts-summary]{
  margin:var(--ui-space-3) 0 0!important;
  padding:var(--ui-space-2) var(--ui-space-3)!important;
  border-radius:var(--ui-radius-sm)!important;
  background:rgba(36,75,59,.055)!important;
  color:#4f6155!important;
  font-size:12px!important;
  line-height:1.75!important;
}
.workout-day-form .primary-button,
.workout-day-form [data-workout-save],
.workout-empty-day .primary-button{
  min-height:42px!important;
  padding:10px 18px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--forest)!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1.6!important;
  font-weight:900!important;
  box-shadow:0 8px 18px rgba(36,75,59,.14)!important;
}
.workout-day-form .secondary-button,
.workout-parts .secondary-button,
.workout-strength-exercise-card .secondary-button{
  min-height:38px!important;
  padding:8px 13px!important;
  border:1px solid rgba(36,75,59,.16)!important;
  border-radius:999px!important;
  background:rgba(255,250,239,.72)!important;
  color:var(--forest)!important;
  font-size:11.5px!important;
  line-height:1.5!important;
  font-weight:900!important;
  box-shadow:none!important;
}
.workout-day-entry [data-delete-workout-entry],
.workout-strength-exercise-card [data-remove-strength-exercise],
.workout-strength-exercise-card [data-remove-strength-set],
.workout-parts [data-remove-running-part]{
  border-color:rgba(167,75,66,.24)!important;
  background:rgba(167,75,66,.075)!important;
  color:var(--ui-danger)!important;
}
.workout-day-form>.community-check{
  max-width:min(100%,560px)!important;
  min-height:42px!important;
  padding:10px 14px!important;
  border-radius:var(--ui-radius-sm)!important;
  border-color:var(--ui-border)!important;
}
.workout-day-form>.community-check::before{
  content:"✉";
  width:24px!important;
  height:24px!important;
  font-size:12px!important;
}
.workout-day-form>.community-check span{
  font-size:12px!important;
  line-height:1.7!important;
}
.workout-day-form [data-workout-summary]{
  gap:var(--ui-space-3)!important;
}
.workout-day-form [data-workout-summary]>h4{
  margin:0!important;
  color:var(--forest)!important;
  font-size:18px!important;
  line-height:1.55!important;
  font-weight:900!important;
}
.workout-day-entry{
  padding:var(--ui-space-3)!important;
  gap:var(--ui-space-2)!important;
  font-size:12px!important;
  line-height:1.75!important;
}
.workout-day-entry>b,
.workout-day-entry>strong,
.workout-day-entry h5{
  color:var(--forest)!important;
  font-size:14px!important;
  line-height:1.55!important;
  font-weight:900!important;
}
.workout-day-entry ul{
  margin:var(--ui-space-1) 0 0!important;
  padding-inline-start:18px!important;
  color:#526258!important;
  font-size:12px!important;
  line-height:1.75!important;
}
.workout-day-entry>div:last-child{
  margin-top:auto!important;
  padding-top:var(--ui-space-2)!important;
  border-top:1px solid rgba(36,75,59,.08)!important;
}
.workout-strength-exercise-card{
  padding:var(--ui-space-3)!important;
  display:grid;
  gap:var(--ui-space-2)!important;
}
.workout-strength-exercise-card header{
  gap:var(--ui-space-2)!important;
}
.workout-strength-exercise-card h5{
  margin:0!important;
  color:var(--forest)!important;
  font-size:15px!important;
  line-height:1.55!important;
  font-weight:900!important;
}
.workout-strength-exercise-card p{
  margin:0!important;
  color:var(--ui-muted)!important;
  font-size:12px!important;
  line-height:1.7!important;
}
.workout-strength-sets-head,
.workout-strength-set-row{
  gap:var(--ui-space-2)!important;
}
.workout-strength-sets-head{
  color:var(--ui-muted)!important;
  font-size:11px!important;
  font-weight:900!important;
}
.workout-strength-set-row{
  padding:var(--ui-space-2) 0!important;
  border-top:1px solid rgba(36,75,59,.06);
}
.workout-strength-set-row b[data-strength-set-number]{
  color:var(--forest)!important;
  font-size:12px!important;
  font-weight:900!important;
}
.workout-request-page .workout-generator-form{
  padding:var(--ui-space-4)!important;
  border-radius:var(--ui-radius-lg)!important;
  border-color:var(--ui-border)!important;
  background:rgba(255,254,250,.54)!important;
}
.workout-request-page .community-form-grid{
  gap:var(--ui-space-3)!important;
}
.workout-request-page .community-results-heading{
  margin-bottom:var(--ui-space-3)!important;
}
@media(max-width:1050px){
  .workout-day-form{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .workout-calendar-day,.workout-calendar-empty{min-height:86px!important}
}
@media(max-width:760px){
  .workout-calendar{padding:var(--ui-space-3)!important}
  .workout-calendar-grid{gap:var(--ui-space-1)!important}
  .workout-calendar-day,.workout-calendar-empty{min-height:78px!important;padding:10px!important}
  .workout-calendar-day small{font-size:10px!important;margin-top:22px!important}
  .workout-day-form{grid-template-columns:1fr!important;gap:var(--ui-space-3)!important}
  .workout-day-form [data-category-fields],
  .workout-day-form [data-workout-dynamic]{grid-template-columns:1fr!important}
  .workout-parts{padding:var(--ui-space-3)!important}
  .workout-part-row,
  .workout-strength-set-row{grid-template-columns:1fr!important}
  .workout-parts-head,
  .workout-strength-sets-head{display:none!important}
}
@media(max-width:560px){
  .equipment-hub .category-grid,
  .workouts-choice-page .category-grid{grid-template-columns:1fr!important}
  .equipment-hub .category-card,
  .workouts-choice-page .category-card{padding:var(--ui-space-3)!important}
  .equipment-hub .category-card b,
  .workouts-choice-page .category-card b{font-size:19px!important}
  .workout-calendar-title{font-size:22px!important}
  .workout-calendar .sports-calendar-controls{gap:var(--ui-space-1)!important}
  .workout-calendar .sports-calendar-controls button{padding:7px 10px!important;font-size:11px!important}
  .workout-calendar .sports-calendar-controls h3{font-size:15px!important;min-width:auto!important}
}

/* Strength section visual simplification: reduce nested-card feel */
.workout-day-form [data-category-fields]>[data-strength-exercise-select],
.workout-day-form [data-category-fields]>[data-strength-exercises-list]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.workout-day-form [data-strength-exercises-list]{
  gap:16px!important;
}
.workout-strength-exercise-card{
  background:rgba(255,254,250,.46)!important;
  border:1px solid rgba(36,75,59,.1)!important;
  box-shadow:none!important;
  border-radius:16px!important;
  padding:16px!important;
}
.workout-strength-exercise-card header{
  margin:0 0 4px!important;
  padding:0!important;
  border:0!important;
}
.workout-strength-exercise-card h5{
  margin:0!important;
}
.workout-strength-exercise-card>p{
  margin:0!important;
}
.workout-strength-sets-head{
  margin-top:8px!important;
  padding:8px 0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.workout-strength-set-row{
  background:transparent!important;
  border:0!important;
  border-top:1px solid rgba(36,75,59,.08)!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:10px 0!important;
}
.workout-strength-set-row:first-of-type{
  border-top:1px solid rgba(36,75,59,.08)!important;
}
.workout-strength-exercise-card [data-strength-sets-list]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.workout-strength-exercise-card [data-add-strength-set],
.workout-day-form [data-add-strength-exercise]{
  width:auto!important;
  min-width:0!important;
  justify-self:start!important;
  align-self:start!important;
  display:inline-flex!important;
  flex:0 0 auto!important;
}
.workout-strength-exercise-card [data-remove-strength-exercise]{
  width:auto!important;
  justify-self:end!important;
}
.workout-day-form [data-workout-summary]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.workout-day-form .workout-day-entry:has(> b:first-child),
.workout-day-form .workout-day-entry{
  box-shadow:none!important;
}
@supports not selector(:has(*)){
  .workout-day-form .workout-day-entry{box-shadow:none!important}
}

/* Workout form layout density only: width/grid, not field height */
@media(min-width:1100px){
  .workout-day-form{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    column-gap:16px!important;
    row-gap:16px!important;
  }
  .workout-day-form>[data-workout-dynamic]{
    display:contents!important;
  }
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]{
    display:contents!important;
  }
  .workout-day-form>[data-workout-dynamic]>label,
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>label{
    grid-column:auto!important;
    min-width:0!important;
  }
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>.workout-parts,
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>fieldset,
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>[data-strength-exercise-select],
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>[data-strength-exercises-list],
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>[data-add-strength-exercise],
  .workout-day-form>[data-workout-summary],
  .workout-day-form>h3,
  .workout-day-form>.community-check,
  .workout-day-form>.community-form-note,
  .workout-day-form>input[type="hidden"]{
    grid-column:1/-1!important;
  }
  .workout-duration-pair{
    grid-template-columns:repeat(2,minmax(72px,1fr))!important;
  }
  .workout-parts-head,
  .workout-part-row{
    grid-template-columns:minmax(128px,.8fr) minmax(260px,1.8fr) minmax(62px,.45fr) minmax(104px,.75fr) minmax(62px,.45fr) minmax(86px,.6fr) auto!important;
  }
  .workout-strength-sets-head,
  .workout-strength-set-row{
    grid-template-columns:auto repeat(auto-fit,minmax(86px,1fr)) auto!important;
  }
}
@media(min-width:760px) and (max-width:1099px){
  .workout-day-form{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:16px!important;
    row-gap:16px!important;
  }
  .workout-day-form>[data-workout-dynamic]{display:contents!important}
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]{display:contents!important}
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>.workout-parts,
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>fieldset,
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>[data-strength-exercise-select],
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>[data-strength-exercises-list],
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]>[data-add-strength-exercise],
  .workout-day-form>[data-workout-summary],
  .workout-day-form>h3,
  .workout-day-form>.community-check,
  .workout-day-form>.community-form-note,
  .workout-day-form>input[type="hidden"]{
    grid-column:1/-1!important;
  }
}
@media(max-width:759px){
  .workout-day-form{
    grid-template-columns:1fr!important;
  }
  .workout-day-form>[data-workout-dynamic],
  .workout-day-form>[data-workout-dynamic]>[data-category-fields]{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
}

/* Workout request guidance block */
.workout-request-guidance{
  margin:0 0 24px;
  padding:24px;
  border:1px solid rgba(36,75,59,.12);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(255,254,250,.74),rgba(246,238,221,.54));
  color:var(--ink);
  direction:rtl;
}
.workout-request-guidance h2{
  margin:0 0 16px;
  color:var(--forest);
  font-size:22px;
  line-height:1.5;
  font-weight:900;
}
.workout-request-guidance p{
  margin:0 0 12px;
  color:#4f6155;
  font-size:14px;
  line-height:2;
}
.workout-request-guidance p:last-child{
  margin-bottom:0;
}
.workout-request-guidance strong{
  color:#20382f;
  font-weight:900;
}
.workout-request-methodology{
  margin-top:16px!important;
  padding-top:12px;
  border-top:1px solid rgba(36,75,59,.1);
  color:#6f7b70!important;
  font-size:12px!important;
  line-height:1.8!important;
}
@media(max-width:620px){
  .workout-request-guidance{
    padding:16px;
    border-radius:16px;
  }
  .workout-request-guidance h2{
    font-size:19px;
  }
  .workout-request-guidance p{
    font-size:13px;
    line-height:1.9;
  }
}

/* Compact paragraph styling for workout request guidance */
.workout-request-guidance{
  padding:22px 24px!important;
}
.workout-request-guidance h2{
  margin-bottom:12px!important;
}
.workout-request-guidance p{
  margin:0 0 8px!important;
  max-width:none;
  text-align:justify;
  text-align-last:auto;
  line-height:1.85!important;
}
.workout-request-guidance strong{
  font-weight:800!important;
}
.workout-request-methodology{
  margin-top:12px!important;
  padding-top:10px!important;
  text-align:start!important;
  line-height:1.7!important;
}

/* Workout request guidance edit action */
.workout-request-guidance-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 12px;
}
.workout-request-guidance-head h2{
  margin:0!important;
}
.workout-request-edit-button{
  flex:0 0 auto;
}
@media(max-width:620px){
  .workout-request-guidance-head{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* Make workout request guidance editor action clearly visible */
.workout-request-edit-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 14px;
  border-radius:999px;
  background:#1f6f46;
  color:#fff!important;
  border:1px solid rgba(31,111,70,.18);
  font-weight:800;
  font-size:.92rem;
  line-height:1;
  text-decoration:none!important;
  box-shadow:0 6px 14px rgba(31,111,70,.12);
}
.workout-request-edit-button:hover,
.workout-request-edit-button:focus{
  background:#185a39;
  color:#fff!important;
}

/* Emphasize key workout request guidance paragraphs */
.workout-request-guidance p:nth-of-type(3),
.workout-request-guidance p:nth-of-type(4){
  color:#233428;
  font-weight:800;
}

/* Emphasize the second workout request guidance paragraph as requested */
.workout-request-guidance p:nth-of-type(2){
  color:#233428;
  font-weight:800;
}

/* Highlight the fourth workout request guidance paragraph */
.workout-request-guidance p:nth-of-type(4){
  color:#9f2f24;
  font-weight:850;
}

/* Highlight the key disclaimer paragraph in workout request guidance */
.workout-request-guidance p:nth-of-type(5){
  color:#9f2f24;
  font-weight:850;
}

/* Ensure sports event map controls and markers receive clicks above drag layer */
.sports-event-map-controls,
.sports-event-map-marker{
  pointer-events:auto;
}
.sports-event-map-tiles{
  pointer-events:none;
}
.sports-event-map-markers{
  pointer-events:none;
}
.sports-event-map-markers .sports-event-map-marker{
  pointer-events:auto;
}

/* Match workout request page background with workout log page */
.workout-request-page{
  background:linear-gradient(180deg,rgba(229,212,182,.26),rgba(255,250,239,.32))!important;
  border-radius:22px;
}
.workout-request-page .workout-generator-form{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.workout-request-page .workout-generator-form::before,
.workout-request-page .workout-generator-form::after{
  content:none!important;
}
.workout-request-page input,
.workout-request-page select,
.workout-request-page textarea{
  background:rgba(255,254,250,.86)!important;
}

/* Workout request expanded training inputs */
.workout-request-fieldset{
  border:0;
  margin:0 0 18px;
  padding:0;
}
.workout-request-fieldset legend{
  margin:0 0 12px;
  color:var(--forest);
  font-size:1.05rem;
  font-weight:900;
}
.workout-request-grid{
  grid-template-columns:repeat(4,minmax(150px,1fr));
  gap:14px;
}
.workout-request-inline{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.workout-request-safety-note{
  margin:12px 0 0;
  padding:12px 14px;
  border:1px solid rgba(159,47,36,.22);
  border-radius:14px;
  background:rgba(159,47,36,.08);
  color:#9f2f24;
  font-weight:850;
  line-height:1.9;
}
.workout-request-page [hidden]{display:none!important}
@media(max-width:980px){.workout-request-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.workout-request-grid,.workout-request-inline{grid-template-columns:1fr}}

/* Refined layout for workout request form fields */
.workout-request-page .workout-generator-form{
  display:block;
  padding:4px 2px 10px!important;
}
.workout-request-page .community-results-heading{
  margin:0 0 18px!important;
  padding:0 2px 8px;
  border-bottom:1px solid rgba(36,75,59,.08);
}
.workout-request-fieldset{
  margin:0 0 22px!important;
  padding:18px!important;
  border:1px solid rgba(36,75,59,.10)!important;
  border-radius:18px;
  background:rgba(255,254,250,.34);
}
.workout-request-fieldset legend{
  float:right;
  width:100%;
  margin:0 0 14px!important;
  padding:0;
  color:var(--forest);
  font-size:1.08rem;
  font-weight:900;
  line-height:1.6;
}
.workout-request-fieldset legend + *{
  clear:both;
}
.workout-request-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(165px,1fr))!important;
  gap:16px!important;
  align-items:start;
}
.workout-request-grid label{
  display:flex!important;
  flex-direction:column;
  gap:7px;
  min-width:0;
  color:#233428;
  font-size:.9rem;
  font-weight:850;
  line-height:1.55;
}
.workout-request-page input,
.workout-request-page select,
.workout-request-page textarea{
  width:100%;
  min-height:44px;
  border:1px solid rgba(36,75,59,.16)!important;
  border-radius:13px!important;
  padding:9px 12px!important;
  color:#24372c;
  font-size:.94rem;
  font-weight:700;
}
.workout-request-page input::placeholder{
  color:#899387;
  font-weight:600;
}
.workout-request-inline{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
.workout-request-page .primary-button{
  margin-top:2px;
}
.workout-request-page .community-form-note{
  margin-top:12px;
  line-height:1.8;
}
@media(max-width:1100px){
  .workout-request-grid{grid-template-columns:repeat(3,minmax(160px,1fr))!important}
}
@media(max-width:820px){
  .workout-request-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .workout-request-fieldset{padding:15px!important}
}
@media(max-width:560px){
  .workout-request-grid,.workout-request-inline{grid-template-columns:1fr!important}
  .workout-request-fieldset{padding:14px!important;border-radius:16px}
}

/* Remove only the fill color between workout request fields */
.workout-request-fieldset{
  background:transparent!important;
}

/* Workout request plan preview */
.workout-plan-preview{margin-top:22px}
.workout-plan-result{border:1px solid rgba(36,75,59,.12);border-radius:20px;background:rgba(255,254,250,.64);padding:18px}
.workout-plan-topline{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}
.workout-plan-topline span{display:inline-flex;gap:5px;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(36,75,59,.08);color:#24372c;font-size:.86rem;font-weight:800}
.workout-plan-warnings{display:grid;gap:8px;margin:10px 0 14px}
.workout-plan-warnings p{margin:0;padding:10px 12px;border-radius:14px;background:rgba(159,47,36,.08);border:1px solid rgba(159,47,36,.18);color:#9f2f24;font-weight:850;line-height:1.8}
.workout-plan-week{padding:14px;margin-top:12px;border:1px solid rgba(36,75,59,.10);border-radius:16px;background:rgba(255,255,255,.54)}
.workout-plan-week header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.workout-plan-week h4{margin:0;color:var(--forest)}
.workout-plan-week header span{color:#6b766c;font-weight:850}
.workout-plan-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}
.workout-plan-metrics span{padding:8px 10px;border-radius:12px;background:rgba(229,212,182,.32);font-weight:850;color:#24372c}
.workout-plan-week p{margin:8px 0;line-height:1.8}
.workout-plan-week ul{margin:8px 0 0;padding-inline-start:20px;line-height:1.9}
@media(max-width:760px){.workout-plan-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.workout-plan-week header{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.workout-plan-metrics{grid-template-columns:1fr}}

/* Training plan draft persistence panel */
.workout-plan-drafts{
  margin:18px 0 22px;
  padding:16px;
  border:1px solid rgba(36,75,59,.10);
  border-radius:18px;
  background:rgba(255,254,250,.46);
}
.workout-plan-draft-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px;
  border:1px solid rgba(36,75,59,.10);
  border-radius:15px;
  background:rgba(255,255,255,.62);
  margin-top:10px;
}
.workout-plan-draft-card h3{
  margin:0 0 4px;
  color:var(--forest);
  font-size:1rem;
}
.workout-plan-draft-card p{
  margin:0 0 4px;
  color:#435248;
  font-weight:800;
}
.workout-plan-draft-card small{
  color:#6b766c;
  line-height:1.7;
}
.workout-plan-draft-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  flex:0 0 auto;
}
.danger-button{
  border:1px solid rgba(159,47,36,.18);
  border-radius:999px;
  background:rgba(159,47,36,.08);
  color:#9f2f24;
  padding:9px 14px;
  font-weight:900;
  cursor:pointer;
}
.danger-button:hover,.danger-button:focus-visible{
  background:#9f2f24;
  color:#fff;
}
.workout-plan-saved-message{
  margin:0 0 12px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(31,111,70,.10);
  border:1px solid rgba(31,111,70,.20);
  color:#1f6f46;
  font-weight:900;
}
@media(max-width:720px){.workout-plan-draft-card{align-items:flex-start;flex-direction:column}.workout-plan-draft-actions{width:100%}}

.workout-plan-draft-links{
  display:flex;
  justify-content:flex-start;
  margin:0 0 14px;
}
.workout-plan-preview-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:14px 0;
}
.workout-plan-preview-actions .primary-button,
.workout-plan-preview-actions .secondary-button,
.workout-plan-draft-links .secondary-button{
  width:auto;
  min-width:140px;
  justify-content:center;
  text-decoration:none;
}
.workout-plan-export-panel{
  margin:14px 0 18px;
  padding:16px;
  border:1px solid rgba(36,75,59,.12);
  border-radius:16px;
  background:rgba(255,250,239,.72);
}
.workout-plan-export-panel label{
  display:grid;
  gap:8px;
  color:var(--forest);
  font-weight:700;
}
.workout-plan-export-panel input{
  width:min(100%, 520px);
}
.workout-plan-message-success{
  border-color:rgba(44,123,82,.22);
  background:rgba(231,244,235,.92);
  color:#235d3e;
}
.workout-plan-message-error{
  border-color:rgba(174,70,58,.22);
  background:rgba(255,238,235,.9);
  color:#9d3529;
}
.workout-plan-message-info{
  border-color:rgba(36,75,59,.16);
}
.workout-plan-export-view{
  margin-top:18px;
}
.workout-plan-json-view{
  direction:ltr;
  text-align:left;
  white-space:pre-wrap;
  overflow:auto;
  max-height:520px;
  padding:14px;
  border-radius:14px;
  border:1px solid rgba(36,75,59,.12);
  background:rgba(255,255,255,.78);
  color:#253128;
  font-size:.86rem;
}
@media(max-width:620px){
  .workout-plan-preview-actions .primary-button,
  .workout-plan-preview-actions .secondary-button,
  .workout-plan-draft-links .secondary-button{
    width:100%;
  }
}

.workout-landing-drafts{
  margin-top:22px;
}
.workout-landing-drafts .workout-plan-draft-card{
  background:rgba(255,250,239,.72);
}

.trail-plan-week-table header p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:.9rem;
}
.trail-plan-week-notes{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:10px 0 12px;
  color:#415343;
  font-size:.92rem;
}
.trail-plan-week-notes span{
  padding:7px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.58);
  border:1px solid rgba(36,75,59,.08);
}
.trail-plan-table-wrap{
  overflow-x:auto;
  border-radius:16px;
  border:1px solid rgba(36,75,59,.1);
  background:rgba(255,255,255,.74);
}
.trail-plan-table{
  width:100%;
  min-width:840px;
  border-collapse:separate;
  border-spacing:0;
  direction:rtl;
}
.trail-plan-table th,
.trail-plan-table td{
  padding:11px 12px;
  text-align:right;
  vertical-align:top;
  border-bottom:1px solid rgba(36,75,59,.08);
  font-size:.92rem;
  line-height:1.55;
}
.trail-plan-table th{
  color:var(--forest);
  font-weight:800;
  background:rgba(232,223,203,.62);
  white-space:nowrap;
}
.trail-plan-table tr:last-child td{border-bottom:0}
.trail-plan-table td:first-child b{
  display:block;
  color:var(--forest);
  font-size:.94rem;
}
.trail-plan-table td:first-child small{
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:.78rem;
}
.trail-plan-row-rest td{background:rgba(222,231,232,.42)}
.trail-plan-row-run td{background:rgba(226,242,232,.38)}
.trail-plan-row-strength td{background:rgba(237,229,246,.44)}
.trail-plan-row-rest td:nth-child(2){color:#52666a;font-weight:800}
.trail-plan-row-run td:nth-child(2){color:#2f7a4f;font-weight:800}
.trail-plan-row-strength td:nth-child(2){color:#7253a3;font-weight:800}
@media(max-width:760px){
  .trail-plan-table-wrap{border-radius:14px}
  .trail-plan-table{min-width:720px}
  .trail-plan-table th,.trail-plan-table td{padding:9px 10px;font-size:.86rem}
  .trail-plan-week-notes{gap:8px}
}
@media print{
  .trail-plan-table-wrap{overflow:visible;border-color:#ccc;background:#fff}
  .trail-plan-table{min-width:0;font-size:10pt}
  .trail-plan-table th,.trail-plan-table td{padding:6px;border-bottom:1px solid #ddd}
  .workout-plan-preview-actions,.workout-plan-export-panel,.site-header,.site-footer{display:none!important}
  .workout-plan-week{break-inside:avoid;box-shadow:none!important}
}

.trail-plan-distribution-note{
  margin:10px 0 12px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(173,128,54,.18);
  background:rgba(255,246,225,.72);
  color:#6a5228;
  font-size:.9rem;
  line-height:1.7;
}

/* Trail listing map */
.trail-map-panel{margin-top:22px;padding:14px;border:1px solid rgba(36,75,59,.1);border-radius:16px;background:rgba(229,212,182,.22)}
.trail-map-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px;text-align:start}
.trail-map-head h2{margin:0;color:var(--forest);font-size:18px}
.trail-map-head p{margin:4px 0 0;max-width:560px;color:#6d786d;font-size:12px;line-height:1.8}
.trail-map-head small{color:#6d786d;font-size:11px}
.trail-map-canvas{position:relative;min-height:360px;border:1px solid rgba(36,75,59,.12);border-radius:18px;overflow:hidden;background:#d9d0b7;cursor:grab;touch-action:none;isolation:isolate}
.trail-map-canvas:active{cursor:grabbing}
.trail-map-tiles{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.trail-map-tile{position:absolute;left:0;top:0;width:256px;height:256px;user-select:none;pointer-events:none}
.trail-map-markers{position:absolute;inset:0;z-index:2;pointer-events:none}
.trail-map-marker{position:absolute;left:0;top:0;display:inline-flex;align-items:center;gap:6px;transform:translate(-50%,-50%);max-width:170px;padding:6px 9px;border:1px solid #2d6a4f;border-radius:999px;background:rgba(255,255,255,.92);color:#173d30;font:inherit;font-size:11px;font-weight:900;box-shadow:0 8px 18px rgba(28,45,35,.16);cursor:pointer;pointer-events:auto;white-space:nowrap}
.trail-map-marker>span{width:10px;height:10px;border-radius:999px;background:#2d6a4f;flex:0 0 auto}
.trail-map-marker b{overflow:hidden;text-overflow:ellipsis}
.trail-map-marker:hover,.trail-map-marker:focus-visible,.trail-map-marker.is-active{z-index:4;background:#fff7e8;transform:translate(-50%,-50%) scale(1.06)}
.trail-map-controls{position:absolute;z-index:5;top:12px;left:12px;display:flex;gap:6px;flex-wrap:wrap}
.trail-map-controls button{border:0;border-radius:999px;background:rgba(255,255,255,.9);color:#103d2c;font-weight:900;padding:8px 10px;box-shadow:0 8px 18px rgba(28,45,35,.14);cursor:pointer}
.trail-map-controls button:hover,.trail-map-controls button:focus-visible{background:#103d2c;color:#fff}
.trail-map-attribution{position:absolute;z-index:5;bottom:8px;left:10px;background:rgba(255,255,255,.78);border-radius:999px;padding:4px 8px;color:#435248;font-size:10px;direction:ltr}
.trail-map-empty{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;color:#6d786d;font-weight:800;background:rgba(255,247,232,.35)}
.trail-map-empty[hidden]{display:none}
.trail-map-popup{position:absolute;z-index:6;top:0;left:0;width:min(260px,calc(100% - 28px));padding:14px;border:1px solid rgba(36,75,59,.15);border-radius:14px;background:rgba(255,254,250,.96);box-shadow:0 14px 34px rgba(28,45,35,.18);transform:translate(-50%,calc(-100% - 18px));direction:rtl;text-align:start;pointer-events:auto}
.trail-map-popup::after{content:"";position:absolute;left:50%;bottom:-9px;width:18px;height:18px;background:rgba(255,254,250,.96);border-inline-end:1px solid rgba(36,75,59,.15);border-block-end:1px solid rgba(36,75,59,.15);transform:translateX(-50%) rotate(45deg)}
.trail-map-popup h3{margin:0 0 8px;color:var(--forest);font-size:15px}
.trail-map-popup p{display:flex;justify-content:space-between;gap:10px;margin:5px 0;color:#5f695f;font-size:11px}
.trail-map-popup p span{color:#7b8379}
.trail-map-popup p b{font-weight:800;color:#20382f}
.trail-map-popup .primary-button{margin-top:10px;padding:8px 11px;font-size:11px}
.trail-map-popup-close{position:absolute;top:7px;left:7px;width:24px;height:24px;border:0;border-radius:999px;background:#efe0c6;color:#36543e;font-weight:900;cursor:pointer}
@media(max-width:760px){.trail-map-head{display:block}.trail-map-head p{margin-top:6px}.trail-map-canvas{min-height:290px}.trail-map-marker b{max-width:95px}.trail-map-popup{width:min(230px,calc(100% - 22px))}}

/* Trails listing UI polish */
.trail-listing-intro .sports-events-actions .secondary-button,
.trail-listing-intro [data-export-trails],
.trail-listing-intro #trail-import-json,
.trail-listing-intro label[for="trail-import-json"]{
  display:none!important;
}
.trail-listing-intro{
  align-items:flex-start;
}
.trail-listing-intro h1{
  letter-spacing:-.01em;
}
.trail-listing-intro .trail-add-button{
  margin-top:10px;
}
.listing-wrap{
  margin-bottom:72px;
}
.listing-tools{
  margin-bottom:16px!important;
}
.listing-search{
  min-height:46px;
}
.trail-listing-filter-panel{
  margin-bottom:18px!important;
  padding:13px 14px!important;
  border-radius:12px!important;
}
.trail-listing-filter-panel>h2{
  margin-bottom:10px!important;
  font-size:14px!important;
  font-weight:800!important;
}
.trail-listing-filter-panel .home-filter-grid{
  gap:10px!important;
}
.trail-listing-filter-panel .home-filter-control{
  min-height:58px!important;
  padding:9px 10px!important;
}
.trail-listing-filter-panel .home-filter-control>span,
.trail-listing-filter-panel .home-filter-control output{
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1.45!important;
}
.trail-listing-filter-panel select,
.trail-listing-filter-panel input{
  font-size:12px!important;
}
.trail-listing-filter-panel .home-filter-reset{
  margin-top:10px!important;
  min-height:34px;
  padding:7px 12px!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:800!important;
}
.listing-grid{
  gap:16px!important;
}
.listing-grid .trail-card{
  border-radius:12px!important;
  overflow:hidden;
}
.listing-grid .trail-card-body{
  padding:15px 16px 16px!important;
}
.listing-grid .trail-card-title{
  align-items:flex-start!important;
  gap:12px;
}
.listing-grid .trail-card h3{
  color:var(--ink);
  font-size:18px!important;
  font-weight:900!important;
  line-height:1.45!important;
}
.listing-grid .trail-region{
  margin:4px 0 12px!important;
  color:#6e665a!important;
  font-size:11.5px!important;
  font-weight:700!important;
  line-height:1.7!important;
}
.listing-grid .trail-facts{
  display:flex!important;
  flex-wrap:wrap;
  gap:7px!important;
  padding-top:10px!important;
  border-top:1px solid rgba(91,64,40,.12)!important;
}
.listing-grid .trail-facts span{
  min-width:auto!important;
  flex:0 0 auto!important;
  padding:6px 8px;
  border:1px solid rgba(91,64,40,.1);
  border-radius:999px;
  background:rgba(255,250,242,.58);
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center;
  gap:5px!important;
}
.listing-grid .trail-facts small{
  color:#7b7063!important;
  font-size:9.5px!important;
  font-weight:800!important;
}
.listing-grid .trail-facts b{
  color:#302116!important;
  font-size:10.5px!important;
  font-weight:900!important;
  line-height:1.3!important;
}
.trail-card-muted-note{
  margin:10px 0 0;
  padding-top:10px;
  border-top:1px solid rgba(91,64,40,.12);
  color:#756c60;
  font-size:11px;
  line-height:1.8;
}
.trail-map-panel{
  margin-top:18px!important;
  padding:13px!important;
}
.trail-map-head{
  margin-bottom:10px!important;
}
.trail-map-head h2{
  font-size:17px!important;
  font-weight:900!important;
}
.trail-map-head p{
  font-size:11.5px!important;
  line-height:1.7!important;
}
.trail-map-head small{
  font-size:10.5px!important;
  font-weight:800;
}
@media(max-width:800px){
  .trail-listing-filter-panel .home-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .trail-listing-filter-panel .home-distance-filter{grid-column:span 2!important}
  .trail-map-panel{margin-top:16px!important}
}
@media(max-width:580px){
  .trail-listing-intro .trail-add-button{align-self:flex-start;margin-top:0}
  .trail-listing-filter-panel{padding:12px!important}
  .trail-listing-filter-panel .home-filter-grid{grid-template-columns:1fr!important}
  .trail-listing-filter-panel .home-distance-filter{grid-column:auto!important}
  .listing-grid .trail-facts{gap:6px!important}
  .listing-grid .trail-facts span{padding:6px 7px}
  .trail-map-head{display:block!important}
}

/* Final trails page spacing/background review */
.listing-wrap{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  margin-bottom:68px!important;
}
.listing-tools{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(320px,520px) minmax(0,1fr);
  align-items:center!important;
  gap:14px!important;
  margin-bottom:18px!important;
}
.listing-tools .listing-search{
  grid-column:2;
  justify-self:center;
  width:100%;
  max-width:520px!important;
  min-height:44px;
}
.listing-tools .results-count{
  grid-column:3;
  justify-self:end;
  color:#685f53;
  font-size:11.5px;
  font-weight:800;
  white-space:nowrap;
}
.trail-listing-filter-panel{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  margin:0 0 20px!important;
}
.trail-listing-filter-panel>h2{
  margin:0 0 13px!important;
  padding:0 1px 0 0;
  text-align:right!important;
  color:#243a30!important;
  font-size:16px!important;
  font-weight:900!important;
  line-height:1.55!important;
}
.trail-listing-filter-panel .home-filter-grid{
  gap:9px 10px!important;
}
.trail-listing-filter-panel .home-filter-control{
  min-height:56px!important;
  padding:8px 10px!important;
  background:var(--surface-sand-soft)!important;
  border-color:var(--surface-sand-line)!important;
  box-shadow:0 5px 15px rgba(57,43,28,.04);
}
.trail-listing-filter-panel .home-filter-control>span{
  color:#2c3f34!important;
  font-size:10.75px!important;
  font-weight:900!important;
  letter-spacing:0!important;
}
.trail-listing-filter-panel .home-filter-control output{
  color:#746858!important;
  font-size:10.5px!important;
  font-weight:800!important;
}
.trail-listing-filter-panel select,
.trail-listing-filter-panel input{
  color:#26392f!important;
  font-size:12px!important;
  font-weight:700!important;
}
.trail-listing-filter-panel .home-filter-reset{
  margin-top:10px!important;
  min-height:32px!important;
}
#trail-list-results{
  margin-top:2px;
}
.listing-grid{
  gap:15px!important;
}
.listing-grid .trail-card h3{
  font-size:18.5px!important;
  font-weight:900!important;
  letter-spacing:-.01em;
}
.listing-grid .trail-region{
  margin:3px 0 11px!important;
  font-size:11.5px!important;
  font-weight:800!important;
}
.listing-grid .trail-facts{
  gap:6px!important;
}
.listing-grid .trail-facts span{
  padding:5px 8px!important;
}
.trail-card-muted-note{
  color:#786e62;
  font-size:10.75px;
}
.trail-map-panel{
  margin-top:20px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.trail-map-head{
  margin-bottom:11px!important;
  padding-top:2px;
}
.trail-map-head h2{
  color:#243a30!important;
  font-size:18px!important;
  line-height:1.45!important;
}
.trail-map-head p{
  color:#645c51!important;
  font-size:11.75px!important;
}
.trail-map-head small{
  color:#756b5d!important;
}
.trail-map-canvas{
  box-shadow:0 10px 28px rgba(57,43,28,.07);
}
@media(max-width:800px){
  .listing-tools{
    grid-template-columns:1fr!important;
    justify-items:stretch;
  }
  .listing-tools .listing-search,
  .listing-tools .results-count{
    grid-column:1;
  }
  .listing-tools .listing-search{
    max-width:560px!important;
    justify-self:center;
  }
  .listing-tools .results-count{
    justify-self:end;
  }
}
@media(max-width:580px){
  .listing-tools{gap:10px!important;margin-bottom:14px!important}
  .listing-tools .listing-search{max-width:none!important;min-height:42px}
  .trail-listing-filter-panel>h2{font-size:15px!important;margin-bottom:10px!important}
  .trail-listing-filter-panel .home-filter-grid{gap:8px!important}
  .trail-listing-filter-panel .home-filter-control{min-height:54px!important}
  .trail-map-panel{margin-top:17px!important}
}

/* Trails listing: keep cover images fully visible inside their card frame. */
.listing-grid .trail-art:has(.trail-cover),
.home-recent-trails .trail-art:has(.trail-cover){
  background:#eee3cf!important;
  background-image:linear-gradient(135deg,rgba(255,250,239,.65),rgba(210,182,136,.24))!important;
}
.listing-grid .trail-cover,
.home-recent-trails .trail-cover{
  object-fit:contain!important;
  object-position:center center!important;
}

/* Trails listing: restore elegant filled cover cards after contain mode left empty bands. */
.listing-grid .trail-cover,
.home-recent-trails .trail-cover{
  object-fit:cover!important;
  object-position:center center!important;
}


/* Sports events page: trails-style visual reference and calendar add action. */
.sports-calendar-panel{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0 auto 72px!important;
}
.sports-calendar-heading{
  text-align:start!important;
  margin:0 0 18px!important;
}
.sports-calendar-heading h2{
  text-align:start!important;
  font-size:25px!important;
  font-weight:900!important;
  color:var(--ink)!important;
}
.sports-calendar-heading p{
  max-width:640px!important;
  margin:6px 0 0!important;
  text-align:start!important;
  white-space:normal!important;
  color:#687467!important;
}
.sports-calendar-month,
.sports-calendar-upcoming,
.sports-event-map-panel{
  background:rgba(255,254,250,.72)!important;
  border:1px solid rgba(36,75,59,.12)!important;
  border-radius:14px!important;
  box-shadow:0 8px 22px rgba(34,57,45,.07)!important;
}
.sports-calendar-month{padding:16px!important}
.sports-calendar-upcoming{margin-top:18px!important;padding:14px!important}
.sports-event-map-panel{margin-top:18px!important;padding:14px!important;background:rgba(255,254,250,.66)!important}
.sports-calendar-weekdays span{font-size:11px!important;font-weight:900!important;color:#54685a!important}
.sports-calendar-day{position:relative;background:rgba(255,255,255,.62)!important;border-color:rgba(36,75,59,.12)!important;border-radius:10px!important;padding:7px!important}
.sports-calendar-day.is-empty{background:rgba(255,255,255,.25)!important}
.sports-calendar-day-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:5px}
.sports-calendar-day-head>b{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;margin:0!important;color:var(--forest);font-size:12px;direction:ltr}
.sports-calendar-day.is-today .sports-calendar-day-head>b{background:#103d2c;color:#fff;border-radius:999px}
.sports-calendar-add{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:rgba(16,61,44,.09);color:#103d2c;text-decoration:none;font-size:14px;font-weight:900;line-height:1;border:1px solid rgba(16,61,44,.12)}
.sports-calendar-add:hover,.sports-calendar-add:focus-visible{background:#103d2c;color:#fff;transform:translateY(-1px)}
.sports-calendar-controls h3{font-weight:900;color:var(--ink)}
.sports-calendar-controls{margin-bottom:12px!important}
.sports-calendar-type-filter{background:transparent!important;border:0!important;padding:0!important;margin:16px 0!important;justify-content:flex-start!important}
.sports-calendar-upcoming-head h3,.sports-event-map-head h3{font-size:18px!important;font-weight:900!important;color:var(--ink)!important}
.sports-calendar-upcoming-grid:has(.community-muted){display:block!important}
.sports-calendar-upcoming-grid .community-muted{margin:0;padding:16px;border:1px dashed rgba(36,75,59,.16);border-radius:12px;background:rgba(255,255,255,.5);text-align:center;color:#697467}
.sports-event-map-head{align-items:flex-start!important}
.sports-event-map-canvas{border-radius:14px!important;min-height:320px!important}
@media(max-width:900px){.sports-calendar-panel{margin-inline:24px!important}.sports-calendar-month{padding:14px!important}}
@media(max-width:580px){.sports-calendar-panel{margin-inline:19px!important}.sports-calendar-day-head>b{min-width:22px;height:22px}.sports-calendar-add{width:21px;height:21px}.sports-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.sports-event-delete-button{margin-top:14px;width:100%;justify-content:center}

.sports-event-manage-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:14px}.sports-event-manage-actions .secondary-button,.sports-event-manage-actions .danger-button{width:auto;justify-content:center}.sports-event-file-status{display:block;margin-top:6px;color:#4f5f54;font-size:.9rem;font-weight:700}.sports-event-image-field #sports-event-photo-preview:not([hidden]){display:block;margin-top:10px;max-width:220px;max-height:140px;border-radius:14px;object-fit:cover;border:1px solid rgba(77,91,75,.18)}


.sports-event-manage-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}.sports-event-manage-actions .secondary-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d9dfd6;border-radius:6px;background:#fffefa;color:#55665a;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;line-height:1.4}.sports-event-manage-actions .secondary-button:hover{background:#eef2e9}.sports-event-manage-actions .danger-button{display:inline-flex;align-items:center;justify-content:center;width:auto;margin:0;border-radius:6px;padding:8px 12px;font-size:13px;font-weight:700;line-height:1.4}

/* Compact Supabase account controls; position follows the existing header account link. */
.account-actions{position:absolute;z-index:6;top:clamp(14px,2.2vw,24px);left:clamp(142px,calc((100vw - 1320px)/2 + 150px),190px);display:flex;align-items:center;gap:8px}
.account-actions .account-entry{position:static;inset:auto;min-height:30px;padding:5px 9px;white-space:nowrap}
.account-entry [data-account-avatar]{display:block;width:40px;height:40px;flex:0 0 40px;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:#f4f0e6;object-fit:cover}
.account-entry.has-account-avatar [data-account-avatar-placeholder]{display:none}
.account-signout-button,.account-admin-indicator{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 8px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(23,63,50,.78);color:#fff;font:inherit;font-size:11px;font-weight:700;text-decoration:none;white-space:nowrap}
.account-signout-button{cursor:pointer}.account-signout-button:hover{background:rgba(49,86,58,.95)}
.account-signout-button[hidden],.account-admin-indicator[hidden]{display:none}
.account-auth-message{min-height:1.45em;margin:0 0 12px;color:#46564a;font-size:13px;font-weight:700}
.account-auth-message[data-kind="error"]{color:#a3372e}.account-auth-message[data-kind="success"]{color:#24633e}.account-auth-message[data-kind="info"]{color:#596b5d}
.account-whatsapp-mobile[hidden],.account-interest-grid[hidden]{display:none!important}
.account-form button:disabled,.account-signout-button:disabled{opacity:.62;cursor:wait}
.account-session-panel{max-width:760px;margin-inline:auto}.account-session-panel .account-note:empty{display:none}
@media(max-width:580px){.account-actions{top:36px;left:9px;gap:4px}.account-actions .account-entry{gap:4px;padding:4px 6px;font-size:10px}.account-actions .account-entry svg{width:13px;height:13px}.account-admin-indicator,.account-signout-button{min-height:24px;padding:3px 6px;font-size:9px}}

/* Account sign-in/sign-up forms: compact spacing and accessible password controls. */
.account-auth-card-single{max-width:760px;margin:0 auto;padding:clamp(18px,3vw,30px)}
.account-page-heading{margin-bottom:16px}
.account-page-heading h1{margin:0;font-size:clamp(25px,3vw,34px);font-weight:900;line-height:1.3}
.account-page-heading>.account-profile-email{margin:2px 0 8px;color:#657064;font-size:12px;line-height:1.5}
.account-field-label{display:inline-flex;align-items:center;gap:3px}
.account-auth-message:empty{display:none}
.account-auth-link{margin:16px 0 0;text-align:center;color:#596b5d;font-size:14px;line-height:1.7}
.account-auth-link a,.account-terms-link{color:#176242;font-weight:800;text-underline-offset:3px}
.account-forgot-link{justify-self:start;color:#176242;font-size:12px;font-weight:800;text-underline-offset:3px}
.account-password-help{margin:0;color:#657064;font-size:13px;line-height:1.8}
.account-reset-success h1,.account-reset-invalid h1{margin:0 0 10px;color:#244b3b;font-size:clamp(21px,2.6vw,28px);font-weight:850}
.account-reset-success p,.account-reset-invalid p{color:#59645a;font-size:13px;line-height:1.9}
.account-reset-success .primary-button,.account-reset-invalid .primary-button{display:inline-flex;align-items:center;justify-content:center;width:auto;margin-top:8px;padding:10px 16px;text-decoration:none}
.account-required-star{color:#b3342b;font-weight:900;margin-inline:2px}
.account-terms-link{display:inline-block;margin-inline-start:5px}
.account-terms-draft-note{display:inline-block;margin-inline-start:5px;color:#867f71;font-size:11px;font-weight:650}
.account-password-wrap{display:flex;align-items:stretch;gap:8px;width:100%;margin-top:6px}
.account-password-wrap input{flex:1;min-width:0;margin-top:0}
.account-password-toggle{display:inline-flex;flex:0 0 46px;align-items:center;justify-content:center;min-width:46px;min-height:46px;padding:0;border:1px solid rgba(36,75,59,.18);border-radius:10px;background:#fffefa;color:#24543b;cursor:pointer}
.account-password-toggle:hover{background:#edf3e9}
.account-password-toggle:focus-visible{outline:3px solid rgba(36,117,78,.3);outline-offset:2px}
.account-password-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.account-password-toggle [data-eye-slash][hidden]{display:none}
@media(max-width:580px){.account-auth-card-single{margin-inline:18px;padding:18px}.account-auth-link{font-size:13px}.account-password-toggle{flex-basis:44px;min-width:44px;min-height:44px}}
.account-google-auth{margin-bottom:14px}
.account-google-button{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;min-height:48px;padding:10px 16px;border:1px solid rgba(36,75,59,.2);border-radius:10px;background:#fffefa;color:#284b38;font:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.account-google-button:hover{background:#f5f7f2;border-color:rgba(36,75,59,.38);transform:translateY(-1px)}
.account-google-button:focus-visible{outline:3px solid rgba(36,117,78,.28);outline-offset:2px}
.account-google-button:disabled{opacity:.65;cursor:wait;transform:none}
.account-google-mark{width:20px;height:20px;flex:0 0 20px}
.account-auth-divider{display:flex;align-items:center;gap:12px;margin:14px 0 0;color:#738074;font-size:12px;font-weight:700}
.account-auth-divider::before,.account-auth-divider::after{content:"";height:1px;flex:1;background:rgba(36,75,59,.14)}
.account-session-panel,.account-delete-panel{max-width:760px;margin-inline:auto}
.account-session-panel .account-page-heading h1{color:var(--ink)}
.account-profile-edit-form{margin-top:18px}
.account-profile-edit-form input[readonly]{background:#f0eee6;color:#697267;cursor:default}
.account-profile-edit-form .account-consent{margin-top:2px}
.account-profile-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.account-profile-actions .primary-button,.account-profile-actions .secondary-button,.account-session-panel>.primary-button,.account-session-panel>.secondary-button{width:auto;min-width:145px;flex:1 1 0}
.account-profile-actions .secondary-button,.account-session-panel>.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 16px;border:1px solid rgba(36,75,59,.2);border-radius:8px;background:#fffefa;color:#365342;font:inherit;font-size:13px;font-weight:750;cursor:pointer}
.account-session-panel>.secondary-button{margin-top:14px}
.account-profile-grid>div{min-height:78px;align-content:center;gap:6px;padding:13px 15px}
.account-profile-grid span{font-size:11px;line-height:1.5}
.account-profile-grid b{font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.account-profile-actions{margin-top:14px}
.account-delete-panel{margin:30px auto 0;padding:clamp(18px,3vw,26px)}
.account-delete-panel h2{margin-bottom:8px}
.account-delete-panel>p:first-of-type{margin:0 0 14px;color:#657064;font-size:13px;line-height:1.8}
.account-delete-panel .danger-button{width:auto;min-height:40px;padding:9px 15px}
.account-delete-panel .account-note:empty{display:none}
@media(max-width:580px){.account-profile-actions{align-items:stretch}.account-profile-actions .primary-button,.account-profile-actions .secondary-button,.account-session-panel>.secondary-button{width:100%;min-width:0;flex-basis:100%}.account-delete-panel .danger-button{width:100%}}

/* Minimal signed-in account landing page; edit controls remain in the existing form view. */
.account-profile-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:clamp(420px,58vh,620px);margin-top:20px;margin-bottom:48px}
.account-profile-page>.account-page-heading{width:100%;margin:0 0 18px;text-align:center}
.account-profile-page>.account-page-heading>p{max-width:none;margin-inline:auto}
.account-profile-page>.account-page-heading>.account-profile-email{margin:4px 0 8px;color:#788077;font-size:12px}
.account-summary-note:empty{display:none}
.account-summary-actions{display:flex;justify-content:center;align-items:center;gap:10px}
.account-summary-actions .primary-button,.account-summary-actions .secondary-button{width:auto;min-width:0;min-height:36px;flex:0 0 auto;padding:7px 14px;border-radius:8px;font-size:12px}
.account-summary-actions .secondary-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(36,75,59,.2);background:#fffefa;color:#365342;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.account-edit-delete{margin-top:24px;padding-top:12px;border-top:1px solid #e8e3d9}
.account-delete-link{padding:4px 0;border:0;background:transparent;color:#8a655f;font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.account-edit-delete .account-note:empty{display:none}
.account-profile-edit-page{display:block;min-height:0;margin-top:24px}
.account-edit-heading{margin-bottom:14px}
.account-edit-heading h1{margin:0;color:var(--ink);font-size:clamp(22px,3vw,28px);font-weight:850}
.account-avatar-editor{display:flex;align-items:center;gap:15px;padding:0 0 16px;border-bottom:1px solid #e8e3d9}
.account-avatar-preview{display:grid;width:82px;height:82px;flex:0 0 82px;place-items:center;overflow:hidden;border:1px solid #e4dfd5;border-radius:50%;background:#f4f1e9}
.account-avatar-preview img{width:100%;height:100%;object-fit:cover}
.account-avatar-placeholder{color:#829083;font-size:31px;line-height:1}
.account-my-trails-link{display:inline-flex;align-items:center;justify-content:center;margin-top:8px;padding:8px 12px;border:1px solid rgba(36,75,59,.2);border-radius:8px;background:#fffefa;color:#365342;font-size:12px;font-weight:750}
.owner-content-list{display:grid;gap:14px}
.owner-content-card{display:grid;gap:12px;padding:16px;border:1px solid #e6e3d9;border-radius:12px;background:#fffefa;box-shadow:0 6px 20px rgba(32,56,47,.04)}
.owner-content-card-main{display:flex;align-items:center;gap:14px;min-width:0}
.owner-content-card-main>img,.owner-content-card-placeholder{width:76px;height:64px;flex:0 0 76px;border-radius:8px;object-fit:cover;background:#f0eee6}
.owner-content-card-placeholder{display:grid;place-items:center;color:#879184;font-size:24px}
.owner-content-card-main h2{margin:0 0 5px;font-size:17px}
.owner-content-card-main p{margin:0 0 4px;color:#657064;font-size:13px}
.owner-content-card-main small,.owner-content-card-actions{color:#6e776d;font-size:12px}
.owner-content-status{font-weight:800;color:#365342}
.owner-content-card-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.owner-content-card-actions .sports-event-manage-actions{margin:0}
@media(max-width:580px){.owner-content-card{padding:12px}.owner-content-card-main>img,.owner-content-card-placeholder{width:62px;height:56px;flex-basis:62px}.owner-content-card-main h2{font-size:15px}.owner-content-card-actions>*{max-width:100%}}
.account-avatar-controls{display:grid;justify-items:start;gap:5px}
.account-avatar-controls>b{color:#34483a;font-size:13px}
.account-avatar-controls>small{color:#778077;font-size:11px;line-height:1.6}
.account-avatar-upload{position:relative;display:inline-flex;min-height:34px;align-items:center;justify-content:center;padding:7px 12px;border:1px solid rgba(36,75,59,.2);border-radius:8px;background:#fffefa;color:#365342;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.account-avatar-upload input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}
.account-avatar-upload:focus-within{outline:3px solid rgba(36,117,78,.28);outline-offset:2px}
.account-avatar-remove{padding:2px 0;border:0;background:transparent;color:#8a655f;font:inherit;font-size:11px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.account-avatar-remove:disabled{opacity:.6;cursor:wait}
.account-avatar-controls .account-note{margin:0;font-size:10px;line-height:1.5}
.account-whatsapp-edit-field[hidden]{display:none!important}
@media(max-width:580px){.account-profile-page{min-height:clamp(360px,52vh,500px);margin-top:10px}.account-summary-actions{gap:8px}.account-summary-actions .primary-button,.account-summary-actions .secondary-button{min-height:34px;padding:7px 11px;font-size:11px}}

/* Final mobile hero/header safeguards and homepage Why section visibility. */
.homepage-mobile-title{display:none}
@media(max-width:768px){
  body{overflow-x:clip}
  .site-header.site-header-sections{min-height:560px;overflow-x:clip}
  .site-brand-banner{top:12px;right:12px;left:auto;width:min(112px,30vw);max-width:calc(50vw - 20px)}
  .site-language-switch{top:12px;left:12px;right:auto;max-width:calc(50vw - 20px)}
  .account-actions{top:52px;left:12px;right:auto;max-width:calc(100vw - 150px);flex-wrap:wrap;gap:4px}
  .account-actions .account-entry{max-width:calc(100vw - 150px);min-width:0}
  .account-actions .account-entry [data-account-label]{max-width:calc(100vw - 225px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .homepage-hero-photo{object-position:center center}
  .homepage-hero-content{top:55%;gap:11px;padding-inline:16px}
  .homepage-mobile-title{display:grid;justify-items:center;gap:1px;width:100%;color:#fff;text-align:center;text-shadow:0 2px 14px rgba(8,24,18,.56)}
  .homepage-mobile-title h1{margin:0;font-size:clamp(27px,8vw,38px);font-weight:800;line-height:1.35;letter-spacing:0}
  .homepage-mobile-tagline{display:flex;align-items:center;justify-content:center;gap:8px;max-width:100%;font-size:clamp(12px,3.7vw,15px);font-weight:700;letter-spacing:0;line-height:1.3;white-space:nowrap}.homepage-mobile-tagline [lang="ar"]{direction:rtl;letter-spacing:0}.homepage-mobile-tagline [lang="en"]{direction:ltr;letter-spacing:.08em}
  .homepage-hero-statement{white-space:normal;max-width:calc(100vw - 36px);font-size:clamp(12px,3.4vw,14px);line-height:1.6}
}

/* Mobile-only section navigation drawer. Desktop keeps the original horizontal bar. */
.mobile-nav-toggle,.mobile-nav-overlay{display:none}
@media(max-width:768px){
  .site-header.site-header-sections .section-nav{display:none!important}
  .site-header.site-header-sections .mobile-nav-toggle{
    position:absolute;z-index:8;inset-inline-end:12px;bottom:17px;
    display:inline-flex;align-items:center;justify-content:center;gap:9px;
    min-height:42px;padding:7px 14px;border:1px solid rgba(255,255,255,.72);
    border-radius:999px;background:rgba(255,253,248,.94);color:#173f32;
    box-shadow:0 10px 24px rgba(7,24,17,.16);font-size:13px;font-weight:800;cursor:pointer;
  }
  .mobile-nav-toggle>span:first-child{font-size:19px;line-height:1}
  .mobile-nav-toggle:focus-visible,.mobile-nav-close:focus-visible,.mobile-nav-backdrop:focus-visible{outline:3px solid rgba(36,117,78,.45);outline-offset:2px}
  .mobile-nav-overlay:not([hidden]){position:fixed;z-index:10000;inset:0;display:block;overscroll-behavior:contain}
  .mobile-nav-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(15,30,23,.48);cursor:pointer}
  .mobile-nav-drawer{position:absolute;inset-block:0;inset-inline-end:0;display:flex;flex-direction:column;width:min(360px,calc(100vw - 42px));max-width:100%;padding:18px 16px max(20px,env(safe-area-inset-bottom));overflow-y:auto;background:#f8f6ef;box-shadow:-16px 0 44px rgba(10,28,19,.22);}
  .mobile-nav-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:3px 2px 14px;border-bottom:1px solid rgba(23,63,50,.12)}
  .mobile-nav-heading h2{margin:0;color:#20382f;font-size:18px;font-weight:850}
  .mobile-nav-close{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(23,63,50,.16);border-radius:50%;background:#fffefa;color:#244b3b;font-size:27px;line-height:1;cursor:pointer}
  .mobile-section-nav{display:flex;flex-direction:column;gap:5px;width:100%;margin:12px 0 0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
  .mobile-section-nav .section-tab,.site-header-sections .mobile-section-nav .section-tab{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-start;gap:12px;width:100%;min-width:0;min-height:47px;padding:9px 12px;border:0;border-radius:11px;background:transparent!important;color:#294838!important;font-size:14px;font-weight:700;text-align:start}
  .mobile-section-nav .section-tab-icon,.site-header-sections .mobile-section-nav .section-tab-icon{display:grid;place-items:center;width:27px;flex:0 0 27px;color:#526e53!important;font-size:18px}
  .mobile-section-nav .section-tab-label,.site-header-sections .mobile-section-nav .section-tab-label{color:#294838!important;font-size:13px;font-weight:700;white-space:normal}
  .mobile-section-nav .section-tab.is-active,.site-header-sections .mobile-section-nav .section-tab.is-active{background:#e9eee6!important;color:#173f32!important;box-shadow:inset -3px 0 #244b3b}
  .mobile-section-nav .section-tab.is-active .section-tab-label,.mobile-section-nav .section-tab.is-active .section-tab-icon{color:#173f32!important}
  .mobile-section-nav .section-tab::before,.mobile-section-nav .section-tab::after{display:none!important;content:none!important}
  body.mobile-nav-open{overflow:hidden}
}

/* Public terms page and admin-only local editor. */
.terms-page{width:min(980px,calc(100% - 36px));margin:30px auto 64px;color:var(--ink,#24362c);direction:rtl}
.terms-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.terms-page-heading h1{margin:5px 0 0;font-size:clamp(25px,3.2vw,34px);font-weight:850;line-height:1.35}
.terms-edit-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 16px;border:1px solid rgba(36,75,59,.2);border-radius:9px;background:#fffefa;color:#244b3b;font-size:13px;font-weight:800;text-decoration:none}
.terms-draft-banner{display:flex;flex-direction:column;gap:4px;margin:0 0 14px;padding:12px 15px;border:1px solid #e7d6ad;border-radius:11px;background:#fbf6e8;color:#69572e;font-size:12px;line-height:1.7}
.terms-draft-banner strong{font-size:13px}
.terms-document{padding:clamp(20px,4vw,42px);border:1px solid rgba(43,65,51,.12);border-radius:16px;background:#fffefa;box-shadow:0 10px 34px rgba(29,46,34,.06)}
.terms-back-row{display:flex;justify-content:flex-start;margin-top:16px}
.terms-back-button{min-height:38px;padding:8px 20px;border:1px solid rgba(36,75,59,.2);border-radius:9px;background:#fffefa;color:#244b3b;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.terms-back-button:hover{background:#f5f7f2;border-color:rgba(36,75,59,.38)}
.terms-document-heading{padding-bottom:20px;border-bottom:1px solid #e9e5dc}
.terms-document-heading>h2{margin:0;color:#203d30;font-size:clamp(21px,2.6vw,28px);font-weight:850;line-height:1.65}
.terms-version{margin:7px 0 17px;color:#667166;font-size:13px;font-weight:700}
.terms-metadata{padding:13px 15px;border-inline-start:3px solid #b58943;border-radius:8px;background:#f8f5ed}
.terms-metadata-label{display:block;margin-bottom:6px;color:#7d632e;font-size:11px;font-weight:850}
.terms-metadata p{margin:3px 0;color:#65645a;font-size:12px;line-height:1.75}
.terms-document-body{padding-top:8px}
.terms-clause{padding:20px 0 17px;border-bottom:1px solid #eeebe4}
.terms-clause h2{margin:0 0 10px;color:#244b3b;font-size:clamp(16px,2vw,19px);font-weight:850;line-height:1.65}
.terms-clause p{margin:0 0 10px;color:#3d463f;font-size:14px;line-height:2.05;white-space:pre-wrap}
.terms-clause p:last-child{margin-bottom:0}
.terms-clause ol{display:grid;gap:7px;margin:0 0 12px;padding-inline-start:24px;color:#3d463f;font-size:14px;line-height:1.95}
.terms-clause li{padding-inline-start:4px}
.terms-declaration{margin-top:17px;padding:18px 20px;border:1px solid rgba(36,75,59,.12);border-radius:11px;background:#f7f6f0}
.terms-declaration h2{font-size:16px}
.terms-declaration p{color:#34493c;font-weight:650}
.terms-editor-page{max-width:980px}
.terms-editor-notice{margin:0 0 14px;padding:12px 14px;border-radius:9px;background:#f8f5ed;color:#706342;font-size:12px;line-height:1.8}
#terms-editor-form{display:grid;gap:10px}
#terms-editor-form>label{color:#34483a;font-size:13px;font-weight:800}
#terms-editor-content{width:100%;min-height:500px;padding:15px;border:1px solid #dcded5;border-radius:11px;background:#fffefa;color:#303a32;font:inherit;font-size:13px;line-height:1.9;resize:vertical}
.terms-editor-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.terms-editor-actions .primary-button,.terms-editor-actions .secondary-button{width:auto;min-height:38px;padding:8px 14px;font-size:12px}
.terms-editor-status{margin:0;color:#8b3a32;font-size:12px}
.account-terms-gate{width:min(620px,calc(100% - 32px));margin:clamp(32px,8vh,90px) auto;padding:clamp(22px,4vw,36px);border:1px solid rgba(43,65,51,.12);border-radius:15px;background:#fffefa;box-shadow:0 10px 34px rgba(29,46,34,.06);direction:rtl}
.account-terms-gate h1{margin:7px 0 10px;color:#203d30;font-size:clamp(21px,3vw,28px);font-weight:850}
.account-terms-gate>p,.account-terms-gate-error{color:#59645a;font-size:13px;line-height:1.9}
.account-terms-gate-error{color:#8b3a32}
.account-terms-gate .account-terms-consent{margin:18px 0}
.account-terms-gate-message{min-height:20px;margin:8px 0;color:#8b3a32;font-size:12px}
.account-terms-signout{display:block;margin:13px 0 0;padding:3px 0;border:0;background:transparent;color:#6f756c;font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
@media(max-width:600px){
  .terms-page{width:calc(100% - 24px);margin:18px auto 40px}
  .terms-page-heading{align-items:flex-start;gap:12px}
  .terms-edit-button{flex:0 0 auto;min-height:35px;padding:6px 12px;font-size:12px}
  .terms-document{padding:19px 16px;border-radius:12px}
  .terms-clause{padding:16px 0 14px}
  .terms-clause p{font-size:13px;line-height:1.95}
  .terms-clause ol{font-size:13px;line-height:1.9}
  .terms-editor-actions{align-items:stretch;flex-direction:column}
  .terms-editor-actions>*{width:100%;text-align:center}
}

/* Homepage navigation and actions: keep the full section list usable at compact widths. */
.home-why-copy,
html[dir="rtl"] .home-why-copy,
html[dir="ltr"] .home-why-copy{
  align-items:center!important;
  justify-content:center;
  margin:0 auto!important;
  padding-inline:clamp(20px,5vw,64px)!important;
  text-align:center!important;
  transform:none!important;
}
.home-why-copy>*{text-align:center!important}
.home-why-copy>p{margin-inline:auto!important}
.home-why-copy .home-about-link{
  align-self:center!important;
  margin-inline:auto!important;
}

.site-language-switch{
  min-height:28px;
  padding:4px 8px!important;
  border:1px solid rgba(255,255,255,.35)!important;
  border-radius:999px;
  background:rgba(23,63,50,.78)!important;
  color:#fff!important;
  box-shadow:0 3px 14px rgba(20,45,36,.28)!important;
  text-shadow:none;
}
.site-language-switch .language-current{
  padding:3px 8px;
  border-radius:999px;
  background:#f0dfbd;
  color:#193b2f;
  font-weight:800;
}
.site-language-switch:focus-visible{outline:3px solid #edc783;outline-offset:3px}
.account-actions{flex-wrap:nowrap}
.account-actions .account-entry{min-height:34px}

/* Switch the section bar to the existing drawer before all eight links become cramped. */
.mobile-nav-toggle{display:none}
@media(max-width:1180px){
  .site-header.site-header-sections .section-nav{display:none!important}
  .site-header.site-header-sections .mobile-nav-toggle{
    position:absolute;
    z-index:8;
    inset-inline-end:clamp(14px,3vw,32px);
    bottom:17px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:42px;
    padding:7px 14px;
    border:1px solid rgba(255,255,255,.72);
    border-radius:999px;
    background:rgba(255,253,248,.94);
    color:#173f32;
    box-shadow:0 10px 24px rgba(7,24,17,.16);
    font-size:13px;
    font-weight:800;
    cursor:pointer;
  }
  .mobile-nav-toggle>span:first-child{font-size:19px;line-height:1}
  .mobile-nav-overlay:not([hidden]){position:fixed;z-index:10000;inset:0;display:block;overscroll-behavior:contain}
  .mobile-nav-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(15,30,23,.48);cursor:pointer}
  .mobile-nav-drawer{position:absolute;inset-block:0;inset-inline-end:0;display:flex;flex-direction:column;width:min(360px,calc(100vw - 42px));max-width:100%;padding:18px 16px max(20px,env(safe-area-inset-bottom));overflow-y:auto;background:#f8f6ef;box-shadow:-16px 0 44px rgba(10,28,19,.22)}
  .mobile-nav-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:3px 2px 14px;border-bottom:1px solid rgba(23,63,50,.12)}
  .mobile-nav-heading h2{margin:0;color:#20382f;font-size:18px;font-weight:850}
  .mobile-nav-close{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(23,63,50,.16);border-radius:50%;background:#fffefa;color:#244b3b;font-size:27px;line-height:1;cursor:pointer}
  .mobile-section-nav{display:flex;flex-direction:column;gap:5px;width:100%;margin:12px 0 0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
  .mobile-section-nav .section-tab,.site-header-sections .mobile-section-nav .section-tab{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-start;gap:12px;width:100%;min-width:0;min-height:47px;padding:9px 12px;border:0;border-radius:11px;background:transparent!important;color:#294838!important;font-size:14px;font-weight:700;text-align:start}
  .mobile-section-nav .section-tab-icon,.site-header-sections .mobile-section-nav .section-tab-icon{display:grid;place-items:center;width:27px;flex:0 0 27px;color:#526e53!important;font-size:18px}
  .mobile-section-nav .section-tab-label,.site-header-sections .mobile-section-nav .section-tab-label{color:#294838!important;font-size:13px;font-weight:700;white-space:normal}
  .mobile-section-nav .section-tab.is-active,.site-header-sections .mobile-section-nav .section-tab.is-active{background:#e9eee6!important;color:#173f32!important;box-shadow:inset -3px 0 #244b3b}
  .mobile-section-nav .section-tab.is-active .section-tab-label,.mobile-section-nav .section-tab.is-active .section-tab-icon{color:#173f32!important}
  .mobile-section-nav .section-tab::before,.mobile-section-nav .section-tab::after{display:none!important;content:none!important}
  body.mobile-nav-open{overflow:hidden}
}
@media(max-width:768px){
  .account-actions{width:max-content;max-width:calc(100vw - 145px);flex-wrap:wrap;align-items:center}
  .account-actions .account-entry{max-width:100%;min-width:0}
  .account-entry [data-account-avatar]{width:38px;height:38px;flex-basis:38px}
  .account-actions .account-admin-indicator,.account-actions .account-signout-button{flex:0 0 auto}
}

/* Compact, direction-aware section drawer with scrolling contained in the panel. */
@media(max-width:1180px){
  .site-header.site-header-sections .mobile-nav-toggle{inset-inline-end:clamp(14px,3vw,32px)}
  .mobile-nav-drawer{
    inset-block-start:50%;
    inset-block-end:auto;
    height:max-content;
    max-height:calc(100vh - 32px);
    max-height:calc(100dvh - 32px);
    transform:translateY(-50%);
    overflow-x:hidden;
    overflow-y:auto;
    border:1px solid rgba(255,255,255,.2);
    border-radius:16px;
    background:rgba(17,39,30,.9);
    color:#fffefa;
    box-shadow:0 20px 60px rgba(5,18,12,.36);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
  }
  .mobile-nav-heading{justify-content:flex-end;border-bottom-color:rgba(255,255,255,.2)}
  .mobile-nav-heading h2{display:none}
  .mobile-nav-close{flex:0 0 38px;border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fffefa}
  .mobile-section-nav{margin-top:8px}
  .mobile-section-nav .section-tab,.site-header-sections .mobile-section-nav .section-tab{color:#fffefa!important}
  .mobile-section-nav .section-tab-icon,.site-header-sections .mobile-section-nav .section-tab-icon{color:#e5d4b6!important}
  .mobile-section-nav .section-tab-label,.site-header-sections .mobile-section-nav .section-tab-label{color:#fffefa!important}
  .mobile-section-nav .section-tab:hover{background:rgba(255,255,255,.1)!important}
  .mobile-section-nav .section-tab.is-active,.site-header-sections .mobile-section-nav .section-tab.is-active{background:rgba(255,255,255,.17)!important;color:#fff!important;box-shadow:inset -3px 0 #e5d4b6}
  .mobile-section-nav .section-tab.is-active .section-tab-label,.mobile-section-nav .section-tab.is-active .section-tab-icon{color:#fff!important}
}
html[dir="ltr"] .mobile-nav-drawer{direction:ltr;inset-inline-end:auto;inset-inline-start:0}
html[dir="rtl"] .mobile-nav-drawer{direction:rtl;inset-inline-start:auto;inset-inline-end:0}

/* One physically left-anchored row: language, then account controls. */
.header-account-controls{
  position:absolute;
  z-index:8;
  top:clamp(14px,2.2vw,24px);
  left:clamp(12px,calc((100vw - 1320px)/2 + 20px),54px);
  right:auto;
  direction:ltr;
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:6px;
  width:max-content;
  max-width:calc(100vw - 24px);
}
.header-account-controls .site-language-switch{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  flex:0 0 auto;
  margin:0;
}
.header-account-controls .account-actions{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  direction:rtl;
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  gap:6px;
  min-height:40px;
  width:max-content;
  max-width:calc(100vw - 130px);
  min-width:0;
  margin:0;
}
.header-account-controls .account-actions>*{flex:0 0 auto}
.header-account-controls .account-actions .account-entry{flex:0 1 auto;min-width:0;max-width:100%}
@media(max-width:768px){
  .header-account-controls{
    top:56px;
    left:12px;
    right:auto;
    gap:4px;
    max-width:calc(100vw - 24px);
  }
  .header-account-controls .account-actions{gap:4px;max-width:calc(100vw - 130px)}
  .header-account-controls .account-actions .account-entry [data-account-label]{max-width:clamp(40px,calc(100vw - 340px),100px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}

/* Show the horizontal section bar only while its labels fit without clipping. */
.site-header.site-header-sections .section-nav{display:flex!important}
.site-header.site-header-sections.section-nav-collapsed .section-nav{display:none!important}
.site-header.site-header-sections .mobile-nav-toggle{display:none!important}
.site-header.site-header-sections.section-nav-collapsed .mobile-nav-toggle{
  position:absolute;
  z-index:8;
  bottom:17px;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:42px;
  padding:7px 14px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;
  background:rgba(255,253,248,.94);
  color:#173f32;
  box-shadow:0 10px 24px rgba(7,24,17,.16);
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}
html[dir="rtl"] .site-header.site-header-sections.section-nav-collapsed .mobile-nav-toggle{right:clamp(14px,3vw,32px);left:auto}
html[dir="ltr"] .site-header.site-header-sections.section-nav-collapsed .mobile-nav-toggle{left:clamp(14px,3vw,32px);right:auto}
.site-header.site-header-sections .mobile-nav-toggle>span:first-child{font-size:19px;line-height:1}
.mobile-nav-overlay:not([hidden]){position:fixed;z-index:10000;inset:0;display:block;overscroll-behavior:contain}
.mobile-nav-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(15,30,23,.48);cursor:pointer}
.mobile-nav-drawer{
  position:absolute;
  inset-block-start:50%;
  inset-block-end:auto;
  display:flex;
  flex-direction:column;
  width:min(360px,calc(100vw - 42px));
  max-width:calc(100vw - 24px);
  height:max-content;
  max-height:calc(100vh - 32px);
  max-height:calc(100dvh - 32px);
  padding:18px 16px max(20px,env(safe-area-inset-bottom));
  overflow-x:hidden;
  overflow-y:auto;
  transform:translateY(-50%);
  border:1px solid rgba(255,255,255,.2);
  border-radius:16px;
  background-image:linear-gradient(rgba(0,0,0,.34),rgba(0,0,0,.5)),url("../public/branding/why-saudi-trails-2026-v3.png");
  background-position:20% center;
  background-size:cover;
  background-repeat:no-repeat;
  color:#fffefa;
  box-shadow:0 14px 38px rgba(5,18,12,.28);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}
html[dir="rtl"] .mobile-nav-drawer{direction:rtl;right:0;left:auto}
html[dir="ltr"] .mobile-nav-drawer{direction:ltr;left:0;right:auto}
.mobile-nav-heading{justify-content:flex-end;border-bottom-color:rgba(255,255,255,.2)}
.mobile-nav-heading h2{display:none}
.mobile-nav-close{flex:0 0 38px;border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fffefa}
.mobile-section-nav{margin-top:8px}
.mobile-section-nav .section-tab,.site-header-sections .mobile-section-nav .section-tab{color:#fffefa!important}
.mobile-section-nav .section-tab-icon,.site-header-sections .mobile-section-nav .section-tab-icon{color:#e5d4b6!important}
.mobile-section-nav .section-tab-label,.site-header-sections .mobile-section-nav .section-tab-label{color:#fffefa!important}
.mobile-section-nav .section-tab:hover{background:rgba(255,255,255,.1)!important}
.mobile-section-nav .section-tab.is-active,.site-header-sections .mobile-section-nav .section-tab.is-active{background:rgba(255,255,255,.17)!important;color:#fff!important;box-shadow:inset -3px 0 #e5d4b6}
.mobile-section-nav .section-tab.is-active .section-tab-label,.mobile-section-nav .section-tab.is-active .section-tab-icon{color:#fff!important}

/* Navigation imagery: portrait hiker in the drawer, trail detail in the bar. */
.mobile-nav-drawer{
  background-image:linear-gradient(180deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.38) 38%,rgba(0,0,0,.22) 72%,rgba(0,0,0,.42) 100%),url("../public/branding/navigation-drawer-hiker.png");
  background-position:center 52%;
  background-size:cover;
  background-repeat:no-repeat;
}
.mobile-section-nav .section-tab-label,.mobile-section-nav .section-tab-icon,
.site-header-sections .section-nav .section-tab-label,.site-header-sections .section-nav .section-tab-icon{color:#fff4df!important}
.mobile-section-nav .section-tab:hover{background:rgba(0,0,0,.25)!important}
.mobile-section-nav .section-tab.is-active,.site-header-sections .mobile-section-nav .section-tab.is-active{
  background:rgba(0,0,0,.62)!important;
  color:#fff4df!important;
  box-shadow:inset -3px 0 #f0d6aa,0 2px 10px rgba(0,0,0,.14);
}
.mobile-section-nav .section-tab.is-active .section-tab-label,.mobile-section-nav .section-tab.is-active .section-tab-icon{color:#fff4df!important}
.site-header.site-header-sections .section-nav{
  isolation:isolate;
  background-color:transparent;
  background-image:none;
}
.site-header.site-header-sections .section-nav::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:-3px;
  display:block!important;
  border-radius:inherit;
  background-image:linear-gradient(rgba(0,0,0,.42),rgba(0,0,0,.5)),url("../public/branding/navigation-bar-trail.png");
  background-position:center 48%;
  background-size:cover;
  background-repeat:no-repeat;
  filter:blur(1.3px);
  transform:scale(1.015);
  pointer-events:none;
}
.site-header.site-header-sections .section-nav>.section-tab{
  position:relative;
  z-index:1;
}
.site-header.site-header-sections .section-nav{
  border:1px solid #fff!important;
}
.site-header.site-header-sections .section-nav .section-tab-label,
.site-header.site-header-sections .section-nav .section-tab-icon,
.site-header.site-header-sections .section-nav .section-tab.is-active,
.site-header.site-header-sections .section-nav .section-tab.is-active .section-tab-label,
.site-header.site-header-sections .section-nav .section-tab.is-active .section-tab-icon{
  color:#fff!important;
}
.site-header.site-header-sections .section-nav .section-tab:hover:not(.is-active){
  background:rgba(0,0,0,.24)!important;
  color:#fff!important;
}
.site-header.site-header-sections .section-nav .section-tab:hover:not(.is-active) .section-tab-label,
.site-header.site-header-sections .section-nav .section-tab:hover:not(.is-active) .section-tab-icon{
  color:#fff!important;
}
.site-header.site-header-sections .section-nav .section-tab.is-active{
  background:rgba(0,0,0,.62)!important;
  color:#fff4df!important;
  box-shadow:inset 0 -2px #f0d6aa;
}
.site-header.site-header-sections .section-nav .section-tab.is-active .section-tab-label,
.site-header.site-header-sections .section-nav .section-tab.is-active .section-tab-icon{color:#fff4df!important}

/* Compact drawer header: place the close control beside the home link. */
.mobile-nav-heading{display:none!important}
.mobile-nav-drawer{
  width:min(324px,calc(100vw - 36px));
  max-width:calc(100vw - 36px);
  border:1px solid #fff;
}
html[dir="rtl"] .mobile-nav-drawer{right:18px;left:auto}
html[dir="ltr"] .mobile-nav-drawer{left:18px;right:auto}
.mobile-nav-first-row{
  display:flex;
  align-items:center;
  gap:8px;
  width:100%;
}
.mobile-nav-first-row>.section-tab{flex:1 1 0!important;min-width:0!important}
.mobile-nav-first-row>.mobile-nav-close{flex:0 0 38px;width:38px;height:38px}
.mobile-section-nav .section-tab-label{font-size:15px!important}

/* Local hero-motion trial: portrait drone clip on mobile, existing photo elsewhere. */
.homepage-hero-video{display:none}
@media(max-width:768px) and (prefers-reduced-motion:no-preference){
  .homepage-hero-video{
    display:block;
    position:absolute;
    z-index:-1;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
  }
}

.review-queue-section-title{margin:26px 0 12px;color:var(--ink,#26382f);font-size:20px}.change-request-card,.owner-change-request-card{margin-top:12px}.change-request-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.change-request-heading h2{margin:0 0 6px}.change-request-heading p,.change-request-heading small{margin:0;display:grid;gap:5px}.change-request-reason,.change-request-response{line-height:1.8}.change-request-proposal{border:1px solid #e6e3d9;border-radius:8px;padding:9px 12px}.change-request-proposal pre{max-width:100%;overflow:auto;white-space:pre-wrap;direction:ltr;text-align:left}.change-request-review-form,.change-request-reject-form{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(240px,1.3fr) auto;align-items:end;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid #e6e3d9}.change-request-review-form label,.change-request-reject-form label,.change-request-admin-response{display:grid;gap:6px}.change-request-review-form textarea,.change-request-reject-form textarea,.change-request-admin-response textarea{min-height:42px}.change-request-review-form button,.change-request-reject-form button{white-space:nowrap}.change-request-trail-form{display:grid;gap:12px;margin-top:14px;padding:14px;border:1px solid #e6e3d9;border-radius:10px;background:#fffefa}.change-request-trail-form .trail-form-grid{margin:0}.change-request-admin-note{margin:0;line-height:1.8}.change-request-admin-response{max-width:100%}.change-request-reject-form{grid-template-columns:minmax(240px,1fr) auto}.owner-change-request-card h3{margin:0 0 8px;font-size:16px}.owner-change-request-card p{line-height:1.8}.owner-change-request-card small{display:block;margin-top:8px;color:#6e776d}@media(max-width:700px){.change-request-heading{flex-direction:column}.change-request-review-form,.change-request-reject-form{grid-template-columns:1fr}.change-request-review-form button,.change-request-reject-form button{justify-self:start}}

.workflow-feedback{margin:12px auto;padding:11px 16px;max-width:1100px;border:1px solid #b7d3c0;border-radius:10px;background:#eff8f1;color:#214c32;line-height:1.7}.workflow-feedback.is-error{border-color:#e2b8b3;background:#fff3f1;color:#8a2f28}.workflow-dialog-backdrop{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:18px;background:rgba(17,25,21,.58)}.workflow-dialog{width:min(100%,520px);max-height:min(90vh,720px);overflow:auto;border:1px solid #ddd8cb;border-radius:16px;background:#fffefa;padding:22px;box-shadow:0 22px 70px rgba(0,0,0,.28);direction:rtl;color:var(--ink,#26382f)}.workflow-dialog h2{margin:0 0 8px;font-size:21px}.workflow-dialog p{line-height:1.75}.workflow-dialog label{display:grid;gap:7px;margin:14px 0}.workflow-dialog label span{color:#a52822}.workflow-dialog textarea{width:100%;min-height:110px;resize:vertical;border:1px solid #cfcbbc;border-radius:9px;padding:10px;background:#fff;color:inherit;font:inherit}.workflow-dialog textarea:focus{outline:2px solid #4e8660;outline-offset:1px}.workflow-dialog-actions{display:flex;justify-content:flex-start;gap:9px;flex-wrap:wrap;margin-top:16px}.workflow-dialog-error{margin:0;color:#a52822;font-size:14px}.workflow-dialog-error[hidden]{display:none}

/* Canva wordmark overlay is aligned to the desktop hero image; keep semantic text for assistive tech. */
.homepage-hero-wordmark{
  position:absolute;
  z-index:2;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:translateX(-7%);
  pointer-events:none;
}
.homepage-hero-live-title{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}
@media(max-width:768px){.homepage-hero-wordmark{display:none}}

/* Local full-page coastal background trial; the opaque green footer is preserved. */
body.homepage-coastal-background-trial{
  background-color:#244a3c!important;
  background-image:url('../public/branding/homepage-coastal-trial.jpg')!important;
  background-repeat:no-repeat!important;
  background-position:center top!important;
  background-size:cover!important;
}
body.homepage-coastal-background-trial::before{display:none!important}
body.homepage-coastal-background-trial .site-header.site-header-sections,
body.homepage-coastal-background-trial .homepage-hero{
  background:transparent!important;
}
body.homepage-coastal-background-trial .homepage-hero-photo,
body.homepage-coastal-background-trial .homepage-hero-video{
  display:none!important;
}
body.homepage-coastal-background-trial .homepage-hero-shade{
  background:linear-gradient(180deg,rgba(5,22,17,.24),rgba(5,22,17,.13) 50%,rgba(5,22,17,.26))!important;
}
body.homepage-coastal-background-trial .home-content-atmosphere{
  background:transparent!important;
}
body.homepage-coastal-background-trial .home-content-atmosphere::before{
  display:none!important;
  content:none!important;
}
@media(max-width:700px){
  body.homepage-coastal-background-trial{
    background-position:34% top!important;
  }
}

/* Center the homepage identity and search as one group over the cover image. */
body.homepage-coastal-background-trial .homepage-hero-wordmark{
  transform:translate(-18.5%,10%)!important;
}
body.homepage-coastal-background-trial .homepage-hero-content{
  top:64%!important;
  transform:translateY(-50%)!important;
}
@media(max-width:768px){
  body.homepage-coastal-background-trial .homepage-hero-content{
    top:50%!important;
    transform:translateY(-50%)!important;
  }
}

/* Match the announcement ticker to the section bar, keeping the photo visible. */
body.homepage-coastal-background-trial .site-header-sections .announcement-ticker{
  width:min(1100px,calc(100% - 48px))!important;
  height:54px;
  min-height:54px;
  padding:5px 12px;
  border:1px solid rgba(255,255,255,.92)!important;
  border-radius:16px;
  background:rgba(8,25,19,.2)!important;
  box-shadow:none!important;
  color:#fff!important;
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
body.homepage-coastal-background-trial .announcement-ticker-title,
body.homepage-coastal-background-trial .announcement-ticker-item,
body.homepage-coastal-background-trial .announcement-ticker-empty{
  border-color:transparent!important;
  background:transparent!important;
  color:#fff!important;
  text-shadow:0 1px 5px rgba(0,0,0,.78);
}
body.homepage-coastal-background-trial .announcement-kind{
  color:#f2dfb7!important;
}
@media(max-width:760px){
  body.homepage-coastal-background-trial .site-header-sections .announcement-ticker{
    width:calc(100% - 24px)!important;
    height:50px;
    min-height:50px;
  }
}
@media(max-width:580px){
  body.homepage-coastal-background-trial .site-header-sections .announcement-ticker{
    width:calc(100% - 18px)!important;
    height:48px;
    min-height:48px;
    border-radius:13px;
    padding-inline:9px;
  }
}
body.homepage-coastal-background-trial .site-header-sections .announcement-ticker-title{
  font-family:'Alexandria','IBM Plex Sans Arabic',Tahoma,sans-serif!important;
  font-size:10px!important;
  font-weight:650!important;
  line-height:1.35;
  color:#fff!important;
}
@media(max-width:760px){
  body.homepage-coastal-background-trial .site-header-sections .announcement-ticker-title{
    font-size:9px!important;
  }
}


