/* Homepage editorial photography. Hero and shared store styles stay independent. */
.collection-section .section-head { align-items:end; }
.collection-section .product-card { padding-bottom:22px; border-bottom:1px solid var(--line); }
.collection-section .product-media { aspect-ratio:4 / 5; }
.brand-story { width:var(--wrap); margin:auto; }
.brand-story-art { position:relative; overflow:hidden; min-height:590px; justify-content:flex-end; padding:30px; }
.story-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.brand-story-art .brand-flower { position:absolute; top:24px; left:24px; grid-template-columns:repeat(2,22px); gap:3px; z-index:1; }
.brand-story-art .brand-flower i { width:22px; height:22px; }
.brand-story-art>.eyebrow { position:relative; background:var(--cream); padding:12px 18px; color:var(--ink); }
.brand-story-copy { align-self:center; padding:60px clamp(28px,4vw,64px); }
.ingredient-section { padding:95px 0; }
.ingredient-photo { position:relative; margin:0; height:460px; overflow:hidden; }
.ingredient-photo img { width:100%; height:100%; object-fit:cover; object-position:center 56%; }
.ingredient-photo figcaption { position:absolute; left:24px; bottom:24px; padding:12px 18px; background:var(--cream); font-family:var(--font-mono); font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.butter-grid { margin-top:32px; gap:24px; }
.butter-card,.butter-card:first-child { min-height:240px; padding:0 0 24px; border:0; border-bottom:1px solid var(--line); }
.ingredient-overhead { width:100%; height:auto; aspect-ratio:1; object-fit:cover; background:transparent; mix-blend-mode:multiply; margin-bottom:12px; transition:transform .7s var(--ease); }
.butter-card:hover .ingredient-overhead { transform:scale(1.025); }
.butter-card:hover { background:transparent; }
.butter-card .latin { display:block; color:var(--butter-deep); margin-bottom:10px; }
.minerals-grid { gap:20px; }
.mineral-card:not(.wide) { background:var(--cream-2); border:0; padding:40px; }
.mineral-card:nth-child(2) { background:#e1e4d9; }
.mineral-card:not(.wide) .mineral-icon { float:right; width:90px; height:105px; border-radius:0; background:transparent; font-size:42px; margin:0 0 20px 20px; border:1px solid var(--line-2); }
.mineral-card .eyebrow { max-width:calc(100% - 120px); line-height:1.8; }
.mineral-card.wide { padding:0; background:var(--cream-2); gap:0; }
.mineral-card.wide>div { padding:44px; }
.formula-photo { margin:0; position:relative; height:100%; min-height:500px; }
.formula-photo img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.formula-photo figcaption { position:absolute; bottom:24px; left:24px; background:var(--cream); padding:14px 20px; font-family:var(--font-mono); text-transform:uppercase; font-size:11px; letter-spacing:.1em; }
.ritual-band { padding:0; gap:0; margin-bottom:95px; }
.ritual-band>div:first-child { padding:60px; }
.ritual-product { position:relative; overflow:hidden; height:560px; }
.ritual-product img { width:100%; height:100%; max-height:none; object-fit:cover; filter:none; animation:editorial-breathe 16s ease-in-out infinite; }
.ritual-product .eyebrow { position:absolute; bottom:28px; background:var(--cream); padding:12px 18px; color:var(--ink); }
@keyframes editorial-breathe { 0%,100% { transform:scale(1.02); } 50% { transform:scale(1.08); } }
.format-card,.format-card:nth-child(2),.format-card:nth-child(3) { padding:0 0 24px; background:none; color:var(--ink); border:0; border-bottom:1px solid var(--line-2); border-radius:0; gap:22px; }
.format-visual { order:-1; width:100%; height:auto; aspect-ratio:1; margin:0; overflow:hidden; }
.format-visual img { width:100%; height:100%; object-fit:cover; filter:none; transition:transform .8s var(--ease); }
.format-card:hover .format-visual img { transform:scale(1.04); }
.format-card p { max-width:36ch; line-height:1.8; }
.format-card h3 { margin-top:12px; }
.format-card>.btn-ghost { align-self:flex-start; margin-top:auto; }
.quiz { background:var(--ink); isolation:isolate; }
.quiz-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.22; z-index:-2; }
.quiz:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(36,30,25,.86),rgba(36,30,25,.25)); z-index:-1; }
.quiz p { color:#eee6d9; }
.butter-finder { padding:28px; border:1px solid #f6f1e83b; background:#241e1999; }
.quiz .stat { background:none; border:0; border-left:1px solid #f6f1e83b; border-radius:0; }
.drops { grid-template-columns:1fr 1fr; gap:24px; }
.drops-col { gap:24px; }
.drop-card { isolation:isolate; border:0; border-radius:0; padding:30px; }
.drop-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; transition:transform 1s var(--ease); }
.drop-card:hover .drop-photo { transform:scale(1.035); }
.drop-card:after { content:""; position:absolute; inset:0; z-index:-1; }
.drop-card.feature { min-height:700px; justify-content:flex-end; gap:22px; }
.drop-card.feature:after { background:linear-gradient(0deg,rgba(22,19,16,.94),transparent 57%); }
.drop-card.feature>.drop-pill { position:absolute; top:26px; left:26px; background:var(--cream); color:var(--ink); border:0; }
.drop-card.feature h3 { font-size:clamp(36px,4vw,56px); }
.drop-card.feature p { opacity:1; color:#eee6d9; }
.drop-card.small-a,.drop-card.small-b { min-height:338px; justify-content:space-between; }
.drop-card.small-a:after,.drop-card.small-b:after { background:linear-gradient(90deg,rgba(246,241,232,.95),rgba(246,241,232,.55) 32%,transparent 60%); }
.drops-col .drop-card h3 { max-width:5ch; font-size:38px; }
.drops-col .drop-card p { max-width:20ch; opacity:1; font-size:12px; line-height:1.7; }
.drop-pill { font-size:9px; letter-spacing:.08em; }
#journal { background:var(--cream-2); }
#journal .review { border:0; padding:0 0 22px; gap:20px; }
.journal-photo { display:block; aspect-ratio:4/3; overflow:hidden; }
.journal-photo img { width:100%; height:100%; object-fit:cover; transition:transform .7s var(--ease); }
.journal-photo:hover img { transform:scale(1.04); }
#journal .review footer { font-family:var(--font-body); font-size:13px; text-transform:none; letter-spacing:0; line-height:1.8; }
#reviews .review { background:var(--cream-2); padding:28px; position:relative; border:0; }
.review-product { width:72px; height:72px; border-radius:50%; object-fit:cover; }
#reviews .review blockquote { font-size:23px; line-height:1.45; }
.review-invite { grid-column:1/-1; background:var(--cream-2); padding:clamp(32px,5vw,70px); text-align:center; }
.review-invite h3 { max-width:650px; margin:15px auto; font-family:var(--font-display); font-size:clamp(30px,3vw,46px); line-height:1.15; }
.review-invite p { color:var(--muted); margin-bottom:25px; }
.newsletter { position:relative; grid-template-columns:1fr 1fr; padding:0; gap:0; overflow:hidden; }
.newsletter-photo { width:100%; height:100%; min-height:520px; object-fit:cover; grid-row:1/3; }
.newsletter>div { padding:45px 45px 0; }
.newsletter>div:last-child { padding:24px 45px 45px; align-self:start; }
.brand-signoff { background:radial-gradient(ellipse at center,#f6f1e8e8,#f6f1e8b8),url('../assets/butter-ingredients.jpg') center/cover; padding:100px 24px; }
@media(max-width:1000px) {
  .brand-story-art { min-height:500px; }
  .ritual-band>div:first-child { padding:35px; }
  .drop-card { padding:24px; }
  .drops-col .drop-card h3 { font-size:32px; }
}
@media(max-width:860px) {
  .brand-story { grid-template-columns:1fr; }
  .brand-story-art { min-height:0; aspect-ratio:1; }
  .brand-story-copy { padding:36px 26px; }
  .ingredient-section { padding:60px 0; }
  .ingredient-photo { height:320px; }
  .ingredient-photo figcaption { left:14px; bottom:14px; font-size:8px; }
  .butter-grid { gap:28px 20px; }
  .butter-card,.butter-card:first-child { padding:0; min-height:0; border:0; }
  .butter-card h3 { margin:8px 0; }
  .butter-card p { margin:0; }
  .mineral-card:not(.wide),.mineral-card.wide>div { padding:28px; }
  .mineral-card.wide { grid-template-columns:1fr; }
  .formula-photo { min-height:0; height:370px; }
  .ritual-band { padding:0; gap:0; margin-bottom:60px; }
  .ritual-product { height:380px; }
  .ritual-product img { height:100%; }
  .formats { gap:35px; }
  .format-visual { aspect-ratio:4/3; }
  .quiz { padding:32px 24px; gap:30px; }
  .butter-finder { padding:20px; min-width:0; }
  .butter-finder select { min-width:0; width:100%; }
  .drops { grid-template-columns:1fr; }
  .drop-card.feature { min-height:650px; }
  .drop-card.small-a,.drop-card.small-b { min-height:340px; }
  .drops-col .drop-card h3 { font-size:38px; }
  .newsletter { grid-template-columns:1fr; }
  .newsletter-photo { grid-row:auto; height:340px; min-height:0; }
  .newsletter>div { padding:30px 26px 0; }
  .newsletter>div:last-child { padding:20px 26px 32px; }
}
@media(prefers-reduced-motion:reduce) { html:not(.motion-ready) .ritual-product img { animation:none; } }
