.story-main.rebellion-story { position:relative; isolation:isolate; max-width:1320px; padding:100px 30px 70px; color:var(--text); }
.story-brand-background { position:absolute; inset:0; z-index:-1; overflow:hidden; pointer-events:none; background:url('/black-moth-site-v1/plant-care-branding-v2.svg') center top / 1400px 900px repeat-y; }
.story-brand-moth { position:absolute; top:92px; right:20px; width:380px; height:auto; opacity:.08; transform:rotate(-12deg); mix-blend-mode:multiply; }
.story-brand-star { position:absolute; top:335px; right:70px; color:var(--pink); font-size:78px; line-height:1; transform:rotate(15deg); opacity:.35; }
.rebellion-story .story-heading { padding:16px 0 34px; margin:0 0 34px; }
.rebellion-story .story-heading .eyebrow { font:700 16px/1.4 'Barlow Condensed',sans-serif; letter-spacing:.17em; margin:0 0 14px; }
.rebellion-story .story-heading h1 { font-size:clamp(38px,5.4vw,74px); line-height:1.2; margin:0 0 20px; max-width:1050px; }
.rebellion-story .story-heading h1 span { display:inline-block; color:#080b0b; }
.rebellion-story .story-intro { color:var(--muted); font:400 20px/1.55 'Roboto Condensed',sans-serif; margin:0; max-width:620px; }
.story-links { display:flex; align-items:center; flex-wrap:wrap; gap:22px; margin-top:23px; }
.story-links a { font:700 17px/1.2 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.story-shop-link { color:#007d76; text-underline-offset:4px; }
.rebellion-story .story-profiles { gap:38px; scroll-margin-top:125px; }
.rebellion-story .story-profiles .profile-card { grid-template-columns:260px minmax(0,1fr); gap:38px; padding:30px; border-top:4px solid var(--teal); border-radius:0; }
.rebellion-story .story-profiles .profile-card.reverse { border-top-color:var(--pink); }
.rebellion-story .profile-photo { position:relative; padding:7px; border:2px dashed var(--teal); background:var(--surface); box-shadow:8px 8px 0 var(--acid); margin:0 8px 18px 0; transform:rotate(-1.5deg); }
.rebellion-story .reverse .profile-photo { border-color:var(--pink); box-shadow:8px 8px 0 var(--teal); transform:rotate(1.5deg); }
.rebellion-story .profile-photo img { border:0; aspect-ratio:4/5; object-position:center; }
.story-photo-label { position:relative; display:block; padding:13px 5px 7px; text-align:center; color:var(--text); font:400 21px/1.25 'Permanent Marker',cursive; }
.rebellion-story .story-profiles h2 { font-size:42px; margin:0 0 23px; }
.rebellion-story .profile-meta { grid-template-columns:1fr 1fr; gap:16px 26px; padding-bottom:22px; }
.rebellion-story .profile-meta strong { font-size:15px; letter-spacing:.08em; }
.rebellion-story .profile-meta span { font-size:17px; line-height:1.5; }
.rebellion-story .profile-section-label { font:400 23px/1.3 'Permanent Marker',cursive; letter-spacing:0; margin:25px 0 12px; }
.rebellion-story .profile-story { font:400 18px/1.7 'Roboto Condensed',sans-serif; color:var(--text); max-width:850px; margin:0 0 24px; }
.rebellion-story .close-to-heart { border:1px dashed var(--pink); border-left:4px solid var(--pink); padding:21px 23px; background:var(--surface); }
.rebellion-story .close-to-heart > strong { font:400 22px/1.3 'Permanent Marker',cursive; letter-spacing:0; margin:0 0 13px; }
.rebellion-story .close-to-heart ul { display:flex; flex-wrap:wrap; gap:10px 20px; padding:0; margin:0; list-style:none; font-size:16px; }
.rebellion-story .close-to-heart li::before { content:'✦'; display:inline-block; color:#007d76; margin-right:7px; }
.rebellion-story :is(a,button):focus-visible { outline:3px solid var(--pink); outline-offset:4px; }
[data-theme=dark] .story-brand-moth { filter:invert(1); mix-blend-mode:screen; opacity:.12; }
[data-theme=dark] .story-shop-link,[data-theme=dark] .rebellion-story .close-to-heart li::before { color:var(--teal); }
@media (max-width:900px) {
  .rebellion-story .story-profiles .profile-card { grid-template-columns:210px minmax(0,1fr); gap:25px; padding:24px; }
  .rebellion-story .story-profiles h2 { font-size:36px; }
}
@media (max-width:650px) {
  .story-main.rebellion-story { padding:100px 16px 45px; }
  .rebellion-story .story-heading h1 { font-size:clamp(32px,8.7vw,48px); letter-spacing:-.7px; }
  .rebellion-story .story-heading .eyebrow { font-size:14px; }
  .rebellion-story .story-intro { font-size:18px; }
  .story-brand-background { background-size:850px 750px; }
  .story-brand-moth { top:115px; right:-75px; width:250px; opacity:.045; }
  .story-brand-star { top:315px; right:12px; font-size:40px; opacity:.2; }
  .rebellion-story .story-profiles .profile-card { grid-template-columns:1fr; padding:22px 18px; gap:17px; }
  .rebellion-story .profile-photo { width:min(100% - 8px,260px); justify-self:center; }
  .rebellion-story .profile-meta { grid-template-columns:1fr; gap:15px; }
  .rebellion-story .profile-meta-item:last-child { grid-column:auto; }
  .rebellion-story .story-profiles h2 { font-size:35px; }
  .rebellion-story .profile-story { font-size:17px; }
  .rebellion-story .close-to-heart { padding:18px; }
}
@media print { .story-brand-background { display:none; } .rebellion-story .profile-photo { box-shadow:none; transform:none; } }
