:root{
  --sand:#ead8cb;
  --sand-strong:#d7c0af;
  --sand-deep:#c8a891;
  --petrol:#0f4956;
  --petrol-deep:#123743;
  --petrol-soft:#215866;
  --olive:#b3af70;
  --olive-soft:#dde4b7;
  --gold:#f5a125;
  --gold-soft:#f8d46c;
  --cream:#fbf4ec;
  --cream-deep:#f3e1cf;
  --apricot:#f6c27a;
  --ink:#18323a;
  --muted:#5b6b70;
  --paper:#f8f1ea;
  --white:#fffdf9;
  --border:rgba(18,55,67,.1);
  --shadow:0 18px 48px rgba(18,55,67,.12);
  --shadow-soft:0 10px 22px rgba(18,55,67,.08);
  --shadow-card:0 16px 36px rgba(18,55,67,.10);
  --shadow-strong:0 24px 56px rgba(18,55,67,.16);
  --shadow-button:0 14px 28px rgba(15,73,86,.18);
  --shadow-accent:0 16px 30px rgba(245,161,37,.24);
  --radius-xl:40px;
  --radius-lg:26px;
  --radius-panel:28px;
  --radius-frame:24px;
  --radius-abstract:32px;
  --text-max:1320px;
}

.page-test .site-shell{
  position:relative;
  isolation:isolate;
}

.page-test .site-header,
.page-test .page-hero,
.page-test .metamorphosis-demo,
.page-test .site-footer{
  position:relative;
  z-index:1;
}

.metamorphosis-demo{
  padding-top:2rem;
  padding-bottom:14rem;
  min-height:42vh;
}

.metamorphosis-stage{
  position:relative;
  min-height:420px;
  margin:0;
  overflow:visible;
  background:transparent;
  border:none;
  box-shadow:none;
}

.metamorphosis-stage-background{
  position:fixed;
  right:-7vw;
  bottom:-1.5rem;
  width:min(58vw, 920px);
  height:min(62vh, 620px);
  min-height:480px;
  pointer-events:none;
  z-index:0;
  opacity:.98;
}

.metamorphosis-stage-glow{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 84% 46%, rgba(255,220,131,.18), transparent 20%),
    radial-gradient(circle at 76% 68%, rgba(255,255,255,.24), transparent 14%),
    radial-gradient(circle at 62% 34%, rgba(196,230,158,.12), transparent 18%);
  animation:metamorphosis-glow 10s ease-in-out infinite;
  pointer-events:none;
}

