/* ── HERO ─────────────────────────────────────────────────────────────────── */
.hero{position:relative;padding:96px 0 64px;background:linear-gradient(135deg,#FFF6F8 0%,#FFF0F3 55%,#FFEBF0 100%);overflow:hidden;min-height:640px;display:flex;align-items:center;}
.hero-inner{max-width:var(--max);margin:0 auto;padding:0 40px;display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;}
.hero-visual-order{order:2;}
.hero-text-order{order:1;}
.hero-img-wrap{background:transparent;aspect-ratio:1/1;}
.hero-img-wrap img{width:100%;height:100%;object-fit:cover;}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;background:#fff;padding:8px 18px;border-radius:var(--r-pill);font-weight:700;font-size:12px;letter-spacing:.1em;color:var(--text);margin-bottom:28px;box-shadow:var(--sh-sm);}
.hero-eyebrow .dot{width:6px;height:6px;background:var(--red);border-radius:50%;}
.hero-h1{font-family:var(--serif);font-weight:500;font-style:italic;font-size:clamp(44px,6vw,76px);line-height:1.05;letter-spacing:-.01em;margin-bottom:24px;}
.hero-h1 em{color:var(--red);}
.hero-sub{font-size:16px;color:var(--text-mid);line-height:1.75;margin-bottom:36px;max-width:440px;}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;}

/* ── Brand intro + stats ─────────────────────────────────────────────────── */
.bi-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.bi-text p{font-size:15px;color:var(--text-mid);line-height:1.85;margin:20px 0 28px;max-width:460px;}
.bi-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.bi-stats .stat-card:nth-child(2),.bi-stats .stat-card:nth-child(4){margin-top:20px;}
.stat-card{padding:32px 28px;border-radius:var(--r-lg);min-height:175px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .3s var(--ease);}
.stat-card:hover{transform:translateY(-4px);}
.stat-pink{background:var(--pink);} .stat-blue{background:var(--blue);} .stat-cream{background:var(--cream);} .stat-light{background:var(--bg2);}
.stat-num{font-weight:700;font-size:52px;line-height:1;color:var(--text);letter-spacing:-.03em;}
.stat-num sup{font-size:22px;color:var(--text-mid);margin-left:2px;font-weight:700;}
.stat-label{font-weight:700;font-size:13px;color:var(--text);line-height:1.5;margin-top:12px;}

/* ── Lineup strip ────────────────────────────────────────────────────────── */
.lineup-strip{position:relative;background:#fff8f6;overflow:hidden;}
.lineup-strip img{width:100%;height:auto;display:block;object-fit:contain;}
.lineup-strip-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,246,248,.72);}
.lineup-strip-text{text-align:center;max-width:660px;padding:0 24px;}
.lineup-strip-text h2{font-weight:700;font-size:clamp(20px,3.5vw,44px);letter-spacing:-.025em;margin-bottom:10px;}
.lineup-strip-text p{font-size:clamp(12px,1.5vw,16px);color:var(--text-mid);margin-bottom:24px;white-space:normal;}
@media(max-width:768px){
  .lineup-strip-overlay{position:relative;background:rgba(255,246,248,.95);padding:40px 20px;}
  .lineup-strip img{display:none;}
  .lineup-strip{background:#fff8f6;}
  .lineup-strip-text p{white-space:normal;font-size:14px;}
  .lineup-strip-text h2{font-size:24px;}
}

/* ── Channel strip ───────────────────────────────────────────────────────── */
.ch-strip{background:var(--blue-light);padding:36px 0;}
.ch-inner{display:flex;align-items:center;gap:40px;}
.ch-label{flex-shrink:0;}
.ch-label .eyebrow{font-style:italic;margin-bottom:0;font-size:12px;}
.ch-logos{flex:1;display:flex;align-items:center;justify-content:space-around;gap:16px;}
.ch-item{font-weight:700;font-size:15px;color:var(--text);opacity:1;white-space:nowrap;transition:opacity .2s;}
a.ch-item:hover{opacity:1;color:var(--red);text-decoration:none;}
/* Logo image placeholders — visible when <img> inside .ch-item */
.ch-item img{height:20px;width:auto;object-fit:contain;display:block;filter:none !important;opacity:1 !important;transition:opacity .25s;}
.ch-item:hover img{opacity:0.5 !important;}
.ch-div{width:1px;height:20px;background:rgba(0,0,0,.1);flex-shrink:0;}

/* ── Products ────────────────────────────────────────────────────────────── */
.sec-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:48px;}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.product-card{border-radius:var(--r-lg);overflow:visible;background:#fff;cursor:pointer;}
.product-card:hover .product-img{box-shadow:var(--sh-lg);}
.product-img{position:relative;background:var(--bg);border-radius:var(--r-lg);overflow:hidden;transition:box-shadow .3s var(--ease);}
.product-img img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .5s var(--ease);}
.product-card:hover .product-img img{transform:scale(1.04);}
.product-tag{position:absolute;top:14px;left:14px;}
.product-info{padding:16px 4px 8px;}
.product-name{font-weight:700;font-size:16px;margin-bottom:6px;line-height:1.3;}
.product-desc{font-size:13px;color:var(--text-mid);line-height:1.5;}
.product-cta-bar{margin-top:56px;background:var(--pink-light);border-radius:var(--r-xl);padding:28px 36px;display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;}
.product-cta-bar p{font-size:15px;color:var(--text-mid);}
.product-cta-bar strong{color:var(--text);font-weight:700;}

