/* ════════════════════════════════════════════════════════════════
   AHARA HOME & HEADER — v2.1
   Scrolling product-grid hero · Editorial restraint
   ════════════════════════════════════════════════════════════════ */

:root {
  --ah-ink:        #1A1208;
  --ah-smoke:      #2A2015;
  --ah-ochre:      #C47B2A;
  --ah-ochre-lt:   #E8A84A;
  --ah-terra:      #8B3A2A;
  --ah-parch:      #F5EDD8;
  --ah-parch-dk:   #E8D9BE;
  --ah-cream:      #FBF6EC;
  --ah-cream-warm: #F9F0DE;
  --ah-sage:       #4A6B4A;
  --ah-indigo:     #1A1A2E;
  --ah-text:       #2A2015;
  --ah-text-mute:  #6B5E48;
  --ah-text-soft:  #9A8A6C;
  --ah-line:       rgba(26,18,8,0.10);
  --ah-line-md:    rgba(26,18,8,0.20);
}

body { background: var(--ah-cream); color: var(--ah-text); font-family: 'Tenor Sans', sans-serif; }
.ah2-home em, .ah2-header em { font-family: 'Cormorant Garamond', Georgia, serif; font-style: italic; font-weight: 300; }

/* Shared section styles */
.ah2-section { max-width: 1280px; margin: 0 auto; padding: 88px 28px; }
.ah2-section-head { margin-bottom: 48px; }
.ah2-eyebrow { font-family: 'Cormorant Garamond', serif; font-size: 12px; letter-spacing: 0.35em; text-transform: uppercase; color: var(--ah-terra); margin-bottom: 14px; }
.ah2-eyebrow-light { color: var(--ah-ochre-lt); }
.ah2-h2 { font-family: 'Cormorant Garamond', serif; font-size: 44px; font-weight: 300; line-height: 1.05; color: var(--ah-ink); letter-spacing: -0.01em; margin: 0; }
.ah2-h2-light { color: var(--ah-parch); }
.ah2-section-link { display: inline-block; margin-top: 14px; font-size: 12px; letter-spacing: 0.15em; text-transform: uppercase; color: var(--ah-terra); text-decoration: none; }
.ah2-section-link:hover { color: var(--ah-ink); }

/* Buttons */
.ah2-btn-primary, .ah2-btn-ghost, .ah2-btn-amber, .ah2-btn-ghost-light {
  display: inline-block;
  padding: 13px 28px;
  font-family: 'Tenor Sans', sans-serif;
  font-size: 11.5px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.18s ease;
  cursor: pointer;
  border: 1px solid transparent;
}
.ah2-btn-primary { background: var(--ah-ink); color: var(--ah-parch); border-color: var(--ah-ink); }
.ah2-btn-primary:hover { background: var(--ah-ochre); border-color: var(--ah-ochre); color: var(--ah-ink); }
.ah2-btn-ghost { background: transparent; color: var(--ah-ink); border-color: var(--ah-ink); }
.ah2-btn-ghost:hover { background: var(--ah-ink); color: var(--ah-parch); }
.ah2-btn-amber { background: var(--ah-ochre); color: var(--ah-ink); border-color: var(--ah-ochre); }
.ah2-btn-amber:hover { background: var(--ah-ochre-lt); border-color: var(--ah-ochre-lt); }
.ah2-btn-ghost-light { background: transparent; color: var(--ah-parch); border-color: var(--ah-parch-dk); }
.ah2-btn-ghost-light:hover { background: var(--ah-parch); color: var(--ah-ink); }

/* ════════════════════════════════════════════════════════════════
   HEADER
   ════════════════════════════════════════════════════════════════ */

.ah2-header { background: var(--ah-cream); position: sticky; top: 0; z-index: 1000; }
.ah2-announce { background: var(--ah-ink); color: var(--ah-parch-dk); padding: 8px 0; overflow: hidden; font-size: 11px; letter-spacing: 0.12em; }
.ah2-announce-track { display: inline-flex; gap: 40px; white-space: nowrap; animation: ah2Marquee 38s linear infinite; padding-left: 100%; }
.ah2-announce-item { display: inline-flex; align-items: center; }
.ah2-announce-dot { color: var(--ah-ochre); }
@keyframes ah2Marquee { from { transform: translateX(0); } to { transform: translateX(-100%); } }