.metamorphosis-branch{
  position:absolute;
  top:200px;
  left:38%;
  width:74%;
  height:28px;
  border-radius:999px;
  background:
    radial-gradient(circle at 14% 54%, rgba(69,42,24,.84) 0 8px, transparent 9px),
    radial-gradient(circle at 42% 42%, rgba(78,48,28,.56) 0 7px, transparent 8px),
    radial-gradient(circle at 69% 58%, rgba(62,37,19,.54) 0 8px, transparent 9px),
    radial-gradient(circle at 88% 46%, rgba(82,54,31,.52) 0 6px, transparent 7px),
    linear-gradient(180deg, rgba(255,236,211,.28), rgba(255,236,211,0) 34%),
    linear-gradient(90deg, #412717 0%, #6a4328 16%, #986740 34%, #845736 57%, #593820 80%, #3f2516 100%);
  box-shadow:
    inset 0 3px 4px rgba(255,228,190,.24),
    inset 0 -6px 8px rgba(52,29,17,.4),
    0 18px 32px rgba(72,45,25,.18);
  transform:rotate(-14deg);
  filter:drop-shadow(0 12px 28px rgba(62,39,21,.14));
}

.metamorphosis-branch::before,
.metamorphosis-branch::after{
  content:"";
  position:absolute;
  border-radius:999px;
  pointer-events:none;
}

.metamorphosis-branch::before{
  inset:4px 4% 8px 4%;
  background:
    linear-gradient(90deg, rgba(255,230,198,.2), rgba(255,230,198,0) 24%),
    repeating-linear-gradient(90deg, rgba(84,48,25,.24) 0 12px, rgba(154,110,72,.08) 12px 22px);
  mix-blend-mode:multiply;
}

.metamorphosis-branch::after{
  left:20%;
  top:14px;
  width:122px;
  height:16px;
  transform:rotate(34deg);
  background:
    radial-gradient(circle at 76% 48%, rgba(80,47,24,.58) 0 4px, transparent 5px),
    linear-gradient(90deg, #50311d 0%, #825534 46%, #442817 100%);
  box-shadow:
    inset 0 2px 2px rgba(255,228,190,.14),
    inset 0 -3px 4px rgba(52,29,17,.26),
    0 6px 10px rgba(66,41,22,.12);
  opacity:.92;
}

.metamorphosis-branch-tip{
  display:none;
}

.metamorphosis-leaf{
  position:absolute;
  width:148px;
  height:72px;
  border-radius:88% 8% 92% 14%;
  background:
    radial-gradient(circle at 20% 22%, rgba(247,255,226,.8), transparent 16%),
    radial-gradient(circle at 78% 80%, rgba(26,62,34,.24), transparent 30%),
    linear-gradient(140deg, #dff1b7 0%, #a6ce7d 24%, #5d9557 56%, #335934 100%);
  box-shadow:
    inset -12px -12px 18px rgba(36,76,40,.24),
    inset 5px 5px 8px rgba(255,255,255,.24),
    0 18px 28px rgba(54,92,51,.18);
  filter:drop-shadow(0 10px 18px rgba(59,93,53,.12));
  clip-path:path("M3,37 C12,15 35,1 77,3 C121,6 145,21 146,38 C146,57 124,72 78,70 C35,68 12,58 3,37 Z");
}

.metamorphosis-leaf::before,
.metamorphosis-leaf::after{
  content:"";
  position:absolute;
  pointer-events:none;
}

.metamorphosis-leaf::before{
  inset:0;
  border-radius:inherit;
  background:
    linear-gradient(118deg, transparent 0 24%, rgba(255,255,255,.3) 25% 27%, transparent 28%),
    linear-gradient(152deg, transparent 0 42%, rgba(255,255,255,.16) 43% 44%, transparent 45%),
    linear-gradient(36deg, transparent 0 42%, rgba(38,96,47,.22) 43% 44%, transparent 45%),
    linear-gradient(64deg, transparent 0 56%, rgba(38,96,47,.18) 57% 58%, transparent 59%),
    linear-gradient(92deg, transparent 0 65%, rgba(38,96,47,.14) 66% 67%, transparent 68%);
}

.metamorphosis-leaf::after{
  left:8%;
  top:49%;
  width:84%;
  height:4px;
  background:linear-gradient(90deg, rgba(246,255,228,.66), rgba(93,144,77,.76) 36%, rgba(46,86,43,.42));
  transform:rotate(-14deg);
  transform-origin:left center;
  border-radius:999px;
  box-shadow:
    18px -10px 0 -1px rgba(220,244,177,.36),
    34px 11px 0 -1px rgba(193,224,150,.24),
    54px -12px 0 -1px rgba(213,240,171,.28),
    76px 12px 0 -1px rgba(190,218,149,.18),
    96px -9px 0 -1px rgba(215,239,172,.18);
}

.metamorphosis-leaf-a{ top:118px; left:55%; transform:rotate(-10deg) scale(1.08); }
.metamorphosis-leaf-b{ top:218px; left:72%; transform:rotate(18deg) scale(.92); }
.metamorphosis-leaf-c{ top:92px; left:79%; transform:rotate(36deg) scale(1.14); }

.metamorphosis-egg-cluster{
  position:absolute;
  left:60%;
  top:154px;
  width:62px;
  height:42px;
  opacity:0;
  animation:metamorphosis-egg-phase 10s ease-in-out infinite;
}

.metamorphosis-egg-cluster::before{
  content:"";
  position:absolute;
  inset:10px 6px 8px;
  border-radius:50%;
  background:radial-gradient(circle at 50% 50%, rgba(255,255,255,.46), rgba(255,255,255,0) 70%);
  filter:blur(2px);
  opacity:.75;
}

.metamorphosis-egg{
  position:absolute;
  width:18px;
  height:24px;
  border-radius:54% 54% 48% 48%;
  background:
    radial-gradient(circle at 34% 24%, rgba(255,255,255,.92), transparent 22%),
    linear-gradient(180deg, #fcf6e8 0%, #f0e0ba 54%, #d1bf91 100%);
  box-shadow:
    inset 0 -2px 4px rgba(154,131,98,.18),
    0 6px 10px rgba(72,45,25,.12);
  border:1px solid rgba(162,139,96,.18);
}

.metamorphosis-egg::after{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:inherit;
  background:
    radial-gradient(circle at 64% 70%, rgba(160,184,98,.14), transparent 30%),
    repeating-linear-gradient(135deg, rgba(195,183,150,.1) 0 2px, rgba(255,255,255,0) 2px 5px);
  opacity:.65;
}

.metamorphosis-egg-a{ left:0; top:12px; transform:rotate(-10deg); }
.metamorphosis-egg-b{ left:18px; top:0; transform:rotate(5deg); }
.metamorphosis-egg-c{ left:36px; top:12px; transform:rotate(12deg); }

.metamorphosis-caterpillar{
  position:absolute;
  left:40%;
  top:136px;
  width:254px;
  height:82px;
  filter:drop-shadow(0 12px 18px rgba(63,90,56,.16));
  transform-origin:center;
  animation:metamorphosis-caterpillar-path 10s linear infinite;
}

.metamorphosis-caterpillar-body{
  position:absolute;
  left:0;
  right:0;
  top:2px;
  display:flex;
  align-items:flex-end;
  gap:2px;
}

.metamorphosis-caterpillar-body::before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:7px;
  height:10px;
  border-radius:999px;
  background:
    radial-gradient(circle at 18% 50%, rgba(245,247,176,.74) 0 8px, transparent 9px),
    radial-gradient(circle at 50% 50%, rgba(210,229,122,.46) 0 14px, transparent 15px),
    radial-gradient(circle at 82% 50%, rgba(245,247,176,.54) 0 7px, transparent 8px),
    linear-gradient(90deg, rgba(241,247,167,0), rgba(241,247,167,.52) 18%, rgba(127,165,59,.78) 50%, rgba(56,95,44,.2) 100%);
  opacity:.88;
}

.metamorphosis-segment{
  position:relative;
  width:32px;
  height:30px;
  border-radius:999px;
  background:
    radial-gradient(circle at 34% 24%, rgba(236,255,178,.88), transparent 22%),
    radial-gradient(circle at 72% 68%, rgba(54,92,46,.28), transparent 24%),
    linear-gradient(180deg, #b5df73 0%, #71a54d 42%, #4b7a3e 72%, #355b33 100%);
  border:1px solid rgba(30,71,34,.16);
  box-shadow:
    inset 0 -5px 7px rgba(28,72,33,.22),
    inset 0 3px 4px rgba(255,255,255,.2),
    0 2px 4px rgba(35,66,29,.06);
  animation:metamorphosis-caterpillar-wiggle 1.1s ease-in-out infinite;
}

.metamorphosis-segment::before{
  content:"";
  position:absolute;
  left:15%;
  right:15%;
  top:48%;
  height:26%;
  border-radius:999px;
  background:
    radial-gradient(circle at 24% 50%, rgba(36,58,34,.26) 0 2px, transparent 3px),
    radial-gradient(circle at 76% 50%, rgba(36,58,34,.26) 0 2px, transparent 3px),
    rgba(248,224,129,.38);
  box-shadow:
    -12px 0 0 rgba(240,218,118,.2),
    12px 0 0 rgba(240,218,118,.2);
}

.metamorphosis-segment::after{
  content:"";
  position:absolute;
  left:22%;
  bottom:-6px;
  width:56%;
  height:9px;
  border-radius:999px;
  background:radial-gradient(circle at 50% 0, rgba(53,83,44,.5), rgba(53,83,44,0) 74%);
}

.metamorphosis-segment:nth-child(2){ animation-delay:.08s; width:30px; height:28px; transform:translateY(3px); }
.metamorphosis-segment:nth-child(3){ animation-delay:.16s; width:34px; height:31px; }
.metamorphosis-segment:nth-child(4){ animation-delay:.24s; width:36px; height:33px; transform:translateY(-1px); }
.metamorphosis-segment:nth-child(5){ animation-delay:.32s; width:35px; height:32px; }
.metamorphosis-segment:nth-child(6){ animation-delay:.4s; width:32px; height:29px; transform:translateY(2px); }
.metamorphosis-segment:nth-child(7){ animation-delay:.48s; width:25px; height:21px; transform:translateY(6px); }

.metamorphosis-head{
  width:34px;
  height:31px;
  background:
    radial-gradient(circle at 70% 46%, #25331e 0 2px, transparent 3px),
    radial-gradient(circle at 34% 28%, rgba(244,255,202,.8), transparent 22%),
    linear-gradient(180deg, #b9e57a 0%, #70aa50 44%, #4b7b40 74%, #355c33 100%);
  position:relative;
  box-shadow:
    inset 0 -5px 7px rgba(28,72,33,.2),
    inset 0 3px 4px rgba(255,255,255,.18);
  overflow:visible;
  clip-path:ellipse(50% 48% at 50% 50%);
  z-index:2;
  transform:translateY(-1px);
}

.metamorphosis-head::before,
.metamorphosis-head::after{
  content:"";
  position:absolute;
  top:-10px;
  width:2px;
  height:14px;
  background:#4b6b3f;
  border-radius:999px;
  pointer-events:none;
  z-index:0;
}

.metamorphosis-head::before{ left:10px; transform:rotate(-20deg); }
.metamorphosis-head::after{ right:10px; transform:rotate(16deg); }

.metamorphosis-head + .metamorphosis-segment{
  margin-left:-2px;
}

.metamorphosis-tail{
  width:22px;
  height:18px;
  transform:translateY(7px);
}

.metamorphosis-leg{
  position:absolute;
  bottom:8px;
  width:16px;
  height:26px;
  border-left:2px solid rgba(61,82,43,.92);
  border-bottom:2px solid rgba(61,82,43,.92);
  border-radius:0 0 0 12px;
  transform-origin:top center;
  animation:metamorphosis-leg-step 1.05s ease-in-out infinite;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.16));
}

.metamorphosis-leg::after{
  content:"";
  position:absolute;
  left:-3px;
  bottom:-3px;
  width:10px;
  height:6px;
  border-radius:999px;
  background:rgba(61,85,42,.72);
}

.metamorphosis-leg-a{ left:40px; transform:rotate(18deg); animation-delay:.04s; }
.metamorphosis-leg-b{ left:68px; transform:rotate(10deg); animation-delay:.14s; }
.metamorphosis-leg-c{ left:96px; transform:rotate(14deg); animation-delay:.24s; }
.metamorphosis-leg-d{ left:126px; transform:rotate(8deg); animation-delay:.34s; }
.metamorphosis-leg-e{ left:154px; transform:rotate(12deg); animation-delay:.44s; }
.metamorphosis-leg-f{ left:182px; transform:rotate(6deg); animation-delay:.54s; }

.metamorphosis-thread{
  position:absolute;
  left:84.2%;
  top:164px;
  width:2px;
  height:126px;
  background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(199,182,152,.62));
  transform-origin:top center;
  opacity:0;
  animation:metamorphosis-thread-appear 10s ease-in-out infinite;
}

.metamorphosis-chrysalis{
  position:absolute;
  left:80.4%;
  top:190px;
  width:70px;
  height:136px;
  border-radius:42% 42% 58% 58%;
  background:
    radial-gradient(circle at 36% 18%, rgba(255,250,216,.52), transparent 18%),
    linear-gradient(90deg, rgba(109,143,72,.18) 0 10%, transparent 10% 22%, rgba(109,143,72,.18) 22% 34%, transparent 34% 46%, rgba(109,143,72,.14) 46% 58%, transparent 58% 100%),
    linear-gradient(180deg, #e1e8b6 0%, #8fb967 34%, #6d8f49 58%, #7c5f42 100%);
  box-shadow:
    inset 0 0 0 1px rgba(71,88,38,.14),
    inset 0 -9px 12px rgba(79,59,35,.2),
    0 24px 36px rgba(62,84,48,.18);
  opacity:0;
  transform-origin:top center;
  animation:metamorphosis-chrysalis-form 10s ease-in-out infinite;
}

.metamorphosis-chrysalis::before{
  content:"";
  position:absolute;
  left:50%;
  top:-8px;
  width:18px;
  height:12px;
  transform:translateX(-50%);
  border-radius:999px;
  background:linear-gradient(180deg, #8e6f4a, #6f5339);
  box-shadow:0 2px 4px rgba(62,84,48,.14);
}

.metamorphosis-chrysalis::after{
  content:"";
  position:absolute;
  left:50%;
  top:10px;
  width:2px;
  height:84%;
  transform:translateX(-50%);
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,0));
  opacity:.66;
}

.metamorphosis-butterfly{
  position:absolute;
  left:73.8%;
  top:150px;
  opacity:0;
  transform-origin:center;
  filter:drop-shadow(0 12px 26px rgba(255,192,96,.18));
  animation:metamorphosis-butterfly-flight 10s ease-in-out infinite;
}

.metamorphosis-butterfly .butterfly-layer-wing-left{
  animation-duration:1.45s;
}

.metamorphosis-butterfly .butterfly-layer-wing-right{
  animation-duration:1.45s;
}

@keyframes metamorphosis-glow{
  0%,34%,100%{ opacity:.25; }
  48%,76%{ opacity:1; }
}

@keyframes metamorphosis-egg-phase{
  0%,10%{
    opacity:1;
    transform:translate3d(0,0,0) scale(1);
  }
  15%{
    opacity:1;
    transform:translate3d(0,0,0) scale(1.03);
  }
  18%{
    opacity:.9;
    transform:translate3d(0,1px,0) scale(.97);
  }
  22%{
    opacity:0;
    transform:translate3d(8px,10px,0) scale(.55);
  }
  100%{
    opacity:0;
    transform:translate3d(8px,10px,0) scale(.55);
  }
}

@keyframes metamorphosis-caterpillar-wiggle{
  0%,100%{ transform:translateY(0) scaleY(1); }
  50%{ transform:translateY(-2px) scaleY(1.05); }
}

@keyframes metamorphosis-leg-step{
  0%,100%{ transform:rotate(10deg) scaleY(1); }
  50%{ transform:rotate(26deg) translateY(2px) scaleY(.92); }
}

@keyframes metamorphosis-caterpillar-path{
  0%{
    transform:translate3d(0,0,0) scale(.76) rotate(0deg);
    opacity:0;
  }
  16%{
    transform:translate3d(26px,0,0) scale(.8) rotate(0deg);
    opacity:0;
  }
  20%{
    transform:translate3d(56px,-1px,0) scale(.9) rotate(-2deg);
    opacity:1;
  }
  34%{
    transform:translate3d(214px,-2px,0) scale(1) rotate(-4deg);
    opacity:1;
  }
  48%{
    transform:translate3d(356px,-6px,0) scale(.98) rotate(-7deg);
    opacity:1;
  }
  58%{
    transform:translate3d(418px,-14px,0) scale(.92) rotate(30deg);
    opacity:1;
  }
  66%{
    transform:translate3d(452px,-82px,0) scale(.7) rotate(78deg);
    opacity:0;
  }
  100%{
    transform:translate3d(452px,-82px,0) scale(.7) rotate(78deg);
    opacity:0;
  }
}

@keyframes metamorphosis-thread-appear{
  0%,48%{ opacity:0; transform:scaleY(.2); }
  56%,74%{ opacity:1; transform:scaleY(1); }
  82%,100%{ opacity:0; transform:scaleY(.45); }
}

@keyframes metamorphosis-chrysalis-form{
  0%,52%{
    opacity:0;
    transform:translateY(10px) scale(.2);
  }
  60%,76%{
    opacity:1;
    transform:translateY(0) rotate(-2deg) scale(1);
  }
  80%{
    opacity:.6;
    transform:translateY(0) rotate(2deg) scale(.94,.98);
  }
  86%,100%{
    opacity:0;
    transform:translateY(-12px) rotate(5deg) scale(.68);
  }
}

@keyframes metamorphosis-butterfly-flight{
  0%,74%{
    opacity:0;
    transform:translate3d(0,34px,0) scale(.25) rotate(-12deg);
  }
  80%{
    opacity:1;
    transform:translate3d(4px,0,0) scale(.8) rotate(-6deg);
  }
  88%{
    opacity:1;
    transform:translate3d(-18px,-54px,0) scale(.98) rotate(-8deg);
  }
  96%{
    opacity:1;
    transform:translate3d(-148px,-176px,0) scale(.74) rotate(-18deg);
  }
  100%{
    opacity:0;
    transform:translate3d(-228px,-268px,0) scale(.4) rotate(-28deg);
  }
}

@media (max-width:991px){
  .metamorphosis-stage{
    min-height:360px;
  }

  .metamorphosis-stage-background{
    right:-14vw;
    bottom:-2rem;
    width:min(82vw, 760px);
    height:min(56vh, 500px);
  }

  .metamorphosis-branch{
    top:190px;
    left:34%;
    width:80%;
  }

  .metamorphosis-egg-cluster{
    left:58%;
    top:146px;
  }

  .metamorphosis-caterpillar{
    left:36%;
    top:129px;
    width:214px;
  }

  @keyframes metamorphosis-caterpillar-path{
    0%{
      transform:translate3d(0,0,0) scale(.62) rotate(0deg);
      opacity:0;
    }
    16%{
      transform:translate3d(20px,0,0) scale(.66) rotate(0deg);
      opacity:0;
    }
    20%{
      transform:translate3d(38px,-1px,0) scale(.76) rotate(-2deg);
      opacity:1;
    }
    34%{
      transform:translate3d(152px,-2px,0) scale(.86) rotate(-4deg);
      opacity:1;
    }
    48%{
      transform:translate3d(262px,-6px,0) scale(.84) rotate(-7deg);
      opacity:1;
    }
    58%{
      transform:translate3d(312px,-16px,0) scale(.78) rotate(30deg);
      opacity:1;
    }
    66%{
      transform:translate3d(334px,-64px,0) scale(.56) rotate(78deg);
      opacity:0;
    }
    100%{
      transform:translate3d(334px,-64px,0) scale(.56) rotate(78deg);
      opacity:0;
    }
  }

  .metamorphosis-thread{
    left:83%;
    top:154px;
  }

  .metamorphosis-chrysalis{
    left:79%;
    top:178px;
  }

  .metamorphosis-butterfly{
    left:71%;
    top:142px;
    --butterfly-width:180px;
    --butterfly-height:180px;
  }
}

@media (max-width:767px){
  .metamorphosis-demo{
    padding-top:1rem;
    padding-bottom:15rem;
  }

  .metamorphosis-stage{
    min-height:300px;
  }

  .metamorphosis-stage-background{
    right:-28vw;
    bottom:-1.25rem;
    width:min(112vw, 620px);
    height:420px;
  }

  .metamorphosis-branch{
    top:174px;
    left:30%;
    width:88%;
    height:22px;
  }

  .metamorphosis-leaf{
    width:92px;
    height:44px;
  }

  .metamorphosis-egg-cluster{
    left:55%;
    top:136px;
    transform:scale(.82);
  }

  .metamorphosis-caterpillar{
    left:33%;
    top:124px;
    width:164px;
  }

  .metamorphosis-thread{
    top:145px;
    height:82px;
    left:82%;
  }

  .metamorphosis-chrysalis{
    top:166px;
    left:79%;
    width:42px;
    height:88px;
  }

  .metamorphosis-butterfly{
    left:67%;
    top:138px;
    --butterfly-width:136px;
    --butterfly-height:136px;
  }

  @keyframes metamorphosis-butterfly-flight{
    0%,74%{
      opacity:0;
      transform:translate3d(0,28px,0) scale(.22) rotate(-12deg);
    }
    80%{
      opacity:1;
      transform:translate3d(0,0,0) scale(.76) rotate(-6deg);
    }
    88%{
      opacity:1;
      transform:translate3d(-10px,-36px,0) scale(.92) rotate(-8deg);
    }
    96%{
      opacity:1;
      transform:translate3d(-98px,-124px,0) scale(.64) rotate(-18deg);
    }
    100%{
      opacity:0;
      transform:translate3d(-150px,-178px,0) scale(.32) rotate(-28deg);
    }
  }
}

.page-test .metamorphosis-demo{
  padding-top:1.5rem;
  padding-bottom:18rem;
  min-height:34vh;
}

.page-test .metamorphosis-stage-background{
  position:fixed;
  right:-4vw;
  bottom:-2.5rem;
  width:min(54vw, 880px);
  height:min(62vh, 620px);
  min-height:500px;
  pointer-events:none;
  z-index:0;
  opacity:1;
}

.page-test .metamorphosis-branch-scene{
  position:absolute;
  right:0;
  bottom:0;
  width:100%;
  height:auto;
  transform-origin:90% 42%;
  filter:drop-shadow(0 24px 48px rgba(38,24,14,.08));
  animation:metamorphosis-scene-drift 10s ease-in-out infinite;
}

.page-test .metamorphosis-phase{
  position:absolute;
  opacity:0;
  transform-origin:center;
}

.page-test .metamorphosis-phase-art,
.page-test .metamorphosis-hatch-shell{
  display:block;
  width:100%;
  height:auto;
}

.page-test .metamorphosis-phase-caterpillar{
  right:20%;
  bottom:30%;
  width:min(28vw, 330px);
  animation:metamorphosis-real-caterpillar 10s linear infinite;
}

.page-test .metamorphosis-phase-caterpillar .metamorphosis-phase-art{
  animation:metamorphosis-real-caterpillar-wiggle 1.3s ease-in-out infinite;
}

.page-test .metamorphosis-phase-chrysalis{
  right:11.6%;
  bottom:16.2%;
  width:min(10vw, 118px);
  animation:metamorphosis-real-chrysalis 10s ease-in-out infinite;
}

.page-test .metamorphosis-phase-hatch{
  right:4.8%;
  bottom:13.2%;
  width:min(20vw, 236px);
  animation:metamorphosis-real-hatch 10s ease-in-out infinite;
}

.page-test .metamorphosis-hatch-shell{
  filter:drop-shadow(0 16px 30px rgba(255,200,92,.18));
}

.page-test .metamorphosis-phase-hatch .butterfly-art{
  position:absolute;
  left:50%;
  top:47%;
  --butterfly-width:min(11.2vw, 134px);
  --butterfly-height:min(11.2vw, 134px);
  transform:translate(-50%, -50%) rotate(-8deg);
  filter:drop-shadow(0 16px 26px rgba(255,196,88,.24));
}

.page-test .metamorphosis-phase-hatch .butterfly-layer-wing-left,
.page-test .metamorphosis-phase-hatch .butterfly-layer-wing-right{
  animation-duration:1.28s;
}

.page-test #butterfly-metamorphosis-flight{
  position:absolute;
  right:6.8%;
  bottom:16%;
  opacity:0;
  --butterfly-width:min(18vw, 220px);
  --butterfly-height:min(18vw, 220px);
  transform-origin:center;
  filter:drop-shadow(0 18px 30px rgba(255,200,92,.18));
  animation:metamorphosis-real-flight 10s ease-in-out infinite;
}

.page-test #butterfly-metamorphosis-flight .butterfly-layer-wing-left,
.page-test #butterfly-metamorphosis-flight .butterfly-layer-wing-right{
  animation-duration:1.22s;
}

@keyframes metamorphosis-scene-drift{
  0%,100%{ transform:translate3d(0,0,0) rotate(0deg); }
  50%{ transform:translate3d(-4px,-3px,0) rotate(-1.4deg); }
}

@keyframes metamorphosis-real-caterpillar{
  0%{
    opacity:0;
    transform:translate3d(10px,16px,0) scale(.9) rotate(-8deg);
  }
  6%{
    opacity:1;
    transform:translate3d(0,0,0) scale(1) rotate(-8deg);
  }
  22%{
    opacity:1;
    transform:translate3d(88px,-10px,0) scale(1.02) rotate(-10deg);
  }
  34%{
    opacity:1;
    transform:translate3d(164px,-44px,0) scale(.94) rotate(26deg);
  }
  40%{
    opacity:0;
    transform:translate3d(178px,-68px,0) scale(.78) rotate(62deg);
  }
  100%{
    opacity:0;
    transform:translate3d(178px,-68px,0) scale(.78) rotate(62deg);
  }
}

@keyframes metamorphosis-real-caterpillar-wiggle{
  0%,100%{ transform:translateY(0) rotate(0deg); }
  25%{ transform:translateY(-2px) rotate(-1.3deg); }
  50%{ transform:translateY(1px) rotate(.9deg); }
  75%{ transform:translateY(-1px) rotate(-.8deg); }
}

@keyframes metamorphosis-real-chrysalis{
  0%,38%{
    opacity:0;
    transform:translate3d(0,12px,0) scale(.32);
  }
  46%,60%{
    opacity:1;
    transform:translate3d(0,0,0) scale(1) rotate(-2deg);
  }
  68%{
    opacity:1;
    transform:translate3d(0,-2px,0) scale(1.02) rotate(1deg);
  }
  74%{
    opacity:.18;
    transform:translate3d(0,-6px,0) scale(.92) rotate(5deg);
  }
  100%{
    opacity:0;
    transform:translate3d(0,-6px,0) scale(.92) rotate(5deg);
  }
}

@keyframes metamorphosis-real-hatch{
  0%,60%{
    opacity:0;
    transform:translate3d(0,12px,0) scale(.7);
  }
  68%{
    opacity:1;
    transform:translate3d(0,0,0) scale(1);
  }
  76%{
    opacity:1;
    transform:translate3d(0,-6px,0) scale(1.03);
  }
  82%{
    opacity:.16;
    transform:translate3d(-10px,-14px,0) scale(.88);
  }
  100%{
    opacity:0;
    transform:translate3d(-10px,-14px,0) scale(.88);
  }
}

@keyframes metamorphosis-real-flight{
  0%,73%{
    opacity:0;
    transform:translate3d(0,40px,0) scale(.28) rotate(-10deg);
  }
  79%{
    opacity:1;
    transform:translate3d(0,0,0) scale(.82) rotate(-8deg);
  }
  88%{
    opacity:1;
    transform:translate3d(-120px,-90px,0) scale(.98) rotate(-18deg);
  }
  96%{
    opacity:1;
    transform:translate3d(-260px,-228px,0) scale(.72) rotate(-30deg);
  }
  100%{
    opacity:0;
    transform:translate3d(-340px,-300px,0) scale(.42) rotate(-38deg);
  }
}

@media (max-width:991px){
  .home-metamorphosis-card{
    grid-template-columns:1fr;
  }
  .home-metamorphosis-card .metamorphosis-stage-card{
    min-height:360px;
  }
  .home-metamorphosis-card .metamorphosis-phase-caterpillar{
    width:250px;
    right:21%;
    bottom:24%;
  }
  .home-metamorphosis-card .metamorphosis-phase-chrysalis{
    width:92px;
    right:12%;
  }
  .home-metamorphosis-card .metamorphosis-phase-hatch{
    width:180px;
    right:4%;
  }
  .home-metamorphosis-card .metamorphosis-phase-hatch .butterfly-art{
    --butterfly-width:104px;
    --butterfly-height:104px;
  }
  .home-metamorphosis-card #butterfly-home-metamorphosis-flight{
    --butterfly-width:164px;
    --butterfly-height:164px;
    right:6%;
  }

  .review-marquee-track{
    animation-duration:46s;
  }
  .review-card{
    flex-basis:320px;
  }

  .page-test .metamorphosis-demo{
    padding-bottom:15rem;
  }

  .page-test .metamorphosis-stage-background{
    right:-15vw;
    width:min(82vw, 760px);
    height:min(54vh, 520px);
    min-height:400px;
  }

  .page-test .metamorphosis-phase-caterpillar{
    right:21%;
    bottom:29%;
    width:min(36vw, 280px);
  }

  .page-test .metamorphosis-phase-chrysalis{
    right:12.5%;
    bottom:15.5%;
    width:min(12vw, 96px);
  }

  .page-test .metamorphosis-phase-hatch{
    right:6%;
    bottom:12.5%;
    width:min(26vw, 200px);
  }

  .page-test .metamorphosis-phase-hatch .butterfly-art{
    --butterfly-width:min(14vw, 112px);
    --butterfly-height:min(14vw, 112px);
  }

  .page-test #butterfly-metamorphosis-flight{
    right:7%;
    bottom:14%;
    --butterfly-width:min(22vw, 176px);
    --butterfly-height:min(22vw, 176px);
  }

  @keyframes metamorphosis-real-caterpillar{
    0%{
      opacity:0;
      transform:translate3d(8px,14px,0) scale(.84) rotate(-8deg);
    }
    6%{
      opacity:1;
      transform:translate3d(0,0,0) scale(.92) rotate(-8deg);
    }
    22%{
      opacity:1;
      transform:translate3d(66px,-8px,0) scale(.95) rotate(-10deg);
    }
    34%{
      opacity:1;
      transform:translate3d(126px,-34px,0) scale(.88) rotate(26deg);
    }
    40%{
      opacity:0;
      transform:translate3d(140px,-56px,0) scale(.72) rotate(62deg);
    }
    100%{
      opacity:0;
      transform:translate3d(140px,-56px,0) scale(.72) rotate(62deg);
    }
  }

  @keyframes metamorphosis-real-flight{
    0%,73%{
      opacity:0;
      transform:translate3d(0,32px,0) scale(.24) rotate(-10deg);
    }
    79%{
      opacity:1;
      transform:translate3d(0,0,0) scale(.78) rotate(-8deg);
    }
    88%{
      opacity:1;
      transform:translate3d(-90px,-72px,0) scale(.92) rotate(-18deg);
    }
    96%{
      opacity:1;
      transform:translate3d(-188px,-170px,0) scale(.68) rotate(-30deg);
    }
    100%{
      opacity:0;
      transform:translate3d(-248px,-226px,0) scale(.4) rotate(-38deg);
    }
  }
}

