*{box-sizing:border-box} :root{--paper:#EEEBE6;--brown:#281D19;--teal:#1A4A4E;--gold:#BF9D79}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--brown);font:400 16px/1.8 Montserrat,Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3{font-family:Lora,Georgia,serif;font-weight:400;line-height:1.2;margin:18px 0 24px}h1{font-size:clamp(38px,4.9vw,74px);letter-spacing:-.04em}h2{font-size:clamp(30px,3.2vw,47px);letter-spacing:-.025em}h3{font-size:27px}p{margin:0 0 24px}header{background:#14383b;color:var(--paper);padding:18px 4%;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:block;flex-shrink:0}.brand img{width:255px}.brand span{display:block;font-size:12px;text-align:center;margin-top:7px}nav{display:flex;gap:20px;align-items:center;font-size:14px}nav a[aria-current]{border-bottom:1px solid var(--gold);color:var(--gold)}nav a:hover,.text-link:hover{color:var(--gold)}.nav-cta{padding:11px 15px;border:1px solid #bf9d7966}.menu-toggle{display:none}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.19em;text-transform:uppercase;display:block}.hero{display:grid;grid-template-columns:1.07fr 1fr;min-height:690px}.hero-copy{padding:85px 8% 70px 9%;align-self:center}.hero-copy p{max-width:420px}.hero-image{max-height:780px;overflow:hidden;background:#281d19}.hero-image img{height:100%;width:100%;object-position:center 30%}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:var(--teal);color:white;padding:17px 23px;font-size:14px;font-weight:500;transition:background .2s}.button:hover{background:#281D19}.hero-copy .text-link{display:block;margin-top:23px;font-size:14px}.text-link{border-bottom:1px solid currentColor;padding-bottom:5px}.wrap,.section{padding:85px 6%;max-width:1600px;margin:auto}.section-heading{max-width:790px;margin-bottom:45px}.focus{background:#e5e1d9}.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.focus-card{border-top:1px solid #281d1940;padding-top:22px}.num{color:#746048;font-size:14px}.focus-card p{max-width:370px}.legacy-feature{background:var(--brown);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;align-items:center}.legacy-feature>img{height:630px;width:100%;object-position:50% 35%}.legacy-feature>div{padding:60px 12%}.legacy-feature h2{font-size:clamp(36px,4vw,62px)}.legacy-feature .eyebrow{color:var(--gold)}.legacy-feature .button{background:var(--gold);color:var(--brown)}.cities{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px}.cities a{font:26px Lora,Georgia,serif;border-bottom:1px solid #281d1955;padding:20px 0}.quote{text-align:center;max-width:1000px}.quote blockquote{font:42px/1.4 Allura,cursive;margin:0 0 20px}.quote cite{font-size:14px}.contact-band{border-top:1px solid #281d1933;display:flex;gap:25px;align-items:center;justify-content:space-between}.contact-band h2{font-size:32px;margin-bottom:0}footer{background:#14383b;color:var(--paper);padding:45px 6%;display:flex;justify-content:space-between;gap:35px}footer>div>a{margin-right:20px;font-size:14px}footer p{font-size:12px;margin:20px 0 0}.page-intro{padding-bottom:60px;border-bottom:1px solid #281d1933}.page-intro p{max-width:650px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.split article{min-width:0}.split h2{font-size:36px}.split ul{padding-left:20px;margin-bottom:35px}.split li{padding:5px 0}.dark-card{background:var(--teal);color:white;padding:40px;align-self:start}.dark-card .button{background:var(--paper);color:var(--brown)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.portrait-card{margin:0}.portrait-card img{max-height:620px;width:100%;object-position:top}.portrait-card figcaption{font-size:13px;margin-top:10px}.sport{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.sport-image img{max-height:650px;width:100%;object-position:top}.location-list{padding-top:0}.location{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:55px 0;border-bottom:1px solid #281d1933;scroll-margin-top:20px}.location h2{font-size:36px}.location p{margin-bottom:12px}.faq{max-width:1000px;padding-top:40px}details{border-bottom:1px solid #281d1944;padding:25px 0}summary{list-style:none;cursor:pointer;font-weight:500;display:flex;justify-content:space-between;gap:24px}summary::-webkit-details-marker{display:none}summary span{font-size:25px;line-height:1}details[open] summary span{transform:rotate(45deg)}details p{margin:22px 35px 0 0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #bf9d79;outline-offset:5px}.skip{position:absolute;top:-100px;left:20px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}@media(min-width:1600px){.hero{max-width:1600px;margin:auto}}@media(max-width:1150px){header{flex-wrap:wrap}nav{width:100%;justify-content:space-between}.hero{min-height:570px}.hero-copy{padding:55px 8%}.brand img{width:235px}}@media(max-width:700px){header{padding:14px 6%;gap:0}.brand img{width:215px}.brand span{font-size:11px}.menu-toggle{display:block;background:none;color:var(--paper);border:1px solid #bf9d7977;padding:10px;font:14px Montserrat,Arial}nav{display:none;padding-top:22px}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:12px}nav a{padding:8px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:48px 6%}.hero h1{font-size:43px}.hero-image{height:460px}.hero-image img{object-position:center 25%}.wrap,.section{padding:55px 6%}.focus-grid,.split,.story-grid,.sport{grid-template-columns:1fr;gap:35px}.focus-card p{max-width:none}.legacy-feature{grid-template-columns:1fr}.legacy-feature>img{height:430px}.legacy-feature>div{padding:45px 6%}.cities{grid-template-columns:1fr;gap:0}.cities a{font-size:24px}.quote blockquote{font-size:35px}.contact-band,footer,.location{flex-direction:column;align-items:flex-start}.contact-band h2{font-size:30px}.page-intro h1{font-size:39px}.location{padding:35px 0}.location h2{font-size:30px}.location-list{padding-top:15px}.dark-card{padding:28px}.split h2{font-size:32px}.sport-image img{max-height:570px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.header-quote{max-width:none;padding:25px 8% 27px;margin:0;background:#e3ded5;border-bottom:1px solid #281d1920}.header-quote blockquote{max-width:1050px;margin:0 auto 6px;font-size:clamp(27px,2.7vw,39px);line-height:1.35}.header-quote cite{font-style:normal;font-size:12px;letter-spacing:.12em}.plan-title{display:inline-block}.plan-title:hover{color:var(--teal)}.plan-title span{font-size:.65em}.split .button{max-width:100%}
.reveal-pending{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--reveal-delay,0ms)}.reveal-pending.is-visible,.reveal-pending:focus-within{opacity:1;transform:translateY(0)}
@media(max-width:700px){.header-quote{padding:23px 6%}.header-quote blockquote{font-size:29px}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none;transition:none}}