.ah2-mid { display: grid; grid-template-columns: minmax(180px, 240px) 1fr auto; align-items: center; gap: 32px; padding: 22px 28px; max-width: 1440px; margin: 0 auto; border-bottom: 0.5px solid var(--ah-line); }
.ah2-logo { text-decoration: none; color: var(--ah-ink); display: inline-block; }
.ah2-logo-img { max-height: 56px; width: auto; }
.ah2-logo-text { display: flex; flex-direction: column; line-height: 1; }
.ah2-logo-name { font-family: 'Cormorant Garamond', serif; font-size: 30px; font-weight: 400; letter-spacing: 0.02em; }
.ah2-logo-tag { font-family: 'Tenor Sans', sans-serif; font-size: 9.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--ah-text-mute); margin-top: 4px; }

.ah2-search { max-width: 580px; width: 100%; justify-self: center; }
.ah2-search-form { display: flex; align-items: center; background: white; border: 0.5px solid var(--ah-line-md); padding: 0 16px; transition: border-color 0.18s; }
.ah2-search-form:focus-within { border-color: var(--ah-ink); }
.ah2-search-ico { color: var(--ah-text-mute); flex-shrink: 0; }
.ah2-search-form input { flex: 1; border: none; padding: 14px 12px; background: transparent; font-family: 'Tenor Sans', sans-serif; font-size: 13px; outline: none; color: var(--ah-ink); }
.ah2-search-form input::placeholder { color: var(--ah-text-soft); font-style: italic; }

.ah2-mid-right { display: flex; align-items: center; gap: 24px; }
.ah2-action { display: inline-flex; align-items: center; gap: 7px; color: var(--ah-ink); text-decoration: none; font-size: 12px; position: relative; transition: color 0.18s; }
.ah2-action:hover { color: var(--ah-ochre); }
.ah2-action-members::before { content: ''; position: absolute; bottom: -3px; left: 0; right: 0; height: 1px; background: var(--ah-ochre); transform: scaleX(0); transition: transform 0.18s; }
.ah2-action-members:hover::before { transform: scaleX(1); }
.ah2-action-cart { padding: 8px 14px; background: var(--ah-ink); color: var(--ah-parch); }
.ah2-action-cart:hover { background: var(--ah-ochre); color: var(--ah-ink); }
.ah2-cart-detail { display: flex; flex-direction: column; line-height: 1.1; }
.ah2-cart-lbl { font-size: 9.5px; letter-spacing: 0.16em; text-transform: uppercase; opacity: 0.8; }
.ah2-cart-amt { font-size: 13px; margin-top: 2px; }
.ah2-badge { position: absolute; top: -6px; right: -8px; background: var(--ah-terra); color: var(--ah-parch); font-size: 9px; padding: 1px 5px; border-radius: 8px; line-height: 1.4; min-width: 14px; text-align: center; }
.ah2-badge-cart { top: 2px; right: -8px; }

.ah2-burger { display: none; background: transparent; border: none; padding: 8px; cursor: pointer; flex-direction: column; gap: 4px; }
.ah2-burger span { display: block; width: 22px; height: 1.5px; background: var(--ah-ink); transition: all 0.2s; }
.ah2-burger-x span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.ah2-burger-x span:nth-child(2) { opacity: 0; }
.ah2-burger-x span:nth-child(3) { transform: translateY(-5px) rotate(-45deg); }

.ah2-nav { background: var(--ah-cream); border-bottom: 0.5px solid var(--ah-line); }
.ah2-nav-list { display: flex; justify-content: center; align-items: center; gap: 38px; max-width: 1440px; margin: 0 auto; padding: 16px 28px; list-style: none; }
.ah2-nav-list a { font-family: 'Tenor Sans', sans-serif; font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ah-text); text-decoration: none; padding: 6px 0; transition: color 0.18s; }
.ah2-nav-list a:hover { color: var(--ah-ochre); }
.ah2-nav-list .ah2-nav-em { color: var(--ah-terra); font-style: italic; text-transform: none; letter-spacing: 0.06em; font-size: 14px; font-family: 'Cormorant Garamond', serif; }

