/* Native text and controls, never screenshots behind duplicate UI. */
body{background:#f8f5ee}
.container{width:min(1160px,calc(100% - 64px))}
.topnav{min-height:92px;gap:24px;padding:22px 0;flex-wrap:wrap}
.brand{font-weight:700;font-size:20px;gap:14px}
.brand-mark{width:76px;height:34px;flex-shrink:0}
.navlinks{gap:28px;flex-wrap:wrap;font-size:15px}
.navlinks a{padding:8px 0;white-space:nowrap}
.navlinks a:hover{text-decoration:underline;text-underline-offset:6px}
.hero{min-height:100vh;background:#f8f5ee;overflow:visible}
.hero:after{display:none}
.headline{padding:62px 0 52px;text-align:center}
.headline h1{font-size:clamp(44px,6.8vw,88px);line-height:1.08;letter-spacing:-.035em;margin:0 0 22px}
.headline p{font-size:14px;letter-spacing:.11em;line-height:1.7;margin:0}
.cards{gap:28px;padding-bottom:72px;align-items:stretch;grid-template-columns:repeat(3,minmax(0,1fr))}
.cards>.card{padding:0;border:0;box-shadow:none;border-radius:18px;display:flex;flex-direction:column;background:none}
/* Landing cards are solid colour blocks. */
.card-photo{display:none;background-image:none}
.card-info{padding:28px;min-height:252px;flex:1;gap:12px;align-items:end}
.card-info h2{font-size:clamp(23px,2.3vw,31px);line-height:1.2;letter-spacing:0;margin:20px 0 10px}
.card-info p{font-size:21px;line-height:1.35;margin:0}
.card-info .feature-icon{width:48px;height:48px}
.arrow-circle{width:34px;height:34px;font-size:20px;align-self:end;margin-bottom:4px}
.host-card .card-info{background:#4f6238}.stay-card .card-info{background:#946315}.camp-card .card-info{background:#47636d}
.page-hero{min-height:0;background:var(--page-deep)!important}
.page-hero .container{padding-top:52px;padding-bottom:58px}
.hero-content{max-width:850px;padding:0}
.hero-content .feature-icon{width:50px;height:50px;margin-bottom:22px}
.hero-content h1{font-size:clamp(42px,6vw,68px);line-height:1.08;margin-bottom:22px}
.hero-content .tag{font-size:30px;line-height:1.25;margin-bottom:16px}
.hero-content .lead{font-size:18px;line-height:1.65;max-width:620px}
.actions{gap:16px;margin-top:28px;align-items:center}
.actions .button{padding:13px 22px;text-align:center;line-height:1.4}
.features{padding:32px 0;gap:24px}.mini{padding:10px 0}.mini-icon{font-size:26px}
.section{padding:56px 0}.bodycopy{max-width:760px}.bodycopy h2{font-size:clamp(28px,4vw,40px)!important;line-height:1.2}
.van-links{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:28px}
.van-links a{border:0;border-radius:0;padding:8px 0;text-decoration:underline;text-underline-offset:5px;font-size:16px;background:transparent!important}
.contact-form{width:100%;margin-top:28px}.footer{padding:26px 0}
@media(max-width:850px){
 .container{width:calc(100% - 40px)}
 .topnav{padding:20px 0;gap:16px}
 .brand{font-size:19px}.brand-mark{width:54px}
 .navlinks{width:100%;justify-content:space-between;gap:8px;font-size:14px}
 .navlinks a:not(.contact-pill){display:inline}
 .headline{padding:38px 0 32px}.headline h1{font-size:clamp(40px,9vw,64px)}
 .headline p{font-size:12px;letter-spacing:.07em}
 .cards{grid-template-columns:1fr;gap:24px;max-width:480px;margin:auto;padding-bottom:40px}
 .card-info{padding:25px;min-height:205px}.card-info h2{font-size:29px;margin-top:14px}.card-info p{font-size:22px}
 .page-hero .container{padding-top:38px;padding-bottom:42px}
 .hero-content h1{font-size:44px}.hero-content .tag{font-size:27px}
 .features{grid-template-columns:1fr 1fr;gap:22px}.mini span{line-height:1.5}
 .section{padding:40px 0}.actions{gap:12px}.actions .button{font-size:15px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}