@media (max-width:767px){
  .page-test .metamorphosis-demo{
    padding-bottom:13rem;
  }

  .page-test .metamorphosis-stage-background{
    right:-30vw;
    bottom:-1.2rem;
    width:min(118vw, 640px);
    height:420px;
    min-height:360px;
  }

  .page-test .metamorphosis-phase-caterpillar{
    right:22%;
    bottom:28%;
    width:min(46vw, 220px);
  }

  .page-test .metamorphosis-phase-chrysalis{
    right:12%;
    bottom:15%;
    width:min(13vw, 74px);
  }

  .page-test .metamorphosis-phase-hatch{
    right:5%;
    bottom:12%;
    width:min(32vw, 146px);
  }

  .page-test .metamorphosis-phase-hatch .butterfly-art{
    --butterfly-width:min(18vw, 84px);
    --butterfly-height:min(18vw, 84px);
  }

  .page-test #butterfly-metamorphosis-flight{
    right:6%;
    bottom:13%;
    --butterfly-width:min(28vw, 124px);
    --butterfly-height:min(28vw, 124px);
  }

  @keyframes metamorphosis-real-caterpillar{
    0%{
      opacity:0;
      transform:translate3d(6px,10px,0) scale(.8) rotate(-8deg);
    }
    6%{
      opacity:1;
      transform:translate3d(0,0,0) scale(.86) rotate(-8deg);
    }
    22%{
      opacity:1;
      transform:translate3d(46px,-6px,0) scale(.88) rotate(-10deg);
    }
    34%{
      opacity:1;
      transform:translate3d(90px,-26px,0) scale(.82) rotate(26deg);
    }
    40%{
      opacity:0;
      transform:translate3d(104px,-42px,0) scale(.66) rotate(62deg);
    }
    100%{
      opacity:0;
      transform:translate3d(104px,-42px,0) scale(.66) rotate(62deg);
    }
  }

  @keyframes metamorphosis-real-flight{
    0%,73%{
      opacity:0;
      transform:translate3d(0,24px,0) scale(.2) rotate(-10deg);
    }
    79%{
      opacity:1;
      transform:translate3d(0,0,0) scale(.72) rotate(-8deg);
    }
    88%{
      opacity:1;
      transform:translate3d(-62px,-52px,0) scale(.86) rotate(-18deg);
    }
    96%{
      opacity:1;
      transform:translate3d(-126px,-122px,0) scale(.62) rotate(-30deg);
    }
    100%{
      opacity:0;
      transform:translate3d(-168px,-164px,0) scale(.34) rotate(-38deg);
    }
  }
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  font-family:"Nunito Sans",sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at 7% 8%, rgba(245,163,37,.20), transparent 16%),
    radial-gradient(circle at 88% 9%, rgba(15,73,86,.08), transparent 18%),
    radial-gradient(circle at 78% 82%, rgba(245,163,37,.16), transparent 24%),
    radial-gradient(circle at 50% 100%, rgba(248,212,108,.24), transparent 34%),
    linear-gradient(180deg, #fbf5ed 0%, var(--cream) 36%, #f8eee2 68%, var(--cream-deep) 100%);
}