.ah2-drawer { display: none; flex-direction: column; padding: 24px; background: var(--ah-cream); border-top: 0.5px solid var(--ah-line); }
.ah2-drawer.ah2-open { display: flex; }
.ah2-drawer a { padding: 14px 0; font-family: 'Tenor Sans', sans-serif; font-size: 14px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ah-ink); text-decoration: none; border-bottom: 0.5px solid var(--ah-line); }
.ah2-drawer-sep { height: 8px; }
.ah2-drawer-member { background: var(--ah-ochre); color: var(--ah-ink) !important; padding: 14px !important; text-align: center; margin-top: 12px; border: none !important; }

/* ════════════════════════════════════════════════════════════════
   1. HERO — Scrolling product grid + editorial overlay
   ════════════════════════════════════════════════════════════════ */

.ah2-hero {
  position: relative;
  height: 92vh;
  min-height: 640px;
  max-height: 900px;
  background: var(--ah-ink);
  overflow: hidden;
}

.ah2-hero-fallback {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse at 20% 30%, rgba(196,123,42,0.25), transparent 50%),
    radial-gradient(ellipse at 80% 70%, rgba(139,58,42,0.18), transparent 55%),
    var(--ah-ink);
}

.ah2-hero-grid {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  padding: 10px;
}

.ah2-hero-col {
  overflow: hidden;
  position: relative;
}

.ah2-hero-col-inner {
  display: flex;
  flex-direction: column;
  gap: 10px;
  will-change: transform;
  transform: translate3d(0, 0, 0);
}

/* Different speeds and alternating directions for kinetic interest */
.ah2-hero-col-1 .ah2-hero-col-inner { animation: ah2HeroUp 56s linear infinite; }
.ah2-hero-col-2 .ah2-hero-col-inner { animation: ah2HeroDown 64s linear infinite; }
.ah2-hero-col-3 .ah2-hero-col-inner { animation: ah2HeroUp 72s linear infinite; }
.ah2-hero-col-4 .ah2-hero-col-inner { animation: ah2HeroDown 60s linear infinite; }
.ah2-hero-col-5 .ah2-hero-col-inner { animation: ah2HeroUp 68s linear infinite; }

@keyframes ah2HeroUp {
  from { transform: translate3d(0, 0, 0); }
  to   { transform: translate3d(0, -50%, 0); }
}
@keyframes ah2HeroDown {
  from { transform: translate3d(0, -50%, 0); }
  to   { transform: translate3d(0, 0, 0); }
}

/* Pause on hover so users can study the hero */
.ah2-hero:hover .ah2-hero-col-inner { animation-play-state: paused; }

/* Respect reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
  .ah2-hero-col-inner { animation: none !important; }
}

.ah2-hero-tile {
  aspect-ratio: 4/5;
  background: var(--ah-smoke);
  overflow: hidden;
  flex-shrink: 0;
}

.ah2-hero-tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.82) saturate(0.95);
  display: block;
}

/* Overlay — radial gradient darkens the center for text legibility,
   while letting the images breathe at the edges */
.ah2-hero-overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(
      ellipse 65% 75% at center,
      rgba(26,18,8,0.88) 0%,
      rgba(26,18,8,0.70) 30%,
      rgba(26,18,8,0.42) 60%,
      rgba(26,18,8,0.22) 90%
    );
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 28px;
  z-index: 2;
}

.ah2-hero-content {
  max-width: 720px;
  text-align: center;
  color: var(--ah-parch);
  position: relative;
  z-index: 3;
}

.ah2-hero-eyebrow {
  font-family: 'Cormorant Garamond', serif;
  font-size: 12px;
  letter-spacing: 0.4em;
  text-transform: uppercase;
  color: var(--ah-ochre-lt);
  margin-bottom: 24px;
}

.ah2-hero-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 84px;
  font-weight: 300;
  line-height: 1.0;
  letter-spacing: -0.02em;
  margin: 0 0 22px;
  color: var(--ah-parch);
  text-shadow: 0 2px 32px rgba(0,0,0,0.45);
}
.ah2-hero-title em { color: var(--ah-ochre-lt); font-style: italic; }

.ah2-hero-sub {
  font-family: 'Tenor Sans', sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: var(--ah-parch-dk);
  margin: 0 auto 32px;
  max-width: 520px;
  text-shadow: 0 1px 12px rgba(0,0,0,0.4);
}

