:root {
  --minion-ink: #211f27;
  --minion-violet: #7048c8;
  --minion-lilac: #d7d0ff;
  --minion-acid: #c9ff63;
  --minion-orange: #ef5b39;
  --minion-paper: #f8f3e9;
  --minion-muted: #686270;
  --minion-line: rgba(33, 31, 39, .2);
}

.minions-page { background:var(--minion-paper); color:var(--minion-ink); }
.minions-header { background:var(--minion-paper); }
.minions-kicker { margin:0 0 1rem; color:var(--minion-violet); font-size:.68rem; font-weight:850; letter-spacing:.17em; text-transform:uppercase; }

.minions-hero { position:relative; display:grid; min-height:850px; grid-template-columns:minmax(0,1.1fr) minmax(500px,.9fr); align-items:center; gap:4rem; padding:6rem max(1.5rem,calc((100% - 1320px)/2)) 8rem; overflow:hidden; border-bottom:1px solid var(--minion-line); background:var(--minion-lilac); }
.minions-hero::before { position:absolute; width:45rem; height:45rem; right:-18rem; bottom:-20rem; border:1px solid rgba(33,31,39,.14); border-radius:50%; content:""; box-shadow:0 0 0 7rem rgba(255,255,255,.07),0 0 0 14rem rgba(33,31,39,.035); }
.minions-hero-copy { position:relative; z-index:2; }
.minions-hero h1 { margin:0; font:900 clamp(5rem,10.5vw,10rem)/.72 var(--atelier-sans); letter-spacing:-.095em; text-transform:uppercase; }
.minions-hero h1 span { font-family:var(--atelier-serif); font-size:.62em; font-style:italic; font-weight:400; letter-spacing:-.06em; text-transform:none; }
.minions-hero h1 strong { color:var(--minion-orange); font:inherit; }
.minions-intro { max-width:680px; margin:2.7rem 0 0; color:#514c59; font:1.15rem/1.65 var(--atelier-serif); }
.hero-aside { position:absolute; right:max(1.5rem,calc((100% - 1320px)/2)); bottom:2rem; margin:0; font-size:.65rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; transform:rotate(-2deg); }

.menagerie { position:relative; z-index:1; width:min(100%,590px); aspect-ratio:1; margin:0 auto; }
.menagerie::before,.menagerie::after { position:absolute; top:50%; left:50%; border:1px solid rgba(33,31,39,.19); border-radius:50%; content:""; transform:translate(-50%,-50%); }
.menagerie::before { width:88%; height:88%; }
.menagerie::after { width:52%; height:52%; border-style:dashed; }
.creature { position:absolute; display:flex; width:clamp(130px,13vw,170px); aspect-ratio:1; flex-direction:column; justify-content:center; padding:1.2rem; border:1px solid var(--minion-ink); border-radius:46% 54% 48% 52% / 55% 42% 58% 45%; background:var(--minion-paper); box-shadow:11px 13px 0 rgba(33,31,39,.12); }
.creature span { font-size:.62rem; font-weight:850; }
.creature h2 { margin:.35rem 0; font:900 clamp(1.25rem,2.2vw,1.8rem)/1 var(--atelier-sans); letter-spacing:-.05em; text-transform:uppercase; }
.creature p { margin:0; font:.75rem/1.35 var(--atelier-sans); }
.creature-code { top:0; left:34%; transform:rotate(-4deg); }
.creature-image { top:29%; right:0; background:var(--minion-orange); transform:rotate(6deg); }
.creature-tools { right:13%; bottom:0; background:var(--minion-acid); transform:rotate(-3deg); }
.creature-judge { bottom:2%; left:7%; background:var(--minion-ink); color:var(--minion-paper); transform:rotate(4deg); }
.creature-synthesis { top:31%; left:0; background:#fff; transform:rotate(-7deg); }

.minions-section { width:min(1320px,calc(100% - 3rem)); margin:0 auto; padding:8rem 0; }
.minions-marker { display:flex; align-items:center; gap:1rem; margin-bottom:4rem; border-top:1px solid var(--minion-line); }
.minions-marker span,.minions-marker p { margin:0; padding-top:.8rem; font-size:.7rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.minions-marker span { min-width:3rem; color:var(--minion-violet); }
.manifesto-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(300px,.62fr); align-items:start; gap:clamp(3rem,9vw,9rem); }
.manifesto-grid h2,.relay>h2,.empty-shelf h2 { margin:0; font:400 clamp(3rem,6.3vw,6.4rem)/.9 var(--atelier-serif); letter-spacing:-.065em; }
.manifesto-grid>div { color:var(--minion-muted); font:1.08rem/1.65 var(--atelier-serif); }
.manifesto-grid>div p:first-child { margin-top:0; }
.principles { display:grid; grid-template-columns:repeat(4,1fr); margin-top:6rem; border-top:1px solid var(--minion-line); border-left:1px solid var(--minion-line); }
.principles article { min-height:260px; padding:1.5rem; border-right:1px solid var(--minion-line); border-bottom:1px solid var(--minion-line); }
.principles span { color:var(--minion-violet); font-size:.63rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.principles h3 { margin:3.5rem 0 .8rem; font:900 1.45rem/1 var(--atelier-sans); letter-spacing:-.045em; text-transform:uppercase; }
.principles p { margin:0; color:var(--minion-muted); font-size:.8rem; line-height:1.5; }

.first-test { position:relative; display:grid; min-height:720px; grid-template-columns:minmax(0,1fr) minmax(260px,.38fr); align-items:center; gap:clamp(3rem,9vw,9rem); padding:8rem max(1.5rem,calc((100% - 1320px)/2)); overflow:hidden; background:var(--minion-ink); color:var(--minion-paper); }
.first-test::before { position:absolute; width:34rem; height:34rem; right:-9rem; top:-13rem; border:1px dashed rgba(201,255,99,.34); border-radius:50%; content:""; }
.test-status { position:absolute; top:2rem; right:max(1.5rem,calc((100% - 1320px)/2)); display:grid; gap:.2rem; padding:.9rem 1rem; border:1px solid rgba(248,243,233,.28); transform:rotate(2deg); }
.test-status span { color:var(--minion-acid); font-size:.62rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.test-status b { font:italic .9rem/1.2 var(--atelier-serif); }
.test-copy { position:relative; z-index:1; max-width:900px; }
.test-copy .minions-kicker { color:var(--minion-acid); }
.test-copy h2 { max-width:900px; margin:0; font:900 clamp(4rem,9vw,8.5rem)/.8 var(--atelier-sans); letter-spacing:-.08em; text-transform:uppercase; }
.test-copy h2 a { color:inherit; text-decoration-thickness:.06em; text-underline-offset:.08em; }
.test-copy>p:not(.minions-kicker) { max-width:690px; margin:2rem 0; color:rgba(248,243,233,.72); font:1.08rem/1.65 var(--atelier-serif); }
.criteria { display:flex; flex-wrap:wrap; gap:.55rem; }
.criteria span { padding:.55rem .75rem; border:1px solid rgba(248,243,233,.26); border-radius:999px; font-size:.65rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.test-note { position:relative; z-index:1; align-self:end; margin-bottom:2rem; padding:1.7rem; background:var(--minion-lilac); color:var(--minion-ink); box-shadow:10px 12px 0 rgba(201,255,99,.16); transform:rotate(-2deg); }
.test-note span { font-size:.62rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.test-note p { margin:.8rem 0 0; font:italic 1rem/1.5 var(--atelier-serif); }
.test-link { display:inline-block; margin-top:1.2rem; color:var(--minion-ink); font:.75rem/1.2 var(--atelier-sans); font-weight:850; letter-spacing:.06em; text-decoration-thickness:2px; text-underline-offset:.25em; text-transform:uppercase; }
.test-link:hover,.test-link:focus-visible { color:#4d2679; }
.test-cta { display:inline-flex; align-items:center; gap:3rem; margin-top:2rem; padding:1.05rem 1.25rem; background:var(--minion-acid); color:var(--minion-ink); text-decoration:none; font-size:.75rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.test-cta:hover,.test-cta:focus-visible { background:var(--minion-lilac); }

.visual-duel { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr); gap:clamp(3rem,7vw,7rem); align-items:center; padding:7rem max(1.5rem,calc((100% - 1320px)/2)); background:#dcecff; color:var(--minion-ink); }
.visual-duel-image { display:block; border:1px solid var(--minion-line); background:#fff; box-shadow:16px 18px 0 rgba(117,96,216,.16); transform:rotate(-1deg); }
.visual-duel-image img { display:block; width:100%; height:auto; }
.visual-duel-copy h2 { margin:.2rem 0 1.5rem; font:900 clamp(3.4rem,7vw,7rem)/.82 var(--atelier-sans); letter-spacing:-.075em; text-transform:uppercase; }
.visual-duel-copy>p:not(.minions-kicker) { max-width:650px; font:1.05rem/1.65 var(--atelier-serif); }
.visual-duel-facts { display:flex; flex-wrap:wrap; gap:.5rem; margin:1.5rem 0; }
.visual-duel-facts span { padding:.5rem .7rem; border:1px solid var(--minion-line); border-radius:999px; font-size:.65rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.visual-duel-copy>a { display:inline-flex; margin-top:1rem; padding:1rem 1.2rem; background:var(--minion-ink); color:var(--minion-paper); text-decoration:none; font-size:.74rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.visual-duel-copy>a:hover,.visual-duel-copy>a:focus-visible { background:var(--minion-violet); }

.relay>h2 { max-width:1050px; }
.relay ol { margin:5rem 0 0; padding:0; list-style:none; border-top:1px solid var(--minion-line); }
.relay li { display:grid; grid-template-columns:5rem minmax(0,1fr); gap:1rem; padding:2rem 0; border-bottom:1px solid var(--minion-line); }
.relay li>span { color:var(--minion-violet); font-size:.72rem; font-weight:850; }
.relay strong { font:400 clamp(1.5rem,3vw,2.5rem)/1 var(--atelier-serif); }
.relay li p { margin:.5rem 0 0; color:var(--minion-muted); }

.iris-profile { display:grid; grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr); gap:clamp(3rem,8vw,8rem); align-items:center; padding:8rem max(1.5rem,calc((100% - 1320px)/2)); background:#17151d; color:var(--minion-paper); }
.iris-portrait { position:relative; margin:0; }
.iris-portrait::before { position:absolute; inset:1rem -1rem -1rem 1rem; border:1px solid rgba(201,255,99,.55); content:""; }
.iris-portrait img { position:relative; z-index:1; display:block; width:100%; max-height:760px; object-fit:cover; object-position:center 35%; filter:saturate(.92) contrast(1.03); }
.iris-portrait p { position:relative; z-index:2; width:max-content; max-width:calc(100% - 2rem); margin:-1.25rem 0 0 1.25rem; padding:.7rem .85rem; background:var(--minion-acid); color:var(--minion-ink); font-size:.62rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.iris-copy { max-width:720px; }
.iris-copy .minions-kicker { color:var(--minion-acid); }
.iris-copy h2 { margin:0 0 2.5rem; font:900 clamp(3.5rem,7vw,7rem)/.82 var(--atelier-sans); letter-spacing:-.075em; text-transform:uppercase; }
.iris-copy>p:not(.minions-kicker) { color:rgba(248,243,233,.76); font:1.05rem/1.7 var(--atelier-serif); }
.iris-copy>p:last-child { color:var(--minion-paper); }

.empty-shelf { padding:8rem max(1.5rem,calc((100% - 1320px)/2)); background:var(--minion-orange); color:var(--minion-ink); }
.empty-shelf .minions-kicker { color:var(--minion-ink); }
.empty-shelf h2 { max-width:1050px; }
.empty-shelf>p:last-child { max-width:620px; margin:2rem 0 0 auto; font:1.08rem/1.6 var(--atelier-serif); }
.local-experiment { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.35fr); gap:clamp(3rem,8vw,8rem); align-items:center; padding:7rem max(1.5rem,calc((100% - 1120px)/2)); background:var(--minion-lilac); }
.local-experiment h2 { margin:.2rem 0 1.5rem; font:900 clamp(3rem,7vw,6.5rem)/.86 var(--atelier-sans); letter-spacing:-.075em; text-transform:uppercase; }
.local-experiment>div>p:not(.minions-kicker) { max-width:700px; font:1.05rem/1.65 var(--atelier-serif); }
.local-experiment a { display:inline-flex; margin-top:1.5rem; padding:1rem 1.2rem; background:var(--minion-ink); color:var(--minion-paper); text-decoration:none; font-size:.74rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.local-experiment aside { display:grid; gap:.5rem; padding:1.5rem; background:var(--minion-acid); box-shadow:10px 12px 0 rgba(33,31,39,.15); transform:rotate(2deg); }
.local-experiment aside strong { font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; }
.local-experiment aside span { font:900 4.5rem/1 var(--atelier-sans); letter-spacing:-.08em; }
.minions-footer { background:var(--minion-paper); }

@media (max-width:950px) {
  .minions-hero,.manifesto-grid,.first-test,.visual-duel,.iris-profile,.local-experiment { grid-template-columns:1fr; }
  .minions-hero { padding-top:5rem; }
  .menagerie { max-width:560px; }
  .principles { grid-template-columns:1fr 1fr; }
  .first-test { padding-top:10rem; }
  .test-note { max-width:420px; margin-left:auto; }
  .visual-duel-image { max-width:760px; }
  .iris-portrait { width:min(100%,620px); }
}

@media (max-width:560px) {
  .minions-hero { min-height:0; padding-right:1rem; padding-bottom:6rem; padding-left:1rem; }
  .minions-hero h1 { font-size:clamp(4.3rem,22vw,6.2rem); }
  .menagerie { width:110%; margin-left:-5%; }
  .creature { width:104px; padding:.8rem; }
  .creature h2 { font-size:1.05rem; }
  .creature p { font-size:.62rem; }
  .hero-aside { display:none; }
  .minions-section { width:min(100% - 2rem,1320px); padding:5rem 0; }
  .principles { grid-template-columns:1fr; margin-top:3rem; }
  .principles article { min-height:210px; }
  .first-test { min-height:0; padding:9rem 1rem 5rem; }
  .visual-duel { padding:5rem 1rem; }
  .test-copy h2 { font-size:clamp(3.3rem,17vw,5rem); }
  .test-status { right:1rem; }
  .relay li { grid-template-columns:2.5rem minmax(0,1fr); }
  .iris-profile { padding:5rem 1rem; }
  .iris-copy h2 { font-size:clamp(3.1rem,16vw,5rem); }
  .empty-shelf { padding:5rem 1rem; }
}


.benchmark-card { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:clamp(3rem,7vw,8rem); align-items:center; padding:7rem max(1.5rem,calc((100% - 1120px)/2)); background:#dbe8d2; color:var(--minion-ink); }
.benchmark-card h2 { margin:.4rem 0 1.6rem; font:900 clamp(4rem,9vw,8rem)/.78 var(--atelier-sans); letter-spacing:-.085em; text-transform:uppercase; }
.benchmark-card-copy>p:not(.minions-kicker) { max-width:650px; font:1.05rem/1.65 var(--atelier-serif); }
.benchmark-card-copy>a { display:inline-flex; margin-top:1.6rem; padding:1rem 1.2rem; background:var(--minion-ink); color:var(--minion-paper); text-decoration:none; font-size:.72rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.benchmark-card-facts { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.5rem; }
.benchmark-card-facts span { padding:.5rem .7rem; border:1px solid currentColor; font-size:.65rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.benchmark-card-image { display:block; box-shadow:18px 20px 0 rgba(33,31,39,.16); transform:rotate(1deg); }
.benchmark-card-image img { display:block; width:100%; height:auto; }
@media (max-width:950px) { .benchmark-card { grid-template-columns:1fr; } .benchmark-card-image { max-width:760px; } }
@media (max-width:560px) { .benchmark-card { padding:5rem 1rem; } .benchmark-card h2 { font-size:clamp(4rem,22vw,6rem); } }
