.hero { display:block; position:relative; isolation:isolate; overflow:hidden; padding:0; background:var(--cream); }
.hero-media { position:absolute; inset:0; z-index:-2; pointer-events:none; }
.hero-media>img,.hero-media>video { width:100%; height:100%; object-fit:contain; object-position:right center; }
.hero-video { position:absolute; inset:0; opacity:0; }
.has-video-frame .hero-video { opacity:1; }
.hero-scrim { position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,#faf7f0 0%,#faf7f0f8 28%,#faf7f0ed 38%,#faf7f099 49%,#faf7f010 65%,#faf7f000 100%); }
.hero-content { position:relative; min-height:600px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding-block:66px 90px; }
.hero-copy { max-width:445px; }
.hero-badge { max-width:100%; }
.badge-dot { flex:0 0 7px; }
.hero-media-space { display:none; }
.hero-bottom { position:static; display:flex; align-items:center; justify-content:space-between; gap:14px; }
.hero-caption { position:absolute; bottom:22px; left:0; color:var(--muted); background:#fffdf8e8; padding:6px 10px; border-radius:4px; font-size:10px; line-height:1.45; }
.video-control { position:absolute; top:24px; right:0; display:inline-flex; gap:8px; align-items:center; justify-content:center; min-height:44px; padding:9px 15px; border:1px solid var(--line); border-radius:24px; color:var(--wine); background:#fffdf8f5; font-size:12px; font-weight:600; }
.video-control:hover { background:var(--paper); }
.video-control>[data-video-symbol] { display:inline-block; width:12px; font-size:12px; text-align:center; }
.mobile-nav { display:none; }
.craft-pillars { grid-template-columns:repeat(3,minmax(0,1fr)); }
.pillar-card,.pillar-text { min-width:0; }
.pillar-text { overflow-wrap:break-word; }
.mobile-bag,.whatsapp-float { transition:background-color .15s,box-shadow .15s; }
@media(max-width:1100px) {
  .hero-content { min-height:570px; }
}
@media(max-width:850px) {
  .hero { padding:0; }
  .hero-content { min-height:550px; }
  .hero-copy { max-width:360px; }
  .craft-pillars { grid-template-columns:1fr; gap:14px; }
  .hero-scrim { background:linear-gradient(90deg,#faf7f0 0%,#faf7f0f5 37%,#faf7f0bb 53%,#faf7f020 72%,#faf7f000 100%); }
}
@media(max-width:600px) {
  .mobile-nav { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); gap:10px; }
  .mobile-nav>a { display:inline-flex; align-items:center; min-height:44px; font-size:11px; color:var(--green); }
  .mobile-nav>a:hover { text-decoration:underline; text-underline-offset:4px; }
  .hero { display:block; padding:0; }
  .hero-content { display:grid; grid-template-columns:minmax(0,1fr); min-height:0; padding-block:25px 0; }
  .hero-copy { max-width:none; grid-column:1; grid-row:1; }
  .hero-media-space { display:block; grid-column:1; grid-row:2; height:280px; }
  .hero-media { top:auto; height:280px; }
  .hero-media>img,.hero-media>video { object-fit:contain; object-position:center top; }
  .hero-scrim { background:linear-gradient(180deg,#faf7f0 0%,#faf7f0 42%,#faf7f0aa 52%,#faf7f000 69%); }
  .hero-bottom { position:relative; grid-column:1; grid-row:2; align-self:start; margin-top:15px; gap:8px; }
  .hero-caption { position:static; max-width:180px; font-size:9px; padding:5px 7px; }
  .video-control { position:static; flex-shrink:0; padding-inline:10px; font-size:10px; }
  .hero-actions { gap:10px 12px; }
  .hero-actions .button { font-size:12px; padding:12px 14px; gap:12px; }
  .hero-actions .whatsapp-link { font-size:12px; }
}
@media(max-width:360px) {
  .hero-caption { max-width:140px; font-size:8px; }
  .hero-badge { font-size:9px; padding:7px 10px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none!important; transition:none!important; }
}