.ah2-hero-ctas { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

.ah2-hero .ah2-btn-primary { background: var(--ah-ochre); color: var(--ah-ink); border-color: var(--ah-ochre); }
.ah2-hero .ah2-btn-primary:hover { background: var(--ah-parch); border-color: var(--ah-parch); }
.ah2-hero .ah2-btn-ghost { color: var(--ah-parch); border-color: var(--ah-parch-dk); }
.ah2-hero .ah2-btn-ghost:hover { background: var(--ah-parch); color: var(--ah-ink); }

/* Trust strip below hero */
.ah2-truststrip { background: var(--ah-cream); border-bottom: 0.5px solid var(--ah-line); }
.ah2-truststrip-inner {
  max-width: 1280px; margin: 0 auto; padding: 32px 28px;
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px;
}
.ah2-truststrip-inner > div { display: flex; flex-direction: column; gap: 4px; align-items: center; text-align: center; border-right: 0.5px solid var(--ah-line); padding: 0 12px; }
.ah2-truststrip-inner > div:last-child { border-right: none; }
.ah2-ts-n { font-family: 'Cormorant Garamond', serif; font-size: 30px; font-weight: 300; color: var(--ah-terra); line-height: 1; }
.ah2-ts-l { font-family: 'Tenor Sans', sans-serif; font-size: 10.5px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ah-text-mute); }

/* ════════════════════════════════════════════════════════════════
   2. SHOP BY INTENTION
   ════════════════════════════════════════════════════════════════ */