/* ── Collabo ─────────────────────────────────────────────────────────────── */
.collabo-wrap{padding:100px 0;background:linear-gradient(135deg,#FDEEF3 0%,#FFD8E6 100%);}
.collabo-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.collabo-single-img{border-radius:var(--r-xl);overflow:hidden;aspect-ratio:1;}
.collabo-single-img img{width:100%;height:100%;object-fit:cover;}
.collabo-badge{display:inline-block;padding:7px 18px;background:#fff;border-radius:var(--r-pill);font-weight:700;font-size:11px;letter-spacing:.18em;color:var(--red);margin-bottom:24px;}
.display-en{font-family:var(--serif);font-weight:500;font-style:italic;font-size:clamp(44px,6vw,72px);line-height:1.05;margin-bottom:20px;}
.display-en em{color:var(--red);}
.collabo-desc{font-size:16px;color:var(--text);line-height:1.8;margin-bottom:28px;max-width:440px;}
.collabo-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px;}

/* ── Press section ───────────────────────────────────────────────────────── */
.press-cta-wrap{background:var(--bg);}
.press-cta-grid{display:grid;grid-template-columns:1fr 1fr;min-height:480px;}
.press-img-side{overflow:hidden;position:relative;}
.press-img-side img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.press-side{padding:72px 64px;background:#fff;border-left:1px solid var(--border-soft);display:flex;flex-direction:column;justify-content:center;}
.press-list{display:flex;flex-direction:column;}
.press-item{display:flex;gap:20px;align-items:flex-start;padding:20px 0;border-bottom:1px solid var(--border-soft);}
.press-item:last-child{border-bottom:0;}
.press-date{font-weight:700;font-size:13px;color:var(--red);white-space:nowrap;flex-shrink:0;min-width:70px;padding-top:2px;}
.press-title{font-weight:700;font-size:14px;color:var(--text);line-height:1.55;}

/* ── Responsive home ─────────────────────────────────────────────────────── */
@media(max-width:1024px){
  .hero{min-height:500px;}
  .hero-inner{grid-template-columns:1fr;}
  .hero-visual-order{order:1;max-width:420px;margin:0 auto;}
  .hero-text-order{order:2;}
  .bi-grid{grid-template-columns:1fr;gap:48px;}
  .product-grid{grid-template-columns:repeat(2,1fr);}
  .collabo-grid{grid-template-columns:1fr;gap:32px;}
  .press-cta-grid{grid-template-columns:1fr;}
  .press-img-side{min-height:280px;}
  .press-side{border-left:0;border-top:1px solid var(--border-soft);padding:48px 36px;}
  .ch-inner{flex-direction:column;align-items:flex-start;gap:20px;}
  .ch-logos{width:100%;flex-wrap:wrap;justify-content:flex-start;}
}
@media(max-width:768px){
  .hero{padding:96px 0 64px;min-height:460px;display:flex;align-items:center;}
  .hero-inner{}
  .hero-btns{flex-direction:column;}
  .hero-btns .btn{justify-content:center;}
  /* Hero slider min height on mobile */
  .hero-img-wrap{min-height:280px;}
  .hero-slide .hero-img-wrap{min-height:280px;}
  /* Product card image min height */
  .product-img img{min-height:180px;}
  .product-grid{grid-template-columns:1fr 1fr;gap:14px;}
  .bi-stats{gap:12px;}
  .stat-card{min-height:140px;padding:24px 20px;}
  .stat-num{font-size:42px;}
  .bi-stats .stat-card:nth-child(2),.bi-stats .stat-card:nth-child(4){margin-top:12px;}
  .press-side{padding:40px 24px;}
  .product-cta-bar{flex-direction:column;text-align:center;padding:24px;}
  .sec-row{flex-direction:column;align-items:flex-start;gap:16px;}
}

/* ── OUR STORY heading: v4 Cormorant Garamond display style ────────────── */
.bi-display {
  font-family: var(--serif);
  font-weight: 500;
  font-size: clamp(40px, 5vw, 64px);
  letter-spacing: -.01em;
  line-height: 1.1;
  margin-bottom: 16px;
}
.bi-display em { color: var(--red); font-style: italic; font-weight: 500; }

/* ── Channel logo image: show img / hide text when logo file exists ──────── */
.ch-logo-text { display: none; font-weight: 700; font-size: 15px; color: var(--text); }
/* If image fails to load, text fallback is shown (handled by onerror in HTML) */

/* ── Hero Slider ─────────────────────────────────────────────────────────── */
.hero-slider { position: relative; width: 100%; }
.hero-slide { display: none; }
.hero-slide.active { display: block; }
.slide-btn {
  position: absolute;
  top: 50%; transform: translateY(-50%);
  background: rgba(255,255,255,.18);
  border: none;
  width: 28px; height: 28px;
  border-radius: 50%;
  font-size: 14px;
  cursor: pointer;
  z-index: 2;
  color: rgba(255,255,255,.7);
  transition: background .2s, color .2s;
  display: flex; align-items: center; justify-content: center;
}
.slide-btn:hover { background: rgba(255,255,255,.4); color: #fff; }
.slide-prev { left: 10px; }
.slide-next { right: 10px; }
.slide-dots {
  position: absolute;
  bottom: 12px;
  left: 50%; transform: translateX(-50%);
  display: flex; gap: 7px; z-index: 2;
}
.slide-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,.5);
  cursor: pointer;
  transition: background .2s, transform .2s;
}
.slide-dot.active { background: var(--red); transform: scale(1.25); }
/* Logo height 20px */

/* ── Channel logo: original color, hover fade ──────────────────────────── */
.ch-logo-img { height:20px; width:auto; object-fit:contain; display:block; filter:none !important; opacity:1 !important; transition:opacity .25s; }
.ch-item:hover .ch-logo-img { filter:none !important; opacity:0.5 !important; }

/* ── Infinite Marquee Banner ─────────────────────────────────────────── */
.marquee-banner{background:#E60023;color:#fff;overflow:hidden;padding:12px 0;}
.marquee-track{display:flex;gap:80px;white-space:nowrap;animation:marquee-scroll 40s linear infinite;width:max-content;}
.marquee-item{font-size:15px;font-weight:700;padding:0 32px;flex-shrink:0;}
.marquee-item em{font-style:italic;letter-spacing:.25em;}
@keyframes marquee-scroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}
.marquee-banner:hover .marquee-track{animation-play-state:paused;}