footer{align-items:center;gap:32px}footer .brand{max-width:100%}footer .brand img{max-width:100%;height:auto}footer .footer-social{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 24px}footer .footer-social a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin:0;font-size:14px}footer .footer-social svg{flex-shrink:0;color:var(--gold)}footer .footer-info p{text-align:right;margin:14px 0 0;opacity:.7;font-size:12px}footer .brand span{white-space:normal}
@media(max-width:700px){footer{align-items:center;text-align:center;padding:36px 6% 28px;gap:24px}footer .brand{width:100%;max-width:290px}footer .brand img{width:240px;margin:0 auto}footer .brand span{font-size:12px;line-height:1.65;margin-top:12px}footer .footer-info{width:100%}footer .footer-social{justify-content:center;gap:12px 28px}footer .footer-info p{text-align:center;border-top:1px solid #eeebe624;padding-top:20px;margin-top:18px;line-height:1.6}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.plan-comparison{max-width:1200px}.plans-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:16px;line-height:1.55}.plans-table .benefit-col{width:42%}.plans-table th,.plans-table td{padding:19px 20px;border-bottom:1px solid #281d1925;vertical-align:middle;overflow-wrap:anywhere}.plans-table th{text-align:left;font-weight:500}.plans-table td,.plans-table thead th:not(:first-child){text-align:center}.plans-table thead{background:var(--teal);color:var(--paper)}.plans-table thead th{font-size:20px}.plans-table small{display:block;font-size:13px;font-weight:400;line-height:1.5;margin-top:5px}.plans-table tbody tr:nth-child(even){background:#e5e1d955}.plans-table .included{font-size:24px;color:var(--teal)}.plans-table .not-included{color:#74645a;font-size:14px}.plans-table tfoot th,.plans-table tfoot td{border:0;padding-top:26px}.plans-table .button{display:flex;flex-direction:column;justify-content:center;gap:0;padding:13px 10px;line-height:1.5}.comparison-note{font-size:14px;line-height:1.7;margin:26px 0 0;color:#68584d}@media(max-width:700px){.plan-comparison{padding:44px 5%}.plan-comparison .section-heading{margin-bottom:28px}.plans-table{font-size:14px;line-height:1.5}.plans-table .benefit-col{width:40%}.plans-table th,.plans-table td{padding:15px 7px}.plans-table thead th{font-family:Montserrat,Arial,sans-serif;font-size:14px;padding:16px 7px}.plans-table small{font-size:12px}.plans-table tfoot th{font-size:14px}.plans-table .button{font-size:14px;padding:12px 4px}.plans-table .not-included{font-size:13px}}

/* Translucent surfaces, restrained texture and soft color transitions. */
:root{--glass-line:rgba(255,255,255,.72);--glass-shadow:0 8px 24px rgba(40,29,25,.07),inset 0 1px 0 rgba(255,255,255,.8)}
body{background-color:#eeebe6;background-image:radial-gradient(ellipse at 8% 10%,rgba(191,157,121,.13),transparent 50%),radial-gradient(ellipse at 92% 70%,rgba(91,125,117,.1),transparent 50%)}
.hero,.page-intro{background:radial-gradient(ellipse at 0% 100%,rgba(191,157,121,.22),transparent 60%),radial-gradient(ellipse at 55% 0%,rgba(110,135,126,.14),transparent 55%),linear-gradient(125deg,#f4f1eb,#e8e7e0)}
.focus{background:radial-gradient(ellipse at 95% 15%,rgba(135,150,127,.21),transparent 65%),linear-gradient(125deg,#e4e7df,#ede9e1)}
.focus-card{border-top-color:#64736344}
.header-quote{background:linear-gradient(110deg,rgba(196,179,155,.32),rgba(255,255,255,.45),rgba(120,145,132,.16));border-top:1px solid #ffffff80;border-bottom:1px solid #a8998328}
.legacy-feature{background:radial-gradient(ellipse at 100% 0%,rgba(191,157,121,.2),transparent 65%),linear-gradient(135deg,#281d19,#3c3029)}
.locations-teaser,.contact-band{background:radial-gradient(ellipse at 100% 100%,rgba(96,134,129,.17),transparent 65%),linear-gradient(125deg,rgba(255,255,255,.32),rgba(202,184,157,.17))}
.contact-band{border-top:1px solid #ffffff88}
.focus,.locations-teaser,.header-quote{position:relative;isolation:isolate}
.focus::before,.locations-teaser::before,.header-quote::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.28;background-image:radial-gradient(rgba(76,60,45,.16) .5px,transparent .7px);background-size:4px 4px}
.button,.nav-cta,.menu-toggle{border:1px solid var(--glass-line);border-radius:17px;background:linear-gradient(130deg,rgba(255,255,255,.66),rgba(240,237,229,.32) 50%,rgba(188,202,194,.38));color:#273f3b;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(18px) saturate(125%);backdrop-filter:blur(18px) saturate(125%);transition:background .25s ease,box-shadow .25s ease,transform .25s ease;border-bottom-color:rgba(95,117,106,.24)}
.button{min-height:54px;gap:16px;max-width:100%;text-align:center;line-height:1.5;font-weight:500;padding:17px 23px}
.button svg{flex-shrink:0}
header .nav-cta,header .menu-toggle,.legacy-feature .button,.dark-card .button{background:linear-gradient(125deg,rgba(255,255,255,.2),rgba(255,255,255,.08) 60%,rgba(191,157,121,.18));border-color:rgba(255,255,255,.32);border-bottom-color:rgba(255,255,255,.16);box-shadow:0 8px 22px #00000012,inset 0 1px 0 #ffffff25;color:#f7f3eb}
header .nav-cta{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:46px}
header .menu-toggle{min-height:44px;padding:10px 14px;border-radius:13px}
@media(hover:hover){.button:hover,.nav-cta:hover,.menu-toggle:hover{background:linear-gradient(125deg,rgba(255,255,255,.85),rgba(213,221,211,.63));color:#203c36;box-shadow:0 12px 28px #281d1914,inset 0 1px 0 #ffffffcc;transform:translateY(-2px)}.legacy-feature .button:hover,.dark-card .button:hover,header .nav-cta:hover,header .menu-toggle:hover{background:linear-gradient(125deg,#ffffff40,#bf9d7933);color:#fff}}
.button:active,.nav-cta:active{transform:translateY(0);box-shadow:inset 0 2px 6px #281d1912}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #846443;outline-offset:4px}header a:focus-visible,header button:focus-visible,.legacy-feature a:focus-visible,footer a:focus-visible{outline-color:#dec29f}
.dark-card{background:radial-gradient(ellipse at top right,#a3b59b24,transparent 75%),linear-gradient(135deg,#284b48,#1d3939);border:1px solid #ffffff33;border-radius:24px;box-shadow:0 18px 45px #281d190d}
.faq details{background:linear-gradient(120deg,#ffffff48,#ffffff12);border:1px solid #ffffff70;border-bottom-color:#a89b8738;border-radius:16px;padding:22px 24px;margin:0 0 12px;box-shadow:0 4px 16px #281d1903}
.faq details[open]{background:#ffffff60}
.plan-comparison{background:radial-gradient(ellipse at 90% 30%,#819c8b14,transparent 65%)}
.plans-table thead{background:linear-gradient(120deg,#d4dcd2,#e5e4d8);color:#293b33}
.plans-table thead th:first-child{border-radius:16px 0 0 0}.plans-table thead th:last-child{border-radius:0 16px 0 0}
.plans-table tbody tr:nth-child(even){background:#ffffff38}
.plans-table .button{border-radius:13px;min-height:60px}
.action-arrow{width:16px;height:16px;vertical-align:middle;flex-shrink:0}
@media(max-width:700px){.button{padding:16px 20px;border-radius:16px}.contact-band{gap:28px}.contact-band>.button,.locations-teaser>.button{width:100%;justify-content:center}.faq details{padding:20px 18px}.plans-table .button{padding:12px 4px;border-radius:12px}.nav-cta{margin-top:6px}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.button{background:linear-gradient(125deg,#f5f2ec,#dce1d8)}header .nav-cta,header .menu-toggle,.legacy-feature .button,.dark-card .button{background:linear-gradient(125deg,#61706a,#464a40)}}
@media(prefers-reduced-motion:reduce){.button:hover,.nav-cta:hover,.menu-toggle:hover{transform:none}}

#app-link-help{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom));left:5%;right:5%;z-index:1000;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px 20px;padding:18px;background:#f6f3ed;color:#281d19;border:1px solid #c5b8a7;border-radius:16px;box-shadow:0 8px 35px #281d1926;font-size:14px}#app-link-help a{text-decoration:underline;color:#284b48;font-weight:600}#app-link-help button{font:inherit;background:transparent;color:inherit;border:1px solid #c5b8a7;border-radius:8px;padding:10px 14px;cursor:pointer}

/* Preserve the full portrait at every viewport width. */
.hero-image{display:flex;align-items:center;justify-content:center;max-height:none;min-width:0;background:#282627}
.hero-image img{width:100%;height:auto;max-height:780px;object-fit:contain;object-position:center;flex:none}
.payment-note{font-size:14px;line-height:1.6;color:#514437;margin:14px 0 24px}
@media(max-width:700px){.hero-image{height:auto}.hero-image img{max-height:none}}