.ah2-intent-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.ah2-intent-card { background: var(--ah-cream-warm); text-decoration: none; color: var(--ah-ink); padding: 32px 26px 36px; display: flex; flex-direction: column; min-height: 380px; transition: all 0.28s ease; border: 0.5px solid var(--ah-line); }
.ah2-intent-card:hover { transform: translateY(-3px); border-color: var(--ah-ochre); }
.ah2-intent-num { font-family: 'Cormorant Garamond', serif; font-size: 13px; font-style: italic; color: var(--ah-terra); margin-bottom: auto; }
.ah2-intent-body h3 { font-family: 'Cormorant Garamond', serif; font-size: 30px; font-weight: 300; line-height: 1.1; margin: 0 0 14px; color: var(--ah-ink); letter-spacing: -0.01em; }
.ah2-intent-body p { font-family: 'Tenor Sans', sans-serif; font-size: 13.5px; line-height: 1.7; color: var(--ah-text-mute); margin: 0 0 22px; }
.ah2-intent-link { font-family: 'Tenor Sans', sans-serif; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ah-terra); transition: color 0.18s; }
.ah2-intent-card:hover .ah2-intent-link { color: var(--ah-ink); }
.ah2-intent-altar { background: linear-gradient(180deg, var(--ah-cream-warm), #F3E8D2); }
.ah2-intent-body-cat { background: linear-gradient(180deg, var(--ah-cream-warm), #E8EDD8); }
.ah2-intent-table { background: linear-gradient(180deg, var(--ah-cream-warm), #F2DEC0); }
.ah2-intent-home { background: linear-gradient(180deg, var(--ah-cream-warm), #EBD8C9); }

/* ════════════════════════════════════════════════════════════════
   3. FEATURED
   ════════════════════════════════════════════════════════════════ */
.ah2-feat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.ah2-feat-card { text-decoration: none; color: var(--ah-ink); display: block; transition: transform 0.28s ease; }
.ah2-feat-card:hover { transform: translateY(-3px); }
.ah2-feat-img { aspect-ratio: 4/5; background: var(--ah-cream-warm); display: flex; align-items: center; justify-content: center; overflow: hidden; margin-bottom: 18px; }
.ah2-feat-img img { width: 100%; height: 100%; object-fit: contain; padding: 24px; box-sizing: border-box; transition: transform 0.5s ease; }
.ah2-feat-card:hover .ah2-feat-img img { transform: scale(1.04); }
.ah2-feat-noimg { color: var(--ah-text-soft); font-size: 32px; }
.ah2-feat-body h4 { font-family: 'Cormorant Garamond', serif; font-size: 19px; font-weight: 400; line-height: 1.3; margin: 0 0 6px; color: var(--ah-ink); }
.ah2-feat-price { font-family: 'Tenor Sans', sans-serif; font-size: 15px; color: var(--ah-text-mute); }
.ah2-feat-price .price { color: var(--ah-ink); }

/* ════════════════════════════════════════════════════════════════
   4. MEMBER
   ════════════════════════════════════════════════════════════════ */
.ah2-member { background: var(--ah-indigo); color: var(--ah-parch); padding: 96px 28px; position: relative; overflow: hidden; }
.ah2-member-inner { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: 1.4fr 1fr; gap: 64px; align-items: center; }
.ah2-member-text h2 { margin-bottom: 26px; }
.ah2-member-text h2 em { color: var(--ah-ochre-lt); }
.ah2-member-lede { font-family: 'Tenor Sans', sans-serif; font-size: 17px; line-height: 1.7; color: var(--ah-parch-dk); margin: 0 0 22px; max-width: 540px; }
.ah2-member-meta { font-size: 13px; color: var(--ah-ochre-lt); letter-spacing: 0.04em; margin: 0 0 32px; font-style: italic; font-family: 'Cormorant Garamond', serif; }
.ah2-member-ctas { display: flex; gap: 14px; flex-wrap: wrap; }
.ah2-member-mark { color: rgba(196,123,42,0.25); display: flex; justify-content: center; align-items: center; }
.ah2-member-mark svg { animation: ah2Spin 60s linear infinite; }
@keyframes ah2Spin { from { transform: rotate(0); } to { transform: rotate(360deg); } }

/* ════════════════════════════════════════════════════════════════
   5. MAKERS
   ════════════════════════════════════════════════════════════════ */
.ah2-makers-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.ah2-maker { background: white; padding: 32px 26px 30px; border-top: 2px solid var(--ah-ochre); display: flex; flex-direction: column; transition: transform 0.28s ease; }
.ah2-maker:hover { transform: translateY(-3px); }
.ah2-maker-place { font-family: 'Cormorant Garamond', serif; font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ah-terra); margin-bottom: 14px; }
.ah2-maker h3 { font-family: 'Cormorant Garamond', serif; font-size: 26px; font-weight: 400; line-height: 1.1; margin: 0 0 12px; color: var(--ah-ink); }
.ah2-maker-quote { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 16px; line-height: 1.5; color: var(--ah-terra); margin: 0 0 16px; padding-left: 12px; border-left: 1px solid var(--ah-ochre); }
.ah2-maker-body { font-size: 13.5px; line-height: 1.7; color: var(--ah-text-mute); margin: 0 0 22px; flex: 1; }
.ah2-maker-link { font-family: 'Tenor Sans', sans-serif; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ah-ink); text-decoration: none; padding-top: 12px; border-top: 0.5px solid var(--ah-line); }
.ah2-maker-link:hover { color: var(--ah-ochre); }

/* ════════════════════════════════════════════════════════════════
   6. PHILOSOPHY
   ════════════════════════════════════════════════════════════════ */
.ah2-philosophy { background: var(--ah-parch); padding: 120px 28px; }
.ah2-philosophy-inner { max-width: 780px; margin: 0 auto; text-align: center; }
.ah2-philosophy-lede { font-family: 'Cormorant Garamond', serif; font-size: 30px; font-weight: 300; line-height: 1.4; color: var(--ah-ink); margin: 14px 0 32px; }
.ah2-philosophy-body { font-family: 'Tenor Sans', sans-serif; font-size: 16px; line-height: 1.85; color: var(--ah-text-mute); margin: 0 0 36px; }
.ah2-philosophy-link { font-family: 'Tenor Sans', sans-serif; font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ah-terra); text-decoration: none; padding-bottom: 4px; border-bottom: 1px solid var(--ah-ochre); }
.ah2-philosophy-link:hover { color: var(--ah-ink); border-color: var(--ah-ink); }

/* ════════════════════════════════════════════════════════════════
   7. NEWSLETTER
   ════════════════════════════════════════════════════════════════ */
.ah2-newsletter { background: var(--ah-ink); color: var(--ah-parch); padding: 96px 28px; }
.ah2-newsletter-inner { max-width: 580px; margin: 0 auto; text-align: center; }
.ah2-newsletter .ah2-eyebrow { color: var(--ah-ochre-lt); }
.ah2-newsletter h3 { font-family: 'Cormorant Garamond', serif; font-size: 40px; font-weight: 300; margin: 0 0 14px; color: var(--ah-parch); }
.ah2-newsletter p { font-size: 14px; color: var(--ah-parch-dk); line-height: 1.7; margin: 0 0 28px; }
.ah2-nl-form { display: flex; gap: 0; max-width: 460px; margin: 0 auto; }
.ah2-nl-form input[type="email"] { flex: 1; padding: 16px 18px; border: 0.5px solid var(--ah-parch-dk); background: transparent; color: var(--ah-parch); font-family: 'Tenor Sans', sans-serif; font-size: 13px; outline: none; border-right: none; }
.ah2-nl-form input[type="email"]::placeholder { color: rgba(245,237,216,0.5); }
.ah2-nl-form input[type="email"]:focus { border-color: var(--ah-ochre); }
.ah2-nl-form button { padding: 16px 28px; background: var(--ah-ochre); color: var(--ah-ink); border: 0.5px solid var(--ah-ochre); font-family: 'Tenor Sans', sans-serif; font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; cursor: pointer; transition: background 0.18s; }
.ah2-nl-form button:hover { background: var(--ah-ochre-lt); }
.ah2-nl-fine { font-size: 11px; color: var(--ah-text-soft); margin-top: 18px; letter-spacing: 0.05em; }

/* ════════════════════════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════════════════════════ */

@media (max-width: 1024px) {
  .ah2-mid { grid-template-columns: auto 1fr auto; gap: 18px; padding: 18px 20px; }
  .ah2-search { grid-column: 1 / -1; order: 3; max-width: none; }
  .ah2-mid-right { gap: 16px; }
  .ah2-action-label { display: none; }
  .ah2-cart-detail { display: none; }
  .ah2-action-cart { padding: 8px; }
  .ah2-nav-list { gap: 22px; padding: 14px 20px; overflow-x: auto; justify-content: flex-start; -webkit-overflow-scrolling: touch; }
  .ah2-nav-list a { white-space: nowrap; font-size: 11px; }
  .ah2-burger { display: flex; }
  .ah2-nav { display: none; }

  .ah2-hero { height: 80vh; min-height: 560px; }
  .ah2-hero-grid { grid-template-columns: repeat(4, 1fr); }
  .ah2-hero-col-5 { display: none; }
  .ah2-hero-title { font-size: 56px; }

  .ah2-truststrip-inner { grid-template-columns: repeat(2, 1fr); gap: 18px; }
  .ah2-truststrip-inner > div { border-right: none; }

  .ah2-h2 { font-size: 36px; }
  .ah2-intent-grid { grid-template-columns: repeat(2, 1fr); }
  .ah2-feat-grid { grid-template-columns: repeat(2, 1fr); gap: 22px; }
  .ah2-makers-grid { grid-template-columns: repeat(2, 1fr); }
  .ah2-member-inner { grid-template-columns: 1fr; gap: 36px; text-align: center; }
  .ah2-member-mark { display: none; }
}

@media (max-width: 640px) {
  .ah2-section { padding: 56px 20px; }
  .ah2-hero { height: 78vh; min-height: 520px; }
  .ah2-hero-grid { grid-template-columns: repeat(3, 1fr); gap: 6px; padding: 6px; }
  .ah2-hero-col-4, .ah2-hero-col-5 { display: none; }
  .ah2-hero-title { font-size: 42px; }
  .ah2-hero-sub { font-size: 14px; }
  .ah2-h2 { font-size: 30px; }
  .ah2-philosophy-lede { font-size: 22px; }
  .ah2-newsletter h3 { font-size: 28px; }
  .ah2-intent-grid { grid-template-columns: 1fr; }
  .ah2-feat-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .ah2-makers-grid { grid-template-columns: 1fr; }
  .ah2-logo-name { font-size: 22px; }
  .ah2-nl-form { flex-direction: column; gap: 10px; }
  .ah2-nl-form input[type="email"] { border-right: 0.5px solid var(--ah-parch-dk); }
  .ah2-announce { font-size: 10px; }
}
