.home-hero { position: relative; min-height: calc(100svh - 96px); overflow: hidden; background: var(--champagne); color: var(--ink); }
.home-hero__image, .home-hero__shade { position: absolute; inset: 0; height: 100%; object-fit: cover; object-position: 64% center; }
.home-hero__shade { background: linear-gradient(90deg, rgba(244,230,212,.98) 0%, rgba(244,230,212,.88) 36%, rgba(244,230,212,.08) 75%); }
.home-hero__content { position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center; min-height: calc(100svh - 96px); max-width: 680px; padding: 60px 20px 100px; }
.home-hero h1 { max-width: 600px; margin-bottom: 20px; font-size: clamp(3.2rem, 11vw, 7rem); }
.home-hero__content > p:not(.eyebrow) { max-width: 480px; margin-bottom: 30px; color: #51494a; font-size: .98rem; }
.hero-actions { display: flex; flex-direction: column; gap: 10px; max-width: 270px; }
.hero-scroll { position: absolute; z-index: 3; bottom: 22px; left: 20px; display: flex; gap: 12px; align-items: center; font-size: .64rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.hero-scroll span { font-size: 1rem; }

.benefits { display: grid; grid-template-columns: repeat(2, 1fr); border-bottom: 1px solid var(--line); }
.benefit { display: flex; gap: 12px; align-items: center; min-height: 108px; padding: 18px; border-top: 1px solid var(--line); border-right: 1px solid var(--line); }
.benefit__icon { position: relative; flex: 0 0 31px; width: 31px; height: 31px; border: 1px solid var(--rose-dark); border-radius: 50%; }
.benefit__icon::before { position: absolute; inset: 0; display: grid; place-items: center; color: var(--rose-dark); font-size: .8rem; }
.benefit__icon--heart::before { content: "♡"; }
.benefit__icon--sparkle::before { content: "✦"; }
.benefit__icon--truck::before { content: "→"; }
.benefit__icon--diamond::before { content: "◇"; }
.benefit h2 { margin: 0 0 2px; font-family: var(--sans); font-size: .72rem; font-weight: 700; }
.benefit p { margin: 0; color: var(--muted); font-size: .62rem; line-height: 1.4; }

.home-section { padding: 76px 20px; }
.section-heading { display: flex; flex-direction: column; align-items: start; gap: 18px; margin-bottom: 30px; }
.section-heading h2, .testimonials-content h2, .final-cta h2 { max-width: 680px; margin: 0; font-size: clamp(2.35rem, 7vw, 4.5rem); }
.section-heading p:not(.eyebrow) { color: var(--muted); }
.section-heading--center { align-items: center; text-align: center; }
.collections-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.collection-card { position: relative; min-height: 245px; overflow: hidden; background: var(--champagne); color: var(--white); }
.collection-card img, .collection-card__overlay { position: absolute; inset: 0; height: 100%; object-fit: cover; transition: .5s ease; }
.collection-card__overlay { background: linear-gradient(0deg, rgba(17,17,17,.58), transparent 70%); }
.collection-card__content { position: absolute; z-index: 2; right: 15px; bottom: 16px; left: 15px; }
.collection-card__content strong { display: block; margin-bottom: 5px; font-family: var(--serif); font-size: 1.35rem; font-weight: 500; }
.collection-card__content span { font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.collection-card:hover img { transform: scale(1.05); }

.featured-section { background: var(--gray); }
.slider-controls { display: flex; gap: 8px; }
.slider-controls button { width: 44px; height: 44px; border: 1px solid var(--line); background: var(--white); cursor: pointer; }
.product-slider { display: grid; grid-auto-columns: minmax(76%, 1fr); grid-auto-flow: column; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.product-slider::-webkit-scrollbar { display: none; }
.product-card { overflow: hidden; scroll-snap-align: start; background: var(--white); }
.product-card__image { display: block; overflow: hidden; aspect-ratio: 4 / 5; background: var(--champagne); }
.product-card__image img { height: 100%; object-fit: cover; transition: .4s ease; }
.product-card:hover .product-card__image img { transform: scale(1.03); }
.product-card__body { padding: 18px; }
.product-card h3 { min-height: 46px; margin-bottom: 8px; font-family: var(--sans); font-size: .9rem; font-weight: 600; }
.product-card__price { min-height: 26px; margin-bottom: 16px; color: var(--rose-dark); font-size: .88rem; font-weight: 700; }

.process-section { background: var(--champagne); }
.process-timeline { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; counter-reset: step; }
.process-timeline li { position: relative; padding: 24px 0 24px 62px; border-bottom: 1px solid rgba(183,110,121,.25); }
.process-timeline li::before { content: ""; position: absolute; top: 0; bottom: 0; left: 19px; width: 1px; background: rgba(183,110,121,.35); }
.process-timeline span { position: absolute; z-index: 1; top: 24px; left: 0; display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--rose-dark); border-radius: 50%; background: var(--champagne); color: var(--rose-dark); font-size: .68rem; font-weight: 700; }
.process-timeline h3 { margin-bottom: 5px; font-family: var(--serif); font-size: 1.3rem; font-weight: 500; }
.process-timeline p { margin: 0; color: var(--muted); font-size: .82rem; }

.testimonials-section { display: grid; background: var(--ink); color: var(--white); }
.testimonials-photo img { height: 100%; min-height: 360px; object-fit: cover; }
.testimonials-content { display: flex; flex-direction: column; justify-content: center; padding: 62px 20px; }
.testimonial-slider { position: relative; min-height: 260px; margin-top: 28px; }
.testimonial { position: absolute; inset: 0; visibility: hidden; margin: 0; opacity: 0; transform: translateX(14px); transition: .4s ease; }
.testimonial.is-active { visibility: visible; opacity: 1; transform: none; }
.stars { color: var(--rose); letter-spacing: .14em; }
.testimonial > p { margin: 18px 0 24px; font-family: var(--serif); font-size: clamp(1.3rem, 4vw, 2rem); line-height: 1.45; }
.testimonial footer { display: flex; align-items: center; gap: 12px; }
.testimonial footer img { width: 46px; height: 46px; border: 2px solid var(--rose); border-radius: 50%; object-fit: cover; object-position: 25% center; }
.testimonial footer strong, .testimonial footer span, .testimonial footer small { display: block; }
.testimonial footer strong { font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; }
.testimonial footer small { color: rgba(255,255,255,.6); font-size: .72rem; }
.testimonial-dots { display: flex; gap: 9px; }
.testimonial-dots button { width: 25px; height: 2px; padding: 0; border: 0; background: rgba(255,255,255,.25); cursor: pointer; }
.testimonial-dots button.is-active { background: var(--rose); }

.instagram-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; }
.instagram-card { position: relative; overflow: hidden; aspect-ratio: 1; background: var(--champagne); }
.instagram-card img { height: 100%; object-fit: cover; transition: .4s ease; }
.instagram-card span { position: absolute; top: 9px; right: 9px; display: grid; place-items: center; width: 27px; height: 27px; border-radius: 50%; background: rgba(255,255,255,.84); font-size: .7rem; }
.instagram-card:hover img { transform: scale(1.06); }

.faq-section { border-top: 1px solid var(--line); }
.faq-list { max-width: 900px; }
.faq-item { padding: 0; border-top: 1px solid var(--line); }
.faq-item:last-child { border-bottom: 1px solid var(--line); }
.faq-item summary { display: flex; justify-content: space-between; gap: 20px; padding: 22px 0; font-family: var(--serif); font-size: 1.15rem; cursor: pointer; list-style: none; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary span { color: var(--rose-dark); transition: .2s ease; }
.faq-item[open] summary span { transform: rotate(45deg); }
.faq-item p { max-width: 720px; padding: 0 0 24px; margin: 0; color: var(--muted); font-size: .88rem; }

.final-cta { padding: 76px 20px; background: var(--rose-dark); color: var(--white); text-align: center; }
.final-cta .eyebrow { color: var(--champagne); }
.final-cta h2 { margin: 0 auto 30px; }

@media (min-width: 700px) {
  .home-hero__content { padding-right: 5vw; padding-left: 5vw; }
  .hero-actions { flex-direction: row; max-width: none; }
  .hero-scroll { left: 5vw; }
  .benefits { grid-template-columns: repeat(4, 1fr); }
  .benefit { padding: 22px 3vw; }
  .home-section { padding: 100px 5vw; }
  .section-heading { flex-direction: row; justify-content: space-between; align-items: end; margin-bottom: 42px; }
  .section-heading--center { justify-content: center; text-align: center; }
  .collections-grid { grid-template-columns: repeat(3, 1fr); gap: 12px; }
  .collection-card { min-height: 360px; }
  .product-slider { grid-auto-columns: minmax(260px, 23%); gap: 18px; }
  .process-timeline { grid-template-columns: repeat(4, 1fr); }
  .process-timeline li { padding: 70px 25px 0; border: 0; text-align: center; }
  .process-timeline li::before { top: 19px; right: 0; bottom: auto; left: 0; width: auto; height: 1px; }
  .process-timeline span { top: 0; left: 50%; transform: translateX(-50%); }
  .testimonials-section { grid-template-columns: 1.05fr .95fr; min-height: 700px; }
  .testimonials-content { padding: 70px 7vw; }
  .instagram-grid { grid-template-columns: repeat(6, 1fr); gap: 6px; }
  .faq-list { margin-left: auto; margin-right: auto; }
  .final-cta { padding: 110px 5vw; }
}

@media (min-width: 1100px) {
  .home-hero__content { padding-left: 8vw; }
  .home-hero__shade { background: linear-gradient(90deg, rgba(244,230,212,.98) 0%, rgba(244,230,212,.86) 38%, rgba(244,230,212,0) 68%); }
  .collections-grid { grid-template-columns: repeat(12, 1fr); }
  .collection-card { grid-column: span 4; min-height: 410px; }
  .collection-card:nth-child(1), .collection-card:nth-child(4) { grid-column: span 5; }
  .collection-card:nth-child(2), .collection-card:nth-child(3) { grid-column: span 7; }
}
