:root{--navy:#0c2740;--blue:#1c5f8d;--ice:#eef6fb;--snow:#fbfdff;--gold:#d6a54b;--ink:#17202a;--muted:#617080;--line:#d8e2ea;--green:#446b55}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--snow)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 36px));margin:auto}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(9,32,52,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:white;border-bottom:1px solid rgba(255,255,255,.12)}.nav{height:70px;justify-content:space-between;gap:24px}.brand,.nav{display:flex;align-items:center}.brand{font-weight:850;letter-spacing:.02em;font-size:1.05rem;gap:10px}.mark{width:34px;height:34px;border-radius:50%;border:2px solid white;display:grid;place-items:center;font-size:16px}.links{display:flex;align-items:center;gap:22px;font-size:.93rem}.loginBtn,.primary,.secondary{border-radius:999px;padding:11px 18px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px}.loginBtn,.primary{background:white;color:var(--navy)}.secondary{border:1px solid rgba(255,255,255,.65);color:white}.hero{min-height:72vh;position:relative;display:grid;align-items:end;color:white;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,20,34,.12),rgba(4,20,34,.78)),url(/images/snow-single-chair.jpeg) 50%/cover no-repeat}.hero .content{position:relative;padding:90px 0 74px;max-width:820px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:850;color:#dceaf4}.hero h1{font-size:clamp(3rem,8vw,6.4rem);line-height:.94;margin:12px 0 20px;letter-spacing:-.045em}.hero p{font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.5;max-width:650px;color:#eef6fb}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:82px 0}.section.alt{background:var(--ice)}.section h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1.05;letter-spacing:-.035em;margin:0 0 16px}.lead{font-size:1.14rem;line-height:1.7;color:var(--muted);max-width:760px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px;margin-top:34px}.card{background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 12px 35px rgba(20,45,64,.06)}.card img{aspect-ratio:16/10;object-fit:cover;width:100%}.cardBody{padding:22px}.card h3{margin:0 0 9px;font-size:1.3rem}.card p{color:var(--muted);line-height:1.55;margin:0}.split{display:grid;grid-template-columns:1.08fr .92fr;grid-gap:44px;gap:44px;align-items:center}.split img{border-radius:24px;min-height:440px;object-fit:cover;width:100%}.badge{display:inline-flex;padding:7px 11px;border-radius:999px;background:#e9f1f6;color:var(--blue);font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px;margin-top:28px}.stat{padding:18px;border-radius:18px;background:#f7fafc;border:1px solid var(--line)}.stat strong{font-size:1.8rem;display:block;color:var(--navy)}.gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-gap:12px;gap:12px;margin-top:32px}.gallery img{width:100%;height:360px;object-fit:cover;border-radius:18px}.gallery img:nth-child(2),.gallery img:nth-child(3){height:174px}.gallery .stack{display:grid;grid-gap:12px;gap:12px}.cta{padding:70px 0;background:var(--navy);color:white}.ctaInner{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer{padding:32px 0;background:#071b2b;color:#b9c8d3;font-size:.9rem}.pageHero{padding:86px 0 56px;background:linear-gradient(135deg,#0c2740,#204c6d);color:white}.pageHero h1{font-size:clamp(2.6rem,6vw,4.8rem);margin:0 0 12px;letter-spacing:-.04em}.pageHero p{max-width:760px;color:#dce9f3;font-size:1.1rem;line-height:1.6}.prose{max-width:900px}.prose h2{margin-top:42px}.prose h3{margin-top:28px}.prose li,.prose p{line-height:1.72;color:#3e4b57}.prose ul{padding-left:22px}.accordion details{background:white;border:1px solid var(--line);border-radius:16px;margin:10px 0;padding:0 18px}.accordion summary{cursor:pointer;padding:18px 0;font-weight:850;color:var(--navy)}.accordion .inner{padding:0 0 18px}.feeTable{width:100%;border-collapse:collapse;background:white;border-radius:18px;overflow:hidden;border:1px solid var(--line)}.feeTable td,.feeTable th{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left}.feeTable th{background:var(--navy);color:white}.loginPage{min-height:100vh;background:linear-gradient(90deg,rgba(4,16,27,.74),rgba(4,16,27,.45)),url(/images/login-cubbies.jpeg) 50%/cover no-repeat;display:grid;place-items:center;padding:24px}.loginCard{width:min(440px,100%);padding:34px;border:1px solid rgba(255,255,255,.28);border-radius:26px;background:rgba(8,31,49,.7);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:white;box-shadow:0 30px 80px rgba(0,0,0,.3)}.loginCard h1{margin:0 0 6px;font-size:2.15rem}.loginCard p{color:#dce7ef;line-height:1.5}.field{display:grid;grid-gap:7px;gap:7px;margin:16px 0}.field label{font-size:.9rem;font-weight:750}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border-radius:12px;border:1px solid #bccbd6;background:white;font:inherit;color:#17202a}.button{width:100%;padding:13px;border:0;border-radius:12px;background:white;color:var(--navy);font-weight:850;font-size:1rem}.smallLinks{display:flex;justify-content:space-between;margin-top:16px;font-size:.87rem;color:#dce7ef}.memberShell{min-height:100vh;background:#f2f6f9}.memberTop{background:var(--navy);color:white;padding:18px 0}.memberNav{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}.memberNav a{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.1)}.dashboard{padding:34px 0 70px}.dashboardGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}.dashCard{background:white;border:1px solid var(--line);border-radius:20px;padding:22px}.status{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:800;background:#eaf5ee;color:#326246}.reservationGrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:22px;gap:22px}.notice{padding:16px 18px;border-left:4px solid var(--gold);background:#fff8e7;border-radius:10px;line-height:1.55}.capacity{display:flex;gap:7px;flex-wrap:wrap}.bed{width:17px;height:17px;border-radius:4px;background:#dce7ee}.bed.filled{background:var(--blue)}.rule{padding:15px 0;border-bottom:1px solid var(--line);line-height:1.55}.muted{color:var(--muted)}.authMessage{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.12);color:#fff!important;font-size:.9rem}.button:disabled{opacity:.65;cursor:wait}.memberWelcomeRow{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}.portalButton{border:0;border-radius:999px;padding:10px 16px;background:var(--navy);color:white;font-weight:800;cursor:pointer}.memberShell input[type=date],.memberShell input[type=email],.memberShell input[type=number],.memberShell input[type=tel],.memberShell input[type=text],.memberShell select{width:100%;min-height:56px;padding:12px 16px;font-size:18px;line-height:1.4;border:1.5px solid #aebdca;border-radius:10px;background:#ffffff;color:#17212b}.memberShell textarea{width:100%;min-height:120px;padding:14px 16px;font-size:18px;line-height:1.5;border:1.5px solid #aebdca;border-radius:10px;background:#ffffff;color:#17212b}.memberShell input:focus,.memberShell select:focus,.memberShell textarea:focus{outline:3px solid rgba(28,95,141,.22);border-color:#1c5f8d}.memberShell button{min-height:44px;font-size:16px;padding:10px 16px}.memberShell label strong{font-size:17px}.memberShell a.primary,.memberShell button.primary{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border-radius:999px;background:#0d2f4d;color:#ffffff!important;border:1px solid #0d2f4d;text-decoration:none;font-size:17px;font-weight:700;cursor:pointer}.memberShell a.primary:hover,.memberShell button.primary:hover{opacity:.9}@media (max-width:850px){.links a:not(.loginBtn){display:none}.dashboardGrid,.gallery,.grid3,.reservationGrid,.split{grid-template-columns:1fr}.gallery img,.gallery img:nth-child(2),.gallery img:nth-child(3){height:300px}.ctaInner{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:1fr}.section{padding:60px 0}.hero{min-height:68vh}}@media (max-width:700px){.memberWelcomeRow{flex-direction:column}.portalButton{width:100%}}.memberShell a.secondary,.memberShell button.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border-radius:999px;background:#eef3f7;color:#0c2740!important;border:2px solid #0c2740;text-decoration:none;font-size:17px;font-weight:700;cursor:pointer}.memberShell a.secondary:hover,.memberShell button.secondary:hover{background:#e2ebf1}