*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#191714;background:#f7f3ed}img{max-width:100%;display:block}a{color:inherit}.topbar{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:18px 40px;background:rgba(250,247,242,.76);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.06)}.brand{display:flex;align-items:center;flex:0 0 auto;height:42px;text-decoration:none}.brand img{display:block;width:auto;height:42px;max-width:260px;max-height:42px;object-fit:contain}.topbar nav{display:flex;gap:24px;align-items:center}.topbar nav a{text-decoration:none;font-weight:700;font-size:14px}.nav-cta{background:#191714;color:#fff!important;padding:10px 16px;border-radius:999px}.hero,.wide-image,.final{position:relative;min-height:92vh;background-image:var(--bg);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;padding:110px 7vw 70px}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.22),rgba(0,0,0,.08))}.hero-card,.overlay-card,.final-card{position:relative;z-index:1;max-width:760px;color:#fff}.hero-card{padding:34px;border-left:5px solid #f2c46d;background:linear-gradient(90deg,rgba(0,0,0,.55),rgba(0,0,0,.14));border-radius:0 28px 28px 0}.eyebrow{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#f2c46d}.eyebrow.dark{color:#a85b25}.hero h1,.final h2{font-family:Cinzel,serif;font-size:clamp(46px,7vw,94px);line-height:.96;margin:14px 0 20px}.lead{font-size:clamp(18px,2vw,24px);line-height:1.5;max-width:650px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;padding:15px 24px;font-weight:800;margin:8px 10px 8px 0}.primary{background:#f2c46d;color:#191714;box-shadow:0 18px 50px rgba(0,0,0,.22)}.secondary{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.4)}.price-strip{margin-top:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.price-strip div{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);padding:16px;border-radius:18px}.price-strip strong{display:block;font-size:20px}.price-strip span{display:block;font-size:13px;opacity:.82;margin-top:3px}.split{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;padding:90px 7vw}.split.reverse{grid-template-columns:1.1fr .9fr}.text h2,.section-head h2,.overlay-card h2{font-family:Cinzel,serif;font-size:clamp(34px,4vw,62px);line-height:1.05;margin:10px 0 18px}.text p,.section-head p,.product p,.gear-card p,.final p{font-size:17px;line-height:1.65;color:#4b4742}.photo-stack{display:grid;grid-template-columns:1fr 1fr;gap:18px}.photo-stack img:first-child{margin-top:50px}.photo-stack img,.photo-wide img,.gallery-band img{border-radius:28px;box-shadow:0 28px 70px rgba(0,0,0,.18);height:520px;width:100%;object-fit:cover}.products,.gear{padding:80px 7vw}.section-head{max-width:850px;margin:0 auto 38px;text-align:center}.product-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:22px}.product{background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 20px 60px rgba(60,45,28,.12);transition:transform .25s ease,box-shadow .25s ease}.product:hover,.gear-card:hover{transform:translateY(-6px);box-shadow:0 28px 80px rgba(60,45,28,.18)}.product.big{grid-row:span 2}.product img{height:330px;width:100%;object-fit:cover}.product.big img{height:690px}.card-carousel{position:relative;overflow:hidden}.card-carousel img{transition:opacity .25s ease}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:38px;height:38px;border:0;border-radius:999px;background:rgba(25,23,20,.62);color:#fff;font-size:30px;line-height:34px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease,background .2s ease}.product:hover .carousel-btn,.card-carousel:focus-within .carousel-btn{opacity:1}.carousel-btn:hover{background:rgba(25,23,20,.88)}.carousel-btn.prev{left:12px}.carousel-btn.next{right:12px}.carousel-dots{position:absolute;left:0;right:0;bottom:12px;z-index:3;display:flex;gap:7px;justify-content:center}.carousel-dots button{width:8px;height:8px;border:0;border-radius:50%;background:rgba(255,255,255,.54);padding:0;cursor:pointer}.carousel-dots button.active{background:#f2c46d}.gallery-grid .product.wide{grid-column:span 2}.gallery-grid .product.wide img{height:330px}.product-body{padding:24px}.product h3,.gear-card h3{font-size:25px;margin:0 0 10px}.meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;border-top:1px solid #eee2d2;padding-top:16px}.meta span{font-weight:900;color:#a85b25}.meta a,.gear-card a{font-weight:900;color:#191714;text-decoration:none;border-bottom:2px solid #f2c46d}.wide-image{min-height:76vh;justify-content:flex-end}.wide-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.15),rgba(0,0,0,.62))}.overlay-card{background:rgba(0,0,0,.44);backdrop-filter:blur(10px);padding:34px;border-radius:28px}.overlay-card p{color:#fff}.process ul{padding-left:20px;font-size:17px;line-height:1.9}.gallery-band{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;padding:20px 7vw 90px}.gallery-band img{height:520px}.gear-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.gear-card{display:grid;grid-template-columns:42% 1fr;gap:0;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 20px 60px rgba(60,45,28,.12);transition:.25s ease}.gear-card img{height:100%;min-height:300px;width:100%;object-fit:cover}.gear-card div{padding:28px}.final{min-height:72vh;justify-content:center;text-align:center}.final .shade{background:rgba(0,0,0,.55)}.final-card{max-width:900px}.final p{color:#fff;font-size:20px}footer{text-align:center;padding:36px;background:#191714;color:#f7f3ed}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.brand{height:30px}.brand img{height:30px;max-height:30px;max-width:180px}.gallery-grid .product.wide{grid-column:auto}.carousel-btn{opacity:1;width:34px;height:34px;font-size:26px}.topbar{padding:14px 18px}.topbar nav a:not(.nav-cta){display:none}.hero,.wide-image,.final{background-attachment:scroll;min-height:86vh;padding:96px 22px 50px}.hero-card{padding:24px;border-radius:24px;border-left:0;background:rgba(0,0,0,.46)}.price-strip{grid-template-columns:1fr}.split,.split.reverse,.product-grid,.gear-grid{grid-template-columns:1fr;padding:64px 22px}.products,.gear{padding:64px 22px}.product.big{grid-row:auto}.product.big img,.product img{height:360px}.gallery-band{grid-template-columns:1fr;padding:0 22px 64px}.photo-stack img,.photo-wide img,.gallery-band img{height:360px}.gear-card{grid-template-columns:1fr}.hero h1,.final h2{font-size:44px}.hero-actions .button{width:100%}}.price-list{display:grid;grid-template-columns:1fr;gap:10px;margin:22px 0}.price-list div{display:flex;justify-content:space-between;gap:18px;align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:14px 16px}.price-list strong{font-size:16px}.price-list span{font-weight:900;color:#f2c46d}.small-note{font-size:15px!important;opacity:.9}
@media(max-width:900px){.price-list div{display:block}.price-list span{display:block;margin-top:4px}}


