/* ═══ GIFTS · SECTION 1 — HERO (type-led, one product panel) ═══ */
.hero{position:relative;overflow:hidden;min-height:clamp(520px,92svh,940px);
  display:grid;grid-template-rows:1fr auto;
  padding:calc(var(--nav-h) + clamp(34px,6vh,70px)) var(--gut) 0}
.hero .panel{position:absolute;right:0;top:var(--nav-h);bottom:0;width:min(42vw,640px);
  clip-path:polygon(32% 0,100% 0,100% 100%,0 100%);overflow:hidden;
  background:radial-gradient(110% 80% at 70% 26%,#222 0%,#141414 52%,#0c0c0c 100%);
  opacity:0;animation:fade 1.2s ease .45s forwards}
.hero .panel .inner{position:absolute;inset:-7% 0;will-change:transform}
.hero .panel img{width:100%;height:100%;object-fit:cover;filter:grayscale(.22) brightness(.86)}
.hero .panel .ph{position:absolute;inset:0;display:grid;place-items:center;
  background:repeating-linear-gradient(36.5deg,#161616 0 15px,#111 15px 30px)}
.hero .panel .ph i{font-style:normal;font-size:10.5px;letter-spacing:.16em;font-weight:600;color:var(--dim)}
.hero .panel::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(100deg,rgba(10,10,10,.94) 0%,rgba(10,10,10,.4) 34%,transparent 64%)}
@media(max-width:940px){.hero .panel{display:none}}
.hero .cut{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
.hero .cut line{stroke:var(--cut);stroke-width:2.6;fill:none;
  stroke-dasharray:2600;stroke-dashoffset:2600;
  animation:draw 1.25s cubic-bezier(.65,0,.35,1) .3s forwards}
.hero-main{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;
  will-change:transform}
.crumb{display:flex;align-items:center;gap:10px;font-size:10.5px;letter-spacing:.18em;
  color:var(--dim);margin-bottom:clamp(18px,3vh,32px);opacity:0;animation:fade .8s ease .1s forwards}
.crumb a:hover{color:var(--text)}
.crumb i{font-style:normal;color:var(--cut)}
.hero h1{font-size:clamp(2.3rem,7.8vw,7.4rem);line-height:.88;max-width:13ch}
.hero h1 .row{display:block;overflow:hidden}
.hero h1 .row > span{display:block;transform:translateY(104%);
  animation:rise .95s cubic-bezier(.16,1,.3,1) forwards}
.hero h1 .row:nth-child(1) > span{animation-delay:.05s}
.hero h1 .row:nth-child(2) > span{animation-delay:.13s}
.hero h1 .row:nth-child(3) > span{animation-delay:.21s}
.hero h1 .dot{color:var(--cut)}
.hero .sub{margin-top:clamp(22px,3.6vh,38px);max-width:44ch;
  font-size:clamp(.96rem,1.16vw,1.16rem);line-height:1.6;color:var(--muted);
  opacity:0;animation:fade .85s ease .58s forwards}
.hero-foot{position:relative;z-index:3;display:flex;flex-wrap:wrap;gap:clamp(18px,4vw,64px);
  padding:clamp(18px,3vh,26px) 0;border-top:1px solid var(--border);
  opacity:0;animation:fade .85s ease .8s forwards}
.hero-foot div b{display:block;font-family:'Archivo Expanded',Archivo,sans-serif;font-weight:900;
  font-size:clamp(1.1rem,2vw,1.6rem);letter-spacing:-.03em;line-height:1}
.hero-foot div i{display:block;font-style:normal;font-size:10px;letter-spacing:.16em;
  color:var(--dim);margin-top:7px}

@media(prefers-reduced-motion:reduce){
  .hero h1 .row > span{transform:none}
  .crumb,.hero .sub,.hero-foot,.hero .panel{opacity:1;transform:none}
  .hero .panel .inner,.hero-main{transform:none!important;inset:0}
  .hero .cut line{stroke-dashoffset:0}
}
