/* =========================================================
   KIT · Home Page · Ported from design handoff
   All design styles are scoped under .home-main so they
   don't conflict with existing site styles. Header/footer/
   announcement/newsletter are kept from the existing site.
   ========================================================= */

/* ---------- Token aliases (design used short names) ---------- */
.home-main {
  --kit-ink: #1a1a1a;
  --kit-cream: #F8F3E7;
  --kit-paper: #F3ECD8;
  --kit-blonde-red: #E96B58;
  --kit-golden-orange: #FF8200;
  --kit-hazy-gold: #FFBF3F;
  --kit-hazy-green: #249E6B;
  --font-serif: var(--font-family-serif);
  --font-sans: var(--font-family-sans);
  --max: 1200px;
  --pad: clamp(1.25rem, 4vw, 3rem);
  --ease-out: cubic-bezier(.2,.7,.2,1);
  --ease-spring: cubic-bezier(.34,1.56,.64,1);

  background: var(--kit-cream);
  color: var(--kit-ink);
  font-family: var(--font-sans);
  line-height: 1.55;
  overflow-x: clip;
}

/* ========== HERO ========== */
.home-main .hero-home {
  position: relative;
  min-height: 100vh;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  display: flex;
  align-items: flex-end;
  padding: 0;
  margin: 0;
}
.home-main .hero-bg-img {
  position: absolute; inset: 0; z-index: -3;
  width: 100%; height: 100%; object-fit: cover; object-position: center 30%;
  transform: scale(1.08);
  animation: hpHeroPanIn 12s var(--ease-out) forwards;
}
@keyframes hpHeroPanIn { to { transform: scale(1); } }
.home-main .hero-home::after {
  content: '';
  position: absolute; inset: 0; z-index: -2;
  background:
    linear-gradient(180deg,
      rgba(10,30,54,.10) 0%,
      rgba(10,30,54,.05) 40%,
      rgba(10,30,54,.55) 80%,
      rgba(10,30,54,.85) 100%),
    linear-gradient(90deg, rgba(0,0,0,.25) 0%, transparent 50%);
}
.home-main .hero-grain {
  position: absolute; inset: 0; z-index: -1; pointer-events: none;
  opacity: .25; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .5 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
.home-main .hero-inner {
  max-width: var(--max); width: 100%; margin: 0 auto;
  padding: 0 var(--pad) clamp(3rem, 8vh, 6rem);
  position: relative; z-index: 2;
}
.home-main .hero-eyebrow {
  display: inline-flex; align-items: center; gap: .75rem;
  font-family: var(--font-sans);
  font-size: .78rem; font-weight: 700;
  letter-spacing: .26em; text-transform: uppercase;
  color: var(--kit-cream);
  margin-bottom: 1.75rem;
  opacity: 0; animation: hpFadeUp .8s .15s var(--ease-out) forwards;
}
.home-main .hero-eyebrow::before {
  content: ''; width: 36px; height: 1px; background: currentColor;
}
.home-main .hero-headline {
  font-family: var(--font-serif);
  font-weight: 600;
  font-size: clamp(3.2rem, 11vw, 10.5rem);
  line-height: .92;
  letter-spacing: -.025em;
  max-width: 12ch;
  margin: 0 0 1.5rem 0;
  color: #fff;
}
.home-main .hero-headline .line { display: block; overflow: hidden; padding-bottom: .04em; }
.home-main .hero-headline .word {
  display: inline-block;
  transform: translateY(110%);
  animation: hpRiseUp 1.1s var(--ease-spring) forwards;
}
.home-main .hero-headline .word.italic { font-style: italic; font-weight: 500; color: var(--kit-golden-blue); }
.home-main .hero-headline .word.accent { color: var(--kit-blonde-red); }
.home-main .hero-headline .w0 { animation-delay: .15s; }
.home-main .hero-headline .w1 { animation-delay: .25s; }
.home-main .hero-headline .w2 { animation-delay: .35s; }
.home-main .hero-headline .w3 { animation-delay: .45s; }
@keyframes hpRiseUp { to { transform: translateY(0); } }
.home-main .hero-subtext {
  max-width: 38ch;
  font-family: var(--font-sans);
  font-size: clamp(1rem, 1.3vw, 1.15rem);
  line-height: 1.55;
  color: rgba(255,255,255,.85);
  margin: 0 0 2.25rem 0;
  opacity: 0; animation: hpFadeUp .8s .9s var(--ease-out) forwards;
}
.home-main .hero-cta-row {
  display: flex; gap: 1rem; flex-wrap: wrap; align-items: center;
  opacity: 0; animation: hpFadeUp .8s 1.05s var(--ease-out) forwards;
}
.home-main .btn-hp,
.home-main .btn-hp-ghost,
.home-main .btn-hp-secondary {
  display: inline-flex; align-items: center; gap: .7rem;
  padding: 1.05rem 1.85rem;
  border-radius: 999px;
  font-family: var(--font-sans);
  font-size: .78rem; font-weight: 700; letter-spacing: .18em;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform .25s var(--ease-spring), background .2s, color .2s, border-color .2s;
  border: 1.5px solid transparent;
  white-space: nowrap;
  position: relative; overflow: hidden;
  text-decoration: none;
}
.home-main .btn-hp {
  background: var(--kit-blonde-red);
  color: #fff;
}
.home-main .btn-hp:hover { background: #fff; color: var(--kit-ink); transform: translateY(-3px); }
.home-main .btn-hp .arr { transition: transform .3s var(--ease-spring); }
.home-main .btn-hp:hover .arr { transform: translateX(5px); }
.home-main .btn-hp-ghost {
  border-color: rgba(255,255,255,.5); color: #fff;
}
.home-main .btn-hp-ghost:hover { border-color: #fff; background: #fff; color: var(--kit-blonde-blue); transform: translateY(-3px); }
.home-main .btn-hp-secondary {
  background: var(--kit-ink); color: #fff;
}
.home-main .btn-hp-secondary:hover { background: var(--kit-blonde-blue); transform: translateY(-3px); }

.home-main .hero-scroll-cue {
  position: absolute;
  bottom: 1.5rem; right: var(--pad);
  display: flex; align-items: center; gap: .7rem;
  font-family: var(--font-sans);
  font-size: .68rem; font-weight: 600; letter-spacing: .22em;
  text-transform: uppercase; color: rgba(255,255,255,.75);
  z-index: 3;
  opacity: 0; animation: hpFadeUp .8s 1.4s var(--ease-out) forwards;
}
.home-main .hero-scroll-cue .line {
  display: block; width: 60px; height: 1px;
  background: rgba(255,255,255,.5);
  position: relative; overflow: hidden;
}
.home-main .hero-scroll-cue .line::after {
  content: ''; position: absolute; inset: 0;
  background: #fff;
  transform: translateX(-100%);
  animation: hpScrollLineH 2.2s ease-in-out infinite;
}
@keyframes hpScrollLineH {
  0% { transform: translateX(-100%); }
  60% { transform: translateX(100%); }
  100% { transform: translateX(100%); }
}
@keyframes hpFadeUp { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@keyframes hpFadeIn { to { opacity: 1; } }

/* ========== AWARDS MARQUEE ========== */
.home-main .awards-marquee-section {
  background:
    radial-gradient(1000px 500px at 85% 10%, rgba(127, 191, 239, .18), transparent 60%),
    radial-gradient(800px 600px at 10% 90%, rgba(0, 130, 202, .25), transparent 60%),
    linear-gradient(180deg, #0a1e36 0%, #0f2a4a 45%, #0a3a6a 100%);
  color: #fff;
  padding: 4rem 0 3.5rem;
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(255,255,255,.05);
}
.home-main .awards-marquee-section::before,
.home-main .awards-marquee-section::after {
  content: ''; position: absolute; top: 0; bottom: 0;
  width: 12rem; z-index: 2; pointer-events: none;
}
.home-main .awards-marquee-section::before {
  left: 0; background: linear-gradient(90deg, #0a1e36, transparent);
}
.home-main .awards-marquee-section::after {
  right: 0; background: linear-gradient(-90deg, #0a3a6a, transparent);
}
.home-main .awards-marquee-headline {
  text-align: center;
  font-family: var(--font-serif);
  font-size: clamp(1.5rem, 2.5vw, 2.2rem);
  font-weight: 500; letter-spacing: -.01em;
  margin: 0 0 2.5rem 0;
  display: flex; align-items: center; justify-content: center; gap: 1.5rem;
  color: #fff;
}
.home-main .awards-marquee-headline em { color: var(--kit-hazy-gold); font-weight: 600; font-style: italic; }
.home-main .awards-marquee-headline .line {
  display: inline-block; width: 60px; height: 1px;
  background: rgba(255,255,255,.3);
}
.home-main .awards-marquee {
  display: flex;
  gap: 4rem;
  animation: hpMarqueeAwards 28s linear infinite;
  width: max-content;
}
.home-main .awards-marquee:hover { animation-play-state: paused; }
.home-main .awards-marquee img {
  height: 110px; width: auto;
  filter: drop-shadow(0 8px 24px rgba(255,191,63,.25));
  transition: transform .4s var(--ease-spring), filter .4s;
}
.home-main .awards-marquee img:hover {
  transform: scale(1.12) translateY(-4px);
  filter: drop-shadow(0 12px 30px rgba(255,191,63,.5));
}
@keyframes hpMarqueeAwards { to { transform: translateX(-50%); } }

/* ========== PRODUCTS ========== */
.home-main .products-section-hp {
  padding: clamp(5rem, 12vh, 9rem) 0;
  background: var(--kit-cream);
  position: relative;
  overflow: hidden;
}
.home-main .products-header-hp {
  max-width: var(--max); margin: 0 auto 4rem;
  padding: 0 var(--pad);
}
.home-main .section-eyebrow-hp {
  font-family: var(--font-sans);
  font-size: .72rem; font-weight: 700;
  letter-spacing: .26em; text-transform: uppercase;
  color: var(--kit-blonde-red);
  display: inline-flex; align-items: center; gap: .75rem;
  margin: 0;
}
.home-main .section-eyebrow-hp::before {
  content: ''; width: 32px; height: 1px; background: currentColor;
}
.home-main .products-title-hp {
  font-family: var(--font-serif);
  font-size: clamp(2.5rem, 6vw, 5rem);
  font-weight: 600; line-height: 1;
  letter-spacing: -.02em;
  margin: 1rem 0 0 0;
  max-width: 22ch;
  color: var(--kit-ink);
}
.home-main .products-title-hp em { color: var(--kit-blonde-blue); font-weight: 500; font-style: italic; }

.home-main .products-grid-hp {
  max-width: var(--max); margin: 0 auto;
  padding: 0 var(--pad);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}
@media (min-width: 900px) {
  .home-main .products-grid-hp {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
  }
}
.home-main .product-card-hp {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  cursor: pointer;
  transition: transform .5s var(--ease-spring);
  aspect-ratio: 3/4.4;
  display: flex; flex-direction: column;
  box-shadow: 0 4px 20px -8px rgba(0,0,0,.1);
  background: var(--pc-bg, #fff);
  text-decoration: none;
}
.home-main .product-card-hp.theme-blonde { --pc-bg: #cde8f9; --pc-accent: var(--kit-blonde-blue); }
.home-main .product-card-hp.theme-golden { --pc-bg: #ffe4b8; --pc-accent: var(--kit-golden-orange); }
.home-main .product-card-hp.theme-hazy { --pc-bg: #fff1c2; --pc-accent: var(--kit-hazy-green); }
.home-main .product-card-hp.theme-variety { --pc-bg: #f7d6cf; --pc-accent: var(--kit-blonde-red); }
.home-main .product-card-hp:hover { transform: translateY(-8px); }

.home-main .product-image-wrap {
  position: relative;
  flex: 1;
  overflow: hidden;
  display: block;
}
.home-main .product-image-wrap img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 1s var(--ease-out);
}
.home-main .product-card-hp:hover .product-image-wrap img { transform: scale(1.08); }

.home-main .product-num {
  position: absolute; top: -.2em; right: .3rem;
  font-family: var(--font-serif);
  font-size: 7rem;
  line-height: 1;
  font-weight: 600;
  color: rgba(255,255,255,.6);
  pointer-events: none;
  z-index: 1;
  font-style: italic;
}

.home-main .product-info-hp {
  padding: 1.25rem 1.25rem 1.5rem;
  background: var(--kit-cream);
  display: grid; grid-template-columns: 1fr auto; gap: 1rem;
  align-items: center;
}
.home-main .product-name-hp {
  font-family: var(--font-serif);
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -.01em;
  color: var(--kit-ink);
  margin: 0;
}
.home-main .product-descriptor-hp {
  font-family: var(--font-sans);
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--kit-dark-gray);
  margin: .35rem 0 0 0;
}
.home-main .product-shop {
  width: 44px; height: 44px;
  border-radius: 50%;
  background: var(--kit-ink); color: #fff;
  display: grid; place-items: center;
  transition: transform .3s var(--ease-spring), background .2s;
  flex-shrink: 0;
}
.home-main .product-card-hp:hover .product-shop {
  background: var(--pc-accent);
  transform: rotate(-45deg) scale(1.08);
}
.home-main .product-shop svg { width: 18px; height: 18px; }

/* ========== TICKER ========== */
.home-main .kit-ticker {
  background: var(--kit-blonde-blue);
  color: #fff;
  padding: 1.5rem 0;
  overflow: hidden;
  position: relative;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.home-main .kit-ticker-track {
  display: flex; gap: 3rem; align-items: center;
  width: max-content;
  animation: hpMarqueeLeft2 36s linear infinite;
}
.home-main .kit-ticker-track span {
  font-family: var(--font-serif);
  font-size: clamp(1.8rem, 4vw, 3.5rem);
  font-weight: 600; letter-spacing: -.01em;
  white-space: nowrap;
  display: flex; align-items: center; gap: 3rem;
}
.home-main .kit-ticker-track .dot {
  display: inline-block;
  width: 14px; height: 14px;
  border-radius: 50%;
  background: var(--kit-blonde-red);
  flex-shrink: 0;
}
.home-main .kit-ticker-track em {
  font-style: italic;
  color: #fff;
  font-weight: 500;
}
@keyframes hpMarqueeLeft2 { to { transform: translateX(-50%); } }

/* ========== BRAND STORY ========== */
.home-main .brand-story-hp {
  padding: clamp(5rem, 12vh, 9rem) 0;
  background: var(--kit-paper);
  position: relative;
  overflow: hidden;
}
.home-main .brand-story-bg-glow {
  position: absolute;
  width: 600px; height: 600px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0,130,202,.15), transparent 70%);
  top: -200px; right: -200px;
  pointer-events: none;
}
.home-main .brand-story-layout-hp {
  max-width: var(--max); margin: 0 auto;
  padding: 0 var(--pad);
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
  position: relative;
}
@media (min-width: 900px) {
  .home-main .brand-story-layout-hp {
    grid-template-columns: 1.05fr 1fr;
    gap: 5rem;
  }
}
.home-main .brand-story-image-wrap {
  position: relative;
  aspect-ratio: 4/5;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 30px 60px -20px rgba(0,30,80,.35);
}
.home-main .brand-story-image-hp {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 12s ease-out;
}
.home-main .brand-story-hp:hover .brand-story-image-hp { transform: scale(1.05); }
.home-main .brand-story-content-hp { padding: 1rem 0; }
.home-main .brand-story-headline-hp {
  font-family: var(--font-serif);
  font-size: clamp(2.5rem, 5.5vw, 4.5rem);
  font-weight: 600; line-height: 1;
  letter-spacing: -.02em;
  margin: 1rem 0 1.75rem;
  max-width: 14ch;
  color: var(--kit-ink);
}
.home-main .brand-story-headline-hp em { color: var(--kit-blonde-blue); font-weight: 500; font-style: italic; }
.home-main .brand-story-headline-hp .accent { color: var(--kit-blonde-red); }
.home-main .brand-story-text-hp {
  font-family: var(--font-sans);
  font-size: 1.05rem; line-height: 1.7;
  color: var(--kit-charcoal);
  max-width: 48ch;
  margin: 0 0 2rem 0;
}

/* ========== INSTAGRAM / LIFESTYLE ========== */
.home-main .instagram-section-hp {
  padding: clamp(5rem, 12vh, 9rem) 0 0;
  background: var(--kit-cream);
  overflow: hidden;
}
.home-main .instagram-header-hp {
  max-width: var(--max); margin: 0 auto 3rem;
  padding: 0 var(--pad);
  text-align: center;
}
.home-main .instagram-header-hp .section-eyebrow-hp {
  justify-content: center;
}
.home-main .instagram-header-hp .section-eyebrow-hp::after {
  content: ''; width: 32px; height: 1px; background: currentColor;
}
.home-main .instagram-title-hp {
  font-family: var(--font-serif);
  font-size: clamp(2.5rem, 6vw, 5rem);
  font-weight: 600; line-height: 1;
  letter-spacing: -.02em;
  margin: 1rem 0 0 0;
  color: var(--kit-ink);
}
.home-main .instagram-title-hp em { color: var(--kit-blonde-red); font-weight: 500; font-style: italic; }

.home-main .lifestyle-marquee-wrap {
  display: flex; flex-direction: column; gap: 1rem;
  padding-bottom: 4rem;
  position: relative;
}
.home-main .lifestyle-marquee {
  display: flex; gap: 1rem;
  width: max-content;
}
.home-main .lifestyle-marquee.row-1 { animation: hpMarqueeLeft 50s linear infinite; }
.home-main .lifestyle-marquee:hover { animation-play-state: paused; }
@keyframes hpMarqueeLeft { to { transform: translateX(-50%); } }

.home-main .lifestyle-tile {
  position: relative;
  width: clamp(220px, 26vw, 360px);
  aspect-ratio: 4/5;
  border-radius: 12px;
  overflow: hidden;
  flex-shrink: 0;
  transition: transform .5s var(--ease-spring);
  display: block;
}
.home-main .lifestyle-tile:hover { transform: scale(1.04); z-index: 2; }
.home-main .lifestyle-tile img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 1.5s ease-out;
}
.home-main .lifestyle-tile:hover img { transform: scale(1.1); }
.home-main .lifestyle-tile::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(0,0,0,.4) 100%);
  opacity: 0; transition: opacity .3s;
}
.home-main .lifestyle-tile:hover::after { opacity: 1; }
.home-main .lifestyle-tile-tag {
  position: absolute; bottom: 1rem; left: 1rem;
  font-family: var(--font-sans);
  font-size: .68rem; font-weight: 700;
  letter-spacing: .18em; text-transform: uppercase;
  color: #fff;
  z-index: 2;
  opacity: 0; transform: translateY(8px);
  transition: opacity .3s, transform .3s;
}
.home-main .lifestyle-tile:hover .lifestyle-tile-tag {
  opacity: 1; transform: translateY(0);
}
.home-main .instagram-cta-hp {
  text-align: center;
  margin-top: 1rem;
  padding: 0 var(--pad) 4rem;
}

/* ========== Reveal-on-scroll ========== */
.home-main .reveal {
  opacity: 0; transform: translateY(30px);
  transition: opacity .9s var(--ease-out), transform .9s var(--ease-out);
}
.home-main .reveal.in { opacity: 1; transform: translateY(0); }
.home-main .reveal-delay-1 { transition-delay: .12s; }
.home-main .reveal-delay-2 { transition-delay: .24s; }
.home-main .reveal-delay-3 { transition-delay: .36s; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .home-main *, .home-main *::before, .home-main *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ========== MOBILE POLISH (≤ 700px) ========== */
@media (max-width: 700px) {
  .home-main .hero-home { min-height: 88vh; min-height: 88svh; }
  .home-main .hero-inner { padding: 0 var(--pad) 3.5rem; }
  .home-main .hero-eyebrow { margin-bottom: 1.25rem; font-size: .68rem; letter-spacing: .22em; }
  .home-main .hero-eyebrow::before { width: 24px; }
  .home-main .hero-headline {
    font-size: clamp(2.8rem, 13vw, 4.6rem);
    line-height: .94;
    margin-bottom: 1.25rem;
    max-width: 11ch;
  }
  .home-main .hero-subtext { font-size: 1rem; margin-bottom: 1.75rem; max-width: 32ch; }
  .home-main .hero-cta-row { gap: .65rem; }
  .home-main .btn-hp,
  .home-main .btn-hp-ghost,
  .home-main .btn-hp-secondary { padding: .9rem 1.4rem; font-size: .72rem; letter-spacing: .14em; }
  .home-main .hero-scroll-cue { display: none; }

  .home-main .awards-marquee-section { padding: 3rem 0 2.5rem; }
  .home-main .awards-marquee-section::before, .home-main .awards-marquee-section::after { width: 4rem; }
  .home-main .awards-marquee-headline { font-size: 1.2rem; gap: .75rem; margin-bottom: 1.75rem; padding: 0 1rem; }
  .home-main .awards-marquee-headline .line { width: 28px; }
  .home-main .awards-marquee { gap: 2.25rem; }
  .home-main .awards-marquee img { height: 78px; }

  .home-main .products-section-hp { padding: clamp(3.5rem, 8vh, 5rem) 0; }
  .home-main .products-header-hp { margin-bottom: 2.25rem; }
  .home-main .products-title-hp { font-size: 2.2rem; margin-top: .75rem; }
  .home-main .section-eyebrow-hp { font-size: .68rem; letter-spacing: .22em; }
  .home-main .products-grid-hp {
    grid-template-columns: repeat(2, 1fr);
    gap: .75rem;
  }
  .home-main .product-card-hp { aspect-ratio: 3/4.6; border-radius: 12px; }
  .home-main .product-num { font-size: 4.5rem; }
  .home-main .product-info-hp { padding: .85rem .9rem 1rem; }
  .home-main .product-name-hp { font-size: 1.2rem; }
  .home-main .product-descriptor-hp { font-size: .62rem; letter-spacing: .12em; margin-top: .25rem; }
  .home-main .product-shop { width: 36px; height: 36px; }
  .home-main .product-shop svg { width: 14px; height: 14px; }

  .home-main .kit-ticker { padding: 1rem 0; }
  .home-main .kit-ticker-track { gap: 2rem; }
  .home-main .kit-ticker-track span { font-size: 1.6rem; gap: 2rem; }
  .home-main .kit-ticker-track .dot { width: 9px; height: 9px; }

  .home-main .brand-story-hp { padding: clamp(3.5rem, 8vh, 5rem) 0; }
  .home-main .brand-story-layout-hp { gap: 2rem; }
  .home-main .brand-story-image-wrap { aspect-ratio: 4/3; border-radius: 12px; }
  .home-main .brand-story-headline-hp { font-size: 2.2rem; margin: .75rem 0 1.25rem; max-width: none; }
  .home-main .brand-story-text-hp { font-size: 1rem; margin-bottom: 1.5rem; }
  .home-main .brand-story-bg-glow { width: 320px; height: 320px; top: -120px; right: -120px; }

  .home-main .instagram-section-hp { padding: clamp(3.5rem, 8vh, 5rem) 0 0; }
  .home-main .instagram-header-hp { margin-bottom: 2rem; }
  .home-main .instagram-title-hp { font-size: 2.4rem; margin-top: .75rem; }
  .home-main .lifestyle-marquee { gap: .65rem; }
  .home-main .lifestyle-tile { width: 180px; border-radius: 10px; }
  .home-main .lifestyle-marquee-wrap { padding-bottom: 2.5rem; gap: .65rem; }
  .home-main .instagram-cta-hp { padding: 0 var(--pad) 3rem; }
}

/* ========== TINY PHONE (≤ 380px) ========== */
@media (max-width: 380px) {
  .home-main .hero-headline { font-size: 2.4rem; }
  .home-main .hero-cta-row { width: 100%; }
  .home-main .hero-cta-row > a { flex: 1; justify-content: center; padding: .85rem 1rem; }
  .home-main .products-title-hp { font-size: 1.9rem; }
  .home-main .brand-story-headline-hp { font-size: 1.9rem; }
}