body::before,
body::after{
  content:"";
  position:fixed;
  z-index:-1;
  pointer-events:none;
  filter:blur(12px);
}

body::before{
  left:-10vw;
  top:10vh;
  width:32vw;
  min-width:280px;
  height:22vw;
  min-height:200px;
  background:linear-gradient(135deg, rgba(245,163,37,.14), rgba(248,212,108,.05));
  border-radius:var(--radius-abstract);
}

body::after{
  right:-12vw;
  bottom:2vh;
  width:38vw;
  min-width:340px;
  height:28vw;
  min-height:260px;
  background:linear-gradient(135deg, rgba(245,163,37,.18), rgba(248,212,108,.06));
  border-radius:var(--radius-abstract);
}

img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }

.site-shell{
  min-height:100vh;
  overflow:hidden;
  position:relative;
}

.site-shell::before{
  content:"";
  position:absolute;
  inset:180px -12% auto;
  height:420px;
  background:
    radial-gradient(circle at 20% 36%, rgba(255,255,255,.85), transparent 18%),
    linear-gradient(140deg, rgba(255,255,255,.44), rgba(255,255,255,0));
  border-radius:var(--radius-abstract);
  opacity:.55;
  pointer-events:none;
}

.site-shell::after{
  content:"";
  position:absolute;
  inset:auto -8% -120px;
  height:520px;
  background:
    radial-gradient(circle at 50% 24%, rgba(255,248,233,.72), transparent 18%),
    linear-gradient(180deg, rgba(248,212,108,.04), rgba(245,163,37,.12) 48%, rgba(234,216,203,.26) 100%);
  border-radius:var(--radius-abstract);
  opacity:.95;
  pointer-events:none;
  z-index:0;
}

.site-header{
  position:sticky;
  top:0;
  z-index:1020;
  backdrop-filter:blur(14px);
  background:rgba(248,241,234,.78);
  border-bottom:1px solid var(--border);
  box-shadow:var(--shadow-soft);
}

.home-notice{
  position:fixed;
  top:1rem;
  left:50%;
  transform:translateX(-50%);
  z-index:1200;
  width:min(calc(100vw - 2rem), 620px);
  padding:1rem 1.35rem;
  border-radius:20px;
  background:rgba(15,73,86,.96);
  color:#fff;
  text-align:center;
  font-weight:800;
  box-shadow:var(--shadow-strong);
  pointer-events:none;
  animation:home-notice-pop 3s ease forwards;
}

@keyframes home-notice-pop{
  0%{
    opacity:0;
    transform:translateX(-50%) translateY(-16px) scale(.96);
  }
  12%{
    opacity:1;
    transform:translateX(-50%) translateY(0) scale(1);
  }
  82%{
    opacity:1;
    transform:translateX(-50%) translateY(0) scale(1);
  }
  100%{
    opacity:0;
    transform:translateX(-50%) translateY(-10px) scale(.98);
  }
}

.navbar{ padding:1rem 0; }
.brand-lockup{ display:flex; align-items:center; gap:1.2rem; }
.brand-copy{ display:flex; flex-direction:column; line-height:1.02; }
.butterfly-art{
  position:relative;
  display:inline-block;
  width:var(--butterfly-width, 86px);
  height:var(--butterfly-height, auto);
  aspect-ratio:1 / 1;
  line-height:0;
  flex:0 0 auto;
}
.butterfly-layer{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  pointer-events:none;
  user-select:none;
}
.butterfly-layer-wing{
  will-change:transform;
}
.butterfly-layer-wing-left{
  transform-origin:71% 50%;
  animation:butterfly-wing-left 3.2s ease-in-out infinite;
}
.butterfly-layer-wing-right{
  transform-origin:29% 50%;
  animation:butterfly-wing-right 3.2s ease-in-out infinite;
}
.brand-logo,
.footer-logo,
.mark-logo{
  border-radius:0;
  box-shadow:none;
  background:transparent;
  transform-origin:center;
  animation:butterfly-logo-float 7.2s ease-in-out infinite, butterfly-logo-glow 5.6s ease-in-out infinite;
}
.mark-logo{
  width:min(240px, 100%);
}
.brand-title{
  font-family:"Cormorant Garamond",serif;
  font-size:2.3rem;
  font-weight:700;
  letter-spacing:.01em;
  color:var(--petrol);
}
.brand-subtitle{ color:var(--muted); font-size:.95rem; letter-spacing:.02em; }

.navbar .nav-link{
  color:var(--ink);
  padding:.7rem 1rem;
  border-radius:999px;
  font-weight:800;
  letter-spacing:.01em;
}

.navbar .nav-link.active,
.navbar .nav-link:hover,
.navbar .show > .nav-link{
  background:rgba(15,73,86,.08);
  color:var(--petrol);
}

.dropdown-menu{
  border:none;
  border-radius:20px;
  padding:.75rem;
  background:rgba(255,253,249,.98);
  box-shadow:var(--shadow-card);
}

.dropdown-item{
  border-radius:14px;
  padding:.7rem .95rem;
  font-weight:700;
}

.dropdown-item.active,
.dropdown-item:hover{
  background:rgba(179,175,112,.18);
  color:var(--petrol-deep);
}

.navbar-toggler{
  border:none;
  padding:.45rem .7rem;
  border-radius:16px;
  background:rgba(15,73,86,.08);
}
.navbar-toggler:focus{ box-shadow:none; }

.btn{
  border:none;
  border-radius:999px;
  padding:1rem 1.55rem;
  font-weight:800;
  letter-spacing:.01em;
}

