
/* Guraba Elite Final V5 - premium visual correction */
:root{
  --guraba-v5-bg:#fbf5ec;
  --guraba-v5-cream:#fffaf3;
  --guraba-v5-card:#fffdf8;
  --guraba-v5-gold:#b77a32;
  --guraba-v5-gold2:#d0a36d;
  --guraba-v5-brown:#42291c;
  --guraba-v5-dark:#2f1d14;
  --guraba-v5-muted:#74675d;
  --guraba-v5-line:#eadfce;
  --guraba-v5-shadow:0 26px 70px rgba(72,43,24,.14);
  --guraba-v5-soft:0 16px 45px rgba(112,74,42,.10);
}
html,body{overflow-x:hidden!important}
body{background:var(--guraba-v5-bg)!important}
.site-shell{background:linear-gradient(180deg,#fffaf4 0%,#fbf4ea 100%)!important;overflow:hidden!important}

/* Header / logo */
.site-header{
  min-height:94px!important;
  height:94px!important;
  grid-template-columns:minmax(230px,280px) 1fr auto auto!important;
  padding:0 clamp(44px,5vw,86px)!important;
  background:rgba(255,250,244,.82)!important;
  backdrop-filter:blur(22px)!important;
  -webkit-backdrop-filter:blur(22px)!important;
  border-bottom:1px solid rgba(183,122,50,.16)!important;
  box-shadow:0 10px 45px rgba(75,45,25,.06)!important;
}
.site-header .brand{height:94px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;overflow:visible!important}
.site-header .brand img{
  width:236px!important;
  max-width:236px!important;
  height:auto!important;
  max-height:78px!important;
  object-fit:contain!important;
  object-position:left center!important;
  transform:none!important;
}
.main-nav{gap:clamp(22px,2.15vw,38px)!important}
.main-nav>a,.nav-dd>a{
  font-size:14px!important;
  font-weight:760!important;
  color:#423025!important;
  letter-spacing:.01em!important;
}
.nav-cta{
  min-width:154px!important;
  text-align:center!important;
  background:linear-gradient(135deg,#a66a2d,#c18a48)!important;
  color:#fff!important;
  box-shadow:0 16px 36px rgba(177,119,50,.25)!important;
}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(177,119,50,.34)!important}

/* Absolute anti-ghost rule: old duplicated plain mobile menu is hidden on desktop */
@media (min-width:981px){
  .mobile-menu,.mobile-menu.is-open{display:none!important;visibility:hidden!important;opacity:0!important}
}

/* Hero */
.guraba-home-hero{
  position:relative!important;
  min-height:700px!important;
  padding:112px clamp(42px,6vw,106px) 205px!important;
  isolation:isolate!important;
  background:
    linear-gradient(90deg,rgba(255,250,243,.99) 0%,rgba(255,250,243,.94) 29%,rgba(255,250,243,.55) 52%,rgba(255,250,243,.04) 78%),
    url('/assets/design/images/04_hero_interior_photo.png') right center/auto 100% no-repeat,
    #fff7ec!important;
}
.guraba-home-hero:after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(circle at 82% 27%,rgba(255,255,255,.42),transparent 22%),
    linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,250,243,.28));
}
.guraba-home-hero .hero-content{position:relative!important;z-index:2!important;max-width:650px!important}
.guraba-home-hero .eyebrow{
  color:#8b5c33!important;
  font-size:13px!important;
  letter-spacing:.24em!important;
  margin-bottom:24px!important;
}
.guraba-home-hero h1{
  font-family:Georgia,"Times New Roman",serif!important;
  color:#3c2b21!important;
  font-weight:500!important;
  font-size:clamp(52px,5.2vw,88px)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  margin:0 0 28px!important;
}
.guraba-home-hero h1 span{color:var(--guraba-v5-gold)!important}
.guraba-home-hero p:not(.eyebrow){
  font-size:17px!important;
  line-height:1.88!important;
  color:#5e5148!important;
  max-width:540px!important;
}
.hero-actions{display:flex!important;align-items:center!important;gap:18px!important;flex-wrap:wrap!important;margin-top:30px!important}
.hero-actions .btn{
  height:58px!important;
  min-height:58px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  padding:0 29px!important;
  font-size:15px!important;
  font-weight:850!important;
  transition:transform .28s ease, box-shadow .28s ease, background .28s ease!important;
}
.hero-actions .btn-gold{
  background:linear-gradient(135deg,#a66b2f,#bd813c)!important;
  color:#fff!important;
  box-shadow:0 18px 38px rgba(177,119,50,.28)!important;
}
.hero-actions .btn-ghost{
  background:rgba(255,255,255,.76)!important;
  border:1px solid rgba(171,116,59,.35)!important;
  color:#3f2d22!important;
  box-shadow:0 12px 28px rgba(100,70,40,.08)!important;
}
.hero-actions .btn:hover{transform:translateY(-3px)!important}
.hero-actions .btn span{display:inline-block;transition:transform .28s ease}
.hero-actions .btn:hover span{transform:translateX(4px)}
.hero-badge{
  top:188px!important;
  right:clamp(55px,7vw,132px)!important;
  width:132px!important;
  height:158px!important;
  border-radius:34px!important;
  background:rgba(255,255,255,.90)!important;
  border:1px solid rgba(183,122,50,.18)!important;
  box-shadow:0 28px 70px rgba(74,43,24,.14)!important;
  color:var(--guraba-v5-brown)!important;
}
.hero-badge:before{font-size:30px!important;color:var(--guraba-v5-gold)!important}
.hero-badge strong{font-size:38px!important;line-height:1!important}
.hero-badge span{font-size:14px!important;color:#715f54!important;line-height:1.35!important}

/* Collection cards */
.guraba-collections{
  width:min(1520px,calc(100% - 82px))!important;
  margin:-108px auto 0!important;
  gap:20px!important;
}
.guraba-collection-card{
  min-height:210px!important;
  border-radius:22px!important;
  box-shadow:0 26px 65px rgba(72,43,24,.16)!important;
  transition:transform .35s ease, box-shadow .35s ease!important;
}
.guraba-collection-card:hover{transform:translateY(-7px)!important;box-shadow:0 32px 80px rgba(72,43,24,.22)!important}
.guraba-collection-card .cc-body h3,.guraba-collection-card h3{font-size:15px!important;letter-spacing:.11em!important}

/* Mini features with polished icons */
.guraba-mini-features,.feature-row{
  gap:clamp(18px,2vw,30px)!important;
}
.guraba-mini-feature,.feature-mini{
  position:relative!important;
  padding:12px 8px!important;
  border-radius:18px!important;
  transition:transform .3s ease, background .3s ease!important;
}
.guraba-mini-feature:hover,.feature-mini:hover{transform:translateY(-4px);background:rgba(255,255,255,.45)}
.guraba-mini-feature img,.feature-mini img{
  width:48px!important;height:48px!important;object-fit:contain!important;
  filter:drop-shadow(0 10px 18px rgba(183,122,50,.18))!important;
}

/* Buttons / generic */
.btn,.form-box button,.guraba-form button{
  border:none!important;
  cursor:pointer!important;
}
.btn-gold,.form-box button,.guraba-form button{
  background:linear-gradient(135deg,#a66b2f,#bf8240)!important;
  color:#fff!important;
  border-radius:999px!important;
  box-shadow:0 18px 40px rgba(177,119,50,.26)!important;
}
.btn-gold:hover,.form-box button:hover,.guraba-form button:hover{transform:translateY(-2px);box-shadow:0 22px 48px rgba(177,119,50,.34)!important}

/* Split / typography */
.section-title h2,.split-content h2,.page-hero h1{
  letter-spacing:-.035em!important;
}
.split-content .stats .stat strong,.stats .stat strong{
  font-family:Georgia,serif!important;color:var(--guraba-v5-gold)!important;
}

/* Request / contact forms */
.form-box,.guraba-form{
  background:rgba(255,253,248,.94)!important;
  border:1px solid rgba(232,221,207,.95)!important;
  border-radius:34px!important;
  box-shadow:0 25px 80px rgba(72,43,24,.12)!important;
  padding:34px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
  overflow:hidden!important;
}
.form-box input,.form-box select,.form-box textarea,
.guraba-form input,.guraba-form select,.guraba-form textarea{
  width:100%!important;
  min-width:0!important;
  height:58px!important;
  border:1px solid #e8ddcf!important;
  border-radius:20px!important;
  background:#fffdf8!important;
  padding:0 18px!important;
  color:#3e2e24!important;
  font-size:15px!important;
  outline:none!important;
  box-shadow:none!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  letter-spacing:normal!important;
}
.form-box textarea,.guraba-form textarea{
  grid-column:1/-1!important;
  min-height:125px!important;
  height:125px!important;
  padding:17px 18px!important;
  resize:vertical!important;
}
.form-box button,.guraba-form button{
  grid-column:1/-1!important;
  justify-self:start!important;
  width:auto!important;
  min-width:230px!important;
  height:60px!important;
  padding:0 34px!important;
  font-size:16px!important;
  font-weight:850!important;
  transition:.28s ease!important;
  border-radius:999px!important;
}

/* Contact strip */
.contact-strip{
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  gap:0!important;
  padding:30px clamp(48px,5vw,80px)!important;
  background:rgba(255,250,244,.95)!important;
  border-top:1px solid #eadfce!important;
  border-bottom:1px solid #eadfce!important;
  border-radius:42px 42px 0 0!important;
  margin-top:0!important;
}
.contact-strip>div{
  display:grid!important;
  grid-template-columns:54px 1fr!important;
  column-gap:16px!important;
  align-items:center!important;
  min-width:0!important;
  padding:8px 20px!important;
  border-right:1px solid #eadfce!important;
}
.contact-strip>div:last-child{border-right:0!important}
.contact-strip img,.contact-strip svg{
  width:46px!important;height:46px!important;object-fit:contain!important;
  padding:10px!important;border-radius:50%!important;
  background:#fffaf3!important;border:1px solid #eadfce!important;
}
.contact-strip span{
  font-size:14px!important;font-weight:850!important;color:#a66b2f!important;margin-bottom:3px!important;
}
.contact-strip strong{
  display:block!important;
  font-size:17px!important;
  line-height:1.35!important;
  color:#3c2b21!important;
  overflow-wrap:anywhere!important;
}

/* Footer */
.site-footer{
  background:
    radial-gradient(circle at 18% 20%,rgba(183,122,50,.16),transparent 25%),
    linear-gradient(135deg,#3a2319,#2a1912)!important;
  color:#f2e8da!important;
  padding:76px clamp(48px,5vw,86px) 34px!important;
  gap:42px!important;
}
.site-footer .footer-brand img{
  width:220px!important;
  max-width:220px!important;
  height:auto!important;
  max-height:92px!important;
  object-fit:contain!important;
  object-position:left center!important;
  margin-bottom:24px!important;
}
.site-footer h3{color:#c89355!important;letter-spacing:.14em!important}
.site-footer a,.site-footer p{color:#eadfce!important}
.site-footer a:hover{color:#fff!important}
.socials a{
  width:48px!important;height:48px!important;
  display:inline-grid!important;place-items:center!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:50%!important;
  transition:.25s ease!important;
}
.socials a:hover{transform:translateY(-4px);border-color:#c89355!important;color:#fff!important}

/* Floating actions */
.float-actions{
  position:fixed!important;
  right:22px!important;
  bottom:22px!important;
  z-index:999!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  pointer-events:auto!important;
}
.float-actions a{
  width:150px!important;
  height:56px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:18px!important;
  font-weight:900!important;
  box-shadow:0 18px 42px rgba(0,0,0,.20)!important;
  transition:transform .25s ease, box-shadow .25s ease!important;
}
.float-actions a:hover{transform:translateY(-3px) scale(1.02)}
.float-call{background:#472c20!important;color:#fff!important}
.float-wa{background:#25d366!important;color:#fff!important}

/* Animations */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s ease, transform .75s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
@keyframes gurabaFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes gurabaGlow{0%,100%{box-shadow:0 18px 38px rgba(183,122,50,.22)}50%{box-shadow:0 24px 52px rgba(183,122,50,.38)}}
.hero-badge{animation:gurabaFloat 5s ease-in-out infinite}
.nav-cta,.hero-actions .btn-gold,.form-box button,.guraba-form button{animation:gurabaGlow 4s ease-in-out infinite}
.collection-card,.product-card,.project-card,.guraba-collection-card{transform-style:preserve-3d}

/* Page hero for subpages: elegant and not too tall */
.page-hero{
  min-height:360px!important;
  padding:110px clamp(42px,6vw,96px)!important;
  background:
    linear-gradient(90deg,rgba(255,250,243,.96),rgba(255,250,243,.74),rgba(255,250,243,.48)),
    url('/assets/design/images/04_hero_interior_photo.png') right center/auto 100% no-repeat!important;
}
.page-hero h1{font-size:clamp(44px,4.5vw,72px)!important}

/* Mobile */
@media (max-width:1180px){
  .site-header{grid-template-columns:220px 1fr auto!important;padding:0 30px!important}
  .main-nav{gap:18px!important}
  .main-nav>a,.nav-dd>a{font-size:12.5px!important}
  .site-header .brand img{width:210px!important}
}
@media (max-width:980px){
  .site-header{
    height:112px!important;
    min-height:112px!important;
    grid-template-columns:1fr auto!important;
    padding:0 26px!important;
    background:rgba(255,250,244,.93)!important;
  }
  .site-header .brand{height:112px!important}
  .site-header .brand img{
    width:178px!important;
    max-width:178px!important;
    max-height:68px!important;
  }
  .main-nav,.nav-cta{display:none!important}
  .menu-toggle{
    display:grid!important;
    place-items:center!important;
    width:72px!important;height:72px!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.78)!important;
    border:1px solid rgba(183,122,50,.28)!important;
    box-shadow:0 16px 40px rgba(72,43,24,.10)!important;
  }
  .menu-toggle span{
    display:block!important;width:30px!important;height:3px!important;
    background:#a66b2f!important;border-radius:99px!important;
    margin:5px 0!important;
  }
  .mobile-menu{
    position:fixed!important;inset:0!important;
    background:rgba(255,250,244,.96)!important;
    backdrop-filter:blur(22px)!important;-webkit-backdrop-filter:blur(22px)!important;
    z-index:2000!important;
    padding:34px!important;
    visibility:hidden!important;opacity:0!important;display:none!important;
    transition:opacity .28s ease!important;
  }
  .mobile-menu.is-open{
    display:flex!important;visibility:visible!important;opacity:1!important;
    flex-direction:column!important;gap:22px!important;
  }
  .mobile-menu button{
    position:absolute!important;right:26px!important;top:24px!important;
    width:58px!important;height:58px!important;border-radius:50%!important;
    border:1px solid #eadfce!important;background:#fff!important;color:#a66b2f!important;
    font-size:38px!important;line-height:1!important;
  }
  .mobile-menu img{width:190px!important;height:auto!important;max-height:75px!important;object-fit:contain!important}
  .mobile-menu nav{display:grid!important;gap:12px!important;margin-top:18px!important}
  .mobile-menu nav a{
    padding:14px 0!important;border-bottom:1px solid #eadfce!important;
    font-size:20px!important;font-weight:750!important;color:#432d21!important;
  }

  .guraba-home-hero{
    min-height:auto!important;
    padding:76px 34px 64px!important;
    background:
      linear-gradient(180deg,rgba(255,250,243,.86),rgba(255,250,243,.56)),
      url('/assets/design/images/04_hero_interior_photo.png') center top/cover no-repeat,
      #fff7ec!important;
  }
  .guraba-home-hero .hero-content{max-width:100%!important}
  .guraba-home-hero .eyebrow{
    font-size:12px!important;letter-spacing:.22em!important;
    margin-bottom:22px!important;
  }
  .guraba-home-hero h1{
    font-size:clamp(52px,12vw,72px)!important;
    line-height:1.08!important;
    max-width:100%!important;
  }
  .guraba-home-hero p:not(.eyebrow){
    font-size:19px!important;
    line-height:1.85!important;
    max-width:92%!important;
  }
  .hero-actions{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    gap:16px!important;
    margin-top:34px!important;
  }
  .hero-actions .btn{
    width:min(520px,88vw)!important;
    justify-content:center!important;
    height:68px!important;
    font-size:19px!important;
    padding:0 28px!important;
  }
  .hero-badge{
    position:relative!important;
    top:auto!important;right:auto!important;left:auto!important;
    width:min(315px,72vw)!important;
    height:82px!important;
    margin:28px auto 0!important;
    border-radius:28px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
  }
  .hero-badge:before{font-size:22px!important;margin-right:12px!important}
  .hero-badge div{display:flex!important;align-items:center!important;gap:12px!important}
  .hero-badge strong{font-size:34px!important}
  .hero-badge span{font-size:16px!important;text-align:left!important}

  .guraba-collections{
    width:100%!important;
    margin:0!important;
    padding:22px 24px 8px!important;
    display:flex!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    gap:16px!important;
  }
  .guraba-collection-card{
    min-width:78vw!important;
    min-height:185px!important;
    scroll-snap-align:center!important;
  }

  .guraba-mini-features,.feature-row{
    grid-template-columns:1fr!important;
    padding:0 28px!important;
  }
  .section{padding:66px 34px!important}
  .split{grid-template-columns:1fr!important;gap:34px!important}
  .section-title h2,.split-content h2,.page-hero h1{
    font-size:clamp(42px,10vw,58px)!important;
  }
  .stats{grid-template-columns:1fr 1fr!important}
  .stat{border-right:0!important;border-bottom:1px solid #eadfce!important;padding:20px 8px!important}

  .form-box,.guraba-form{
    grid-template-columns:1fr!important;
    padding:28px!important;
    border-radius:34px!important;
    gap:16px!important;
  }
  .form-box input,.form-box select,.form-box textarea,
  .guraba-form input,.guraba-form select,.guraba-form textarea{
    height:62px!important;
    font-size:17px!important;
    border-radius:22px!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
  }
  .form-box textarea,.guraba-form textarea{height:135px!important;min-height:135px!important}
  .form-box button,.guraba-form button{
    width:min(420px,100%)!important;
    justify-self:center!important;
    height:64px!important;
    font-size:18px!important;
    min-width:0!important;
  }

  .contact-strip{
    grid-template-columns:1fr!important;
    padding:30px 34px!important;
    border-radius:38px 38px 0 0!important;
  }
  .contact-strip>div{
    grid-template-columns:58px 1fr!important;
    padding:18px 0!important;
    border-right:0!important;
    border-bottom:1px solid #eadfce!important;
  }
  .contact-strip>div:last-child{border-bottom:0!important}
  .contact-strip strong{font-size:19px!important}

  .site-footer{
    grid-template-columns:1fr!important;
    padding:64px 34px 110px!important;
    text-align:left!important;
  }
  .site-footer .footer-brand img{
    width:190px!important;max-width:190px!important;max-height:86px!important;
  }
  .float-actions{right:18px!important;bottom:18px!important;gap:10px!important}
  .float-actions a{width:144px!important;height:58px!important;font-size:18px!important}
  .page-hero{min-height:320px!important;padding:94px 34px!important;background-position:center center!important}
}
@media (max-width:430px){
  .site-header{height:104px!important;min-height:104px!important;padding:0 22px!important}
  .site-header .brand img{width:168px!important;max-width:168px!important}
  .menu-toggle{width:66px!important;height:66px!important}
  .guraba-home-hero{padding-left:26px!important;padding-right:26px!important}
  .guraba-home-hero h1{font-size:52px!important}
  .guraba-home-hero p:not(.eyebrow){font-size:18px!important;max-width:100%!important}
  .hero-actions .btn{width:100%!important}
  .float-actions a{width:132px!important;height:54px!important;font-size:17px!important}
}
