:root { --insect-green: #063f31; --insect-mid: #6d9d70; --insect-pale: #dce9cc; --insect-soft: #f5f8ee; }
.insect-page { color: var(--insect-green); background: #fff; }
.insect-page .project-header { color: var(--insect-green); background: rgba(245,248,238,.94); border-color: rgba(6,63,49,.25); }
.insect-page .back-link { color: var(--insect-green); }
.insect-hero { padding: clamp(76px,8vw,130px) max(6vw,calc((100vw - 1500px)/2)); background: var(--insect-pale); }
.hero-cover { max-width: 1500px; margin: 0 auto clamp(52px,6vw,90px); }
.hero-cover img { display: block; width: 100%; height: auto; border-radius: 20px; }
.hero-intro { max-width: 1500px; margin: 0 auto; }
.hero-intro .project-number { display: block; margin-bottom: 18px; color: var(--insect-mid); font: 700 11px "Space Mono",monospace; }
.hero-intro h1 { margin: 0; font: 900 clamp(50px,6.5vw,104px)/.9 "Archivo Black",sans-serif; letter-spacing: -.075em; }
.hero-intro h2 { max-width: 920px; margin: 24px 0 16px; font-size: clamp(24px,2.4vw,42px); line-height: 1.15; }
.hero-intro p { max-width: 960px; margin: 0; font-size: clamp(16px,1.35vw,21px); line-height: 1.65; }
.insect-facts { max-width: 1500px; margin: 70px auto 0; display: grid; grid-template-columns: repeat(4,1fr); gap: 38px; }
.insect-facts span { display: block; margin-bottom: 11px; color: var(--insect-mid); font: 700 10px "Space Mono",monospace; }
.insect-facts strong { font-size: 14px; line-height: 1.55; }
.garden-problem { position: relative; min-height: clamp(390px,43vw,720px); overflow: hidden; display: grid; place-items: center; }
.garden-problem::after { content: ""; position: absolute; inset: 0; background: rgba(214,236,180,.66); }
.garden-problem img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.garden-problem p { position: relative; z-index: 1; width: min(1450px,82vw); margin: 0; font: 900 clamp(26px,3.2vw,54px)/1.14 "Archivo Black",sans-serif; letter-spacing: -.035em; }
.paper-section { padding: clamp(85px,10vw,165px) max(6vw,calc((100vw - 1500px)/2)); background: #fff; }
.chapter-title { margin: 0 0 clamp(78px,9vw,145px); text-align: center; font: 900 clamp(44px,5.3vw,84px)/.95 "Archivo Black",sans-serif; letter-spacing: -.055em; }
.paper-section article { width: 100%; max-width: 1500px; margin: 0 auto clamp(105px,12vw,190px); }
.paper-section h3 { margin: 0 0 42px; font-size: clamp(28px,2.7vw,44px); line-height: 1.12; }
.paper-section p { font-size: 16px; line-height: 1.7; }
.paper-section img { display: block; width: auto; max-width: 100%; height: auto; }
.split-study { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; align-items: center; }
.split-study img { max-height: 570px; margin: auto; }
.split-study p { max-width: 65ch; }
.single-study img { margin-inline: auto; }
.benefit-study img { width: min(900px,100%); }
.behavior-study { padding-top: 25px; }
.finding-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 11vw; text-align: center; }
.finding-columns h4 { margin: 0 0 24px; font-size: 28px; }
.finding-columns p { margin: 13px 0; font-size: 14px; }
.habitat-study img { width: min(1000px,100%); }
.environment-study img { width: min(970px,100%); }
.design-section { padding-top: 70px; background: var(--insect-soft); }
.design-intro { max-width: 770px; margin: -100px auto 120px; text-align: center; }
.design-section .single-study img { width: min(980px,100%); }
.design-section .sketch-study img { width: min(830px,100%); }
.double-study > div { display: grid; grid-template-columns: 1fr 1fr; gap: 4vw; align-items: center; }
.double-study img { margin: auto; max-height: 940px; }
.cmf-study img { max-height: 760px; }
.app-section { padding-bottom: 0; }
.app-row { display: grid; grid-template-columns: 1.05fr .95fr; gap: 7vw; align-items: center; padding-bottom: clamp(90px,10vw,150px); }
.app-row.reverse { grid-template-columns: .95fr 1.05fr; }
.app-row.reverse img { order: 2; }
.app-row h3 { margin-bottom: 25px; }
.app-row p { max-width: 60ch; }
.app-row img { max-height: 700px; margin: auto; }
.garden-outcome { margin-inline: calc(0px - max(6vw,(100vw - 1500px)/2)); }
.garden-outcome img { width: 100%; max-width: none; }
.insect-page .next-project { color: #fff; background: var(--insect-green); }
.insect-page .next-project strong { color: #fff; -webkit-text-stroke: 0; text-shadow: none; }
.insect-page .project-footer { color: #fff; background: var(--insect-green); border-top-color: rgba(255,255,255,.25); }
@media (max-width: 800px) {
  .insect-hero,.paper-section { padding-inline: 5vw; }
  .insect-facts { grid-template-columns: 1fr 1fr; gap: 30px 20px; }
  .garden-problem p { width: 88vw; }
  .split-study,.finding-columns,.double-study > div,.app-row,.app-row.reverse { grid-template-columns: 1fr; gap: 38px; }
  .app-row.reverse img { order: 0; }
  .paper-section article { margin-bottom: 105px; }
  .chapter-title { margin-bottom: 82px; }
  .design-intro { margin: -45px auto 90px; }
  .garden-outcome { margin-inline: -5vw; }
}
@media (max-width: 470px) {
  .insect-facts { grid-template-columns: 1fr; }
  .hero-cover img { border-radius: 12px; }
  .garden-problem { min-height: 430px; }
  .paper-section h3 { margin-bottom: 28px; }
}

/* GALINA UNIVERSE / INSECTS HOTEL */
:root {
  --insect-green: #174f3d;
  --insect-mid: #6f9f73;
  --insect-pale: #dcebcf;
  --insect-soft: #f3f7e9;
  --insect-cream: #fff9e9;
  --insect-yellow: #f2ca58;
  --insect-blue: #96cfd4;
  --insect-line: 2px solid var(--insect-green);
}

.insect-page {
  color: var(--insect-green);
  background:
    radial-gradient(circle at 92% 4%, rgba(150,207,212,.35), transparent 28rem),
    linear-gradient(180deg, var(--insect-pale), var(--insect-cream) 28%, var(--insect-soft));
}
.insect-page .project-header {
  position: sticky;
  top: 10px;
  z-index: 30;
  height: 66px;
  color: var(--insect-green);
  background: rgba(255,249,233,.95);
  border: var(--insect-line);
  border-radius: 20px;
  box-shadow: 6px 6px 0 var(--insect-blue);
  backdrop-filter: blur(12px);
}
.insect-page .back-link {
  color: var(--insect-cream);
  background: var(--insect-green);
  border: var(--insect-line);
  box-shadow: 3px 3px 0 var(--insect-yellow);
}

.insect-hero {
  width: calc(100% - 28px);
  margin: 10px 14px 14px;
  padding: clamp(65px, 7vw, 105px) max(5vw, calc((100vw - 1260px) / 2));
  background: linear-gradient(145deg, #dcebcf, #c9e4cf 55%, #b9dce0);
  border: var(--insect-line);
  border-radius: 28px;
  box-shadow: 8px 8px 0 var(--insect-yellow);
}
.hero-cover,
.hero-intro,
.insect-facts { max-width: 1260px; }
.hero-cover {
  padding: 10px;
  background: var(--insect-cream);
  border: var(--insect-line);
  border-radius: 24px;
  box-shadow: 8px 8px 0 var(--insect-blue);
}
.hero-cover img { border-radius: 14px; }
.hero-intro h1 {
  font-size: clamp(52px, 6vw, 92px);
  color: var(--insect-cream);
  -webkit-text-stroke: 2px var(--insect-green);
  text-shadow: 5px 5px 0 var(--insect-yellow);
}
.hero-intro h2 { max-width: 820px; }
.hero-intro p {
  max-width: 820px;
  padding: 22px 24px;
  background: rgba(255,249,233,.85);
  border: var(--insect-line);
  border-radius: 18px;
  box-shadow: 5px 5px 0 var(--insect-blue);
}
.insect-facts {
  gap: 0;
  overflow: hidden;
  background: rgba(255,249,233,.78);
  border: var(--insect-line);
  border-radius: 20px;
}
.insect-facts > div { padding: 23px; border-right: 1px solid rgba(23,79,61,.35); }
.insect-facts > div:last-child { border-right: 0; }

.garden-problem {
  width: calc(100% - 28px);
  margin: 30px 14px 0;
  border: var(--insect-line);
  border-radius: 28px;
  box-shadow: 8px 8px 0 var(--insect-blue);
}
.garden-problem::after { background: rgba(208,232,186,.74); }
.garden-problem p { width: min(1100px, 82vw); font-size: clamp(27px, 3vw, 46px); }

.paper-section {
  width: min(1260px, calc(100% - 48px));
  margin: 32px auto;
  padding: clamp(70px, 8vw, 120px) clamp(24px, 6vw, 85px);
  background: rgba(255,249,233,.88);
  border: var(--insect-line);
  border-radius: 30px;
  box-shadow: 9px 9px 0 var(--insect-blue);
}
.design-section { background: rgba(243,247,233,.94); }
.chapter-title {
  width: fit-content;
  margin: 0 0 clamp(70px, 8vw, 110px);
  padding: 12px 18px;
  color: var(--insect-cream);
  background: var(--insect-green);
  border-radius: 16px;
  box-shadow: 5px 5px 0 var(--insect-yellow);
  text-align: left;
  font-size: clamp(38px, 4.5vw, 64px);
}
.paper-section article {
  max-width: 1000px;
  margin-bottom: clamp(85px, 10vw, 140px);
}
.paper-section article:last-child { margin-bottom: 0; }
.paper-section h3 {
  margin-bottom: 34px;
  font-size: clamp(27px, 2.5vw, 40px);
}
.paper-section p { max-width: 70ch; }

.split-study,
.double-study > div,
.app-row,
.app-row.reverse {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 42px;
  align-items: start;
}
.app-row.reverse img { order: 0; }
.split-study img,
.double-study img,
.app-row img {
  max-height: none;
  margin-inline: auto;
}
.single-study img,
.split-study img,
.double-study img,
.app-row img {
  padding: 10px;
  background: #fff;
  border: 1px solid rgba(23,79,61,.35);
  border-radius: 20px;
}
.design-intro {
  max-width: 760px;
  margin: -72px 0 95px;
  padding: 22px 24px;
  background: #fff;
  border-left: 5px solid var(--insect-yellow);
  text-align: left;
}
.finding-columns {
  padding: 28px;
  background: #fff;
  border: 1px solid rgba(23,79,61,.35);
  border-radius: 20px;
}
.app-row > div {
  max-width: 760px;
  padding: 24px;
  background: #fff;
  border: 1px solid rgba(23,79,61,.35);
  border-radius: 20px;
}
.garden-outcome {
  display: grid;
  gap: 24px;
  margin: 0;
}
.garden-outcome img {
  border: var(--insect-line);
  border-radius: 22px;
}

.insect-page .next-project {
  width: calc(100% - 28px);
  min-height: 40svh;
  margin: 0 14px 14px;
  color: var(--insect-cream);
  background-color: var(--insect-green);
  border: var(--insect-line);
  border-radius: 28px;
  box-shadow: 8px 8px 0 var(--insect-yellow);
}
.insect-page .next-project strong { font-size: clamp(58px, 11vw, 150px); }

@media (max-width: 800px) {
  .insect-page .project-header { top: 7px; margin: 7px 8px 0; }
  .insect-hero,
  .garden-problem,
  .insect-page .next-project { width: calc(100% - 16px); margin-inline: 8px; border-radius: 20px; box-shadow: 5px 5px 0 var(--insect-yellow); }
  .insect-hero { padding-inline: 5vw; }
  .paper-section { width: calc(100% - 16px); margin-block: 22px; padding-inline: 5vw; border-radius: 20px; box-shadow: 5px 5px 0 var(--insect-blue); }
  .insect-facts { grid-template-columns: 1fr; }
  .insect-facts > div { border-right: 0; border-bottom: 1px solid rgba(23,79,61,.3); }
  .insect-facts > div:last-child { border-bottom: 0; }
  .finding-columns { grid-template-columns: 1fr; gap: 38px; text-align: left; }
  .chapter-title { margin-bottom: 70px; }
  .design-intro { margin-top: -35px; }
}
