﻿
:root { --ink:#1f2420; --forest:#243d32; --forest-dark:#17291f; --rust:#a8422d; --gold:#d69a3c; --cream:#f4ead8; --paper:#fbf7ee; --muted:#6c6a61; --line:#d9cfbd; --white:#fffdf8; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:90px; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Arial,Helvetica,sans-serif; line-height:1.65; }
a { color:inherit; } img { display:block; max-width:100%; }
.site-header { position:sticky; top:0; z-index:50; background:rgba(251,247,238,.94); border-bottom:1px solid rgba(36,61,50,.16); backdrop-filter:blur(12px); }
.nav-shell { width:min(1180px,calc(100% - 40px)); min-height:76px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:inline-flex; align-items:center; gap:11px; text-decoration:none; line-height:1.1; }
.brand-mark { width:64px; height:48px; display:grid; place-items:center; overflow:hidden; background:#fff; border:1px solid #d6c6aa; border-radius:5px; box-shadow:0 3px 10px rgba(28,40,32,.12); }
.brand-mark img { width:100%; height:100%; display:block; object-fit:contain; }
.brand strong { display:block; font:800 1.2rem/1 Georgia,serif; letter-spacing:.08em; color:var(--forest-dark); }
.brand small { display:block; margin-top:5px; color:var(--muted); font-size:.69rem; letter-spacing:.025em; }
.desktop-nav { display:flex; align-items:center; gap:22px; font-weight:700; font-size:.84rem; }
.desktop-nav a { text-decoration:none; } .desktop-nav a:hover { color:var(--rust); }
.desktop-nav .nav-cta { padding:10px 17px; color:var(--white); background:var(--forest); border-radius:4px; }
.desktop-nav .nav-cta:hover { color:white; background:var(--rust); }
.mobile-nav { display:none; position:relative; }
.mobile-nav summary { list-style:none; width:44px; height:44px; display:grid; place-items:center; border:1px solid var(--line); border-radius:4px; cursor:pointer; }
.mobile-nav summary::-webkit-details-marker { display:none; }
.mobile-nav nav { position:absolute; top:54px; right:0; width:230px; padding:10px; background:var(--white); border:1px solid var(--line); border-radius:7px; box-shadow:0 18px 45px rgba(25,35,28,.18); }
.mobile-nav nav a { display:block; padding:11px 12px; border-radius:4px; text-decoration:none; font-weight:700; }
.mobile-nav nav a:hover { background:var(--cream); }

.hero { overflow:hidden; color:white; background-color:var(--forest-dark); background-image:radial-gradient(circle at 15% 20%,rgba(214,154,60,.13),transparent 25%),linear-gradient(115deg,var(--forest-dark),#284637 65%,#1b3026); }
.hero-inner { width:min(1180px,calc(100% - 40px)); min-height:660px; margin:auto; display:grid; grid-template-columns:1.05fr .95fr; gap:72px; align-items:center; padding:72px 0 84px; }
.eyebrow { margin:0 0 13px; color:var(--rust); font-size:.76rem; line-height:1.4; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.eyebrow.light { color:#eac27d; }
.club-name { margin:0 0 14px; color:#fffaf0; font-size:clamp(1.05rem,1.8vw,1.4rem); line-height:1.25; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.hero h1,h2,.gallery-caption strong { font-family:Georgia,"Times New Roman",serif; }
.hero h1 { margin:0; max-width:720px; font-size:clamp(3.2rem,6.6vw,6.1rem); line-height:.94; letter-spacing:-.045em; font-weight:600; }
.hero h1 em { color:#e9c68a; font-weight:400; }
.hero-lede { max-width:590px; margin:26px 0 0; color:rgba(255,255,255,.78); font-size:1.15rem; line-height:1.75; }
.hero-actions,.new-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-top:32px; }
.button { min-height:50px; display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:0 21px; border-radius:4px; font-size:.88rem; font-weight:800; text-decoration:none; transition:transform .2s,background .2s; }
.button:hover { transform:translateY(-2px); }
.button.primary { color:white; background:var(--rust); box-shadow:0 10px 28px rgba(90,25,15,.25); }
.button.primary:hover { background:#bd4b34; }
.button.ghost { color:white; border:1px solid rgba(255,255,255,.4); }
.button.ghost:hover { background:rgba(255,255,255,.08); }
.button.cream { color:var(--forest-dark); background:var(--cream); }
.hero-facts { display:flex; flex-wrap:wrap; gap:22px; margin-top:42px; padding-top:24px; border-top:1px solid rgba(255,255,255,.16); }
.hero-facts span { display:inline-flex; align-items:center; gap:9px; color:#e8dec9; font-size:.8rem; }
.hero-facts svg { color:var(--gold); }
.hero-photo-wrap { position:relative; padding:20px; }
.hero-photo-wrap::before { content:""; position:absolute; inset:0 42px 45px 0; border:1px solid rgba(234,194,125,.55); transform:rotate(-2.4deg); }
.hero-photo { position:relative; overflow:hidden; aspect-ratio:4/5; border:8px solid #f0dfbf; box-shadow:0 24px 65px rgba(0,0,0,.36); transform:rotate(2deg); background:#ddd; }
.hero-photo img { width:100%; height:100%; object-fit:cover; object-position:47% center; filter:sepia(.16) contrast(1.04); }
.photo-stamp { position:absolute; right:-30px; bottom:-4px; width:205px; height:205px; padding:38px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; color:#fff8e8; background:url("../images/visitor-lasso.png") center/contain no-repeat,radial-gradient(circle,rgba(19,42,31,.92) 0 48%,transparent 70%); filter:drop-shadow(0 12px 16px rgba(0,0,0,.38)); transform:rotate(-8deg); }
.photo-stamp span { text-transform:uppercase; font-size:.66rem; font-weight:900; letter-spacing:.17em; text-shadow:0 2px 4px rgba(0,0,0,.8); }
.photo-stamp strong { font:700 1.55rem/1.12 Georgia,serif; text-shadow:0 2px 4px rgba(0,0,0,.8); }
.photo-stamp small { max-width:105px; margin-top:5px; font-size:.64rem; line-height:1.18; text-shadow:0 2px 4px rgba(0,0,0,.8); }

.quick-strip { position:relative; z-index:5; width:min(1180px,calc(100% - 40px)); margin:-34px auto 0; min-height:98px; display:grid; grid-template-columns:1.1fr .8fr .85fr auto; align-items:center; gap:22px; padding:20px 25px; background:var(--white); border:1px solid var(--line); box-shadow:0 14px 40px rgba(39,44,37,.12); }
.quick-strip>div { display:flex; align-items:center; gap:13px; } .quick-strip svg { flex:0 0 auto; color:var(--rust); }
.quick-strip small,.quick-strip strong { display:block; } .quick-strip small { color:var(--muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.09em; } .quick-strip strong { font-size:.82rem; }
.quick-strip>a { display:inline-flex; align-items:center; gap:7px; color:var(--rust); font-weight:800; font-size:.82rem; text-decoration:none; white-space:nowrap; }

.content-section { width:min(1120px,calc(100% - 40px)); margin:auto; padding:112px 0; }
.section-heading { max-width:700px; }
.section-heading h2,.contact-card h2 { margin:0; color:var(--forest-dark); font-size:clamp(2.25rem,4vw,4rem); line-height:1.08; letter-spacing:-.035em; }
.section-copy { max-width:650px; margin:18px 0 0; color:var(--muted); font-size:1rem; }
.about-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:90px; align-items:start; }
.large-copy { margin:24px 0 14px; color:#303730; font:1.25rem/1.65 Georgia,serif; }
.about-grid>div:first-child>p:not(.eyebrow) { max-width:650px; }
.text-link { display:inline-flex; align-items:center; gap:8px; margin-top:17px; color:var(--rust); font-weight:800; text-decoration:none; }
.text-link:hover { text-decoration:underline; text-underline-offset:4px; }
.schedule-card { padding:34px; background:var(--cream); border:1px solid #ddc9a6; filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.5)); }
.schedule-card ol { margin:22px 0 0; padding:0; list-style:none; }
.schedule-card li { display:grid; grid-template-columns:64px 1fr; gap:17px; align-items:center; padding:18px 0; border-top:1px solid rgba(36,61,50,.17); }
.schedule-card li>span { color:var(--rust); font:700 1.35rem Georgia,serif; }
.schedule-card b,.schedule-card small { display:block; } .schedule-card small { margin-top:3px; color:var(--muted); }
.fee-note { display:flex; gap:9px; align-items:center; margin-top:10px; padding:14px; color:white; background:var(--forest); font-size:.85rem; font-weight:700; }
.fee-note svg { color:#eac27d; }
.calendar-section { padding-top:96px; }
.calendar-frame { overflow:hidden; margin-top:38px; padding:10px; background:white; border:1px solid var(--line); box-shadow:0 12px 35px rgba(30,40,33,.09); }
.calendar-frame iframe { width:100%; height:660px; display:block; border:0; }

.events-section { width:100%; max-width:none; padding:105px max(20px,calc((100% - 1120px)/2)); background:var(--forest); color:white; }
.events-section .section-heading h2 { color:white; } .events-section .section-copy { color:rgba(255,255,255,.68); } .events-section .eyebrow { color:#eac27d; }
.event-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:18px; margin-top:45px; }
.event-card { position:relative; grid-column:span 2; min-height:340px; display:flex; flex-direction:column; padding:28px; color:var(--ink); background:var(--paper); border-top:4px solid var(--gold); }
.event-card:nth-child(4),.event-card:nth-child(5) { grid-column:span 3; }
.event-card.featured { color:white; background:var(--rust); border-color:#efc77f; }
.event-ribbon { position:absolute; right:0; top:0; padding:8px 12px; color:var(--forest-dark); background:#efc77f; font-size:.63rem; line-height:1; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.event-date { margin:0 0 22px; color:var(--rust); font-size:.74rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.featured .event-date { color:#ffe0a9; }
.event-card h3 { margin:0; font:700 1.55rem/1.18 Georgia,serif; }
.event-subtitle { margin:5px 0 0; font-style:italic; } .event-club { margin:20px 0 0; font-size:.82rem; font-weight:800; }
.event-place { display:flex; align-items:center; gap:6px; margin:5px 0 22px; color:var(--muted); font-size:.82rem; }
.featured .event-place { color:rgba(255,255,255,.75); }
.event-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:auto; }
.event-links a { display:inline-flex; align-items:center; gap:6px; color:var(--rust); font-size:.78rem; font-weight:800; text-decoration:none; }
.featured .event-links a { color:#fff0ce; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.featured .event-links a:hover { color:#fffdf8; }
.featured .event-links span { color:#ffe0a9; font-size:.78rem; font-weight:700; }

.results-section { padding-bottom:120px; }
.results-layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:90px; align-items:start; }
.year-badge { width:132px; margin-top:35px; padding:12px 0; text-align:center; color:var(--cream); background:var(--forest); font:700 2rem Georgia,serif; border-bottom:5px solid var(--gold); }
.results-list { border-top:1px solid var(--line); }
.results-list a { display:grid; grid-template-columns:45px 1fr auto; align-items:center; gap:14px; padding:17px 8px; border-bottom:1px solid var(--line); text-decoration:none; transition:background .2s,padding .2s; }
.results-list a:hover { padding-left:14px; background:white; }
.file-icon { width:38px; height:38px; display:grid; place-items:center; color:var(--rust); background:#efe0d5; border-radius:50%; }
.results-list b,.results-list small { display:block; } .results-list small { color:var(--muted); font-size:.74rem; } .results-list>a>svg { color:var(--rust); }
.archive-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-top:78px; padding-top:48px; border-top:1px solid var(--line); }
.archive-heading h3 { margin:0; color:var(--forest-dark); font:700 clamp(1.8rem,3vw,2.8rem)/1.1 Georgia,serif; }
.archive-heading>p { max-width:520px; margin:0; color:var(--muted); font-size:.9rem; }
.year-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:12px; margin-top:30px; }
.year-grid a { min-height:112px; position:relative; display:flex; flex-direction:column; justify-content:center; padding:18px; background:var(--white); border:1px solid var(--line); text-decoration:none; transition:transform .2s,border-color .2s,box-shadow .2s; }
.year-grid a:hover { transform:translateY(-3px); border-color:var(--rust); box-shadow:0 10px 24px rgba(36,61,50,.1); }
.year-grid span { color:var(--forest-dark); font:700 1.7rem/1 Georgia,serif; }
.year-grid small { margin-top:8px; color:var(--muted); font-size:.68rem; font-weight:700; }
.year-grid svg { position:absolute; right:14px; top:16px; color:var(--rust); }

.new-shooters { width:100%; max-width:none; padding:0; background:#eee3d2; }
.new-grid { width:min(1180px,100%); margin:auto; display:grid; grid-template-columns:.9fr 1.1fr; align-items:stretch; }
.new-photo { min-height:610px; } .new-photo img { width:100%; height:100%; object-fit:cover; filter:sepia(.18); }
.new-grid>div:last-child { padding:85px 70px; }
.check-list { display:grid; grid-template-columns:1fr 1fr; gap:13px 25px; margin:26px 0 0; padding:0; list-style:none; }
.check-list li { display:flex; gap:9px; align-items:flex-start; font-size:.88rem; font-weight:700; } .check-list svg { flex:0 0 auto; color:var(--rust); }
.gallery-band { position:relative; /*display:grid;*/ grid-template-columns:repeat(3,1fr); height:390px; overflow:hidden; background:#111; }
.gallery-band img { width:100%; height:100%; object-fit:cover; opacity:.63; filter:sepia(.22); }
.gallery-caption { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:20px; color:white; text-align:center; background:rgba(16,31,23,.27); text-shadow:0 2px 16px rgba(0,0,0,.7); }
.gallery-caption span { font-size:.76rem; font-weight:800; letter-spacing:.2em; text-transform:uppercase; } .gallery-caption strong { margin-top:10px; font-size:clamp(2rem,4.5vw,4.2rem); line-height:1.1; }

.contact-section { padding:100px 20px; background:var(--paper); }
.contact-card { width:min(1060px,100%); margin:auto; display:grid; grid-template-columns:1.15fr .85fr; gap:70px; align-items:center; padding:62px 66px; color:white; background:var(--rust); filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.5)); }
.contact-card h2 { color:white; font-size:clamp(2.1rem,4vw,3.7rem); }
.contact-card p:not(.eyebrow) { max-width:640px; margin:17px 0 0; color:rgba(255,255,255,.8); }
.contact-actions { display:flex; flex-direction:column; align-items:stretch; gap:14px; }
.contact-actions>a:not(.button) { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; color:white; border:1px solid rgba(255,255,255,.48); border-radius:4px; font-weight:800; font-size:.86rem; text-decoration:none; }
footer { padding:52px 20px; color:#cfcabd; background:#16241d; }
.footer-inner { width:min(1120px,100%); margin:auto; display:grid; grid-template-columns:auto 1fr; gap:12px 55px; align-items:center; }
footer .brand strong,footer .brand small { color:white; } footer p { margin:0; font-size:.78rem; text-align:right; } footer .fine-print { grid-column:2; color:#918f87; font-size:.68rem; }

.archive-site-header { background:var(--paper); border-bottom:1px solid var(--line); }
.archive-nav { width:min(1060px,calc(100% - 36px)); min-height:72px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:25px; }
.archive-brand { display:inline-flex; align-items:center; gap:10px; text-decoration:none; color:var(--forest-dark); }
.archive-brand-logo { width:58px; height:44px; display:grid; flex:0 0 auto; place-items:center; overflow:hidden; background:#fff; border:1px solid #d6c6aa; border-radius:5px; }
.archive-brand img { width:100%; height:100%; display:block; object-fit:contain; }
.archive-brand-copy strong,.archive-brand-copy small { display:block; }
.archive-brand-copy strong { font:800 1.08rem/1 Rockwell,"Bookman Old Style",Georgia,serif; letter-spacing:.1em; }
.archive-brand-copy small { margin-top:4px; color:var(--muted); font-size:.63rem; line-height:1.15; letter-spacing:.02em; }
.archive-back { display:inline-flex; align-items:center; gap:7px; color:var(--rust); font-size:.82rem; font-weight:800; text-decoration:none; }
.archive-page { min-height:100vh; background:var(--paper); }
.archive-shell { width:min(1060px,calc(100% - 36px)); margin:auto; }
.archive-hero { padding:72px 0 78px; color:white; background:var(--forest-dark); background-image:radial-gradient(circle at 15% 20%,rgba(214,154,60,.13),transparent 25%),linear-gradient(115deg,var(--forest-dark),#284637); }
.archive-hero h1 { margin:0; color:white; font:600 clamp(3rem,7vw,5.5rem)/.98 Georgia,serif; letter-spacing:-.04em; }
.archive-hero p:last-child { max-width:680px; margin:19px 0 0; color:rgba(255,255,255,.72); font-size:1rem; }
.archive-results { padding:70px 0 100px; }
.archive-summary { display:grid; grid-template-columns:170px 1fr; gap:40px; align-items:center; margin-bottom:35px; padding-bottom:30px; border-bottom:1px solid var(--line); }
.archive-summary>div { display:flex; align-items:baseline; gap:9px; }
.archive-summary span { color:var(--rust); font:700 2.7rem/1 Georgia,serif; }
.archive-summary small { color:var(--muted); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.archive-summary p { max-width:600px; margin:0; color:var(--muted); font-size:.88rem; }
.archive-result-list { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; border-top:1px solid var(--line); }
.archive-result-list>a { display:grid; grid-template-columns:45px 1fr auto; align-items:center; gap:14px; min-width:0; padding:17px 8px; border-bottom:1px solid var(--line); text-decoration:none; transition:background .2s,padding .2s; }
.archive-result-list>a:hover { padding-left:14px; background:white; }
.archive-result-list>a>span:nth-child(2) { min-width:0; }
.archive-result-list b,.archive-result-list small { display:block; }
.archive-result-list b { overflow-wrap:anywhere; font-size:.86rem; line-height:1.35; }
.archive-result-list small { margin-top:3px; color:var(--muted); font-size:.7rem; }
.archive-result-list>a>svg { color:var(--rust); }
.archive-year-nav { margin-top:70px; padding-top:35px; border-top:1px solid var(--line); }
.archive-year-nav p { margin:0 0 14px; color:var(--muted); font-size:.72rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.archive-year-nav div { display:flex; flex-wrap:wrap; gap:8px; }
.archive-year-nav a { min-width:59px; padding:8px 9px; text-align:center; background:white; border:1px solid var(--line); font-size:.78rem; font-weight:800; text-decoration:none; }
.archive-year-nav a:hover,.archive-year-nav a.active { color:white; background:var(--rust); border-color:var(--rust); }

.ro-content { padding:68px 0 110px; }
.ro-official-note { display:grid; grid-template-columns:auto 1fr auto; gap:18px; align-items:center; padding:24px 26px; color:white; background:var(--forest); border-left:5px solid var(--gold); }
.ro-official-note>svg { color:#eac27d; }
.ro-official-note b { font:700 1.25rem Georgia,serif; }
.ro-official-note p { margin:5px 0 0; color:rgba(255,255,255,.72); font-size:.84rem; }
.ro-official-note a { display:inline-flex; align-items:center; gap:7px; padding:11px 14px; color:var(--forest-dark); background:#f1d59e; font-size:.8rem; font-weight:900; text-decoration:none; white-space:nowrap; }
.ro-section { display:grid; grid-template-columns:300px 1fr; gap:58px; margin-top:66px; padding-top:50px; border-top:1px solid var(--line); }
.ro-section:first-of-type { margin-top:52px; }
.ro-section-heading h2 { margin:0; color:var(--forest-dark); font:700 2rem/1.12 Georgia,serif; }
.ro-section-heading>p:last-child:not(.eyebrow) { margin:14px 0 0; color:var(--muted); font-size:.84rem; line-height:1.6; }
.ro-resource-list { border-top:1px solid var(--line); }
.ro-resource-list>a { display:grid; grid-template-columns:45px 1fr auto; align-items:center; gap:14px; min-width:0; padding:17px 8px; border-bottom:1px solid var(--line); text-decoration:none; transition:background .2s,padding .2s; }
.ro-resource-list>a:hover { padding-left:14px; background:white; }
.ro-resource-list b,.ro-resource-list small { display:block; }
.ro-resource-list b { color:var(--forest-dark); font-size:.88rem; line-height:1.35; }
.ro-resource-list small { margin-top:4px; color:var(--muted); font-size:.72rem; }
.ro-resource-list>a>svg { color:var(--rust); }

@media(max-width:980px){.desktop-nav{display:none}.mobile-nav{display:block}.hero-inner{min-height:auto;grid-template-columns:1fr 380px;gap:35px;padding:65px 0 78px}.hero h1{font-size:clamp(3.1rem,7vw,4.9rem)}.quick-strip{grid-template-columns:1fr 1fr}.about-grid,.results-layout{gap:50px}.event-card{grid-column:span 3}.event-card:nth-child(5){grid-column:2/span 4}.new-grid>div:last-child{padding:65px 45px}.check-list{grid-template-columns:1fr}.year-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.nav-shell{width:min(100% - 28px,1180px);min-height:68px}.brand small{display:none}.hero-inner{width:min(100% - 32px,1180px);grid-template-columns:1fr;padding-top:58px}.hero-copy{position:relative;z-index:2}.hero-photo-wrap{width:min(460px,94%);margin:-4px auto 0}.hero-photo{aspect-ratio:1.12/1}.photo-stamp{width:166px;height:166px;padding:31px;right:-13px}.photo-stamp strong{font-size:1.25rem}.photo-stamp small{font-size:.57rem}.quick-strip{width:calc(100% - 28px);grid-template-columns:1fr;margin-top:-24px;padding:24px}.content-section{width:min(100% - 32px,1120px);padding:82px 0}.about-grid,.results-layout,.new-grid,.contact-card{grid-template-columns:1fr}.schedule-card{margin-top:8px}.calendar-frame{margin-inline:-10px;padding:5px}.calendar-frame iframe{height:600px}.events-section{width:100%;padding-inline:16px}.event-grid{grid-template-columns:1fr}.event-card,.event-card:nth-child(4),.event-card:nth-child(5){grid-column:auto;min-height:310px}.results-layout{gap:45px}.year-badge{width:105px}.archive-heading{display:block;margin-top:60px}.archive-heading>p{margin-top:14px}.year-grid{grid-template-columns:repeat(3,1fr)}.new-photo{min-height:390px}.new-grid>div:last-child{padding:65px 22px 75px}.gallery-band{grid-template-columns:1fr 1fr;height:380px}.gallery-band img:last-of-type{display:none}.contact-card{gap:35px;padding:43px 25px;box-shadow:9px 9px 0 #e6d6bd}.footer-inner{grid-template-columns:1fr;justify-items:center;text-align:center}footer p{text-align:center}footer .fine-print{grid-column:1}}
@media(max-width:470px){.hero h1{font-size:3.05rem}.hero-lede{font-size:1rem}.hero-actions .button{width:100%}.hero-facts{flex-direction:column;gap:12px}.hero-photo-wrap{width:96%;padding:12px}.photo-stamp{width:145px;height:145px;padding:27px;right:-10px}.photo-stamp span{font-size:.56rem}.photo-stamp strong{font-size:1.08rem}.photo-stamp small{max-width:80px;font-size:.52rem}.section-heading h2{font-size:2.35rem}.schedule-card{padding:25px 20px}.schedule-card li{grid-template-columns:56px 1fr}.calendar-frame iframe{height:520px}.results-list a{grid-template-columns:40px 1fr auto}.year-grid{grid-template-columns:repeat(2,1fr)}.new-actions .button{width:100%;padding-inline:14px}.gallery-band{grid-template-columns:1fr}.gallery-band img:nth-of-type(2){display:none}}
@media(max-width:760px){.archive-result-list{grid-template-columns:1fr}.archive-summary{grid-template-columns:1fr;gap:12px}.archive-hero{padding:58px 0 62px}}
@media(max-width:760px){.ro-content{padding-top:45px}.ro-official-note{grid-template-columns:auto 1fr}.ro-official-note a{grid-column:1/-1;justify-content:center}.ro-section{grid-template-columns:1fr;gap:24px;margin-top:52px;padding-top:40px}.ro-section-heading h2{font-size:1.8rem}}
@media(max-width:470px){.archive-nav{min-height:64px}.archive-back{font-size:.74rem}.archive-hero h1{font-size:2.8rem}.archive-results{padding-top:50px}.archive-result-list>a{grid-template-columns:40px 1fr auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Refined 1880s frontier visual direction */
:root { --ink:#2f261b; --forest:#29382c; --forest-dark:#17251d; --rust:#7f3024; --gold:#b48848; --cream:#ead9b8; --paper:#f2e5ca; --muted:#6e604d; --line:#bca77c; --white:#fbf1dc; }
body { background-color:var(--paper); background-image:radial-gradient(circle at 20% 10%,rgba(96,67,32,.055) 0 1px,transparent 1.5px),radial-gradient(circle at 80% 65%,rgba(96,67,32,.04) 0 1px,transparent 1.7px),linear-gradient(90deg,rgba(255,255,255,.16),rgba(103,70,30,.035) 50%,rgba(255,255,255,.12)); background-size:23px 19px,31px 29px,100% 100%; }
.hero h1,h2,.gallery-caption strong,.archive-hero h1,.ro-section-heading h2 { font-family:Rockwell,"Bookman Old Style",Georgia,serif; }
.site-header { background:rgba(239,224,195,.96); border-bottom:3px double #806b48; box-shadow:0 5px 18px rgba(58,39,20,.16); }
.nav-shell { min-height:82px; }
.brand-mark,.archive-brand-logo { border:2px solid #715b3b; border-radius:2px; box-shadow:inset 0 0 0 2px #e4cfa4,0 3px 8px rgba(45,30,15,.2); }
.brand strong { font-family:Rockwell,"Bookman Old Style",Georgia,serif; letter-spacing:.12em; }
.desktop-nav { font-family:"Bookman Old Style",Georgia,serif; font-size:.77rem; letter-spacing:.035em; text-transform:uppercase; }
.desktop-nav .nav-cta,.button { border:1px solid #4f2119; border-radius:2px; box-shadow:inset 0 0 0 2px rgba(255,232,190,.18),0 5px 12px rgba(48,29,16,.18); }
.mobile-nav summary,.mobile-nav nav { background:#f1e2c5; border:2px solid #806b48; border-radius:2px; }
.mobile-nav nav a { font-family:"Bookman Old Style",Georgia,serif; }

.hero { position:relative; isolation:isolate; color:#fff4dd; background-color:#1c2c22; background-image:radial-gradient(circle at 14% 18%,rgba(185,137,68,.16),transparent 27%),linear-gradient(110deg,#17251d,#304332 64%,#1b2b21); border-bottom:5px double #9b7542; }
.hero::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.22; background-image:repeating-linear-gradient(0deg,transparent 0 4px,rgba(0,0,0,.08) 5px),radial-gradient(circle at 65% 35%,rgba(255,222,167,.2),transparent 37%); mix-blend-mode:soft-light; }
.hero h1 { text-transform:uppercase; font-weight:900; line-height:.98; letter-spacing:-.02em; text-shadow:0 3px 0 #381d13,0 7px 18px rgba(0,0,0,.45); }
.hero h1 em { display:inline-block; color:#e1bd78; font-family:Georgia,"Times New Roman",serif; font-weight:400; text-transform:none; letter-spacing:-.03em; }
.club-name { color:#f1d49e; font-family:"Bookman Old Style",Georgia,serif; letter-spacing:.13em; }
.eyebrow { font-family:"Bookman Old Style",Georgia,serif; letter-spacing:.16em; }
.eyebrow::before { content:"\2726 "; margin-right:.55em; }
.hero-lede { color:rgba(255,244,221,.82); font-family:Georgia,"Times New Roman",serif; font-size:1.22rem; }
.hero-photo-wrap::before { inset:0 38px 40px 0; border:3px double rgba(224,187,118,.72); }
.hero-photo { border:12px solid #d2b681; outline:2px solid #614b30; box-shadow:0 25px 65px rgba(0,0,0,.48),inset 0 0 30px rgba(74,43,19,.3); }
.hero-photo img { object-position:center 34%; filter:sepia(.62) saturate(.72) contrast(1.12) brightness(.92); }
.photo-stamp { filter:sepia(.16) drop-shadow(0 12px 16px rgba(0,0,0,.45)); }

.quick-strip { background:#ecdbb8; background-image:linear-gradient(100deg,rgba(255,255,255,.2),rgba(100,65,28,.05)); border:4px double #806b48; box-shadow:0 14px 30px rgba(60,39,19,.2); }
.quick-strip small { color:#76552f; font-family:"Bookman Old Style",Georgia,serif; }
.quick-strip svg,.text-link svg { color:var(--rust); stroke-width:1.7; }
.content-section { position:relative; }
.section-heading::after,.ro-section-heading::after,.archive-heading>div::after { content:""; display:block; width:min(310px,75%); height:34px; margin-top:18px; background:url("../images/western-divider.png") left center/100% auto no-repeat; }
.section-heading h2,.contact-card h2 { color:#30271d; font-weight:900; letter-spacing:-.02em; }
.large-copy { color:#3e3022; }
.schedule-card { background-position: 0% 0%;
	border: 4px double #846a40;
	background-image: linear-gradient(135deg,rgba(255,255,255,.28),rgba(114,75,31,.055));
	background-color: #ead7ad;
	background-repeat: repeat;
	background-attachment: scroll;
}
.schedule-card li { border-top:1px solid rgba(82,58,31,.34); }
.schedule-card li>span { color:#7f3024; font-family:Rockwell,"Bookman Old Style",Georgia,serif; }
.fee-note { background:linear-gradient(#354638,#243329); border:3px double #b9975e; }
.calendar-frame { padding:13px; background:#6d4a2e; border:4px double #3d2818; box-shadow:0 13px 28px rgba(55,35,18,.2),inset 0 0 0 3px #9b7448; }

.events-section { position:relative; overflow:hidden; background:#26372c; background-image:linear-gradient(rgba(30,46,36,.94),rgba(27,42,33,.97)); border-block:5px double #9b7542; }
.event-card { background:#ead7ac; background-image:radial-gradient(circle at 12% 15%,rgba(91,55,19,.07) 0 1px,transparent 1.5px),linear-gradient(145deg,rgba(255,255,255,.25),rgba(106,67,26,.05)); border:3px double #806238; border-top-width:5px; box-shadow:7px 9px 0 rgba(5,14,9,.2); }
.event-card h3 { font-family:Rockwell,"Bookman Old Style",Georgia,serif; text-transform:uppercase; letter-spacing:.025em; }
.event-card.featured { color:#fff0d1; background:#743026; background-image:linear-gradient(145deg,#87372a,#62271f); border-color:#d2a65f; }
.event-ribbon { border-left:2px solid #7b5d30; border-bottom:2px solid #7b5d30; font-family:"Bookman Old Style",Georgia,serif; }
.event-date { font-family:"Bookman Old Style",Georgia,serif; }

.results-list,.archive-result-list,.ro-resource-list { border-top:3px double #9c8259; }
.results-list a,.archive-result-list>a,.ro-resource-list>a { border-bottom:1px solid rgba(110,84,48,.35); }
.results-list a:hover,.archive-result-list>a:hover,.ro-resource-list>a:hover { background:#ead8b4; }
.file-icon { color:#6d2b22; background:#dfc79b; border:1px solid #a88a5d; border-radius:2px; }
.year-badge { background:#26372c; border:3px double #d0a65f; filter: drop-shadow(5px 6px 5px rgba(0, 0, 0, 0.3)); }
.year-grid a { background:#ead7ad; background-image:linear-gradient(145deg,rgba(255,255,255,.22),rgba(99,63,25,.04)); border:3px double #9a7d50; box-shadow:4px 5px 0 rgba(77,51,25,.12); }
.year-grid span { font-family:Rockwell,"Bookman Old Style",Georgia,serif; }

.new-shooters { background:#dfcba4; border-block:5px double #8e7147; }
.new-photo { border-right:5px double #8e7147; }
.new-photo img { object-position:54% center; filter:sepia(.58) saturate(.76) contrast(1.07); }
.check-list li { font-family:Georgia,"Times New Roman",serif; font-size:.95rem; }
.gallery-band { /*display:grid; height:440px;*/ background:#211b14; border-block:5px double #9b7542; }
.gallery-band img { width:100%; height:100%; object-fit:cover; object-position:center; opacity:.82; filter:sepia(.34) saturate(.72) contrast(1.08); }
.gallery-band img:only-of-type { display:block!important; }
.gallery-caption { background:linear-gradient(rgba(31,24,16,.12),rgba(31,24,16,.58)); }
.gallery-caption span { font-family:"Bookman Old Style",Georgia,serif; }
.gallery-caption strong { color:#fff0ce; text-shadow:0 3px 0 #44261b,0 8px 20px rgba(0,0,0,.72); }

.contact-section { background:#ead9b8; background-image:radial-gradient(circle at 20% 10%,rgba(93,61,29,.055) 0 1px,transparent 1.5px); }
.contact-card { background-position: 0% 0%;
	color:#fff1d8; border: 5px double #d2aa68;
	background-image: linear-gradient(145deg,#84372a,#62271f);
	background-color: #743127;
	background-repeat: repeat;
	background-attachment: scroll;
}
.contact-actions>a:not(.button) { border:3px double rgba(255,232,190,.6); border-radius:2px; }
footer { color:#d9c6a2; background:#1d2a22; border-top:5px double #9b7542; }

.archive-site-header { background:#ead9b8; border-bottom:4px double #806b48; }
.archive-hero { position:relative; overflow:hidden; background:#26372c; background-image:linear-gradient(110deg,#17251d,#354836); border-bottom:5px double #9b7542; }
.archive-hero::after { content:""; position:absolute; inset:0; opacity:.15; background-image:repeating-linear-gradient(0deg,transparent 0 4px,rgba(0,0,0,.14) 5px); pointer-events:none; }
.archive-hero .archive-shell { position:relative; z-index:1; }
.archive-hero h1 { text-transform:uppercase; font-weight:900; letter-spacing:.015em; text-shadow:0 3px 0 #381d13; }
.archive-page { background:transparent; }
.archive-summary,.archive-heading,.archive-year-nav,.ro-section { border-color:#a99065; }
.ro-official-note { background:#26372c; border:4px double #b58c4e; box-shadow:7px 8px 0 rgba(72,47,22,.14); }
.ro-official-note a { border:2px solid #705426; box-shadow:inset 0 0 0 2px rgba(255,255,255,.2); }

@media(max-width:760px){.nav-shell{min-height:74px}.hero-photo{border-width:8px}.new-photo{border-right:0;border-bottom:5px double #8e7147}.gallery-band{height:360px}.section-heading::after,.ro-section-heading::after,.archive-heading>div::after{height:28px}.event-card{box-shadow:5px 6px 0 rgba(5,14,9,.2)}}
@media(max-width:470px){.archive-brand-copy strong{font-size:.9rem}.archive-brand-copy small{max-width:150px;font-size:.56rem}.archive-back>span{display:none}.archive-nav{gap:12px}}


/* Expression Web 4 static-edition helpers */
.plain-icon { display:inline-block; flex:0 0 auto; color:var(--rust); font-weight:900; }
.file-icon { font-size:.58rem; font-weight:900; letter-spacing:.04em; }
.download-mark { color:var(--rust); font-size:1.05rem; font-weight:900; }
.featured .download-mark { color:#fff0ce; }
.mobile-nav summary { font-size:1.35rem; }
.quick-strip .plain-icon,.fee-note .plain-icon,.check-list .plain-icon { margin-right:2px; }


/* Self-contained Lucide-style SVG icons for the Expression Web edition */
svg.plain-icon { width:18px; height:18px; display:inline-block; vertical-align:-3px; flex:0 0 auto; color:currentColor; }
.file-icon svg { width:20px; height:20px; }
.download-mark { display:inline-flex; align-items:center; justify-content:center; }
.download-mark svg { width:18px; height:18px; }
.year-grid b { display:block; line-height:0; }
.year-grid b svg { width:18px; height:18px; }
.mobile-nav summary svg { width:25px; height:25px; }
.button svg,.text-link svg,.contact-actions svg,.archive-back svg,.event-links svg { vertical-align:middle; }