.btn-accent{ background:var(--petrol); color:#fff; box-shadow:var(--shadow-button); }
.btn-accent:hover{ background:var(--petrol-deep); color:#fff; }
.btn-soft{
  background:linear-gradient(135deg, #ffe3a1 0%, #f5c35a 100%);
  color:#153842;
  box-shadow:var(--shadow-accent);
}
.btn-soft:hover{
  background:linear-gradient(135deg, #ffe8b7 0%, #f3b63f 100%);
  color:#102e36;
}
.btn-outline-warm{ background:transparent; border:2px solid var(--border); color:#fff; }
.btn-outline-warm:hover{ background:rgba(255,255,255,.08); color:#fff; }

.hero{
  padding:5rem 0 3.4rem;
  position:relative;
}

.hero::before{
  content:"";
  position:absolute;
  left:-7%;
  bottom:1rem;
  width:54vw;
  min-width:320px;
  height:220px;
  background:
    radial-gradient(circle at 24% 40%, rgba(255,255,255,.45), transparent 18%),
    linear-gradient(120deg, rgba(245,163,37,.15), rgba(255,248,233,.04));
  border-radius:var(--radius-abstract);
  filter:blur(10px);
  pointer-events:none;
}

.hero::after{
  content:"";
  position:absolute;
  right:-8%;
  top:4rem;
  width:44vw;
  min-width:260px;
  height:270px;
  background:
    radial-gradient(circle at 70% 34%, rgba(255,255,255,.38), transparent 18%),
    linear-gradient(145deg, rgba(15,73,86,.14), rgba(248,212,108,.1));
  border-radius:var(--radius-abstract);
  filter:blur(10px);
  pointer-events:none;
}
.hero-layout{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:2rem;
  align-items:stretch;
  position:relative;
  z-index:1;
}

.hero-panel,
.image-frame,
.media-card,
.story-card,
.soft-card,
.service-card,
.quote-card,
.contact-panel,
.legal-card,
.text-card,
.page-hero-copy,
.page-hero-mark,
.feature-image,
.portrait-card,
.footer-panel{
  box-shadow:var(--shadow-card);
  border:1px solid #0f4956;
}

.hero-panel{
  background:
    radial-gradient(circle at 82% 20%, rgba(248,212,108,.22), transparent 22%),
    radial-gradient(circle at 12% 84%, rgba(255,255,255,.08), transparent 18%),
    linear-gradient(145deg, var(--petrol) 0%, #0d3d48 54%, #123743 100%);
  color:#fff;
  border-radius:var(--radius-panel);
  padding:4.2rem 3.8rem 4rem 3.7rem;
  position:relative;
  overflow:hidden;
  min-height:500px;
}

.hero-panel::before{
  content:"";
  position:absolute;
  right:-54px;
  top:-32px;
  width:250px;
  height:170px;
  border-radius:var(--radius-abstract);
  background:linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,0));
}

.hero-panel::after{
  content:"";
  position:absolute;
  left:-72px;
  bottom:-78px;
  width:260px;
  height:190px;
  border-radius:var(--radius-abstract);
  background:linear-gradient(135deg, rgba(248,212,108,.14), rgba(255,255,255,0));
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.5rem .9rem;
  border-radius:58% 42% 50% 50% / 62% 38% 56% 44%;
  background:rgba(255,255,255,.1);
  font-size:.88rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.eyebrow-light{ background:rgba(179,175,112,.18); color:var(--petrol); }

.hero-panel h1{
  font-family:"Cormorant Garamond",serif;
  font-size:4.4rem;
  font-weight:600;
  line-height:.88;
  margin:1.05rem 0 1.2rem;
  max-width:10ch;
}

.hero-panel p{
  color:rgba(255,255,255,.88);
  max-width:31rem;
  font-size:1.2rem;
  
  margin-bottom:0;
}
.hero-actions{ display:flex; gap:.9rem; flex-wrap:wrap; margin:2rem 0 2.2rem; }
.hero-points{
  display:grid;
  grid-template-columns:1fr;
  gap:.95rem;
  max-width:34rem;
}
.hero-point{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:1rem;
  align-items:start;
}
.hero-point strong{
  display:block;
  margin-bottom:0;
  font-size:1.05rem;
}
.hero-point span{
  display:block;
  line-height:1.6;
}

.hero-visual{ display:grid; gap:1.35rem; align-content:start; }
.hero-collage{
  grid-template-columns:1fr 50%;
  grid-template-rows:auto auto;
  position:relative;
  padding-top:2.4rem;
}
.image-frame{
  background:var(--white);
  border-radius:var(--radius-frame);
  overflow:hidden;
  position:relative;
  box-shadow:var(--shadow-card);
}
.image-frame img,
.image-frame video{ width:100%; height:100%; object-fit:cover; display:block; }
.image-frame::after{
  content:"";
  position:absolute;
  inset:auto 8% 8% auto;
  width:28%;
  height:16%;
  background:linear-gradient(135deg, rgba(255,255,255,.32), rgba(255,255,255,0));
  border-radius:66% 34% 72% 28% / 56% 32% 68% 44%;
  pointer-events:none;
}

.hero-photo{ height:470px; }
.hero-photo-main{
  grid-column:1 / 2;
  grid-row:1 / 3;
  border-radius:var(--radius-frame);
}
.hero-photo-small{
  grid-column:2 / 3;
  grid-row:1 / 2;
  height:210px;
  transform:translate(-26px, 32px);
  border-radius:var(--radius-frame);
  box-shadow:var(--shadow-soft);
  z-index:2;
}

.media-card,
.story-card,
.soft-card,
.service-card,
.quote-card,
.contact-panel,
.legal-card,
.text-card,
.page-hero-copy{
  background:var(--white);
  border-radius:var(--radius-panel);
  padding:3.1rem 2.95rem 3rem;
  border:1px solid #0f4956;
}

.hero-panel > *,
.media-card > *,
.story-card > *,
.soft-card > *,
.service-card > *,
.quote-card > *,
.contact-panel > *,
.legal-card > *,
.text-card > *,
.page-hero-copy > *,
.page-hero-mark > *{
  position:relative;
  z-index:2;
}

.floating-butterfly{
  position:absolute;
  width:130px;
  height:auto;
  pointer-events:none;
  z-index:4;
  filter:drop-shadow(var(--shadow-soft));
  opacity:.86;
  transform-origin:center;
}

.floating-butterfly-home-a{
  right:-18px;
  top:18px;
  animation:butterfly-flight-up-right 8.8s ease-in-out infinite, butterfly-shimmer 5.2s ease-in-out infinite;
}

.floating-butterfly-home-b{
  left:-181px;
  bottom:720px;
  width:130px;
  animation:butterfly-flight-up-right 9.4s ease-in-out infinite, butterfly-shimmer 5.8s ease-in-out infinite reverse;
}

.hero-caption{
  background:rgba(255,249,244,.96);
  border:1px solid #0f4956;
  border-radius:var(--radius-frame);
  padding:1.85rem 2.1rem 1.75rem;
  transform:none;
  max-width:386px;
}

.organic-note{
  grid-column:1 / 3;
  grid-row:3 / 4;
  justify-self:start;
  align-self:end;
  margin:-76px 0 1.1rem 7.2rem;
  z-index:3;
}

.section{
  padding:4.8rem 0;
  position:relative;
  z-index:1;
}

.section::before{
  content:"";
  position:absolute;
  left:6%;
  top:1.2rem;
  width:180px;
  height:26px;
  background:linear-gradient(90deg, rgba(245,163,37,.14), rgba(245,163,37,0));
  border-radius:var(--radius-abstract);
  pointer-events:none;
}

.section:nth-of-type(odd)::after{
  content:"";
  position:absolute;
  right:-3%;
  bottom:2rem;
  width:240px;
  height:90px;
  background:linear-gradient(135deg, rgba(15,73,86,.06), rgba(15,73,86,0));
  border-radius:var(--radius-abstract);
  pointer-events:none;
}

.section-title{ max-width:var(--text-max); margin-bottom:2.6rem; }
.section-title h2,
.page-hero h1{
  font-family:"Cormorant Garamond",serif;
  color:var(--petrol);
  line-height:.92;
}
.section-title h2{
  font-size:2.3rem;
  margin:.75rem 0 1rem;
  font-weight:600;
  max-width:25ch;
}
.section-title p,
.soft-card p,
.service-card p,
.story-card p,
.quote-card p,
.contact-panel p,
.legal-card p,
.text-card p,
.media-card p{
  color:var(--muted);
  margin-bottom:0;
  font-size:1.2rem;
 
}

.media-card h2,
.story-card h3,
.soft-card h3,
.text-card h3,
.contact-panel h3,
.legal-card h3{
  font-family:"Cormorant Garamond",serif;
  color:var(--petrol);
  font-size:2.1rem;
  line-height:1;
  margin:0 0 .85rem;
  font-weight:600;
}

.story-grid,
.service-grid,
.contact-grid,
.legal-grid,
.media-grid{
  display:grid;
  gap:2rem;
}

.story-grid{ grid-template-columns:1.08fr .92fr; }
.media-grid{ grid-template-columns:1fr 1fr; align-items:start; }
.service-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.contact-grid,
.legal-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }

.story-card{
  background:linear-gradient(180deg, rgba(248,241,234,.98), rgba(255,253,249,.98));
  border-radius:var(--radius-panel);
}
.soft-card{
  background:linear-gradient(180deg, rgba(179,175,112,.22), rgba(255,255,255,.96));
  border-radius:var(--radius-panel);
}

.story-list,
.clean-list{
  padding-left:1.9rem;
  margin:1.15rem 0 1.15rem;
  color:var(--muted);
  list-style-position:outside;
}
.story-list li,
.clean-list li{
  font-size:1.2rem;

  padding-left:.4rem;
}
.story-list li::marker,
.clean-list li::marker{
  color:var(--gold);
}
.story-list li + li,
.clean-list li + li{ margin-top:.1rem; }

.service-card{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-height:280px;
  position:relative;
  overflow:hidden;
  border-radius:var(--radius-panel);
  background:
    radial-gradient(circle at 82% 18%, rgba(245,163,37,.14), transparent 18%),
    radial-gradient(circle at 16% 86%, rgba(255,255,255,.68), transparent 20%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,241,234,.98));
  transition:transform .35s ease, box-shadow .35s ease;
}

.service-card::before{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-60px;
  width:170px;
  height:130px;
  border-radius:var(--radius-abstract);
  background:rgba(179,175,112,.14);
}

.service-card .service-number{
  font-family:"Cormorant Garamond",serif;
  color:var(--gold);
  font-size:2.3rem;
  line-height:1;
}
.service-card h3{ color:var(--petrol); font-size:1.35rem; margin:.7rem 0 .55rem; }
.service-card p{ font-size:1.2rem; }
.service-card-more{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  margin-top:.35rem;
  font-weight:800;
  color:var(--petrol-soft);
}
.service-card-more::after{
  content:"\203A";
  font-size:1.1em;
  line-height:1;
}
.service-card img{
  width:100%;
  height:220px;
  object-fit:cover;
  border-radius:var(--radius-frame);
  margin-top:1.4rem;
}

.service-card .service-card-certificate{
  height:170px;
  object-fit:contain;
  object-position:center;
  padding:.15rem;
  background:transparent;
  transform:rotate(-6deg);
  filter:drop-shadow(0 10px 18px rgba(18,55,67,.16));
}

.service-card:nth-child(2n){
  border-radius:var(--radius-panel);
}

.service-card:nth-child(3n){
  border-radius:var(--radius-panel);
}

.service-card:hover{
  transform:translateY(-8px);
  box-shadow:var(--shadow-strong);
}

.related-services .section-title p{
  max-width:58rem;
}

.related-services .service-card{
  min-height:100%;
}

.page-hero{ padding:3.4rem 0 1.6rem; }
.page-hero-shell{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:1.8rem;
  align-items:stretch;
}
.page-hero-shell-single{
  grid-template-columns:1fr;
}
.page-about .page-hero-shell{
  align-items:start;
}
.page-orgon .page-hero-shell{
  align-items:start;
}
.page-orgon-hero .page-hero-shell{
  grid-template-columns:1fr;
  gap:1.8rem;
}
.page-hero-copy{
  background:linear-gradient(180deg, rgba(248,241,234,.98), rgba(255,253,249,.98));
  border-radius:var(--radius-panel);
  padding:3.3rem 3rem 3.15rem;
  position:relative;
  isolation:isolate;
}
.page-hero-copy p{
  font-size:1.2rem;
  
}
.page-about .page-hero-copy{
  align-self:start;
}
.page-orgon .page-hero-copy{
  align-self:start;
}
.page-orgon-hero .page-hero-copy{
  width:100%;
}
.page-hero.page-orgon-hero h1{
  max-width:none;
}
.page-orgon-hero .page-hero-mark{
  max-width:900px;
  width:100%;
  margin:0 auto;
}
.page-rifetech .page-hero-copy{
  width:100%;
}
.page-hero.page-rifetech h1{
  max-width:none;
}
.page-reading-layout{
  grid-template-columns:1fr;
  gap:2.2rem;
}
.page-rifetech .media-grid,
.page-rifetech .story-grid,
.page-bioscan .media-grid,
.page-bioscan .story-grid,
.page-bemer .media-grid,
.page-bemer .story-grid,
.page-4e .media-grid,
.page-4e .story-grid,
.page-detox .media-grid,
.page-detox .story-grid,
.page-vitori .media-grid,
.page-vitori .story-grid,
.page-schumann .media-grid,
.page-schumann .story-grid,
.page-orgon .media-grid,
.page-orgon .story-grid{
  grid-template-columns:1fr;
  gap:2.4rem;
}
.page-rifetech .section-title,
.page-bioscan .section-title,
.page-bemer .section-title,
.page-4e .section-title,
.page-detox .section-title,
.page-vitori .section-title,
.page-schumann .section-title,
.page-orgon .section-title{
  max-width:var(--text-max);
}
.page-rifetech .text-card,
.page-rifetech .story-card,
.page-rifetech .soft-card,
.page-bioscan .text-card,
.page-bioscan .story-card,
.page-bioscan .soft-card,
.page-bemer .text-card,
.page-bemer .story-card,
.page-bemer .soft-card,
.page-4e .text-card,
.page-4e .story-card,
.page-4e .soft-card,
.page-detox .text-card,
.page-detox .story-card,
.page-detox .soft-card,
.page-vitori .text-card,
.page-vitori .story-card,
.page-vitori .soft-card,
.page-schumann .text-card,
.page-schumann .story-card,
.page-schumann .soft-card,
.page-orgon .story-card,
.page-orgon .soft-card{
  background:transparent;
  box-shadow:none;
  border:none;
  padding:0;
  max-width:var(--text-max);
  margin:0 auto;
}
.page-orgon .text-card{
  width:100%;
  max-width:none;
  margin:0;
}
.page-orgon .text-card,
.page-orgon .story-card,
.page-orgon .soft-card,
.page-orgon .service-card,
.page-orgon .section-title{
  background:transparent;
  box-shadow:none;
  border:none;
  border-radius:var(--radius-panel);
  padding:2.3rem 2.5rem;
}
.page-orgon .text-card{
  width:100%;
}
.page-rifetech .feature-image,
.page-rifetech .image-frame,
.page-bioscan .feature-image,
.page-bioscan .image-frame,
.page-bemer .feature-image,
.page-bemer .image-frame,
.page-4e .feature-image,
.page-4e .image-frame,
.page-detox .feature-image,
.page-detox .image-frame,
.page-vitori .feature-image,
.page-vitori .image-frame,
.page-schumann .feature-image,
.page-schumann .image-frame,
.page-orgon .feature-image,
.page-orgon .image-frame{
  max-width:900px;
  margin:0 auto;
}
.page-inline-photo{
  width:100%;
  max-width:900px;
  margin:0 auto;
}
.page-kahi .kahi-certificate-frame{
  max-width:520px;
  margin-top:1.5rem;
}
.page-kahi .kahi-hero-certificate{
  min-height:100%;
  padding:1.35rem;
  overflow:visible;
}
.page-kahi .kahi-hero-certificate img{
  width:100%;
  height:auto;
  max-width:520px;
  object-fit:contain;
  object-position:center;
  padding:.55rem;
  background:rgba(255,255,255,.96);
  border-radius:calc(var(--radius-frame) - 6px);
}
.page-kahi .kahi-hero-certificate .page-hero-mark-butterfly{
  left:auto;
  bottom:auto;
  top:-14px;
  right:6px;
  width:138px;
  height:172px;
}
.page-kahi .kahi-certificate-frame img{
  width:100%;
  height:auto;
  object-fit:contain;
  padding:1rem;
  background:rgba(255,255,255,.94);
}
@media (max-width: 1199.98px){
  .page-kahi .kahi-hero-certificate{
    min-height:auto;
  }
  .page-kahi .kahi-hero-certificate .page-hero-mark-butterfly{
    top:-10px;
    right:2px;
    width:124px;
    height:154px;
  }
}
.page-karten .karten-gallery{
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  gap:1rem;
  margin-top:1.8rem;
  align-items:end;
}
.page-karten .karten-gallery-item{
  margin:0;
  overflow:hidden;
}
.page-karten .karten-gallery-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.page-karten .karten-gallery-item:hover img{
  transform:scale(1.06);
}
.page-karten .karten-gallery-item-main{
  grid-column:1 / span 7;
  grid-row:1 / span 2;
  height:520px;
}
.page-karten .karten-gallery-item-tall{
  grid-column:8 / -1;
  grid-row:1 / span 2;
  height:520px;
}
.page-karten .karten-gallery-item-detail-left{
  grid-column:1 / span 4;
  grid-row:3;
  height:270px;
}
.page-karten .karten-gallery-item-detail-right{
  grid-column:5 / span 4;
  grid-row:3;
  height:270px;
}
.page-karten .karten-gallery-item-wide{
  grid-column:9 / -1;
  grid-row:3;
  height:270px;
}
.page-karten .karten-gallery-item-accent{
  grid-column:3 / span 8;
  grid-row:4;
  height:310px;
}

.click-play-video{
  position:relative;
  width:min(100%, 360px);
  margin:0 auto;
  aspect-ratio:9 / 16;
  border-radius:var(--radius-frame);
  overflow:hidden;
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.32), transparent 28%),
    linear-gradient(180deg, rgba(255,247,236,.96), rgba(235,244,246,.96));
  box-shadow:var(--shadow-soft);
}

.page-4e .page-inline-photo{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:.75rem;
  width:fit-content;
  max-width:100%;
}

.page-about .page-inline-photo{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:.75rem;
  width:fit-content;
  max-width:100%;
}

.click-play-video-media{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  background:#e9e1d6;
}

.click-play-video-button{
  position:absolute;
  inset:auto 1rem 1rem 1rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.8rem;
  min-height:56px;
  padding:.85rem 1.15rem;
  border:none;
  border-radius:999px;
  background:rgba(16,31,36,.78);
  color:#fffaf4;
  font-weight:800;
  letter-spacing:.01em;
  cursor:pointer;
  transition:transform .2s ease, opacity .2s ease, background .2s ease;
}

.click-play-video-button:hover{
  transform:translateY(-1px);
  background:rgba(16,31,36,.88);
}

.click-play-video-icon{
  width:38px;
  height:38px;
  border-radius:50%;
  background:linear-gradient(180deg, #fff4cf, #f3b446);
  box-shadow:0 8px 18px rgba(0,0,0,.16);
  position:relative;
  flex:0 0 auto;
}

.click-play-video-icon::before{
  content:"";
  position:absolute;
  left:15px;
  top:11px;
  width:0;
  height:0;
  border-top:8px solid transparent;
  border-bottom:8px solid transparent;
  border-left:12px solid rgba(37,29,23,.88);
}

.click-play-video.is-playing .click-play-video-button{
  opacity:0;
  pointer-events:none;
}
.detox-compare{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
  align-items:start;
}
.detox-compare-card{
  display:grid;
  gap:.75rem;
}
.detox-compare-label{
  display:inline-flex;
  align-self:start;
  justify-self:start;
  padding:.45rem .9rem;
  border-radius:999px;
  background:rgba(15,73,86,.08);
  color:var(--petrol);
  font-size:.9rem;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.detox-compare-frame{
  height:auto;
}
.detox-compare-frame img{
  width:100%;
  height:auto;
  object-fit:cover;
  aspect-ratio:3 / 4;
}
.page-orgon .page-orgon-bottom-photo{
  width:100%;
  max-width:900px;
  margin:0 auto;
  height:auto;
}
.page-orgon .page-orgon-bottom-photo img{
  width:100%;
  height:auto;
  object-fit:contain;
}
.page-orgon .service-grid{
  grid-template-columns:1fr;
  gap:1.4rem;
  max-width:var(--text-max);
}
.page-orgon .service-card{
  min-height:0;
}
.page-orgon .related-services .service-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.7rem;
  max-width:none;
}
.page-orgon .related-services .service-card{
  min-height:100%;
  background:
    radial-gradient(circle at 82% 18%, rgba(245,163,37,.14), transparent 18%),
    radial-gradient(circle at 16% 86%, rgba(255,255,255,.68), transparent 20%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,241,234,.98));
  box-shadow:var(--shadow-card);
  border:1px solid #0f4956;
  padding:2.3rem 2.5rem;
}
.page-orgon .related-services .service-card:hover{
  box-shadow:var(--shadow-strong);
}
.page-rifetech .reading-note,
.page-bioscan .reading-note,
.page-bemer .reading-note,
.page-4e .reading-note,
.page-detox .reading-note,
.page-vitori .reading-note,
.page-schumann .reading-note,
.page-orgon .reading-note{
  background:rgba(255,253,249,.86);
  box-shadow:var(--shadow-soft);
  border:1px solid rgba(18,55,67,.06);
  border-radius:var(--radius-panel);
  padding:2rem 2.2rem;
}
.page-rifetech .page-hero-copy p,
.page-bioscan .page-hero-copy p,
.page-bemer .page-hero-copy p,
.page-4e .page-hero-copy p,
.page-detox .page-hero-copy p,
.page-vitori .page-hero-copy p,
.page-schumann .page-hero-copy p,
.page-orgon .page-hero-copy p{
  font-size:1.2rem;
  line-height:1.9;
}
.page-rifetech .page-hero-copy p,
.page-rifetech .text-card p,
.page-rifetech .story-card p,
.page-rifetech .soft-card p,
.page-rifetech .section-title p,
.page-rifetech .story-list li,
.page-bioscan .page-hero-copy p,
.page-bioscan .text-card p,
.page-bioscan .story-card p,
.page-bioscan .soft-card p,
.page-bioscan .section-title p,
.page-bioscan .story-list li,
.page-bemer .page-hero-copy p,
.page-bemer .text-card p,
.page-bemer .story-card p,
.page-bemer .soft-card p,
.page-bemer .section-title p,
.page-bemer .story-list li,
.page-4e .page-hero-copy p,
.page-4e .text-card p,
.page-4e .story-card p,
.page-4e .soft-card p,
.page-4e .section-title p,
.page-4e .story-list li,
.page-detox .page-hero-copy p,
.page-detox .text-card p,
.page-detox .story-card p,
.page-detox .soft-card p,
.page-detox .section-title p,
.page-detox .story-list li,
.page-vitori .page-hero-copy p,
.page-vitori .text-card p,
.page-vitori .story-card p,
.page-vitori .soft-card p,
.page-vitori .section-title p,
.page-vitori .story-list li,
.page-schumann .page-hero-copy p,
.page-schumann .text-card p,
.page-schumann .story-card p,
.page-schumann .soft-card p,
.page-schumann .section-title p,
.page-schumann .story-list li,
.page-orgon .page-hero-copy p,
.page-orgon .text-card p,
.page-orgon .story-card p,
.page-orgon .soft-card p,
.page-orgon .service-card p,
.page-orgon .section-title p,
.page-orgon .story-list li{
  font-size:1.2rem;

  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
}
.page-rifetech .page-hero-copy p + p,
.page-rifetech .text-card p + p,
.page-rifetech .story-card p + p,
.page-rifetech .soft-card p + p,
.page-bioscan .page-hero-copy p + p,
.page-bioscan .text-card p + p,
.page-bioscan .story-card p + p,
.page-bioscan .soft-card p + p,
.page-bemer .page-hero-copy p + p,
.page-bemer .text-card p + p,
.page-bemer .story-card p + p,
.page-bemer .soft-card p + p,
.page-4e .page-hero-copy p + p,
.page-4e .text-card p + p,
.page-4e .story-card p + p,
.page-4e .soft-card p + p,
.page-detox .page-hero-copy p + p,
.page-detox .text-card p + p,
.page-detox .story-card p + p,
.page-detox .soft-card p + p,
.page-vitori .page-hero-copy p + p,
.page-vitori .text-card p + p,
.page-vitori .story-card p + p,
.page-vitori .soft-card p + p,
.page-schumann .page-hero-copy p + p,
.page-schumann .text-card p + p,
.page-schumann .story-card p + p,
.page-schumann .soft-card p + p,
.page-orgon .page-hero-copy p + p,
.page-orgon .text-card p + p,
.page-orgon .story-card p + p,
.page-orgon .soft-card p + p{
  margin-top:1rem;
}
.page-rifetech .text-card h3,
.page-rifetech .story-card h3,
.page-rifetech .soft-card h3,
.page-bioscan .text-card h3,
.page-bioscan .story-card h3,
.page-bioscan .soft-card h3,
.page-bemer .text-card h3,
.page-bemer .story-card h3,
.page-bemer .soft-card h3,
.page-4e .text-card h3,
.page-4e .story-card h3,
.page-4e .soft-card h3,
.page-detox .text-card h3,
.page-detox .story-card h3,
.page-detox .soft-card h3,
.page-vitori .text-card h3,
.page-vitori .story-card h3,
.page-vitori .soft-card h3,
.page-schumann .text-card h3,
.page-schumann .story-card h3,
.page-schumann .soft-card h3,
.page-orgon .text-card h3,
.page-orgon .story-card h3,
.page-orgon .soft-card h3,
.page-orgon .service-card h3{
  max-width:var(--text-max);
  margin-left:auto;
  margin-right:auto;
  font-size:2.35rem;
  line-height:1.08;
}
.page-rifetech .story-list,
.page-bioscan .story-list,
.page-bemer .story-list,
.page-4e .story-list,
.page-detox .story-list,
.page-vitori .story-list,
.page-schumann .story-list,
.page-orgon .story-list{
  margin-top:1.35rem;
}
.page-rifetech .story-list li + li,
.page-bioscan .story-list li + li,
.page-bemer .story-list li + li,
.page-4e .story-list li + li,
.page-detox .story-list li + li,
.page-vitori .story-list li + li,
.page-schumann .story-list li + li,
.page-orgon .story-list li + li{
  margin-top:.95rem;
}
.page-hero h1{ font-size:2.6rem; margin:.8rem 0 1rem; font-weight:600; max-width:38ch; }
.page-contact .page-hero h1{
  font-size:2.6rem;
  margin:.8rem 0 1rem;
  font-weight:600;
  max-width:50ch;
}
.page-hero-mark{
  background:
    radial-gradient(circle at 38% 34%, rgba(255,248,233,.8), transparent 24%),
    linear-gradient(145deg, var(--sand), var(--white));
  border-radius:var(--radius-panel);
  padding:1.8rem;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  isolation:isolate;
}
.page-hero-mark > img,
.page-hero-mark > .butterfly-art{ max-width:240px; }

.page-hero-mark.page-hero-photo{
  padding:1rem;
  overflow:visible;
}

.page-hero-mark.page-hero-photo img{
  width:100%;
  height:100%;
  max-width:none;
  object-fit:contain;
  object-position:center;
  border-radius:var(--radius-frame);
}
.page-4e-logo{
  padding:1.2rem;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:1rem;
  flex-wrap:wrap;
}
.page-4e-logo img{
  width:auto;
  height:auto;
  max-width:min(320px, 100%);
  max-height:320px;
}
.page-4e-info-link{
  margin-top:.35rem;
  white-space:nowrap;
}

.page-hero-copy::after,
.page-hero-mark::before{
  content:none;
}

.page-hero-copy-butterfly,
.page-hero-mark-butterfly{
  position:absolute;
  pointer-events:none;
  z-index:6;
  filter:drop-shadow(var(--shadow-soft));
}

.page-hero-copy-butterfly{
  top:-18px;
  right:26px;
  width:130px;
  height:162px;
  transform:scaleX(-1) rotate(-35deg);
  animation:butterfly-perch-up-right 6.6s ease-in-out infinite, butterfly-shimmer 6.2s ease-in-out infinite;
}

.page-hero-mark-butterfly{
  left:-18px;
  bottom:18px;
  width:130px;
  height:163px;
  transform:scaleX(-1) rotate(-35deg);
  animation:butterfly-perch-up-right 6.9s ease-in-out infinite, butterfly-shimmer 6.6s ease-in-out infinite reverse;
}

@keyframes butterfly-logo-float{
  0%,100%{ transform:translate3d(0,0,0) scaleX(-1) rotate(-35deg) scale(1); }
  50%{ transform:translate3d(3px,-4px,0) scaleX(-1) rotate(-40deg) scale(1.03); }
}

@keyframes butterfly-wing-left{
  0%,100%{ transform:perspective(900px) rotateY(0deg) rotate(-1deg) scale(1); }
  50%{ transform:perspective(900px) rotateY(26deg) rotate(-4deg) scale(1.01,.99); }
}

@keyframes butterfly-wing-right{
  0%,100%{ transform:perspective(900px) rotateY(0deg) rotate(1deg) scale(1); }
  50%{ transform:perspective(900px) rotateY(-26deg) rotate(4deg) scale(1.01,.99); }
}

@keyframes butterfly-logo-glow{
  0%,100%{ filter:drop-shadow(0 0 0 rgba(255,205,98,0)) drop-shadow(0 12px 20px rgba(25,40,48,.08)); }
  50%{ filter:drop-shadow(0 0 14px rgba(255,200,97,.28)) drop-shadow(0 12px 20px rgba(25,40,48,.1)); }
}

@keyframes butterfly-flight-up-right{
  0%,100%{ transform:translate3d(0,0,0) scaleX(-1) rotate(-35deg) scale(1); }
  30%{ transform:translate3d(12px,-8px,0) scaleX(-1) rotate(-41deg) scale(1.04); }
  60%{ transform:translate3d(22px,-20px,0) scaleX(-1) rotate(-31deg) scale(.98); }
}

@keyframes butterfly-perch-up-right{
  0%,100%{ transform:scaleX(-1) rotate(-35deg) translate3d(0,0,0) scale(1); }
  50%{ transform:scaleX(-1) rotate(-39deg) translate3d(6px,-4px,0) scale(1.02); }
}

@keyframes butterfly-shimmer{
  0%,100%{ opacity:.82; filter:drop-shadow(0 10px 20px rgba(29,46,54,.12)); }
  50%{ opacity:1; filter:drop-shadow(0 0 14px rgba(255,208,105,.26)) drop-shadow(0 10px 20px rgba(29,46,54,.14)); }
}

.feature-image{
  overflow:hidden;
  border-radius:var(--radius-frame);
  background:var(--white);
  height:380px;
  border:1px solid #0f4956;
}
.feature-image img{ width:100%; height:100%; object-fit:cover; }

.results-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:2rem;
}

.result-card{
  background:var(--white);
  border:1px solid #0f4956;
  border-radius:var(--radius-panel);
  box-shadow:var(--shadow-card);
  overflow:hidden;
}

.result-media{
  position:relative;
  background:linear-gradient(180deg, rgba(255,249,244,.96), rgba(245,236,225,.92));
  padding:1rem;
  overflow:hidden;
}

.result-media img{
  width:100%;
  height:auto;
  display:block;
  border-radius:20px;
  border:1px solid rgba(15,73,86,.14);
}

.watermark-overlay{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%) rotate(-28deg);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:145%;
  padding:.6rem 0;
  background:linear-gradient(90deg, rgba(15,73,86,.08), rgba(15,73,86,.54) 18%, rgba(15,73,86,.7) 50%, rgba(15,73,86,.54) 82%, rgba(15,73,86,.08));
  color:rgba(255,255,255,.92);
  font-size:1.35rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  text-shadow:0 2px 8px rgba(0,0,0,.35);
  box-shadow:0 10px 24px rgba(15,73,86,.16);
  pointer-events:none;
  z-index:2;
  white-space:nowrap;
}

