*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{font-family:'Hanken Grotesk',sans-serif;color:#211C16;background:#F3EDE1;-webkit-font-smoothing:antialiased;}
::selection{background:#8C2E22;color:#F3EDE1;}
input,textarea{font-family:inherit;}
img{display:block;}
a{color:inherit;text-decoration:none;}
@keyframes olaRise{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
@keyframes olaKen{from{transform:scale(1.08);}to{transform:scale(1);}}
.rise{opacity:0;animation:olaRise 1s ease-out both;}
.rise2{opacity:0;animation:olaRise 1.15s ease-out both;}

/* buttons */
.btn-red{background:#8C2E22;color:#F7F2E7;border:none;cursor:pointer;transition:background .2s;}
.btn-red:hover{background:#73241B;}
.btn-dark{background:#211C16;color:#F3EDE1;border:none;cursor:pointer;transition:background .2s;}
.btn-dark:hover{background:#8C2E22;}
.btn-outline{background:transparent;color:#211C16;border:1px solid rgba(33,28,22,.3);cursor:pointer;transition:background .2s,color .2s;}
.btn-outline:hover{background:#211C16;color:#F7F2E7;}
.round-btn{width:34px;height:34px;border-radius:50%;border:1px solid rgba(33,28,22,0.28);background:transparent;font-size:18px;cursor:pointer;color:#211C16;line-height:1;}
.round-btn:hover{background:rgba(33,28,22,.06);}

/* cards */
.tent-card{background:#F7F2E7;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 16px 40px -28px rgba(20,17,13,0.5);transition:transform .3s ease,box-shadow .3s ease;}
.tent-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px -30px rgba(20,17,13,0.55);}
.tent-pick{display:flex;gap:0;background:#F7F2E7;border:1px solid rgba(33,28,22,0.1);border-radius:14px;overflow:hidden;cursor:pointer;transition:border-color .2s;}
.tent-pick.selected{border-color:#8C2E22;}

/* nav links */
.nav-link{font:600 13px 'Hanken Grotesk';letter-spacing:0.04em;color:rgba(243,237,225,0.9);cursor:pointer;background:none;border:none;padding:0;}
.nav-link-dark{font:600 13px 'Hanken Grotesk';letter-spacing:0.04em;color:#5A5246;cursor:pointer;background:none;border:none;padding:0;}
.nav-link:hover,.nav-link-dark:hover{color:#C99A52;}

/* brand lockup */
.brand-mark{height:64px;width:auto;display:block;}
.brand-mark-light{height:64px;width:auto;display:block;filter:brightness(0) invert(1);}
.brand-mark-footer{height:60px;width:auto;display:block;filter:brightness(0) invert(1);opacity:0.92;}

/* layout helpers */
.wrap{max-width:1180px;margin:0 auto;}
section{padding:96px 44px;}

@media (max-width:960px){
  section{padding:64px 24px;}
  .grid-2{grid-template-columns:1fr !important;}
  .grid-3{grid-template-columns:1fr !important;}
  .grid-4{grid-template-columns:repeat(2,1fr) !important;}
  .grid-6{grid-template-columns:repeat(3,1fr) !important;}
  .gallery-grid{grid-template-columns:repeat(2,1fr) !important;}
  .nav-links-desktop{display:none !important;}
  .step2-layout{grid-template-columns:1fr !important;}
  .search-widget{flex-direction:column !important;}
  .search-widget > div, .search-widget > button{border-right:none !important;border-bottom:1px solid rgba(33,28,22,0.1);}
}
@media (max-width:600px){
  .grid-4{grid-template-columns:1fr !important;}
  .grid-6{grid-template-columns:repeat(2,1fr) !important;}
  .gallery-grid{grid-template-columns:1fr !important;}
  h1{font-size:38px !important;}
}
