/* Go Grow Glow — additive design correction, v1.
   Load AFTER styles.css. This changes presentation only.
   Assets resolve relative to this stylesheet; keep it beside styles.css.
   No waitlist, Nginx, registry, or OS changes are included. */
:root {
  --gold: #d7b481;
  --gold-light: #eed6b2;
  --line: rgba(215, 180, 129, .5);
}
.hero {
  display: block;
  min-height: 800px;
  padding: 38px 0 34px;
  background-color: #080807;
  background-image:
    linear-gradient(to bottom, transparent 82%, #080807 100%),
    url("assets/hero-clean-v1.webp");
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  isolation: isolate;
}
.hero .ambient,
.hero-art-left,
.product-lockup {
  display: none;
}
.hero-layout {
  width: min(1600px, 100%);
  display: grid;
  grid-template-columns: minmax(0, 29fr) minmax(0, 45fr) minmax(0, 26fr);
  gap: 0;
  align-items: start;
}
.hero-content {
  grid-column: 2;
  min-width: 0;
  padding: 0 12px;
}
.brand-logo {
  display: block;
  width: min(360px, 100%);
  height: auto;
  max-height: none;
  object-fit: contain;
  margin: 0 auto 20px;
  filter: none;
}
.eyebrow {
  margin: 0 0 15px;
  font-size: .73rem;
  letter-spacing: .24em;
}
.hero h1 {
  font-size: clamp(3.25rem, 4.4vw, 5.1rem);
  line-height: .98;
  text-wrap: balance;
}
.subcopy {
  max-width: 540px;
  margin: 23px auto;
  font-size: clamp(1rem, 1.3vw, 1.25rem);
  line-height: 1.6;
  text-wrap: pretty;
}
.coming-row {
  margin-bottom: 19px;
  gap: 14px;
}
.coming-row strong {
  font-size: .75rem;
  letter-spacing: .3em;
}
.waitlist { width: 100%; }
.field-row { min-width: 0; }
.field-row input { padding: 0 14px; min-height: 46px; }
.field-row button {
  padding: 15px 20px;
  font-size: .85rem;
  box-shadow: none;
}
.form-meta { font-size: .75rem; line-height: 1.6; }
.hero-art-right {
  display: flex;
  grid-column: 3;
  min-height: 0;
  padding: 108px 20px 0;
  align-items: center;
  justify-content: start;
}
.side-quote {
  max-width: 240px;
  font-size: clamp(2.1rem, 3vw, 3.2rem);
  line-height: 1;
  transform: rotate(-5deg);
}
.language-switch { top: 22px; right: 3vw; }
.lang-btn { min-width: 52px; min-height: 44px; }
.pillars { background: #0b0b0a; }
.pillars article { padding: 25px 14px; }
.pillars h2 { font-size: .82rem; letter-spacing: .24em; }
.pillars p { font-size: .83rem; line-height: 1.5; }
.brand-strip {
  display: grid;
  grid-template-columns: 1fr;
  place-items: center;
  min-height: 195px;
  padding: 26px 20px;
  background-color: #080807;
  background-image: url("assets/roses-clean-v1.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.brand-strip > img { display: none; }
.brand-strip p {
  max-width: 620px;
  padding: 10px 22px;
  font-size: clamp(2.5rem, 3.6vw, 3.6rem);
  line-height: 1;
  text-shadow: 0 2px 14px #000;
}
button:focus-visible,
a:focus-visible,
input:focus-visible {
  outline: 2px solid #eed6b2;
  outline-offset: 4px;
}
.field-row:focus-within { box-shadow: 0 0 0 2px #eed6b2; }
@media (min-width: 1600px) {
  .hero { min-height: 900px; }
}
@media (min-width: 761px) and (max-width: 1100px) {
  .hero { min-height: 770px; }
  .hero-layout {
    grid-template-columns: minmax(0, 25fr) minmax(0, 55fr) minmax(0, 20fr);
  }
  .hero-content { background: rgba(8, 8, 7, .5); padding: 10px 18px; border-radius: 12px; }
  .brand-logo { width: min(320px, 100%); }
  .hero-art-right { display: none; }
  .field-row button { padding-inline: 15px; }
}
@media (max-width: 760px) {
  .hero {
    min-height: 0;
    padding: 340px 20px 30px;
    background-image: none;
  }
  .hero::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 350px;
    background-image:
      linear-gradient(to bottom, transparent 60%, #080807 100%),
      url("assets/hero-clean-v1.webp");
    background-repeat: no-repeat;
    background-size: cover, auto 390px;
    background-position: center, left top;
    pointer-events: none;
    z-index: 0;
  }
  .hero-layout { width: 100%; grid-template-columns: minmax(0, 1fr); }
  .hero-content { grid-column: 1; padding: 0; background: none; }
  .hero-art-right { display: none; }
  .brand-logo { width: min(285px, 100%); height: auto; margin-bottom: 22px; }
  .language-switch { right: 16px; top: 16px; background: rgba(8, 8, 7, .85); }
  .eyebrow { font-size: .65rem; letter-spacing: .16em; }
  .hero h1 { font-size: clamp(3rem, 11.8vw, 4.6rem); line-height: 1; }
  .subcopy { font-size: 1rem; line-height: 1.65; }
  .field-row {
    grid-template-columns: minmax(0, 1fr);
    border-radius: 22px;
    padding: 6px;
  }
  .field-row input { min-height: 52px; text-align: left; padding-inline: 16px; }
  .field-row button { width: 100%; min-height: 50px; font-size: .94rem; }
  .form-meta { font-size: .75rem; }
  .pillars { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pillars article { padding: 22px 10px; }
  .pillars article:nth-child(2)::after { display: none; }
  .pillars article:nth-child(-n+2) { border-bottom: 1px solid rgba(215, 180, 129, .2); }
  .pillars h2 { font-size: .68rem; letter-spacing: .17em; }
  .pillars p { font-size: .78rem; }
  .brand-strip { min-height: 190px; }
  .brand-strip p {
    max-width: 290px;
    padding: 10px 18px;
    background: rgba(8, 8, 7, .45);
    border-radius: 14px;
    font-size: 2.65rem;
  }
  footer { flex-direction: column; text-align: center; line-height: 1.6; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