.result-content{
  padding:1.4rem 1.4rem 1.5rem;
}

.result-tags{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  margin-bottom:.9rem;
}

.result-tags span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:.45rem .9rem;
  border-radius:999px;
  background:rgba(15,73,86,.08);
  color:var(--petrol);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.result-content p{
  margin:0;
  color:var(--muted);
}

.gallery-stack{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.7rem;
}
.gallery-stack .image-frame{ height:334px; }

.gallery-stack-organic .image-frame:first-child{
  transform:translateY(18px);
}

.gallery-stack-organic .image-frame:last-child{
  transform:translateY(-14px);
}

.image-frame-shift{
  border-radius:var(--radius-frame);
}

.image-frame-soft{
  border-radius:var(--radius-frame);
}

.portrait-card{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:2rem;
  align-items:center;
}
.portrait-photo{
  height:260px;
  overflow:hidden;
  border-radius:var(--radius-frame);
}
.portrait-photo img{ width:100%; height:100%; object-fit:cover; }

.quote-card{
  background:var(--sand);
  border-radius:var(--radius-panel);
  padding:3.2rem 3rem;
}
.review-marquee{
  display:flex;
  align-items:stretch;
  gap:1.35rem;
  margin-top:2rem;
  overflow:hidden;
  width:100%;
  padding:.2rem 0 .45rem;
}