/* Cookie consent */
.privacy-links{
  margin-top:12px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  font-size:13px;
}
.footer-link,
.cookie-text-link{
  border:0;
  padding:0;
  background:none;
  color:#f2c46d;
  font:inherit;
  font-weight:700;
  text-decoration:underline;
  cursor:pointer;
}
.cookie-banner[hidden],
.cookie-modal[hidden]{display:none!important}

.cookie-banner{
  position:fixed;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:1000;
  max-width:1100px;
  margin:0 auto;
  padding:18px;
  color:#191714;
  background:rgba(247,243,237,.98);
  border:1px solid rgba(25,23,20,.12);
  border-radius:22px;
  box-shadow:0 18px 60px rgba(0,0,0,.24);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.cookie-banner__content{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:22px;
  align-items:center;
}
.cookie-banner strong{
  display:block;
  margin-bottom:6px;
  font-family:Cinzel,serif;
  font-size:20px;
}
.cookie-banner p{
  margin:0 0 7px;
  max-width:760px;
  color:#4b4742;
  font-size:14px;
  line-height:1.5;
}
.cookie-banner .cookie-text-link{
  color:#a85b25;
  font-size:13px;
}
.cookie-banner__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.cookie-btn{
  min-height:44px;
  padding:11px 17px;
  border-radius:999px;
  border:1px solid #191714;
  font:inherit;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}
.cookie-btn--primary{
  color:#191714;
  background:#f2c46d;
  border-color:#f2c46d;
}
.cookie-btn--secondary{
  color:#191714;
  background:transparent;
}

.cookie-modal{
  position:fixed;
  inset:0;
  z-index:1100;
  display:grid;
  place-items:center;
  padding:20px;
}
.cookie-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.58);
}
.cookie-modal__panel{
  position:relative;
  z-index:1;
  width:min(680px,100%);
  max-height:min(82vh,760px);
  overflow:auto;
  padding:30px;
  color:#191714;
  background:#f7f3ed;
  border-radius:24px;
  box-shadow:0 24px 90px rgba(0,0,0,.35);
}
.cookie-modal__panel h2{
  margin:0 42px 16px 0;
  font-family:Cinzel,serif;
  font-size:34px;
}
.cookie-modal__panel h3{
  margin:24px 0 8px;
  font-size:18px;
}
.cookie-modal__panel p{
  color:#4b4742;
  line-height:1.65;
}
.cookie-modal__panel a{color:#a85b25;font-weight:700}
.cookie-modal__close{
  position:absolute;
  top:16px;
  right:18px;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:#191714;
  color:#fff;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}

@media(max-width:760px){
  .cookie-banner{
    left:12px;
    right:12px;
    bottom:12px;
    padding:16px;
    border-radius:18px;
  }
  .cookie-banner__content{grid-template-columns:1fr;gap:14px}
  .cookie-banner__actions{display:grid;grid-template-columns:1fr 1fr}
  .cookie-btn{width:100%}
  .cookie-modal__panel{padding:24px 20px}
  .cookie-modal__panel h2{font-size:28px}
}
@media(max-width:390px){
  .cookie-banner__actions{grid-template-columns:1fr}
}

/* 2026-08-29 mobile hero fixes */
@media (max-width: 680px) {
  .hero {
    background-position: center center !important;
    background-size: cover !important;
    overflow: hidden;
  }
  .hero .hero-inner {
    width: min(1180px, calc(100% - 36px)) !important;
    max-width: calc(100% - 36px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
  }
  .hero .hero-copy {
    max-width: 100% !important;
    box-sizing: border-box;
  }
}
html, body { overflow-x: hidden; }
.cookie-modal.is-open { display:grid !important; }
.cookie-banner.is-visible { display:block !important; }
