/* GRAND SENORA — county at golden hour */
:root{color-scheme:dark;--bg:#11120f;--panel:#181915;--panel-2:#20211b;--ink:#f2f0e9;--muted:#a9a89f;--line:#ffffff19;--accent:#e6a84b;--accent-dark:#aa702b;--header:#11120fd9;--shadow:0 22px 70px #0005;--radius:24px;--page-width:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.65 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}body,button,input{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit}button,input{font-size:inherit}button{color:inherit}img{max-width:100%}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{background:var(--accent);color:#19150f}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 16px;color:var(--accent);font-size:10px;font-weight:750;letter-spacing:.19em;text-transform:uppercase}.eyebrow>span{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 18px currentColor}
/* Main navigation */
.site-header{position:sticky;z-index:50;top:0;display:flex;align-items:center;gap:22px;height:78px;padding:0 max(24px,calc((100vw - 1360px)/2));border-bottom:1px solid var(--line);background:var(--header);backdrop-filter:blur(18px)}.page-home .site-header{position:absolute;inset:0 0 auto;height:88px;border-bottom-color:#fff3;background:linear-gradient(180deg,#11130fc9,#11130f1c);color:#fff}.brand{display:flex;align-items:center;gap:10px;flex:none;text-decoration:none}.brand img{width:43px;height:43px;object-fit:contain;filter:drop-shadow(0 4px 10px #0004)}.brand strong{display:block;font-size:13px;line-height:1.1;letter-spacing:.09em;text-transform:uppercase}.brand small{display:block;margin-top:5px;color:#f0bd68;font-size:8px;font-weight:800;letter-spacing:.3em}.nav{display:flex;align-items:center;justify-content:center;gap:clamp(12px,1.75vw,27px);margin:auto}.nav a{position:relative;padding:13px 0;color:var(--muted);font-size:11px;font-weight:650;text-decoration:none;transition:color .2s}.page-home .nav a{color:#ffffffb5}.nav a:hover,.nav a.is-active{color:var(--ink)}.page-home .nav a:hover,.page-home .nav a.is-active{color:#fff}.nav a.is-active:after{position:absolute;right:0;bottom:5px;left:0;height:2px;border-radius:3px;background:var(--accent);content:""}.header-discord{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:var(--panel);font-size:10px;font-weight:750;text-decoration:none;white-space:nowrap;transition:transform .2s,border-color .2s,background .2s}.page-home .header-discord{border-color:#fff6;background:#ffffff14;color:white}.header-discord:hover{transform:translateY(-2px);border-color:var(--accent)}.header-discord span{color:var(--accent)}.theme-toggle{display:flex;align-items:center;justify-content:center;gap:7px;flex:none;min-width:42px;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);font-size:9px;font-weight:750;cursor:pointer;transition:transform .2s,border-color .2s}.theme-toggle:hover{transform:translateY(-2px);border-color:var(--accent)}.theme-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.page-home .theme-toggle{border-color:#fff5;background:#ffffff14;color:white}.menu-button{display:none}
/* Homepage: full-bleed county photography */
.home-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:680px;height:100svh;overflow:hidden;padding:130px max(26px,calc((100vw - 1240px)/2)) 92px;background:#10120f}.hero-slideshow,.hero-slide,.hero-slide img{position:absolute;inset:0;width:100%;height:100%}.hero-slideshow{z-index:-2;overflow:hidden}.hero-slide{opacity:0;transition:opacity 1s ease}.hero-slide.is-active{opacity:1}.hero-slide img{object-fit:cover;object-position:center 52%;filter:brightness(.78) saturate(.88);transform:scale(1.005)}.hero-slide.is-active img{animation:photo-settle 12s ease-out both}.home-hero-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#11130fe8 0%,#11130fa6 40%,#11130f20 82%),linear-gradient(0deg,#11130fb0 0%,transparent 32%,#11130f27 100%)}.home-hero-inner{width:min(var(--page-width),100%);margin:auto}.home-copy{max-width:790px;animation:copy-enter .85s .1s both}.home-copy .eyebrow{color:#f4c274}.home-copy h1,.editorial-copy h1,.subpage-heading h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(50px,7.4vw,100px);font-weight:500;letter-spacing:-.045em;line-height:.99}.home-copy h1{max-width:800px;color:#fff;text-shadow:0 4px 32px #0005}.home-copy h1 em,.editorial-copy h1 em{color:#f2bd68;font-style:normal}.home-lede{max-width:490px;margin:22px 0 0;color:#f2eee5dc;font-size:15px;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:27px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:47px;padding:0 19px;border:1px solid transparent;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.045em;text-decoration:none;transition:transform .2s,background .2s,border-color .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-bronze{background:var(--accent);color:#21190f}.button-bronze:hover{background:#f3bd65}.button-outline{border-color:#fff8;background:#ffffff10;color:#fff;backdrop-filter:blur(8px)}.button-outline:hover{border-color:#f2bd68;background:#ffffff1a}.button-light{background:#f2e8d8;color:#251d12}.button-light:hover{background:#fff}.region-line{display:flex;align-items:center;gap:10px;margin-top:26px;color:#e4e0d7d9;font-size:9px;font-weight:750;letter-spacing:.17em}.region-line i{width:4px;height:4px;border-radius:50%;background:var(--accent)}.status-dot{width:7px;height:7px;border-radius:50%;background:#82ad78;box-shadow:0 0 0 4px #82ad7823}.hero-bottom-link{position:absolute;bottom:29px;left:max(26px,calc((100vw - 1240px)/2));display:flex;align-items:center;gap:12px;color:#fffce5d0;font-size:9px;font-weight:750;letter-spacing:.15em;text-decoration:none}.hero-bottom-link .line{width:37px;height:1px;background:var(--accent)}.hero-bottom-link>span:last-child{color:#f2bd68;font-size:14px}.slide-controls{position:absolute;right:max(24px,calc((100vw - 1240px)/2));bottom:22px;display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #ffffff36;border-radius:999px;background:#12130f9c;backdrop-filter:blur(14px)}.slide-controls>button{display:grid;place-items:center;width:31px;height:31px;border:0;border-radius:50%;background:transparent;color:#f3efe8;cursor:pointer;transition:background .18s,color .18s}.slide-controls>button:hover{background:var(--accent);color:#20170d}.slide-controls svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.slide-dots{display:flex;align-items:center;gap:5px;padding:0 5px}.slide-dots button{width:6px;height:6px;padding:0;border:0;border-radius:9px;background:#ffffff78;cursor:pointer;transition:width .2s,background .2s}.slide-dots button.is-active{width:19px;background:var(--accent)}.slide-count{min-width:41px;color:#eee8dc;font-size:8px;font-variant-numeric:tabular-nums;letter-spacing:.12em;text-align:center}
/* Home content */
.county-intro{padding:106px 26px 85px;background:var(--bg)}.county-kicker,.story-label{display:flex;align-items:center;gap:12px;width:min(var(--page-width),100%);margin:0 auto 34px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.18em}.county-kicker span:first-child,.story-label span:first-child{color:var(--accent)}.county-content{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:64px;width:min(var(--page-width),100%);margin:auto}.county-content h2,.home-rulebook h2,.story-copy h2,.team-contact h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,5.1vw,68px);font-weight:500;letter-spacing:-.04em;line-height:1.05}.county-content h2 em{color:var(--accent);font-style:normal}.county-content .eyebrow{margin-bottom:13px}.county-detail{max-width:450px}.county-detail p,.rulebook-action p{margin:0;color:var(--muted);font-size:13px;line-height:1.85}.text-link{display:inline-flex;align-items:center;gap:10px;margin-top:18px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.07em;text-decoration:none;text-transform:uppercase}.text-link:hover{color:var(--ink)}.place-line{display:grid;grid-template-columns:repeat(3,1fr);width:min(var(--page-width),100%);margin:62px auto 0;border-top:1px solid var(--line)}.place-line>div{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:8px;min-height:68px;padding:0 20px 0 0}.place-line>div+div{padding-left:20px;border-left:1px solid var(--line)}.place-index{color:var(--accent);font-size:9px;letter-spacing:.1em}.place-name{font-size:13px;font-weight:700}.place-note{color:var(--muted);font-size:8px;letter-spacing:.12em}.experience-section{width:min(var(--page-width),calc(100% - 52px));margin:0 auto 105px}.experience-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px}.experience-heading .eyebrow{margin-bottom:8px}.experience-heading h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4vw,49px);font-weight:500;letter-spacing:-.04em}.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.experience-card{position:relative;isolation:isolate;display:flex;min-height:310px;overflow:hidden;align-items:end;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);text-decoration:none}.experience-card:after{position:absolute;z-index:-1;inset:35% 0 0;background:linear-gradient(0deg,#0e100ee8,#0e100e00);content:""}.experience-card img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}.experience-card:hover img{transform:scale(1.055);filter:saturate(1.08)}.experience-number{position:absolute;top:18px;left:19px;color:#ffffffc4;font-size:9px;font-weight:750;letter-spacing:.13em}.experience-copy{display:grid;gap:5px;padding:20px 22px 23px}.experience-copy small{color:#f2bd68;font-size:8px;font-weight:800;letter-spacing:.17em}.experience-copy strong{color:#fff;font-family:Georgia,serif;font-size:24px;font-weight:500}.experience-arrow{position:absolute;right:17px;bottom:20px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #fff7;border-radius:50%;color:white;transition:background .2s,color .2s}.experience-card:hover .experience-arrow{background:var(--accent);color:#21180d}.principles-section{padding:83px 26px;background:var(--panel)}.principles-inner{width:min(var(--page-width),100%);margin:auto}.principles-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:27px}.principles-heading h2{max-width:580px;margin:0;font-family:Georgia,serif;font-size:clamp(36px,4.6vw,58px);font-weight:500;letter-spacing:-.04em;line-height:1.04}.principles-heading p{max-width:350px;margin:0;color:var(--muted);font-size:12px}.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.principle-card{min-height:220px;padding:25px;border:1px solid var(--line);border-radius:20px;background:var(--bg)}.principle-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:31px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:14px;color:var(--accent)}.principle-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.principle-card h3{margin:0 0 7px;font-family:Georgia,serif;font-size:20px;font-weight:500}.principle-card p{max-width:300px;margin:0;color:var(--muted);font-size:11px;line-height:1.7}.home-rulebook{display:grid;grid-template-columns:1fr .72fr;align-items:end;gap:44px;width:min(var(--page-width),calc(100% - 52px));margin:82px auto 96px;padding:clamp(30px,5vw,63px);border:1px solid var(--line);border-radius:30px;background:var(--panel-2)}.home-rulebook .eyebrow{color:var(--accent)}.home-rulebook h2{font-size:clamp(36px,4.6vw,58px)}.rulebook-action{max-width:440px}.rulebook-action p{margin-bottom:19px}
/* Inner pages */
.inner-page{min-height:68vh}.editorial-hero{position:relative;isolation:isolate;display:flex;align-items:end;min-height:min(560px,66svh);padding:115px 26px 62px;background:#171817 url("../img/senora-county.webp") center 56%/cover no-repeat}.editorial-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,#11130fe8 0%,#11130f52 70%,#11130f55 100%)}.editorial-copy{width:min(var(--page-width),100%);margin:auto}.editorial-copy .eyebrow{color:#f4c274}.editorial-copy h1{max-width:900px;color:#fff;font-size:clamp(52px,7vw,86px)}.editorial-copy>p:not(.eyebrow){max-width:490px;margin:17px 0 0;color:#f2eee5dc;font-size:14px}.about-story{display:grid;grid-template-columns:.3fr 1.15fr 1fr;align-items:start;gap:40px;width:min(var(--page-width),calc(100% - 52px));margin:84px auto 100px}.story-label{align-items:flex-start;width:auto;margin:8px 0}.story-copy h2{font-size:clamp(32px,4vw,48px)}.story-copy p{max-width:550px;color:var(--muted);font-size:13px}.about-photo{align-self:stretch;margin:0}.about-photo img{display:block;width:100%;height:100%;min-height:280px;max-height:390px;object-fit:cover;border:1px solid var(--line);border-radius:var(--radius)}.about-photo figcaption{margin-top:9px;color:var(--muted);font-size:8px;font-weight:750;letter-spacing:.14em}.subpage-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;width:min(var(--page-width),calc(100% - 52px));margin:68px auto 30px}.subpage-heading .eyebrow{margin-bottom:8px}.subpage-heading h1{color:var(--ink);font-size:clamp(44px,6vw,75px)}.subpage-heading>p{max-width:360px;margin:0 0 8px;color:var(--muted);font-size:12px}
/* Staff directory */
.team-roster{width:min(990px,calc(100% - 52px));margin:0 auto 45px;border-top:1px solid var(--line)}.team-row{display:grid;grid-template-columns:48px minmax(190px,.8fr) 1fr;align-items:center;gap:20px;min-height:100px;padding:16px 18px;border-bottom:1px solid var(--line);transition:background .2s}.team-row:hover{background:var(--panel);border-radius:14px}.team-number{color:var(--accent);font-size:9px;letter-spacing:.1em}.team-row-main h2{margin:0;font-family:Georgia,serif;font-size:24px;font-weight:500}.team-row-main h2 i{color:var(--accent);font-style:normal}.team-row-main>span{display:block;margin-top:4px;color:var(--accent);font-size:8px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.team-row>p{max-width:440px;margin:0;color:var(--muted);font-size:11px}.team-contact{width:min(990px,calc(100% - 52px));margin:0 auto 90px;padding:32px;border:1px solid var(--line);border-radius:22px;background:var(--panel)}.team-contact h2{font-size:34px}.team-contact p{max-width:600px;color:var(--muted);font-size:12px}
/* Image gallery */
.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:repeat(3,minmax(190px,22vw));grid-template-areas:"a b" "a c" "d e";gap:14px;width:min(var(--page-width),calc(100% - 52px));margin:0 auto 100px}.gallery-card{position:relative;overflow:hidden;margin:0;border:1px solid var(--line);border-radius:21px;background:var(--panel)}.gallery-card:nth-child(1){grid-area:a}.gallery-card:nth-child(2){grid-area:b}.gallery-card:nth-child(3){grid-area:c}.gallery-card:nth-child(4){grid-area:d}.gallery-card:nth-child(5){grid-area:e}.gallery-card a{display:block;width:100%;height:100%}.gallery-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s}.gallery-card:hover img{transform:scale(1.035)}.gallery-card figcaption{position:absolute;right:0;bottom:0;left:0;display:flex;justify-content:space-between;align-items:end;gap:14px;padding:38px 18px 15px;background:linear-gradient(0deg,#10120fe8,transparent);color:#fff;pointer-events:none}.gallery-card figcaption strong{font-family:Georgia,serif;font-size:17px;font-weight:500}.gallery-card figcaption span{color:#ffffffc7;font-size:9px}
/* Rulebook: search and accordion are the page's first content */
body.page-rules{background:var(--bg)}.document-shell{width:min(960px,calc(100% - 40px));min-height:70vh;margin:30px auto 86px}.document-toolbar{position:sticky;z-index:10;top:91px;display:flex;align-items:center;gap:12px;margin-bottom:17px;padding:10px;border:1px solid var(--line);border-radius:19px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.document-search{display:flex;align-items:center;gap:12px;flex:1;min-width:0;padding:0 12px}.document-search svg{width:19px;height:19px;flex:none;fill:none;stroke:var(--accent);stroke-width:1.7;stroke-linecap:round}.document-search input{width:100%;height:43px;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px}.document-search input::placeholder{color:var(--muted)}.document-result-count{padding:0 11px;color:var(--muted);font-size:9px;white-space:nowrap}.search-clear{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);font-size:9px;font-weight:750;cursor:pointer}.search-results{display:none;margin:0 0 15px;padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--panel)}.search-results.is-visible{display:block}.search-results h2{margin:0 0 13px;color:var(--accent);font-family:Georgia,serif;font-size:22px;font-weight:500}.search-results-list{display:grid;gap:8px}.search-hit{display:grid;gap:4px;width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:var(--bg);color:var(--ink);text-align:left;cursor:pointer;transition:border-color .2s,transform .2s}.search-hit:hover{transform:translateY(-1px);border-color:var(--accent)}.search-hit-label{color:var(--accent);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.search-hit-text{font-size:12px;line-height:1.6}.search-hit mark,.document-section-content mark{border-radius:3px;background:#edbd6c;color:#21180e}.document-sections{display:block}.rule-group{display:flex;align-items:center;gap:12px;margin:31px 3px 12px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.rule-group:after{height:1px;flex:1;background:var(--line);content:""}.rule-group:first-child{margin-top:12px}.document-section{overflow:hidden;margin:9px 0;border:1px solid var(--line);border-radius:17px;background:var(--panel);transition:border-color .2s,background .2s,transform .2s}.document-section:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));transform:translateY(-1px)}.document-section-toggle{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:68px;padding:11px 17px;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.section-heading{display:flex;align-items:center;gap:13px}.section-icon{display:grid;place-items:center;width:37px;height:37px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--accent) 9%,var(--panel));color:var(--accent)}.section-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.document-section-toggle .section-heading>span:last-child{font-size:13px;font-weight:720}.document-section-toggle i{position:relative;width:29px;height:29px;flex:none;border:1px solid var(--line);border-radius:50%;transition:transform .2s,border-color .2s,background .2s}.document-section-toggle i:before,.document-section-toggle i:after{position:absolute;top:13px;left:9px;width:9px;height:1px;background:var(--muted);content:""}.document-section-toggle i:after{transform:rotate(90deg);transition:transform .2s}.document-section-toggle[aria-expanded=true] i{transform:rotate(180deg);border-color:var(--accent);background:var(--accent)}.document-section-toggle[aria-expanded=true] i:before,.document-section-toggle[aria-expanded=true] i:after{background:#20170d}.document-section-toggle[aria-expanded=true] i:after{transform:rotate(0)}.document-section-content{padding:0 22px 23px 67px;color:var(--muted);font-size:12px;line-height:1.8}.document-section-content h3{margin:22px 0 8px;color:var(--ink);font-size:15px}.document-section-content h4{margin:19px 0 5px;color:var(--ink);font-size:12px;font-weight:800}.document-section-content h4:first-child{margin-top:6px}.document-section-content p{margin:6px 0 11px}.document-section-content ul,.document-section-content ol{padding-left:21px}.document-section-content li{padding:2px 0}.document-section-content strong{color:var(--ink)}.document-section-content .rule-location.is-current{scroll-margin-top:130px;animation:current-pulse 1.8s ease}.document-empty{display:none;margin:12px 0;padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--muted);font-size:12px}.document-section[hidden]{display:none!important}
/* Legal details */
.legal-page{min-height:70vh}.legal-card{width:min(760px,calc(100% - 52px));margin:0 auto 95px;padding:clamp(22px,5vw,44px);border:1px solid var(--line);border-radius:23px;background:var(--panel)}.legal-card h2{margin:25px 0 6px;font-family:Georgia,serif;font-size:22px;font-weight:500}.legal-card p,.legal-card address{color:var(--muted);font-size:12px;font-style:normal;line-height:1.8}.legal-note{padding:12px 14px;border-left:2px solid var(--accent);background:var(--panel-2)}
/* Footer and restrained motion */
.site-footer{border-top:1px solid var(--line);background:var(--panel)}.footer-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;width:min(var(--page-width),calc(100% - 52px));margin:auto;padding:31px 0 22px}.footer-brand{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:750;text-decoration:none}.footer-brand img{width:31px;height:31px;object-fit:contain}.footer-nav{display:flex;flex-wrap:wrap;gap:18px}.footer-nav a{color:var(--muted);font-size:10px;text-decoration:none}.footer-nav a:hover{color:var(--accent)}.social-links{display:flex;gap:8px}.social-links a{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:9px;text-decoration:none;transition:border-color .2s,color .2s}.social-links a:hover{border-color:var(--accent);color:var(--accent)}.social-links svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.social-links a:first-child svg{fill:currentColor;stroke:none}.social-links a:first-child circle{fill:var(--panel)}.footer-meta{grid-column:1/-1;margin:4px 0 0;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:8px;font-weight:750;letter-spacing:.16em}.reveal-ready [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.reveal-ready [data-reveal].is-revealed{opacity:1;transform:translateY(0)}.gsr-cursor{position:fixed;z-index:999;top:0;left:0;width:32px;height:32px;pointer-events:none;opacity:0;transition:opacity .15s}.gsr-cursor.is-visible{opacity:1}.gsr-cursor-ring{position:absolute;inset:0;border:1px solid #edb55d9c;border-radius:50%;background:#edb55d0a;transition:transform .2s,background .2s}.gsr-cursor-dot{position:absolute;top:14px;left:14px;width:4px;height:4px;border-radius:50%;background:#ffd27c}.gsr-cursor.is-hovering .gsr-cursor-ring{transform:scale(1.38);background:#edb55d21}.gsr-custom-cursor,.gsr-custom-cursor a,.gsr-custom-cursor button{cursor:none}.gsr-custom-cursor.cursor-on-editable,.gsr-custom-cursor.cursor-on-editable input{cursor:text}
@keyframes photo-settle{from{transform:scale(1.025)}to{transform:scale(1.09)}}@keyframes copy-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes current-pulse{0%,100%{background:transparent}25%,65%{background:color-mix(in srgb,var(--accent) 13%,transparent)}}
@media(max-width:900px){.site-header{gap:12px}.nav{gap:12px}.nav a{font-size:10px}.brand img{width:38px;height:38px}.header-discord{padding:9px 12px}.county-content{gap:35px}.experience-card{min-height:270px}.principle-card{padding:20px}.about-story{grid-template-columns:.2fr 1.2fr 1fr;gap:25px}}
@media(max-width:760px){.site-header{height:68px;padding:0 15px}.page-home .site-header{height:70px}.brand{gap:7px}.brand img{width:36px;height:36px}.brand strong{font-size:11px}.header-discord{display:none}.menu-button{display:grid;place-content:center;order:3;gap:4px;width:37px;height:37px;border:1px solid var(--line);border-radius:50%;background:var(--panel);color:var(--ink)}.page-home .menu-button{border-color:#fff5;background:#ffffff14;color:white}.menu-button span{width:13px;height:1px;background:currentColor}.theme-toggle{order:2;min-width:39px;height:36px;padding:0 10px}.theme-toggle>span:last-child{display:none}.theme-toggle svg{width:15px;height:15px}.nav{position:absolute;top:61px;right:9px;left:9px;display:none;align-items:stretch;gap:2px;padding:8px;border:1px solid var(--line);border-radius:19px;background:var(--panel);box-shadow:var(--shadow)}.page-home .nav{top:65px}.nav.is-open{display:grid}.nav a{padding:12px 14px;border-radius:11px;color:var(--ink);font-size:12px}.page-home .nav a{color:var(--ink)}.nav a.is-active{background:var(--panel-2)}.nav a.is-active:after{display:none}.home-hero{min-height:650px;height:100svh;padding:110px 22px 92px}.hero-slide img{object-position:58% center}.home-hero-shade{background:linear-gradient(90deg,#11130fcf,#11130f47 100%),linear-gradient(0deg,#11130fc9,transparent 48%,#11130f2b)}.home-copy h1{font-size:clamp(47px,12vw,74px)}.home-lede{max-width:400px;font-size:13px}.hero-bottom-link{left:19px;bottom:20px;font-size:8px}.slide-controls{right:13px;bottom:13px;gap:2px;padding:5px}.slide-controls>button{width:27px;height:27px}.slide-count{min-width:36px;font-size:7px}.county-intro{padding:70px 21px 55px}.county-kicker{margin-bottom:25px}.county-content{grid-template-columns:1fr;gap:18px}.county-content h2{font-size:clamp(38px,10vw,55px)}.county-detail{max-width:550px}.place-line{margin-top:35px}.place-line>div{grid-template-columns:23px 1fr;gap:5px;padding:10px 7px 10px 0}.place-line>div+div{padding-left:9px}.place-name{font-size:10px}.place-note{grid-column:2;font-size:7px}.experience-section{width:calc(100% - 36px);margin:0 auto 67px}.experience-heading{align-items:start;flex-direction:column;gap:8px}.experience-heading h2{font-size:38px}.experience-grid{grid-template-columns:1fr;gap:11px}.experience-card{min-height:255px;border-radius:20px}.principles-section{padding:57px 19px}.principles-heading{align-items:start;flex-direction:column;gap:12px}.principles-heading h2{font-size:39px}.principles-grid{grid-template-columns:1fr;gap:9px}.principle-card{display:grid;grid-template-columns:43px 1fr;column-gap:14px;min-height:0;padding:17px}.principle-icon{grid-row:span 2;margin:0}.principle-card h3{align-self:end;font-size:18px}.principle-card p{font-size:10px}.home-rulebook{grid-template-columns:1fr;gap:20px;width:calc(100% - 36px);margin:55px auto;padding:27px 22px;border-radius:22px}.home-rulebook h2{font-size:39px}.document-shell{width:calc(100% - 26px);margin:14px auto 58px}.document-toolbar{top:74px;gap:5px;padding:7px;border-radius:15px}.document-search{gap:8px;padding:0 7px}.document-search input{height:40px;font-size:12px}.document-result-count{padding:0 6px;font-size:8px}.search-clear{padding:7px 9px;font-size:8px}.document-section-toggle{min-height:61px;padding:9px 12px}.section-heading{gap:10px}.section-icon{width:34px;height:34px;border-radius:11px}.document-section-toggle .section-heading>span:last-child{font-size:12px}.document-section-content{padding:0 15px 18px 55px;font-size:11px}.rule-group{margin-top:23px;font-size:8px}.editorial-hero{min-height:470px;padding:95px 21px 42px}.editorial-copy h1{font-size:clamp(49px,11vw,70px)}.about-story{grid-template-columns:1fr;gap:14px;width:calc(100% - 40px);margin:55px auto 65px}.story-label{margin:0}.story-copy h2{font-size:39px}.about-photo img{height:270px;min-height:0}.subpage-heading{align-items:start;flex-direction:column;gap:8px;width:calc(100% - 40px);margin:51px auto 23px}.subpage-heading h1{font-size:54px}.subpage-heading>p{max-width:450px}.team-roster,.team-contact{width:calc(100% - 40px)}.team-row{grid-template-columns:29px 1fr;gap:10px;padding:15px 6px}.team-row-main h2{font-size:21px}.team-row>p{grid-column:2;font-size:10px}.team-contact{padding:23px}.team-contact h2{font-size:30px}.gallery-grid{grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:none;width:calc(100% - 36px);margin-bottom:60px}.gallery-card:nth-child(n){grid-area:auto;height:clamp(220px,67vw,355px)}.legal-card{width:calc(100% - 40px);margin-bottom:60px;padding:22px}.footer-inner{grid-template-columns:1fr;width:calc(100% - 40px);gap:19px;padding-top:25px}.footer-nav{gap:13px}.footer-meta{grid-column:auto}.social-links{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.home-copy,.hero-slide.is-active img{animation:none}.reveal-ready [data-reveal],.reveal-ready [data-reveal].is-revealed{opacity:1;transform:none;transition:none}.experience-card img,.experience-card:after,.experience-arrow{transition:none}.gsr-cursor{display:none}}
/* Full-page photography on the two reference-heavy reading pages. */
html{background:var(--bg)}
.page-rules,.page-lawbook{background:transparent}
.page-rules:before,.page-lawbook:before{position:fixed;z-index:-1;inset:0;content:"";background-position:center;background-size:cover;background-repeat:no-repeat;pointer-events:none}
.page-rules:before{background-image:linear-gradient(180deg,#11120fe8 0%,#11120fda 40%,#11120fed 100%),url("../img/senora-county.webp")}
.page-lawbook:before{background-image:linear-gradient(180deg,#11120fe8 0%,#11120fda 40%,#11120fed 100%),url("../img/gallery/sheriff-office.webp")}
html[data-theme="light"] .page-rules:before{background-image:linear-gradient(180deg,#f4f1e9e8 0%,#f4f1e9df 40%,#f4f1e9ef 100%),url("../img/senora-county.webp")}
html[data-theme="light"] .page-lawbook:before{background-image:linear-gradient(180deg,#f4f1e9e8 0%,#f4f1e9df 40%,#f4f1e9ef 100%),url("../img/gallery/sheriff-office.webp")}
/* Place index built around the rounded three-up reference cards. */
.place-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.place-card{position:relative;display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--panel);text-decoration:none;transition:transform .25s,border-color .25s,box-shadow .25s}
.place-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:var(--shadow)}
.place-photo{position:relative;isolation:isolate;display:grid;place-items:center;height:250px;overflow:hidden;background:#25251f}
.place-photo:after{position:absolute;z-index:0;inset:38% 0 0;background:linear-gradient(0deg,#10120f7a,transparent);content:"";pointer-events:none}
.place-photo>img{position:absolute;z-index:-1;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s,filter .4s}
.place-card:hover .place-photo>img{transform:scale(1.045);filter:saturate(1.08)}
.place-number{position:absolute;z-index:2;top:15px;left:16px;color:#fff;font-size:9px;font-weight:850;letter-spacing:.12em;text-shadow:0 2px 8px #0008}
.place-copy{display:grid;gap:4px;padding:15px 18px 19px}
.place-copy small{color:var(--accent);font-size:8px;font-weight:850;letter-spacing:.14em}
.place-copy :is(strong,.place-title){font-family:Georgia,"Times New Roman",serif;font-size:21px;font-weight:500;line-height:1.25}
.place-card-soon .place-photo{background:radial-gradient(ellipse at 50% 24%,color-mix(in srgb,var(--accent) 15%,var(--panel-2)),transparent 54%),linear-gradient(145deg,var(--panel-2),var(--panel))}
.place-card-soon .place-photo:before{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(0deg,transparent,#000);content:""}
.place-card-soon .place-photo svg{width:46px;height:46px;fill:none;stroke:var(--accent);stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;opacity:.72}
.image-soon{position:absolute;z-index:2;bottom:15px;left:50%;padding:6px 11px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--panel) 80%,transparent);color:var(--accent);font-size:8px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;transform:translateX(-50%);white-space:nowrap}
.character-card{grid-column:span 2;display:grid;grid-template-columns:1.2fr .8fr;min-height:290px}
.character-card .place-photo{height:100%;min-height:290px}
.character-card .place-copy{align-content:center;padding:25px 28px}
.character-card .place-copy :is(strong,.place-title){font-size:clamp(25px,3vw,39px)}
.character-note{max-width:230px;margin-top:9px;color:var(--muted);font-size:10px;line-height:1.65}
@media(max-width:920px){.place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.character-card{grid-column:span 2;min-height:260px}.character-card .place-photo{min-height:260px}}
@media(max-width:600px){.place-grid{grid-template-columns:1fr;gap:11px}.place-photo{height:230px}.character-card{grid-column:span 1;grid-template-columns:1fr}.character-card .place-photo{height:245px;min-height:245px}.character-card .place-copy{padding:17px 19px 20px}}
/* Custom Grand Senora eagle pointer with a short ember tail. */
.gsr-cursor{width:38px;height:38px;transition:opacity .12s;will-change:transform}.gsr-cursor svg{position:absolute;top:0;left:0;width:38px;height:38px;overflow:visible;filter:drop-shadow(0 3px 3px #0008)}.gsr-cursor .eagle-shape{fill:#edac45;stroke:#20170d;stroke-width:1.15;stroke-linejoin:round}.gsr-cursor .eagle-feather{fill:none;stroke:#fff0c8;stroke-width:1.05;stroke-linecap:round;opacity:.9}.gsr-cursor.is-hovering svg{transform:scale(1.08);transform-origin:28px 12px}.gsr-fire-trail{position:fixed;z-index:998;inset:0;overflow:hidden;pointer-events:none}.gsr-ember{position:absolute;width:var(--ember-size);height:var(--ember-size);border-radius:65% 35% 60% 40%;background:radial-gradient(circle at 65% 68%,#fff4c1 0 9%,#ffc34e 23%,#f06a22 58%,#b91f0b 78%,transparent 100%);box-shadow:0 0 10px #ff842c88;animation:ember-fly .62s ease-out forwards;pointer-events:none}.gsr-ember:nth-child(3n){filter:hue-rotate(-15deg)}@keyframes ember-fly{0%{opacity:.92;transform:translate(-50%,-50%) scale(1) rotate(0)}100%{opacity:0;transform:translate(calc(-50% + var(--ember-x)),calc(-50% + var(--ember-y))) scale(.12) rotate(150deg)}}
@media(prefers-reduced-motion:reduce){.gsr-cursor{display:none}.gsr-fire-trail{display:none}}
/* Cursor artwork supplied by the project owner, with a quiet feather wake. */
.gsr-cursor{width:46px;height:46px}
.gsr-cursor img{display:block;width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 2px 4px #0008);transition:transform .15s;transform-origin:8px 22px}
.gsr-cursor.is-hovering img{transform:scale(1.08)}
.gsr-custom-cursor,.gsr-custom-cursor *{cursor:none!important}
.gsr-custom-cursor input,.gsr-custom-cursor textarea,.gsr-custom-cursor select,.gsr-custom-cursor [contenteditable="true"]{cursor:text!important}
.gsr-feather-trail{position:fixed;z-index:998;inset:0;overflow:hidden;pointer-events:none}
.gsr-feather{position:absolute;width:var(--feather-width);height:var(--feather-height);border-radius:80% 12% 78% 14%;background:linear-gradient(155deg,#fff8e5 2%,#f1d6a0 43%,#bd843b 100%);box-shadow:0 0 7px #e7b86c42;opacity:.8;transform:translate(-50%,-50%) rotate(var(--feather-angle));animation:feather-drift .82s ease-out forwards;pointer-events:none}
.gsr-feather:after{position:absolute;top:10%;left:49%;width:1px;height:82%;background:#89663280;content:"";transform:rotate(-8deg)}
.gsr-feather:nth-child(3n){background:linear-gradient(155deg,#fff 0%,#e4e1d7 48%,#aa9d83 100%)}
@keyframes feather-drift{0%{opacity:.78;transform:translate(-50%,-50%) rotate(var(--feather-angle)) scale(1)}100%{opacity:0;transform:translate(calc(-50% + var(--feather-drift-x)),calc(-50% + var(--feather-drift-y))) rotate(calc(var(--feather-angle) + 100deg)) scale(.35)}}
@media(prefers-reduced-motion:reduce){.gsr-cursor,.gsr-feather-trail{display:none}}
/* Individual cards glide into view with a small stagger as each page is explored. */
.reveal-ready [data-scroll-in][data-scroll-side="left"]{--scroll-offset:-28px}
.reveal-ready [data-scroll-in][data-scroll-side="right"]{--scroll-offset:28px}
.reveal-ready [data-scroll-in]{opacity:0;transform:translateX(var(--scroll-offset,0)) scale(.99);transition:opacity .58s ease var(--scroll-delay,0ms),transform .58s cubic-bezier(.2,.7,.2,1) var(--scroll-delay,0ms)}
.reveal-ready [data-scroll-in].is-revealed{opacity:1;transform:translateX(0) scale(1)}
@media(prefers-reduced-motion:reduce){.reveal-ready [data-scroll-in],.reveal-ready [data-scroll-in].is-revealed{opacity:1;transform:none;transition:none}}
/* Compact rule search with an optional grouped changelog. */
.search-toggle{order:3;display:grid;place-items:center;flex:none;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:var(--panel-2);color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
.search-toggle:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--panel-2));transform:translateY(-1px)}
.search-toggle svg{width:16px;height:16px;fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linecap:round}
.search-panel{order:2;display:flex;align-items:center;gap:8px;flex:1;min-width:0;animation:search-expand .2s ease both}
.search-panel[hidden]{display:none}
@keyframes search-expand{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}
.news-switch{order:1;display:flex;align-items:center;gap:9px;flex:none;color:var(--muted);font-size:10px;font-weight:700;cursor:pointer;user-select:none}
.news-switch input{position:absolute;width:1px;height:1px;opacity:0}
.news-switch-track{position:relative;width:36px;height:21px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);transition:background .2s,border-color .2s}
.news-switch-track:after{position:absolute;top:3px;left:3px;width:13px;height:13px;border-radius:50%;background:var(--muted);content:"";transition:transform .2s,background .2s}
.news-switch input:checked+.news-switch-track{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 28%,var(--panel-2))}
.news-switch input:checked+.news-switch-track:after{transform:translateX(15px);background:var(--accent)}
.news-switch input:focus-visible+.news-switch-track,.search-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.rule-news-summary{margin:0 0 15px;padding:19px 21px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:var(--shadow)}
.rule-news-summary[hidden]{display:none}
.rule-news-heading{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.rule-news-heading h2{margin:0;color:var(--ink);font-family:Georgia,serif;font-size:21px;font-weight:500}
.rule-news-summary ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.rule-news-summary li{display:grid;gap:3px;padding:10px 12px;border-left:2px solid var(--accent);background:var(--panel-2);font-size:11px;line-height:1.55}
.rule-news-summary li strong{color:var(--ink);font-size:10px}
.rule-news-summary li span{color:var(--muted)}
.rule-new-badge{display:inline-flex;align-items:center;vertical-align:middle;margin-left:7px;padding:3px 7px;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent);font-family:Arial,sans-serif;font-size:8px;font-weight:850;letter-spacing:.08em;line-height:1.2}
.page-rules:not(.page-lawbook) .document-toolbar{position:fixed;z-index:60;top:94px;right:max(20px,calc((100vw - 960px)/2 - 58px));display:block;width:auto;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
.page-rules:not(.page-lawbook) .search-panel{position:absolute;top:calc(100% + 10px);right:0;display:grid;width:min(500px,calc(100vw - 32px));max-height:calc(100vh - 124px);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 8px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
.page-rules:not(.page-lawbook) .search-panel[hidden]{display:none}
.page-rules:not(.page-lawbook) .search-panel .document-search{grid-column:1;grid-row:1;padding:0 8px}
.page-rules:not(.page-lawbook) .search-panel .search-clear{grid-column:2;grid-row:1}
.page-rules:not(.page-lawbook) .search-panel .document-result-count{grid-column:1;grid-row:2;padding:2px 8px}
.page-rules:not(.page-lawbook) .search-panel .news-switch{grid-column:2;grid-row:2;white-space:nowrap}
.page-rules:not(.page-lawbook) .search-panel .search-results{grid-column:1/-1;max-height:42vh;overflow:auto;margin:4px 0 0;padding:13px}
.page-rules:not(.page-lawbook) .search-panel .search-results h2{font-size:18px}
@media(max-width:600px){.document-toolbar{flex-wrap:wrap}.search-toggle{order:2;width:32px;height:32px;margin-left:auto}.news-switch{margin-left:0;font-size:9px}.search-panel{order:3;flex-basis:100%}.search-panel .document-result-count{overflow:hidden;text-overflow:ellipsis}.rule-news-summary{padding:15px}}
@media(max-width:600px){.page-rules:not(.page-lawbook) .document-toolbar{top:84px;right:14px}.page-rules:not(.page-lawbook) .search-toggle{width:40px;height:40px;margin:0}.page-rules:not(.page-lawbook) .search-panel{display:grid;width:calc(100vw - 28px);grid-template-columns:minmax(0,1fr) auto}.page-rules:not(.page-lawbook) .search-panel .news-switch{font-size:8px}}
@media(prefers-reduced-motion:reduce){.search-panel{animation:none}.search-toggle,.news-switch-track,.news-switch-track:after{transition:none}}
/* First-visit welcome launch with a short, dismissible fireworks sequence. */
.launch-overlay{position:fixed;z-index:990;inset:0;display:none;place-items:center;overflow:hidden;background:#0d0e0b;color:#f5f1e8;isolation:isolate}
html[data-first-launch="yes"] .launch-overlay{display:grid}
body.launch-is-open{overflow:hidden}
.launch-backdrop{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,#11120fe8 0%,#11120f9e 48%,#11120f70 100%),linear-gradient(0deg,#11120fc4,transparent 45%,#11120f50),url("../img/senora-county.webp") center 54%/cover no-repeat;transform:scale(1.025);animation:launch-image 15s ease-out both}
.launch-overlay:before{position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 70% 42%,#d69b3e17,transparent 48%);content:""}
.launch-fireworks{position:absolute;z-index:0;inset:0;pointer-events:none}
.launch-fireworks canvas{display:block;width:100%;height:100%;opacity:.85}
.launch-card{position:relative;z-index:1;width:min(680px,calc(100% - 42px));padding:40px 24px;text-align:center;animation:launch-enter .8s cubic-bezier(.2,.7,.2,1) both}
.launch-logo{display:block;width:clamp(190px,25vw,300px);height:auto;max-height:205px;margin:0 auto;object-fit:contain;filter:drop-shadow(0 8px 28px #0009)}
.launch-kicker{margin:19px 0 14px;color:#e8b96b;font-size:9px;font-weight:800;letter-spacing:.23em}
.launch-card .launch-title{margin:0;font:500 clamp(42px,7.4vw,78px)/.99 Georgia,"Times New Roman",serif;letter-spacing:-.045em;text-shadow:0 4px 26px #0007}
.launch-card .launch-title em{color:#efbd70;font-style:normal}
.launch-copy{max-width:430px;margin:19px auto 27px;color:#ece8dfc9;font-size:13px;line-height:1.7}
.launch-enter{display:inline-flex;align-items:center;gap:14px;min-height:48px;padding:0 21px;border:1px solid #efbd70;border-radius:999px;background:#efbd70;color:#21190f;font-size:10px;font-weight:850;letter-spacing:.035em;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s}
.launch-enter:hover{transform:translateY(-2px);background:#f6ca84;box-shadow:0 9px 30px #d99d4542}
.launch-enter span{font-size:14px}
.launch-timer{margin:16px 0 0;color:#e9e4d7a3;font-size:9px;letter-spacing:.035em}
.launch-timer span{color:#f2c476;font-variant-numeric:tabular-nums}
.launch-overlay:after{position:absolute;right:0;bottom:0;left:0;height:3px;background:#efbd70;content:"";transform:scaleX(0);transform-origin:left;animation:launch-progress 15s linear both}
.launch-overlay.is-closing{pointer-events:none;animation:launch-fade .5s ease forwards}
@keyframes launch-enter{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@keyframes launch-fade{to{opacity:0;visibility:hidden}}
@keyframes launch-progress{to{transform:scaleX(1)}}
@keyframes launch-image{to{transform:scale(1)}}
@media(max-width:600px){.launch-card{padding:28px 12px}.launch-copy{max-width:330px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.launch-card,.launch-backdrop{animation:none}.launch-overlay:after{display:none}}

/* Minimal community welcome hero, matching the supplied dark reference. */
.page-home .home-hero{min-height:100svh;height:auto;display:grid;place-items:center;overflow:hidden;padding:126px 24px 68px;background:radial-gradient(ellipse at 50% 42%,#251c1c 0%,#151412 38%,#0b0c0e 78%)}
.page-home .home-hero:before{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,#b77b3220,transparent 52%),linear-gradient(180deg,#090a0c1a,#090a0c66);content:"";pointer-events:none}
.page-home .home-hero-inner{position:relative;width:min(720px,100%);margin:auto}
.page-home .home-copy{max-width:650px;margin:auto;text-align:center;animation:welcome-appear .9s cubic-bezier(.2,.7,.2,1) both}
.home-brand-logo{display:block;width:clamp(220px,29vw,320px);height:auto;margin:0 auto 25px;object-fit:contain;filter:drop-shadow(0 12px 34px #0009)}
.page-home .home-copy .eyebrow{justify-content:center;margin:0 0 22px;color:#e9b969;font-size:10px;letter-spacing:.26em}
.page-home .home-copy .eyebrow>span{display:none}
.page-home .home-copy h1{max-width:none;margin:0;color:#f6f3ed;font:600 clamp(25px,4.2vw,37px)/1.15 Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:-.025em;text-shadow:none}
.page-home .home-copy h1 em{color:#f1bd68;font-style:normal}
.page-home .home-lede{max-width:590px;margin:20px auto 0;color:#c5c2bd;font-size:15px;line-height:1.8}
.page-home .hero-actions{justify-content:center;gap:12px;margin-top:26px}
.button-discord{gap:10px;min-width:240px;min-height:52px;padding:0 25px;border:0;background:linear-gradient(105deg,#7740bd 0%,#ac277e 100%);color:#fff;font-size:12px;box-shadow:0 12px 36px #7b298833}
.button-discord:hover{background:linear-gradient(105deg,#874bd0,#bd308d)}
.button-discord svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.page-home .button-outline{border-color:#ffffff28;background:#ffffff0a;color:#f7f3ec}
.external-icon{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.header-discord .external-icon{width:12px;height:12px;color:var(--accent)}
.server-status{display:inline-flex;align-items:center;gap:9px;margin-top:21px;padding:8px 12px;border:1px solid #ffffff1b;border-radius:999px;background:#ffffff08;color:#c6c2bb;font-size:10px;letter-spacing:.035em}
.server-status i{width:8px;height:8px;flex:none;border-radius:50%;background:#8f928a;box-shadow:0 0 0 3px #8f928a20}
.server-status strong{padding-left:9px;border-left:1px solid #ffffff20;color:#f5f0e7;font-size:10px;font-variant-numeric:tabular-nums}
.server-status[data-server-status="online"] i{background:#55c77b;box-shadow:0 0 0 3px #55c77b25,0 0 13px #55c77b70}
.server-status[data-server-status="offline"] i{background:#eb625c;box-shadow:0 0 0 3px #eb625c25,0 0 13px #eb625c70}
@keyframes welcome-appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){
 .site-header,.page-home .site-header{height:68px;padding:0 14px;gap:8px}
 .menu-button{order:99;margin-left:auto;flex:0 0 38px;width:38px;height:38px}
 .nav{top:59px;right:12px;left:auto;width:min(300px,calc(100vw - 24px));}
 .page-home .nav{top:63px;right:12px;left:auto;width:min(300px,calc(100vw - 24px))}
 .home-brand-logo{width:clamp(220px,68vw,290px);margin-bottom:22px}
 .page-home .home-hero{min-height:100svh;padding:112px 21px 52px}
 .page-home .home-copy .eyebrow{font-size:8px;letter-spacing:.21em}
 .page-home .home-copy h1{font-size:clamp(25px,7vw,33px)}
 .page-home .home-lede{max-width:470px;font-size:13px;line-height:1.75}
 .page-home .hero-actions{flex-direction:column;align-items:center;gap:9px}
 .page-home .hero-actions .button{width:min(280px,100%)}
 .server-status{margin-top:18px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.page-home .home-copy{animation:none}}


/* County-first editorial refresh: full photography, restrained copy, ordinary page scroll. */
.page-home .home-hero{min-height:100svh;height:auto;display:flex;align-items:center;justify-content:flex-start;padding:132px max(24px,calc((100vw - 1240px)/2)) 100px;background:#171817}
.page-home .home-hero:before{z-index:-1;background:linear-gradient(90deg,#0c0d0bd9 0%,#0c0d0b9c 44%,#0c0d0b18 100%),linear-gradient(0deg,#0c0d0b70,transparent 46%)}
.page-home .home-hero-inner{width:min(1240px,100%);margin:auto}
.page-home .home-copy{width:min(720px,100%);max-width:720px;margin:0;text-align:left}
.page-home .home-brand-logo{width:clamp(205px,26vw,320px);margin:0 0 17px;object-position:left center}
.page-home .home-copy .eyebrow{justify-content:flex-start;margin:0 0 16px;font-size:9px;letter-spacing:.22em}
.page-home .home-copy .eyebrow>span{display:block}
.page-home .home-copy h1{max-width:790px;font:500 clamp(50px,7vw,88px)/.99 Georgia,"Times New Roman",serif;letter-spacing:-.045em;text-shadow:0 4px 32px #0007}
.page-home .home-copy h1 em{color:#f2bd68;font-style:normal}
.page-home .home-lede{max-width:455px;margin:19px 0 0;font-size:14px;line-height:1.75}
.page-home .hero-actions{justify-content:flex-start;gap:10px;margin-top:23px}
.button-discord{min-width:0;min-height:46px;padding:0 19px;background:var(--accent);color:#21190f;font-size:10px;box-shadow:0 8px 25px #0003}
.button-discord:hover{background:#f3bd65}
.page-home .button-outline{border-color:#ffffff55;background:#10110f59}
.page-home .home-hero-shade{background:transparent}
.page-home .hero-slide img{filter:brightness(.83) saturate(.92)}
.page-about .editorial-hero{min-height:calc(100svh - 78px);height:auto;padding:130px max(24px,calc((100vw - 1240px)/2)) 90px;background-position:center 55%;background-attachment:scroll}
.page-about .editorial-shade{background:linear-gradient(90deg,#0c0d0bd1 0%,#0c0d0b8a 42%,#0c0d0b18 100%),linear-gradient(0deg,#0c0d0b74,transparent 60%)}
.page-about .editorial-copy{width:min(1240px,100%);margin:auto}
.page-about .editorial-copy h1{max-width:850px;font-size:clamp(52px,7.2vw,94px)}
.page-about .editorial-copy>p:not(.eyebrow){max-width:460px;margin-top:20px;font-size:15px;line-height:1.8}
.page-about .about-story{margin-top:0;padding:82px 0 96px}
@media(max-width:760px){
 .page-home .home-hero{min-height:calc(100svh - 68px);padding:110px 22px 86px}
 .page-home .home-copy{max-width:610px}
 .page-home .home-brand-logo{width:clamp(175px,57vw,245px);margin-bottom:17px}
 .page-home .home-copy h1{font-size:clamp(46px,11vw,72px)}
 .page-home .home-lede{max-width:410px;font-size:13px}
 .page-home .hero-actions{flex-direction:row;align-items:flex-start}
 .page-home .hero-actions .button{width:auto}
 .page-about .editorial-hero{min-height:calc(100svh - 68px);padding:112px 22px 75px;background-position:58% center}
 .page-about .editorial-copy h1{font-size:clamp(48px,11vw,72px)}
 .page-about .about-story{padding-top:55px}
}
@media(max-width:440px){.page-home .hero-actions{flex-direction:column;align-items:flex-start}.page-home .hero-actions .button{min-width:205px}}

/* Server status replaces the top-right Discord shortcut; keep the hero action focused on Discord. */
.page-home .header-status{margin:0 0 0 auto;padding:9px 13px;border-color:#ffffff2b;background:#11130f85;color:#f5f1e8;backdrop-filter:blur(14px);white-space:nowrap}
.page-home .header-status strong{color:#fff}
.page-home .header-discord{display:none}
.page-home .home-copy .hero-actions .button-discord{min-width:190px}
.launch-logo,.home-brand-logo{background:transparent!important;box-shadow:none}
@media(max-width:760px){.page-home .header-status{order:2;margin-left:auto;padding:7px 9px;gap:6px;font-size:8px}.page-home .header-status strong{padding-left:6px;font-size:8px}.page-home .menu-button{order:3;margin-left:0}.page-home .home-copy .hero-actions{flex-direction:row;align-items:flex-start}}
@media(max-width:430px){.page-home .header-status{padding:6px 8px}.page-home .header-status [data-server-label]{max-width:68px;overflow:hidden;text-overflow:ellipsis}.page-home .header-status strong{border:0;padding-left:3px}}

.launch-fireworks-fallback{position:absolute;inset:0;z-index:0;pointer-events:none}


/* Reusable, tintable SVG brand marks and category icons. */
.social-links .social-logo{width:21px;height:21px;flex:none;fill:currentColor;stroke:none;color:var(--accent);transition:color .2s}
.social-links a:hover .social-logo{color:#ffd48b}
.section-heading{min-width:0}
.section-icon{width:40px;height:40px;flex:none;border-radius:12px}
.section-icon svg{width:22px;height:22px}
.section-icon svg[viewBox="0 0 120 120"]{fill:currentColor;stroke:none}
.document-section-toggle>.section-heading>span:last-child{line-height:1.4}
.document-section-toggle>i{margin-left:auto}
.page-rules:not(.page-lawbook) .search-toggle{width:44px;height:44px;border:1px solid var(--accent);background:#272219;color:var(--accent);box-shadow:0 5px 20px #0006}
.page-rules:not(.page-lawbook) .search-toggle svg{width:21px;height:21px;stroke:currentColor}
.page-rules:not(.page-lawbook) .search-toggle:hover,.page-rules:not(.page-lawbook) .search-toggle[aria-expanded="true"]{background:var(--accent);color:#21190f}
@media(max-width:1100px){.page-rules:not(.page-lawbook) .document-shell{padding-top:42px}}
@media(max-width:600px){.page-rules:not(.page-lawbook) .search-toggle{width:40px;height:40px}.section-icon{width:36px;height:36px}.section-icon svg{width:20px;height:20px}}
.page-rules:has(.nav.is-open) .document-toolbar{visibility:hidden}


/* Uploaded location photos: all nine gallery entries share the same grid. */
.page-gallery .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;grid-template-areas:none;grid-auto-rows:280px}
.page-gallery .gallery-card:nth-child(n){grid-area:auto;height:100%;min-width:0}
@media(max-width:1000px){.page-gallery .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:260px}}
@media(max-width:600px){.page-gallery .gallery-grid{grid-template-columns:1fr;grid-auto-rows:clamp(230px,67vw,355px)}}

.character-card .place-photo>img,.gallery-portrait img{object-position:50% 62%}

/* Direct embedded images: no external mask fetch needed. */
img.social-logo{display:inline-block;width:21px;height:21px;flex:none;object-fit:contain;background:none!important;mask:none!important;-webkit-mask:none!important;filter:brightness(0) saturate(100%) invert(79%) sepia(47%) saturate(506%) hue-rotate(351deg) brightness(95%) contrast(96%);vertical-align:middle}
.button-discord img.social-logo{width:20px;height:20px;filter:brightness(0) saturate(100%)}
.header-discord img.social-logo{width:17px;height:17px}
.section-icon img.social-logo{width:22px;height:22px}

/* Streams from the County. */
.streams-shell{width:min(var(--page-width),calc(100% - 52px));min-height:65vh;margin:65px auto 90px}
.streams-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}
.streams-heading h1{margin:0;font:500 clamp(42px,6vw,76px)/1.05 Georgia,serif;letter-spacing:-.045em}
.streams-heading p:not(.eyebrow){margin:18px 0 0;color:var(--muted);font-size:13px}
.streams-count{flex:none;padding:8px 13px;border:1px solid var(--line);border-radius:999px;color:var(--accent);font-size:11px;font-weight:750}
.streams-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.stream-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--panel)}
.stream-preview{position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#29291e,#151611)}
.stream-preview>img{width:100%;height:100%;object-fit:cover}
.stream-state{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:6px;padding:5px 9px;border-radius:7px;background:#11120fe8;color:#b3b3ac;font-size:10px;font-weight:800;letter-spacing:.06em}
.stream-state:before{width:6px;height:6px;border-radius:50%;background:#96968d;content:''}
.stream-state.is-live{color:#fff}.stream-state.is-live:before{background:#f05e55;box-shadow:0 0 0 3px #f05e5526}
.stream-card-body{padding:19px 20px 21px}.stream-card h2{overflow-wrap:anywhere;margin:0;font-size:18px}
.stream-title{min-height:44px;margin:8px 0;color:var(--muted);font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.stream-viewers{margin:12px 0;color:var(--accent);font-size:11px}
.stream-watch{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border:1px solid #e6a84b66;border-radius:999px;background:#e6a84b13;color:var(--accent);font-size:11px;font-weight:750;text-decoration:none;cursor:pointer}
.stream-watch:hover{border-color:var(--accent);background:#e6a84b25}
.stream-message{padding:35px 24px;border:1px solid var(--line);border-radius:20px;background:var(--panel);color:var(--muted);text-align:center;font-size:13px}
.stream-message[hidden],.stream-stage[hidden]{display:none}.stream-note{margin:0 0 20px;color:var(--muted);font-size:11px}.stream-note:empty{display:none}
.stream-stage{scroll-margin-top:94px;margin:0 0 28px;padding:14px;border:1px solid var(--line);border-radius:20px;background:var(--panel)}
.stream-stage-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px}.stream-stage-heading h2{margin:0;font-size:17px}
.stream-stage-heading button{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font-size:11px;cursor:pointer}.stream-stage-heading button span{padding-left:8px;font-size:17px}
.stream-frames{display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;border-radius:12px;background:#000}.stream-frames.with-chat{grid-template-columns:minmax(400px,1fr) 320px}
.stream-video{display:block;width:100%;min-height:300px;aspect-ratio:16/9;border:0}.stream-chat{display:block;width:100%;height:100%;min-height:350px;border:0}
@media(max-width:1000px){.streams-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stream-frames.with-chat{grid-template-columns:minmax(0,1fr)}.stream-chat{height:360px}}
@media(max-width:760px){.streams-shell{width:calc(100% - 36px);margin:40px auto 60px}.streams-heading{align-items:start;flex-direction:column;gap:18px}.streams-grid{grid-template-columns:1fr}.stream-stage{padding:0;border:0;background:transparent}.stream-stage-heading{gap:10px}.stream-stage-heading h2{font-size:14px}}

.section-icon svg{stroke-width:1.75;shape-rendering:geometricPrecision}

/* Font Awesome Free Solid SVGs, locally included with attribution. */
.section-icon svg.fa-icon{width:21px;height:21px;fill:currentColor;stroke:none;stroke-width:0}
.fa-icon path{fill:currentColor;stroke:none}
.section-icon svg.fa-icon[viewBox="0 0 640 512"]{width:24px;height:22px}
.button svg.fa-icon.button-icon{width:16px;height:16px;fill:currentColor;stroke:none;stroke-width:0}
.page-rules .search-toggle svg.fa-icon,.document-search svg.fa-icon{width:18px;height:18px;fill:currentColor;stroke:none;stroke-width:0}
.document-search svg.fa-icon{color:var(--accent)}

.page-team .team-row{grid-template-columns:48px minmax(0,1fr)}
@media(max-width:760px){.page-team .team-row{grid-template-columns:29px minmax(0,1fr)}}

/* In-page full-size gallery photos. Native dialog keeps focus in the viewer. */
.photo-viewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:32px 24px;border:0;background:transparent;color:#f2f0e9;overflow:auto}
.photo-viewer[open]{display:grid;place-items:center}
.photo-viewer::backdrop{background:#080907ed;backdrop-filter:blur(7px)}
.photo-viewer figure{display:flex;flex-direction:column;align-items:center;gap:15px;max-width:min(1700px,100%);margin:0}
.photo-viewer figure>img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 125px);object-fit:contain;border-radius:10px;box-shadow:0 18px 60px #0008}
.photo-viewer figcaption{max-width:100%;color:#e3dfd3;font-size:12px;text-align:center;line-height:1.5}
.photo-viewer-close{position:fixed;z-index:1;top:18px;right:20px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #ffffff40;border-radius:50%;background:#171813e8;color:#fff;cursor:pointer}
.photo-viewer-close span{font:300 32px/1 Arial,sans-serif;transform:translateY(-1px)}
.photo-viewer-close:hover{border-color:var(--accent);color:var(--accent)}
@media(max-width:600px){.photo-viewer{padding:70px 12px 24px}.photo-viewer-close{top:14px;right:14px}.photo-viewer figure>img{max-height:calc(100dvh - 150px)}.photo-viewer figcaption{font-size:11px}}
.photo-viewer{cursor:default}.gsr-custom-cursor .photo-viewer button{cursor:pointer}
.photo-viewer-active .gsr-cursor,.photo-viewer-active .gsr-feather-trail{visibility:hidden}
/* The modal is in the browser's top layer; use its visible native pointer. */
.gsr-custom-cursor .photo-viewer,.gsr-custom-cursor .photo-viewer *{cursor:auto!important}
.gsr-custom-cursor .photo-viewer button{cursor:pointer!important}

/* Square seasonal brand icons; intrinsic assets are 144 x 144. */
.brand img[data-brand-logo="icon"],.footer-brand img[data-brand-logo="icon"]{aspect-ratio:1 / 1;object-fit:contain;flex-shrink:0}

/* Character preview until the in-game integration is ready. */
.character-soon{position:relative;overflow:hidden;cursor:default}
.character-soon .soon-ribbon{position:absolute;z-index:3;top:23px;left:-43px;width:170px;padding:7px 0;transform:rotate(-45deg);background:#ffb02e;color:#17120b;text-align:center;font-size:11px;font-weight:800;letter-spacing:.18em;box-shadow:0 3px 12px #0004;pointer-events:none}
.character-soon:hover{transform:none}

/* Team portraits replace roster numbers; compact open-position embed. */
.team-row.team-profile{grid-template-columns:64px minmax(0,1fr);gap:24px;padding:22px 18px;min-height:110px}
.team-avatar{display:block;width:64px;height:64px;object-fit:cover;border-radius:50%;border:1px solid var(--line);background:var(--panel)}
.team-recruitment{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:18px;width:min(990px,calc(100% - 52px));margin:-17px auto 38px;padding:20px 24px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:16px;background:var(--panel)}
.team-recruitment[hidden]{display:none}
.recruitment-symbol{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:12px;color:var(--accent);font-size:25px;font-weight:400}
.recruitment-label{color:var(--accent);font-size:10px;letter-spacing:.08em;font-weight:800;text-transform:uppercase}
.team-recruitment h2{margin:3px 0 5px;font-size:19px;font-weight:600;line-height:1.3}
.team-recruitment p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.recruitment-link{color:var(--accent);font-size:11px;font-weight:700;text-decoration:none;white-space:nowrap;padding:8px 0}
.recruitment-link:hover{text-decoration:underline}
@media(max-width:600px){.team-row.team-profile{grid-template-columns:54px minmax(0,1fr);gap:17px;padding:20px 6px}.team-avatar{width:54px;height:54px}.team-profile .team-row-main>span{line-height:1.7}.team-recruitment{grid-template-columns:32px minmax(0,1fr);gap:13px;padding:18px}.recruitment-symbol{width:32px;height:32px}.recruitment-link{grid-column:2;justify-self:start;padding:0}.team-recruitment h2{font-size:17px}}

.recruitment-positions{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0;padding:0;list-style:none}.recruitment-positions li{padding:5px 9px;border:1px solid var(--line);border-radius:7px;color:var(--ink);font-size:11px;line-height:1.5}

.recruitment-symbol{display:flex;align-items:center;justify-content:center;line-height:1}.recruitment-symbol svg{display:block;width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.team-contact[hidden]{display:none}.team-recruitment:not([hidden]){margin-bottom:80px}

/* Privacy choices: equally prominent allow/decline actions, optional services off. */
.privacy-banner{position:fixed;z-index:2147483600;right:20px;bottom:20px;width:min(460px,calc(100% - 40px));padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--panel);color:var(--ink);box-shadow:0 16px 65px #0008;font-size:13px}
.privacy-banner[hidden]{display:none}.privacy-banner>strong{font-size:18px}.privacy-banner p,.privacy-dialog p{color:var(--muted);line-height:1.7;font-size:13px}
.privacy-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.privacy-actions button{flex:1 1 auto;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);padding:11px 14px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.privacy-actions button:hover{border-color:var(--accent)}
.privacy-dialog{width:min(590px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:28px;border:1px solid var(--line);border-radius:22px;background:var(--panel);color:var(--ink)}.privacy-dialog::backdrop{background:#000b}.privacy-dialog h2{margin:0 0 12px;font-size:23px}.privacy-dialog a{color:var(--accent);font-size:13px}.privacy-option{display:flex;align-items:start;gap:12px;margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:12px}.privacy-option input{margin:4px 0 0;accent-color:var(--accent);width:18px;height:18px;flex:none}.privacy-option span span{display:block;margin-top:6px;font-size:12px;line-height:1.7;color:var(--muted)}.privacy-option strong{font-size:14px}.privacy-footer-button{border:0;padding:0;background:none;color:inherit;font:inherit;cursor:pointer}.privacy-footer-button:hover{color:var(--accent)}.gsr-custom-cursor .privacy-dialog,.gsr-custom-cursor .privacy-dialog *{cursor:auto!important}.gsr-custom-cursor .privacy-dialog button,.gsr-custom-cursor .privacy-dialog input{cursor:pointer!important}

.privacy-banner>a{color:var(--accent);font-size:12px}

/* Temporarily unavailable navigation; can be re-enabled in config/website.js. */
[data-twitch-link][aria-disabled="true"]{opacity:.48;cursor:default!important;text-decoration:none;pointer-events:none}
.nav-soon-badge{display:block;font-size:7px;line-height:1.3;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.footer-nav [data-twitch-link]{display:inline-flex;flex-direction:column;gap:2px}
/* 404: local blurred County backdrop and an oval astronaut illustration. */
.page-not-found{background:#111310}.error-page{position:relative;isolation:isolate;min-height:calc(100svh - 190px);display:grid;place-items:center;overflow:hidden;padding:30px 24px 70px}.error-backdrop{position:absolute;z-index:-2;inset:-25px;background:linear-gradient(#11131085,#111310eb),url('../img/404-background.png') center/cover no-repeat;filter:blur(12px);transform:scale(1.05)}.error-page:after{position:absolute;z-index:-1;inset:0;content:'';background:radial-gradient(ellipse at center,transparent,#11131080)}.error-content{width:min(1050px,100%);text-align:center}.error-visual{width:min(580px,88vw);margin:0 auto -8px}.error-visual img{display:block;width:100%;height:auto;max-height:46svh;object-fit:contain;filter:drop-shadow(0 18px 28px #0007)}.error-code{display:block;margin:10px 0 13px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.error-copy h1{margin:0;font-family:Georgia,serif;font-weight:500;font-size:clamp(32px,4vw,52px);line-height:1.08;letter-spacing:-.035em}.error-copy p{margin:16px 0 23px;color:#d0d1ca;font-size:13px}.error-copy .button{display:inline-flex;gap:12px;align-items:center}.error-copy .external-icon{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round}@media(max-width:600px){.error-page{min-height:calc(100svh - 120px);padding:28px 20px 55px}.error-visual{width:100%;margin-bottom:0}.error-visual img{max-height:36svh}}

/* Privacy settings share the exact footer-link typography and alignment. */
.footer-nav{align-items:center}.footer-nav a,.footer-nav .privacy-footer-button{font-family:inherit;font-size:10px;font-weight:400;line-height:1.5;letter-spacing:normal;color:var(--muted);text-decoration:none}.footer-nav .privacy-footer-button{display:inline-block;appearance:none;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;text-align:left;white-space:normal}.footer-nav a:hover,.footer-nav .privacy-footer-button:hover{color:var(--accent)}.footer-nav .privacy-footer-button:focus-visible{outline:1px solid var(--accent);outline-offset:5px;border-radius:2px}

.page-not-found .error-page{min-height:100svh;padding:40px 24px}.error-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;margin-top:25px}.error-legal a,.error-legal button{padding:0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:10px;text-decoration:none;cursor:pointer}.error-legal a:hover,.error-legal button:hover{color:var(--accent)}

/* Team: the same local-photo crossfade as the home hero, fixed behind its content. */
.page-team{isolation:isolate;background:#111310}.team-backdrop{position:fixed;inset:0;z-index:-1;pointer-events:none;isolation:isolate}.team-backdrop[hidden]{display:none}.team-backdrop .hero-slideshow{position:absolute;inset:0;z-index:0}.team-backdrop:after{position:absolute;inset:0;z-index:1;content:'';background:linear-gradient(90deg,#10120fd9,#10120f99 55%,#10120f8c),linear-gradient(0deg,#10120fe0,transparent 70%)}.page-team .site-header{background:#141610bc;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.page-team .team-roster{background:#11131038}.page-team .team-recruitment{background:#171914cf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.team-legal{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;padding:0 20px 25px}.team-legal a,.team-legal button{color:var(--muted);font:inherit;font-size:10px;text-decoration:none}.team-legal a:hover,.team-legal button:hover{color:var(--accent)}
/* Small Safari viewports: account for browser bars and device safe areas. */
.page-not-found .error-page{min-height:100vh;min-height:100svh;padding:calc(24px + env(safe-area-inset-top,0px)) calc(20px + env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) calc(20px + env(safe-area-inset-left,0px))}.error-content{min-width:0}.error-visual img{height:auto;max-height:46vh;max-height:46svh}.error-legal button{min-height:32px}.error-copy .button{min-height:46px}.error-legal{row-gap:5px}@media(max-width:600px){.error-visual{width:min(100%,440px)}.error-visual img{max-height:34vh;max-height:34svh}.error-copy h1{font-size:clamp(27px,7.4vw,38px)}.error-copy p{font-size:12px}.error-code{font-size:9px}.error-legal{gap:5px 13px;margin-top:17px}}@media(max-height:550px) and (orientation:landscape){.error-content{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.error-visual img{max-height:75vh}.error-copy h1{font-size:28px}.error-copy p{margin:10px 0 15px}}



/* Team: aligned heading, balanced portrait cards and a compact vacancy panel. */
.page-team .page-team-content{min-height:calc(100vh - 86px)}.page-team .subpage-heading{width:min(990px,calc(100% - 52px));margin:0 auto;padding:54px 0 30px;align-items:end;gap:25px}.page-team .subpage-heading h1{font-size:clamp(44px,6vw,72px)}.page-team .subpage-heading>p{max-width:250px;line-height:1.6}.page-team .team-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:24px;border:0;background:none}.page-team .team-row.team-profile{grid-template-columns:76px minmax(0,1fr);gap:20px;min-height:145px;padding:25px;border:1px solid #ffffff24;border-radius:18px;background:#171a17b8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .2s,border-color .2s}.page-team .team-row.team-profile:hover{border-color:#f2bd6859;background:#1c201bd9}.page-team .team-avatar{width:76px;height:76px;border:2px solid #ffffff1c;box-shadow:0 5px 20px #0004}.page-team .team-row-main{min-width:0}.page-team .team-row-main h2{font-size:29px;line-height:1.15}.page-team .team-row-main>span{margin-top:8px;font-size:9px;letter-spacing:.085em;line-height:1.75;color:#f2bd68}.page-team .team-recruitment{margin:0 auto 28px;padding:22px 25px;border-radius:18px;background:#171a17d9}.page-team .team-recruitment h2{font-family:Georgia,serif;font-weight:500;font-size:24px}.page-team .team-legal{padding-bottom:30px}.page-team .team-backdrop:after{background:linear-gradient(90deg,#10120fc9,#10120f85 55%,#10120fa0),linear-gradient(0deg,#10120fdf,transparent 80%)}
@media(max-width:700px){.page-team .subpage-heading{display:block;padding:34px 0 23px;width:calc(100% - 36px)}.page-team .subpage-heading>p{margin:13px 0 0;max-width:none;font-size:12px}.page-team .team-roster{width:calc(100% - 36px);grid-template-columns:minmax(0,1fr);gap:10px}.page-team .team-row.team-profile{min-height:108px;grid-template-columns:62px minmax(0,1fr);padding:19px;gap:17px}.page-team .team-avatar{width:62px;height:62px}.page-team .team-row-main h2{font-size:25px}.page-team .team-row-main>span{font-size:8px;margin-top:5px}.page-team .team-recruitment{width:calc(100% - 36px);padding:18px}.page-team .team-recruitment h2{font-size:21px}.page-team .team-legal{gap:12px;padding-bottom:25px}}

/* Angular bronze accents, shared by imprint, rulebook and lawbook. */
.page-imprint,.page-rules{isolation:isolate}.page-geometry{position:fixed;z-index:-1;inset:0;pointer-events:none;background:url('../img/angular-accent.svg') center/cover no-repeat}.page-imprint{background:#111410}.page-imprint .subpage-heading{width:min(960px,calc(100% - 52px));margin:0 auto;padding:60px 0 30px}.page-imprint .subpage-heading h1{font-size:clamp(45px,6vw,76px)}.page-imprint .legal-page{min-height:calc(100svh - 290px)}.page-imprint .imprint-details{position:relative;display:grid;grid-template-columns:1.15fr 1fr;gap:40px;width:min(960px,calc(100% - 52px));padding:42px;margin:0 auto 80px;overflow:hidden;border:1px solid #ffffff22;border-radius:20px;background:linear-gradient(125deg,#20241fef,#171a17f5);box-shadow:0 18px 65px #0003}.imprint-details:before{position:absolute;top:0;left:0;width:38%;height:2px;content:'';background:linear-gradient(90deg,#ff9b38,transparent)}.imprint-details:after{position:absolute;right:-1px;top:-1px;width:85px;height:85px;content:'';background:linear-gradient(135deg,#ff9b3800,#ff9b3838);clip-path:polygon(0 0,100% 0,100% 100%);pointer-events:none}.imprint-block{min-width:0}.imprint-block+.imprint-block{padding-left:36px;border-left:1px solid #ffffff1a}.imprint-label{font-size:10px;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:#ffb161}.page-imprint .imprint-details h2{margin:22px 0 14px;font-size:27px;line-height:1.2}.page-imprint .imprint-details address,.page-imprint .imprint-details p{font-size:13px;line-height:1.95}.imprint-details address strong{color:var(--ink);font-weight:600}.imprint-mail{display:inline-flex;gap:12px;align-items:center;flex-wrap:wrap;overflow-wrap:anywhere;color:#f5d4ad;text-decoration:none;border-bottom:1px solid #ff9b386b;padding-bottom:5px}.imprint-mail:hover{color:#ffb161}.page-rules .document-section{border-color:#ffffff20;background:linear-gradient(115deg,#20231ff5,#171a17f5);box-shadow:0 5px 22px #0002}.page-rules .document-section:hover{border-color:#ff9b3860}.page-rules .document-section:has([data-accordion-button][aria-expanded="true"]){border-color:#ff9b387a;box-shadow:inset 3px 0 0 #ff9b38}.page-rules .section-icon{color:#ffad55;background:#ff9b380d;border-color:#ff9b3833}.page-rules .document-section-toggle{padding-top:20px;padding-bottom:20px}.page-rules .document-toolbar .document-search{border-color:#ff9b3847}.page-rules .document-section-toggle[aria-expanded="true"] .section-heading{color:#f7d0a1}
@media(max-width:700px){.page-imprint .subpage-heading{width:calc(100% - 36px);padding:36px 0 24px}.page-imprint .imprint-details{width:calc(100% - 36px);grid-template-columns:minmax(0,1fr);gap:25px;padding:27px;margin-bottom:45px}.imprint-block+.imprint-block{padding:25px 0 0;border-left:0;border-top:1px solid #ffffff1a}.page-imprint .imprint-details h2{margin-top:14px;font-size:24px}.page-geometry{background-size:auto 100%;background-position:58% center}.page-rules .document-section-toggle{padding-top:16px;padding-bottom:16px}}

/* Calmer logo exposure; only brand artwork is affected. */
.brand img[data-brand-logo],.footer-brand img[data-brand-logo],.home-brand-logo,.launch-logo{filter:brightness(.86) saturate(.9) drop-shadow(0 5px 14px #0005)}
.page-team .page-geometry{opacity:.85}.about-reading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 60px;width:min(1040px,calc(100% - 52px));margin:-30px auto 85px}.about-chapter{color:var(--accent);font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.about-reading h2{margin:15px 0 20px;font-family:Georgia,serif;font-weight:500;font-size:clamp(26px,3vw,35px);line-height:1.15;letter-spacing:-.02em}.about-reading p{color:var(--muted);font-size:13px;line-height:1.9;margin:0 0 16px}.about-reading-wide{grid-column:1/-1;padding-top:32px;border-top:1px solid var(--line)}.about-reading-wide p{max-width:850px}.page-about .story-copy p{line-height:1.9}.page-about .about-photo img{max-height:590px;object-fit:cover}.page-about .about-story{margin-bottom:36px;padding-bottom:42px}@media(max-width:700px){.about-reading{width:calc(100% - 40px);grid-template-columns:minmax(0,1fr);gap:30px;margin:0 auto 55px}.about-reading-wide{grid-column:auto;padding-top:26px}.page-about .about-story{margin-bottom:15px}.about-reading h2{font-size:28px}}

/* Consent UI sits above the decorative pointer, so use a native pointer here. */
.privacy-banner,.privacy-banner *,.privacy-dialog,.privacy-dialog *,.privacy-native-cursor,.privacy-native-cursor *{cursor:auto!important}.privacy-banner button,.privacy-banner a,.privacy-dialog button,.privacy-dialog a,.privacy-dialog input[type="checkbox"]{cursor:pointer!important}.privacy-dialog::backdrop{cursor:auto!important}.privacy-native-cursor .gsr-cursor,.privacy-native-cursor .gsr-feather-trail{opacity:0!important}

/* Privacy views must remain usable on short screens and with enlarged text. */
.privacy-dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}
.privacy-banner{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}
.page-privacy .legal-card{overflow-wrap:anywhere}.page-privacy .legal-card h2{scroll-margin-top:100px}
@media(max-width:600px){.privacy-dialog{padding:20px}.privacy-option{padding:12px}.page-privacy .legal-card{width:calc(100% - 32px);padding:22px}}

/* Native modal blocks pointer and keyboard access until a privacy choice is saved. */
body.privacy-choice-required{overflow:hidden}
.privacy-legal-links{display:flex;flex-wrap:wrap;gap:18px}
.privacy-actions button[hidden]{display:none}

/* Keep footer navigation and social buttons in the centre column. */
.site-footer .footer-inner{grid-template-columns:minmax(0,1fr) minmax(0,2.8fr) minmax(0,1fr);gap:20px 24px}
.site-footer .footer-brand{grid-column:1;grid-row:1 / 3;align-self:center;justify-self:start;min-width:0}
.site-footer .footer-nav{grid-column:2;grid-row:1;justify-content:center;text-align:center;gap:12px 18px}
.site-footer .footer-nav .privacy-footer-button{text-align:center}
.site-footer .social-links{grid-column:2;grid-row:2;justify-content:center;flex-wrap:wrap}
.site-footer .footer-meta{grid-column:1 / -1;grid-row:3}
@media(max-width:1000px){.site-footer .footer-inner{grid-template-columns:minmax(0,1fr);gap:22px}.site-footer .footer-brand{grid-column:1;grid-row:1;justify-self:center}.site-footer .footer-nav{grid-column:1;grid-row:2}.site-footer .social-links{grid-column:1;grid-row:3}.site-footer .footer-meta{grid-column:1;grid-row:4;text-align:center}}

/* Footer without brand block: centre all navigation and social links. */
.site-footer .footer-inner{grid-template-columns:minmax(0,1fr)}
.site-footer .footer-nav{grid-column:1;grid-row:1}
.site-footer .social-links{grid-column:1;grid-row:2}
.site-footer .footer-meta{grid-column:1;grid-row:3;text-align:center}

/* Show the launch screen behind first-visit privacy settings, never the home page. */
html[data-privacy-pending="yes"] .page-home > .site-header,
html[data-privacy-pending="yes"] .page-home > main,
html[data-privacy-pending="yes"] .page-home > .site-footer{visibility:hidden}
html[data-privacy-pending="yes"] .page-home .launch-overlay{display:grid}
html[data-privacy-pending="yes"] .page-home .launch-backdrop{animation:none}
html[data-privacy-pending="yes"] .page-home .launch-enter,
html[data-privacy-pending="yes"] .page-home .launch-timer{visibility:hidden}

/* Compact mobile navigation anchored to the menu button. */
@media(max-width:760px){
  .site-header .nav{left:auto;right:15px;width:min(280px,calc(100vw - 30px));max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;padding:8px;border-radius:15px}
  .site-header .nav a{padding:11px 13px;min-width:0;overflow-wrap:anywhere}
}

.stream-filters{display:flex;flex-wrap:wrap;gap:16px;margin:20px 0 28px}.stream-filters label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:var(--ink)}.stream-filters select{font:inherit;font-size:14px;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:11px 34px 11px 12px;min-width:160px;max-width:100%}.stream-filters select option{background:#151711;color:#fff}.stream-grid[hidden]{display:none!important}@media(max-width:480px){.stream-filters{gap:10px}.stream-filters label{flex:1;min-width:0}.stream-filters select{min-width:0;width:100%}}

.stream-preview.is-offline{position:relative;display:grid;place-items:center;min-height:180px;background:linear-gradient(135deg,#23271f,#11130f)}.stream-offline-banner{color:#aeb4a6;font:500 20px Georgia,serif;letter-spacing:.12em;padding:24px;text-align:center}

.stream-preview.is-offline{display:block;min-height:0}.stream-preview.is-offline>img{display:block;width:100%;height:100%;object-fit:cover}

.ai-content-badge{position:fixed;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:77.5px;height:auto;z-index:40;pointer-events:none;object-fit:contain}.site-footer{padding-bottom:55px}@media(max-width:600px){.ai-content-badge{right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));width:42.5px;height:auto}}@media print{.ai-content-badge{display:none}}