.review-marquee-track{
  display:flex;
  align-items:stretch;
  gap:1.35rem;
  width:max-content;
  flex:none;
  animation:review-marquee 200s linear infinite;
  will-change:transform;
}

.review-marquee:hover .review-marquee-track{
  animation-play-state:paused;
}

.review-card{
  position:relative;
  display:grid;
  gap:1.1rem;
  flex:0 0 280px;
  min-height:100%;
  padding:2rem 2rem 1.7rem;
  border-radius:var(--radius-panel);
  background:
    radial-gradient(circle at 88% 16%, rgba(248,212,108,.18), transparent 20%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(251,244,236,.94));
  border:1px solid #0f4956;
  box-shadow:var(--shadow-card);
  overflow:hidden;
}

.review-card::before{
  content:"“";
  position:absolute;
  left:1.2rem;
  top:.65rem;
  font-family:"Cormorant Garamond",serif;
  font-size:4.4rem;
  line-height:1;
  color:rgba(15,73,86,.12);
}

.review-rating{
  position:relative;
  z-index:1;
  display:inline-grid;
  place-items:start;
  width:max-content;
  margin-bottom:.15rem;
}

.review-stars{
  grid-area:1 / 1;
  font-size:1.05rem;
  line-height:1;
  letter-spacing:.16rem;
}

.review-stars-base{
  color:rgba(15,73,86,.18);
}

.review-stars-fill{
  width:calc(var(--rating) / 5 * 100%);
  overflow:hidden;
  white-space:nowrap;
  color:#f5a125;
}

.review-text{
  position:relative;
  z-index:1;
  margin:0;
  padding-top:.9rem;
  color:var(--muted);
  font-size:1.02rem;
  line-height:1.75;
}

.review-author{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  min-height:38px;
  width:max-content;
  padding:.45rem .95rem;
  border-radius:999px;
  background:rgba(15,73,86,.08);
  color:var(--petrol);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.review-strip{
  display:flex;
  flex-wrap:wrap;
  gap:.85rem;
  margin-top:1.35rem;
}

.review-pill{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:.65rem 1rem;
  border-radius:999px;
  background:rgba(15,73,86,.08);
  border:1px solid rgba(15,73,86,.12);
  color:var(--petrol);
  font-weight:700;
  line-height:1.45;
  box-shadow:var(--shadow-soft);
}

.home-metamorphosis-card{
  display:grid;
  grid-template-columns:minmax(260px, 340px) 1fr;
  gap:2rem;
  align-items:center;
  padding:2.4rem 2.6rem;
  background:
    radial-gradient(circle at 86% 18%, rgba(248,212,108,.18), transparent 18%),
    radial-gradient(circle at 12% 86%, rgba(255,255,255,.46), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,241,234,.98));
  overflow:hidden;
}

.home-metamorphosis-copy{
  max-width:28rem;
}

.home-metamorphosis-copy p{
  margin:0;
}

.home-metamorphosis-card .metamorphosis-stage-card{
  position:relative;
  min-height:420px;
  width:100%;
}

.home-metamorphosis-card .metamorphosis-branch-scene{
  position:absolute;
  right:-2%;
  bottom:-2%;
  width:min(100%, 720px);
  height:auto;
  transform-origin:90% 42%;
  filter:drop-shadow(0 18px 32px rgba(38,24,14,.08));
  animation:metamorphosis-scene-drift 10s ease-in-out infinite;
}

.home-metamorphosis-card .metamorphosis-phase{
  position:absolute;
  opacity:0;
  transform-origin:center;
}

.home-metamorphosis-card .metamorphosis-phase-art,
.home-metamorphosis-card .metamorphosis-hatch-shell{
  display:block;
  width:100%;
  height:auto;
}

.home-metamorphosis-card .metamorphosis-phase-caterpillar{
  right:24%;
  bottom:26%;
  width:min(38vw, 290px);
  animation:metamorphosis-real-caterpillar 10s linear infinite;
}

.home-metamorphosis-card .metamorphosis-phase-caterpillar .metamorphosis-phase-art{
  animation:metamorphosis-real-caterpillar-wiggle 1.3s ease-in-out infinite;
}

.home-metamorphosis-card .metamorphosis-phase-chrysalis{
  right:13%;
  bottom:13%;
  width:min(11vw, 108px);
  animation:metamorphosis-real-chrysalis 10s ease-in-out infinite;
}

.home-metamorphosis-card .metamorphosis-phase-hatch{
  right:5%;
  bottom:10%;
  width:min(20vw, 210px);
  animation:metamorphosis-real-hatch 10s ease-in-out infinite;
}

.home-metamorphosis-card .metamorphosis-hatch-shell{
  filter:drop-shadow(0 16px 30px rgba(255,200,92,.18));
}

.home-metamorphosis-card .metamorphosis-phase-hatch .butterfly-art{
  position:absolute;
  left:50%;
  top:47%;
  --butterfly-width:min(10vw, 118px);
  --butterfly-height:min(10vw, 118px);
  transform:translate(-50%, -50%) rotate(-8deg);
  filter:drop-shadow(0 16px 26px rgba(255,196,88,.24));
}

.home-metamorphosis-card .metamorphosis-phase-hatch .butterfly-layer-wing-left,
.home-metamorphosis-card .metamorphosis-phase-hatch .butterfly-layer-wing-right{
  animation-duration:1.28s;
}

.home-metamorphosis-card #butterfly-home-metamorphosis-flight{
  position:absolute;
  right:7%;
  bottom:13%;
  opacity:0;
  --butterfly-width:min(15vw, 185px);
  --butterfly-height:min(15vw, 185px);
  transform-origin:center;
  filter:drop-shadow(0 18px 30px rgba(255,200,92,.18));
  animation:metamorphosis-real-flight 10s ease-in-out infinite;
}

.home-metamorphosis-card #butterfly-home-metamorphosis-flight .butterfly-layer-wing-left,
.home-metamorphosis-card #butterfly-home-metamorphosis-flight .butterfly-layer-wing-right{
  animation-duration:1.22s;
}

@keyframes review-marquee{
  from{
    transform:translateX(0);
  }
  to{
    transform:translateX(calc(-100% - 1.35rem));
  }
}

.quote-card blockquote{
  font-family:"Cormorant Garamond",serif;
  font-size:2.5rem;
  font-weight:600;
  line-height:1.02;
  color:var(--petrol);
  margin:0 0 1rem;
}
.quote-line{ width:130px; height:6px; background:var(--olive); border-radius:999px; }

.info-stack{ display:grid; gap:1rem; }
.info-item strong{ display:block; color:var(--petrol); margin-bottom:.2rem; }
.contact-link{
  color:var(--petrol);
  font-weight:800;
  word-break:break-word;
}
.contact-link:hover{ color:var(--petrol-soft); }

.form-panel{
  border-radius:var(--radius-panel);
}

.form-note{
  margin-top:.85rem;
}

.form-alert{
  margin:1.6rem 0 1.4rem;
  padding:1rem 1.2rem;
  border-radius:22px;
  border:1px solid transparent;
  font-weight:700;
  line-height:1.6;
  box-shadow:var(--shadow-soft);
}

.form-alert + .form-alert{
  margin-top:.8rem;
}

.form-alert-success{
  background:rgba(179,175,112,.16);
  border-color:rgba(179,175,112,.38);
  color:var(--petrol-deep);
}

.form-alert-error{
  background:rgba(188,78,57,.08);
  border-color:rgba(188,78,57,.22);
  color:#7b2f1d;
}

.contact-form{
  display:grid;
  gap:1.3rem;
  margin-top:1.7rem;
}

.form-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:1.2rem 1.3rem;
}

.form-field{
  display:grid;
  gap:.55rem;
}

.form-field label{
  color:var(--petrol);
  font-weight:800;
  letter-spacing:.01em;
}

.form-field input,
.form-field select,
.form-field textarea{
  width:100%;
  border:1px solid rgba(18,55,67,.14);
  border-radius:22px;
  padding:.95rem 1rem;
  background:rgba(255,255,255,.92);
  color:var(--ink);
  font:inherit;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45);
  transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.form-field textarea{
  min-height:180px;
  resize:vertical;
}

.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus{
  outline:none;
  border-color:rgba(15,73,86,.36);
  box-shadow:0 0 0 4px rgba(15,73,86,.08);
  background:#fff;
}

.radio-group{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
}

.radio-option,
.check-option{
  display:flex;
  align-items:flex-start;
  gap:.7rem;
  padding:1rem 1.05rem;
  border:1px solid rgba(18,55,67,.08);
  border-radius:24px;
  background:rgba(255,255,255,.76);
  line-height:1.6;
}

.check-option-text{
  flex:1;
  min-width:0;
}

.check-option .inline-link{
  color:var(--petrol);
  font-weight:800;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.12em;
}

.radio-option{
  font-weight:700;
  color:var(--ink);
}

.radio-option input,
.check-option input{
  margin-top:.22rem;
  accent-color:var(--petrol);
}

.site-footer{
  position:relative;
  z-index:2;
  margin-top:1.2rem;
  padding:1rem 0 2rem;
}

.footer-panel{
  background:
    radial-gradient(circle at 78% 20%, rgba(248,212,108,.18), transparent 18%),
    radial-gradient(circle at 18% 120%, rgba(245,163,37,.16), transparent 24%),
    linear-gradient(145deg, #1a4b55 0%, var(--petrol-deep) 58%, #17353c 100%);
  color:#fff;
  border-radius:var(--radius-panel);
  padding:2.2rem;
}
.footer-brand{ display:flex; align-items:flex-start; gap:1.2rem; }
.footer-title{
  font-family:"Cormorant Garamond",serif;
  font-size:2.3rem;
  font-weight:600;
}
.footer-heading{
  font-size:.9rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(255,255,255,.66);
  margin-bottom:.8rem;
}
.footer-text,
.footer-note{
  color:rgba(255,255,255,.76);
  font-size:1.0rem;
}
.footer-socials{
  display:flex;
  flex-wrap:wrap;
  gap:11px;
  margin-top:1.15rem;
}
.footer-socials .social-link{
  display:grid;
  width:46px;
  height:46px;
  flex:0 0 46px;
  place-items:center;
  color:rgba(255,255,255,.84);
  background:rgba(237,240,231,.11);
  border:1px solid rgba(237,240,231,.28);
  border-radius:50%;
  opacity:.82;
  text-decoration:none;
  transition:color .2s, background .2s, border-color .2s, opacity .2s, transform .2s;
}
.footer-socials .social-link:hover,
.footer-socials .social-link:focus-visible{
  color:#fff;
  background:rgba(237,240,231,.2);
  border-color:rgba(237,240,231,.5);
  opacity:1;
  transform:translateY(-3px);
}
.footer-socials .social-link:focus-visible{
  outline:2px solid #fff;
  outline-offset:3px;
}
.footer-socials .social-link svg{
  width:22px;
  height:22px;
  fill:currentColor;
  stroke:none;
}
.footer-socials .social-instagram svg{
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}
.footer-socials .social-instagram .social-dot{
  fill:currentColor;
  stroke:none;
}
.footer-socials .social-youtube .social-play{
  fill:var(--petrol-deep);
}
.footer-note{
  margin-top:1.15rem;
  font-size:.88rem;
  line-height:1.7;
  max-width:none;
  width:100%;
}
.footer-links{ display:grid; gap:.5rem; }
.footer-links a{ color:#fff; font-weight:700; }
.footer-bottom{ text-align:center; color:var(--muted); margin-top:1rem; font-size:.95rem; }
.floating-whatsapp{
  position:fixed;
  right:1.25rem;
  bottom:1.25rem;
  z-index:40;
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  padding:.9rem 1.1rem;
  border-radius:999px;
  background:linear-gradient(145deg, #25d366, #128c7e);
  color:#fff;
  box-shadow:0 20px 38px rgba(18,140,126,.28);
  text-decoration:none;
  font-weight:800;
  letter-spacing:.01em;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.floating-whatsapp:hover{
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 24px 42px rgba(18,140,126,.34);
  filter:saturate(1.04);
}
.floating-whatsapp svg{
  width:1.5rem;
  height:1.5rem;
  flex:0 0 auto;
}

@media (max-width: 1199.98px){
  .hero-layout,
  .story-grid,
  .service-grid,
  .media-grid,
  .results-grid,
  .page-hero-shell{
    grid-template-columns:1fr;
  }

  .hero-collage{
    grid-template-columns:1fr;
    grid-template-rows:auto;
  }

  .hero-photo,
  .hero-photo-main{ height:380px; grid-column:auto; grid-row:auto; }
  .hero-photo-small{
    grid-column:auto;
    grid-row:auto;
    height:240px;
    transform:translate(0, 0);
  }
  .organic-note{
    grid-column:auto;
    grid-row:auto;
    margin:0;
    justify-self:auto;
    align-self:auto;
  }
  .feature-image{ height:280px; }
  .page-karten .karten-gallery{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .page-karten .karten-gallery-item{
    grid-column:auto;
    grid-row:auto;
    transform:none;
    height:300px;
  }
  .page-karten .karten-gallery-item-main,
  .page-karten .karten-gallery-item-accent{
    grid-column:1 / -1;
    height:360px;
  }
}

@media (max-width: 991.98px){
  .navbar-collapse{
    background:rgba(255,253,249,.98);
    border-radius:24px;
    padding:1rem;
    margin-top:1rem;
    box-shadow:var(--shadow);
  }

  .hero{
    padding:3.4rem 0 2.2rem;
  }

  .hero-panel{
    border-radius:var(--radius-panel);
    padding:3.2rem 2.5rem;
    min-height:auto;
  }

  .hero-panel h1{ font-size:3.6rem; }
  .contact-grid,
  .legal-grid,
  .portrait-card,
  .gallery-stack,
  .form-grid,
  .results-grid{
    grid-template-columns:1fr;
  }

  .hero-photo{ height:320px; }
  .hero-photo-small{ height:200px; }
  .feature-image{ height:280px; }
  .floating-butterfly-home-a{ right:-10px; top:8px; width:130px; }
  .floating-butterfly-home-b{ left:-10px; bottom:14px; width:130px; }
  .page-hero-copy-butterfly{ width:130px; height:99px; top:-10px; right:18px; }
  .page-hero-mark-butterfly{ width:130px; height:100px; left:-10px; bottom:14px; }

  .section{ padding:3.6rem 0; }
  .page-hero{ padding:2.8rem 0 1.4rem; }
  .section-title h2,
  .page-hero h1{ font-size:3.2rem; }
  .page-orgon .related-services .service-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 575.98px){
  .brand-title{ font-size:1.55rem; }
  .brand-subtitle{ font-size:.82rem; }
  .page-karten .karten-gallery{
    grid-template-columns:1fr;
    gap:.9rem;
  }
  .page-karten .karten-gallery-item,
  .page-karten .karten-gallery-item-main,
  .page-karten .karten-gallery-item-tall,
  .page-karten .karten-gallery-item-detail-left,
  .page-karten .karten-gallery-item-detail-right,
  .page-karten .karten-gallery-item-wide,
  .page-karten .karten-gallery-item-accent{
    grid-column:auto;
    grid-row:auto;
    height:auto;
    transform:none;
  }
  .page-karten .karten-gallery-item img{
    aspect-ratio:4 / 5;
  }
  .floating-whatsapp{
    width:3.8rem;
    height:3.8rem;
    padding:0;
    justify-content:center;
    border-radius:50%;
  }
  .floating-whatsapp span{
    display:none;
  }
  .hero-panel h1{ font-size:3rem; }
  .section-title h2,
  .page-hero h1{ font-size:2.7rem; }
  .quote-card blockquote{ font-size:2.2rem; }
  .home-metamorphosis-card{
    padding:2rem 1.9rem;
  }
  .home-metamorphosis-card .metamorphosis-stage-card{
    display:none;
  }
  .home-metamorphosis-card .metamorphosis-phase-caterpillar{
    width:180px;
    right:18%;
    bottom:21%;
  }
  .home-metamorphosis-card .metamorphosis-phase-chrysalis{
    width:64px;
    right:11%;
    bottom:11%;
  }
  .home-metamorphosis-card .metamorphosis-phase-hatch{
    width:130px;
    right:3%;
    bottom:8%;
  }
  .home-metamorphosis-card .metamorphosis-phase-hatch .butterfly-art{
    --butterfly-width:78px;
    --butterfly-height:78px;
  }
  .home-metamorphosis-card #butterfly-home-metamorphosis-flight{
    --butterfly-width:118px;
    --butterfly-height:118px;
    right:5%;
    bottom:10%;
  }
  .review-marquee-track{
    animation-duration:42s;
  }
  .review-card{
    flex-basis:82vw;
  }
  .media-card,
  .story-card,
  .soft-card,
  .service-card,
  .quote-card,
  .contact-panel,
  .legal-card,
  .text-card,
  .page-hero-copy,
  .page-hero-mark,
  .footer-panel{ padding:1.9rem; }
  .hero-point{ padding:1.1rem 1rem; }
  .hero-point{
    grid-template-columns:1fr;
    gap:.35rem;
  }
  .radio-group{
    flex-direction:column;
  }
  .floating-butterfly{ display:none; }
  .page-hero-copy-butterfly,
  .page-hero-mark-butterfly{ display:none; }

  .service-card,
  .page-hero-copy,
  .page-hero-mark,
  .quote-card,
  .image-frame,
  .feature-image{
    border-radius:var(--radius-frame);
  }
  .page-hero-copy p,
  .text-card p,
  .story-card p,
  .soft-card p,
  .service-card p,
  .section-title p,
  .story-list li,
  .clean-list li{
    font-size:1.2rem;
    
  }
  .page-rifetech .page-hero-copy p,
  .page-bioscan .page-hero-copy p,
  .page-bemer .page-hero-copy p,
  .page-4e .page-hero-copy p,
  .page-detox .page-hero-copy p,
  .page-vitori .page-hero-copy p,
  .page-schumann .page-hero-copy p,
  .page-orgon .page-hero-copy p,
  .page-rifetech .text-card p,
  .page-rifetech .story-card p,
  .page-rifetech .soft-card p,
  .page-rifetech .section-title p,
  .page-rifetech .story-list li,
  .page-bioscan .text-card p,
  .page-bioscan .story-card p,
  .page-bioscan .soft-card p,
  .page-bioscan .section-title p,
  .page-bioscan .story-list li,
  .page-bemer .text-card p,
  .page-bemer .story-card p,
  .page-bemer .soft-card p,
  .page-bemer .section-title p,
  .page-bemer .story-list li,
  .page-4e .text-card p,
  .page-4e .story-card p,
  .page-4e .soft-card p,
  .page-4e .section-title p,
  .page-4e .story-list li,
  .page-detox .text-card p,
  .page-detox .story-card p,
  .page-detox .soft-card p,
  .page-detox .section-title p,
  .page-detox .story-list li,
  .page-vitori .text-card p,
  .page-vitori .story-card p,
  .page-vitori .soft-card p,
  .page-vitori .section-title p,
  .page-vitori .story-list li,
  .page-schumann .text-card p,
  .page-schumann .story-card p,
  .page-schumann .soft-card p,
  .page-schumann .section-title p,
  .page-schumann .story-list li,
  .page-orgon .text-card p,
  .page-orgon .story-card p,
  .page-orgon .soft-card p,
  .page-orgon .service-card p,
  .page-orgon .section-title p,
  .page-orgon .story-list li{
    font-size:1.2rem;
    line-height:1.9;
  }
  .page-inline-photo{
    padding:1rem;
  }
  .detox-compare{
    grid-template-columns:1fr;
  }
}
