html { background: #fff; }
    body { font-family: 'Inter', sans-serif; color: #1E293B; }
    ::selection { background: #4CD964; color: #0A1628; }

    ::-webkit-scrollbar { width: 8px; }
    ::-webkit-scrollbar-track { background: #f1f5f9; }
    ::-webkit-scrollbar-thumb { background: #CBD5E1; border-radius: 4px; }

    /* Nav blur */
    #header.scrolled {
      background: rgba(255,255,255,0.92);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(0,0,0,0.06);
      box-shadow: 0 1px 24px rgba(0,0,0,0.05);
    }

    .nav-underline { position: relative; }
    .nav-underline::after {
      content: '';
      position: absolute;
      left: 0; bottom: -4px;
      width: 0; height: 2px;
      background: #4CD964;
      transition: width .3s ease;
    }
    .nav-underline:hover::after { width: 100%; }

    /* Text gradient */
    .text-gradient {
      background: linear-gradient(110deg, #4CD964 0%, #0EA5E9 100%);
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    /* ─── S5+S6: LAIKA Carousel ─── */
    @keyframes twinkle-a { 0%,100%{opacity:.25} 50%{opacity:.9} }
    @keyframes twinkle-b { 0%,100%{opacity:.6}  50%{opacity:.15} }
    @keyframes twinkle-c { 0%,100%{opacity:.4}  50%{opacity:.85} }

    #laika .ls-stars,
    #laika .ls-stars::before,
    #laika .ls-stars::after {
      position:absolute; inset:0; pointer-events:none;
    }
    #laika .ls-stars {
      z-index:0;
      background-image:
        radial-gradient(1.5px 1.5px at 50px  40px,  #fff, transparent),
        radial-gradient(1px   1px   at 200px 30px,   #fff, transparent),
        radial-gradient(1.5px 1.5px at 350px 60px,   #fff, transparent),
        radial-gradient(1px   1px   at 500px 110px,  #fff, transparent),
        radial-gradient(2px   2px   at 670px 80px,   #fff, transparent),
        radial-gradient(1px   1px   at 820px 140px,  #fff, transparent);
      background-repeat:repeat; background-size:900px 200px;
      animation:twinkle-a 3.5s ease-in-out infinite;
    }
    #laika .ls-stars::before {
      content:'';
      background-image:
        radial-gradient(1px   1px   at 80px  120px,  #9cf, transparent),
        radial-gradient(1.5px 1.5px at 230px 70px,   #fff, transparent),
        radial-gradient(1px   1px   at 420px 160px,  #9cf, transparent),
        radial-gradient(2px   2px   at 600px 50px,   #fff, transparent),
        radial-gradient(1px   1px   at 750px 130px,  #9cf, transparent);
      background-repeat:repeat; background-size:850px 220px;
      animation:twinkle-b 4.8s ease-in-out infinite 1.2s;
    }
    #laika .ls-stars::after {
      content:'';
      background-image:
        radial-gradient(2px   2px   at 140px 50px,   #fff, transparent),
        radial-gradient(1px   1px   at 300px 140px,  #adf, transparent),
        radial-gradient(1.5px 1.5px at 480px 90px,   #fff, transparent),
        radial-gradient(1px   1px   at 690px 170px,  #adf, transparent),
        radial-gradient(2px   2px   at 870px 40px,   #fff, transparent);
      background-repeat:repeat; background-size:950px 210px;
      animation:twinkle-c 6s ease-in-out infinite 2.5s;
    }
    @keyframes dog-float { 0%,100%{transform:translateY(0) scale(1)} 50%{transform:translateY(-14px) scale(1.02)} }
    .dog-scene  { animation:none; position:relative; display:flex; align-items:center; justify-content:center; }
    .dog-img    { filter:drop-shadow(0 20px 30px rgba(0,0,0,.55)); transform:scale(1.03) !important; transition:none !important; position:relative; z-index:1; }
    .glass-helmet {
      position:absolute; top:-5%; left:50%; transform:translateX(-50%);
      width:265px; height:265px; border-radius:50%;
      background:radial-gradient(135deg, rgba(255,255,255,.15) 0%, rgba(11,28,63,.05) 100%);
      backdrop-filter:blur(2px) saturate(110%); -webkit-backdrop-filter:blur(2px) saturate(110%);
      border:1px solid rgba(255,255,255,.22);
      box-shadow:inset 0 0 30px rgba(255,255,255,.3), inset 10px 0 40px rgba(95,138,32,.2), 0 15px 35px rgba(0,0,0,.45);
      pointer-events:none; z-index:10; margin-left:-60px;
    }
    .glass-helmet::after {
      content:''; position:absolute; top:12%; left:18%; width:35%; height:25%;
      background:rgba(255,255,255,.5); border-radius:50%;
      transform:rotate(-45deg); filter:blur(8px);
    }
    #laika .ls-stat-bar { border-color:rgba(255,255,255,.08) !important; background:rgba(255,255,255,.04) !important; }
    #laika .ls-stat-bar span { color:rgba(255,255,255,.35) !important; }

    /* LAIKA logotype styled */
    .laika-logotype-sm, .laika-logotype-lg { display:inline-flex; font-family:'Oswald',sans-serif; font-weight:900; letter-spacing:2px; line-height:1; }
    .laika-logotype-sm { font-size:1.6rem; }
    .laika-logotype-lg { font-size:3.2rem; }
    .laika-logotype-sm .ll, .laika-logotype-lg .ll { background:linear-gradient(180deg,#8a9dc0,#5a75a0); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
    .laika-logotype-sm .la, .laika-logotype-lg .la { background:linear-gradient(180deg,#9ee635,#4ab81e); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
    .laika-logotype-sm .li, .laika-logotype-lg .li { background:linear-gradient(180deg,#5aa040,#3a7228); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
    .laika-logotype-sm .lk, .laika-logotype-lg .lk { background:linear-gradient(180deg,#7aaa7a,#4a7a4a); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
    .laika-logotype-sm .la2,.laika-logotype-lg .la2 { background:linear-gradient(180deg,#a8bcd4,#7a90b4); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }

    /* Glass card (for LAIKA dark card) */
    .laika-card {
      background: linear-gradient(135deg, #0A1628 0%, #0F2038 60%, #0A2540 100%);
      border: 1px solid rgba(78,220,120,0.18);
      box-shadow: 0 24px 60px rgba(10,22,40,0.55), 0 0 0 1px rgba(255,255,255,0.04);
    }

    /* Subtle dot grid bg */
    .dot-grid {
      background-image: radial-gradient(circle, #CBD5E1 1px, transparent 1px);
      background-size: 28px 28px;
    }

    /* Reveal */
    .reveal { opacity: 0; transform: translateY(32px); }

    /* Stat bar item */
    .stat-bar-item::before {
      content: '';
      position: absolute;
      left: 0; top: 20%; height: 60%;
      width: 1px;
      background: rgba(0,0,0,0.10);
    }
    .stat-bar-item:first-child::before { display: none; }

    /* Problem card hover */
    .prob-card {
      transition: box-shadow .25s, transform .25s;
    }
    .prob-card:hover {
      transform: translateY(-3px);
      box-shadow: 0 8px 32px rgba(0,0,0,0.08);
    }

    /* Dark section wave */
    .wave-top {
      clip-path: ellipse(60% 100% at 50% 100%);
    }

    /* Pipeline step connector */
    .step-line {
      background: linear-gradient(90deg, #4CD964, #0EA5E9);
    }

    /* ── NEW HERO animations ── */

    /* Mask-reveal: each line clips children from below */
    .hero-line { overflow: hidden; }
    .hero-line > * {
      display: block;
      animation: heroLineUp 0.9s cubic-bezier(0.16, 1, 0.3, 1) both;
    }
    .hero-line:nth-child(1) > * { animation-delay: 0.05s; }
    .hero-line:nth-child(2) > * { animation-delay: 0.18s; }
    .hero-line:nth-child(3) > * { animation-delay: 0.31s; }
    .hero-line:nth-child(4) > * { animation-delay: 0.44s; }
    .hero-line:nth-child(5) > * { animation-delay: 0.57s; }

    @keyframes heroLineUp {
      from { opacity: 0; transform: translateY(110%); }
      to   { opacity: 1; transform: translateY(0);    }
    }

    /* Gradient text for hero "AI-driven Peptide Design" */
    .hero-gradient-text {
      background: linear-gradient(110deg, #5A7302 0%, #294013 100%);
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      color: #5A7302;
    }

    /* Floating animals illustration */
    @keyframes floatAnimals {
      0%, 100% { transform: translateY(0px);  }
      50%       { transform: translateY(-14px); }
    }
    #animalsIllustration {
      animation: floatAnimals 9s ease-in-out infinite;
      will-change: transform;
    }

    /* Eyebrow + CTA fade-in after text lines */
    .hero-fade-in {
      opacity: 0;
      animation: heroFadeIn 0.7s ease-out 0.9s both;
    }
    @keyframes heroFadeIn {
      from { opacity: 0; transform: translateY(16px); }
      to   { opacity: 1; transform: translateY(0);    }
    }

    /* Team card */
    .team-card .bio-reveal {
      max-height: 0;
      overflow: hidden;
      transition: max-height .45s ease, opacity .35s ease;
      opacity: 0;
    }
    .team-card:hover .bio-reveal {
      max-height: 200px;
      opacity: 1;
    }

    @media (prefers-reduced-motion: reduce) {
      .reveal { opacity: 1 !important; transform: none !important; }
    }

    /* Header: white-hero — always use dark logo */
    .logo-white { display: none; }

    /* Hero headline: Mukta display font */
    .hero-headline-font { font-family: 'Mukta', 'Lato', sans-serif; letter-spacing: -0.01em; }

    /* ═══════════════════ INDUSTRY PROBLEM ═══════════════════ */
    .ip-h2 { font-family:'Mukta','Lato',sans-serif; font-size:clamp(1.75rem,3vw,3rem); font-weight:800; line-height:1.25; color:#071e60; }
    .ip-accent { color:#5A7302; }
    .ip-w { opacity:0; display:inline; transition:opacity 0.4s ease; }
    .ip-w.ip-on { opacity:1; }

    /* ── Process row (single line of 6 chevrons) ── */
    .ip-steps-row { display:flex; align-items:stretch; width:100%; height:120px; }

    .ip-step {
      flex:1; position:relative;
      display:flex; flex-direction:column; align-items:center; justify-content:center;
      gap:9px; padding:14px 40px 14px 14px; text-align:center;
      clip-path: polygon(0% 0%, calc(100% - 40px) 0%, 100% 50%, calc(100% - 40px) 100%, 0% 100%);
      opacity:0; transform:translateX(-18px);
      transition: opacity 0.45s ease calc(var(--si,0)*130ms + 150ms),
                  transform 0.45s ease calc(var(--si,0)*130ms + 150ms);
    }
    .ip-step:not(:first-child):not(:last-child) {
      clip-path: polygon(0% 0%, calc(100% - 40px) 0%, 100% 50%, calc(100% - 40px) 100%, 0% 100%, 40px 50%);
      margin-left:-35px;
    }
    .ip-step:last-child {
      clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 40px 50%);
      margin-left:-35px; padding-right:14px;
    }
    .ip-step.ip-on { opacity:1; transform:translateX(0); }
    .ip-step:hover .ip-icon { transform:scale(1.15) rotate(-5deg); }
    .ip-icon { width:46px; height:46px; flex-shrink:0; transition:transform 0.3s ease; object-fit:contain; }
    .ip-slabel { color:rgba(255,255,255,0.95); font-size:10px; font-weight:700; letter-spacing:0.09em; line-height:1.45; text-transform:uppercase; }

    /* ── Phase labels row beneath the steps ── */
    .ip-phase-labels { display:flex; }
    .ip-phase-group { flex:1; }

    .ip-pline {
      height:2.5px; width:0; margin-top:11px; border-radius:2px;
      transition: width 0.75s cubic-bezier(.4,0,.2,1) calc(var(--pi,0)*200ms + 750ms);
    }
    .ip-pline.ip-on { width:100%; }
    .ip-pline-navy  { background:#071e60; }
    .ip-pline-olive { background:#3a5c0e; }

    .ip-plabel {
      margin-top:9px; font-size:0.88rem; font-weight:500;
      opacity:0; transform:translateY(7px);
      transition: opacity 0.4s ease calc(var(--pi,0)*200ms + 1000ms),
                  transform 0.4s ease calc(var(--pi,0)*200ms + 1000ms);
    }
    .ip-plabel.ip-on { opacity:1; transform:translateY(0); }

    /* ═══ S3: Parallax Question ══════════════════════════════════════════════════ */
    .parallax-section {
      position:relative; width:100%; height:100vh; overflow:hidden; display:flex;
    }
    .parallax-bg {
      position:absolute; top:0; left:0; width:100%; height:100%;
      background-image:url('../img/bg-animal.svg');
      background-size:50%; background-position:right center;
      background-repeat:no-repeat; background-attachment:fixed;
      z-index:1;
    }
    .yellow-mask-layer {
      position:absolute; top:0; left:0; width:100%; height:100%; z-index:2;
    }
    .blue-layer {
      position:absolute; top:0; left:0; width:100%; height:100%;
      background-color:#0b1c3f;
      clip-path:polygon(0% 0%,calc(72% - 140px) 0%,calc(65% - 140px) 55%,calc(75% - 140px) 100%,0% 100%);
      z-index:3; display:flex; flex-direction:column; justify-content:center;
      padding-left:max(1.25rem, calc((100vw - 80rem)/2 + 2rem));
    }
    .parallax-section .main-title {
      font-family:'Bebas Neue',sans-serif; letter-spacing:2px;
      display:flex; flex-direction:column; gap:0;
    }
    .parallax-section .pline {
      display:flex; align-items:center; gap:12px; min-height:9.5vw;
    }
    .parallax-section .pw { color:#ffffff; font-size:6.5vw; line-height:1; }
    .parallax-section .py { color:#f7c300; font-size:9.5vw; line-height:1; }
    @media(max-width:768px){
      .blue-layer {
        clip-path:polygon(0% 0%,100% 0%,100% 60%,0% 80%);
        padding-left:20px; height:60%;
      }
      .parallax-section .pw { font-size:10vw; }
      .parallax-section .py { font-size:12vw; }
      .parallax-bg { background-size:cover; background-position:center bottom; }
    }

    /* ═══ S4: Platform Compare ══════════════════════════════════════════════ */
    .comparison-section { padding:80px 5%; max-width:1400px; margin:0 auto; }
    .comparison-section .cmp-title {
      font-family:'Oswald',sans-serif; font-size:clamp(1.8rem,3vw,3rem);
      line-height:1.15; margin-bottom:52px; max-width:900px;
    }
    .comparison-section .cmp-tg { color:#4a6c1a; }
    .comparison-section .cmp-tb { color:#0b1c3f; }
    .comparison-section .row-title {
      font-family:'Inter',sans-serif; font-size:1.1rem; font-weight:800;
      margin-bottom:12px; letter-spacing:.01em;
    }
    .comparison-section .row-title.green { color:#4a6c1a; }
    .comparison-section .row-title.red   { color:#8f3535; }
    /* timeline rows */
    .comparison-section .timeline-row {
      display:flex; align-items:center; height:92px; margin-bottom:16px;
    }
    .comparison-section .icon-box {
      width:58px; height:58px; display:flex; align-items:center; justify-content:center;
      margin-right:18px; flex-shrink:0;
    }
    .comparison-section .icon-box img { width:48px; height:48px; object-fit:contain; }
    .comparison-section .chevron-container { display:flex; flex-grow:1; height:100%; }
    /* chevrons */
    .comparison-section .chevron {
      flex:1; height:100%; display:flex; flex-direction:column;
      align-items:center; justify-content:center;
      color:white; font-size:.72rem; font-weight:700; text-align:center;
      padding:0 28px; position:relative; gap:5px;
      opacity:0; transform:translateX(-30px);
      transition:opacity .55s cubic-bezier(.4,0,.2,1), transform .55s cubic-bezier(.4,0,.2,1);
    }
    .comparison-section .chevron img {
      width:30px; height:30px; object-fit:contain;
      filter:brightness(0) invert(1);
    }
    .comparison-section .chevron:first-child {
      clip-path:polygon(0% 0%, calc(100% - 25px) 0%, 100% 50%, calc(100% - 25px) 100%, 0% 100%);
    }
    .comparison-section .chevron:not(:first-child) {
      clip-path:polygon(0% 0%, calc(100% - 25px) 0%, 100% 50%, calc(100% - 25px) 100%, 0% 100%, 25px 50%);
      margin-left:-20px;
    }
    .comparison-section .chevron.flat-right {
      clip-path:polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 25px 50%);
    }
    .comparison-section .chevron.long { flex:3; font-size:.95rem; letter-spacing:.5px; }
    /* green shades */
    .c-green-1,.c-green-2,.c-green-3,.c-green-4,.c-green-5 { background:#3a5c0e; }
    .c-navy    { background:#071e60; }
    /* red shades */
    .c-red-1 { background:#6e2424; }
    .c-red-2 { background:#8f3535; }
    .c-red-3 { background:#a13d3d; }
    .c-red-4 { background:#8f3535; }
    .c-red-5 { background:#7a2929; }
    /* outcomes */
    .comparison-section .outcomes {
      display:flex; align-items:center; margin-left:24px; gap:16px;
      opacity:0; transform:scale(.8);
      transition:opacity .8s ease, transform .8s ease;
    }
    .comparison-section .new-drug {
      text-align:center; font-weight:800; color:#4a6c1a;
      font-size:1rem; line-height:1.1;
    }
    .comparison-section .new-drug img { width:80px; height:auto; }
    .comparison-section .ip-licensing {
      background:#fbc02d; color:#0b1c3f; padding:12px 16px;
      font-weight:800; font-size:.82rem; text-align:center; border-radius:5px;
    }
    .comparison-section .ip-licensing img { width:36px; height:36px; object-fit:contain; display:block; margin:0 auto 4px; filter:brightness(0) invert(1) sepia(1) hue-rotate(185deg) saturate(1.5) brightness(0.25); }
    /* stats / dotted line */
    .comparison-section .stats-area {
      position:relative; padding:28px 0 48px 0;
      margin:8px 0;
    }
    .comparison-section .dotted-line {
      position:absolute; top:-6px; bottom:0; left:29px; right:calc(14% + 40px);
      border-left:3px dashed #4a6c1a; border-bottom:3px dashed #4a6c1a; border-right:3px dashed #4a6c1a;
      border-top:none; border-radius:0 0 14px 14px; z-index:0;
      clip-path:inset(0 100% 100% 0);
      transition:clip-path 1.5s cubic-bezier(.4,0,.2,1);
    }
    .comparison-section .dotted-line::before { display:none; }
    .comparison-section .dotted-line::after {
      content:'▲'; position:absolute; color:#4a6c1a; font-size:13px;
      top:-8px; right:-8px;
    }
    .comparison-section .stats-grid {
      display:flex; justify-content:space-around; align-items:center; padding-top:18px;
      padding-left:80px; padding-right:calc(14% + 80px);
    }
    .comparison-section .stat-item {
      text-align:center; color:#0b1c3f; background:#fff; padding:0 24px; position:relative; z-index:1;
      opacity:0; transform:translateY(20px); transition:opacity .6s ease, transform .6s ease;
    }
    .comparison-section .stat-number {
      font-family:'Oswald',sans-serif; font-size:clamp(2.5rem,4vw,4rem); font-weight:700;
      line-height:1; display:flex; align-items:flex-end; justify-content:center;
    }
    .comparison-section .stat-number .x { font-size:1.8rem; margin-bottom:8px; margin-left:2px; }
    .comparison-section .stat-label {
      font-size:.82rem; font-weight:700; letter-spacing:1px; margin-top:4px;
    }
    /* animate class triggers */
    #compare.animate .chevron { opacity:1; transform:translateX(0); }
    #compare.animate .outcomes { opacity:1; transform:scale(1); transition-delay:1.2s; }
    #compare.animate .stat-item { opacity:1; transform:translateY(0); }
    #compare.animate .dotted-line { clip-path:inset(-20px -20px -20px -20px); transition-delay:1s; }
    /* stagger delays */
    #compare .peptidus-row .chevron:nth-child(1) { transition-delay:.10s; }
    #compare .peptidus-row .chevron:nth-child(2) { transition-delay:.28s; }
    #compare .peptidus-row .chevron:nth-child(3) { transition-delay:.46s; }
    #compare .peptidus-row .chevron:nth-child(4) { transition-delay:.64s; }
    #compare .peptidus-row .chevron:nth-child(5) { transition-delay:.82s; }
    #compare .industry-row .chevron { transition-delay:0s; }
    #compare .stat-item:nth-child(1) { transition-delay:1.4s; }
    #compare .stat-item:nth-child(2) { transition-delay:1.6s; }
    #compare .stat-item:nth-child(3) { transition-delay:1.8s; }
    @media(max-width:1024px){
      .comparison-section .chevron { font-size:.62rem; padding:0 18px; }
      .comparison-section .chevron.long { font-size:.82rem; }
    }
    @media(max-width:768px){
      .comparison-section .timeline-row { flex-direction:column; height:auto; }
      .comparison-section .chevron-container { flex-direction:column; width:100%; gap:4px; }
      .comparison-section .chevron { clip-path:none!important; margin:0!important; height:52px; width:100%; border-radius:6px; }
      .comparison-section .dotted-line { display:none; }
      .comparison-section .outcomes { margin:16px 0; }
      .comparison-section .stats-grid { flex-direction:column; gap:24px; }
      .comparison-section .icon-box { display:none; }
    }

    /* ═══ S5+S6: LAIKA Carousel ══════════════════════════════════════════ */
    #laika {
      position:relative; padding:0; overflow:hidden;
      background:linear-gradient(160deg,#071e60 0%,#0b1c3f 100%);
    }
    /* Carousel track */
    .lk-track-wrap { position:relative; }
    .lk-slides-outer { overflow:hidden; width:100%; }
    .lk-slides-inner { display:flex; will-change:transform; transition:transform .65s cubic-bezier(.4,0,.2,1); }
    .lk-slide { flex:0 0 100%; width:100%; min-width:0; display:flex; flex-direction:column; justify-content:center; }
    /* Arrows - positioned inside track-wrap, centred on slide height */
    .lk-arr {
      position:absolute; top:50%; transform:translateY(-50%); z-index:20;
      background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.2);
      backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
      color:#fff; width:44px; height:44px; border-radius:50%; cursor:pointer;
      display:flex; align-items:center; justify-content:center; font-size:1.15rem;
      transition:background .25s, box-shadow .25s, transform .25s; line-height:1;
      box-shadow:0 4px 16px rgba(0,0,0,.3);
    }
    .lk-arr:hover { background:rgba(255,255,255,.2); box-shadow:0 6px 24px rgba(0,0,0,.4); transform:translateY(-50%) scale(1.1); }
    .lk-arr-prev { left:10px; }
    .lk-arr-next { right:10px; }
    /* Carousel footer */
    .lk-carousel-footer { display:flex; justify-content:center; padding-top:22px; }
    .lk-carousel-nav { display:flex; gap:10px; }
    .lk-dot {
      width:9px; height:9px; border-radius:50%;
      background:rgba(255,255,255,.25); border:none; cursor:pointer;
      transition:background .3s, transform .3s; padding:0;
    }
    .lk-dot.active { background:#7dc542; transform:scale(1.4); }
    #laika::before {
      content:''; position:absolute; inset:0;
      background:url('../img/bg.png') center center / cover no-repeat;
      opacity:0.05; z-index:0; pointer-events:none;
    }
    #laika .lk-wrap { position:relative; z-index:1; }
    #laika .lk-wrap { max-width:1400px; margin:0 auto; }
    #laika .lk-heading {
      font-family:'Oswald',sans-serif; font-size:clamp(2rem,3.2vw,3rem);
      line-height:1.1; margin-bottom:50px; max-width:1100px;
    }
    #laika .lk-heading .lk-green { color:#7dc542; }
    #laika .lk-heading .lk-blue  { color:#ffffff; }
    #laika .lk-subtitle {
      font-size:clamp(1.1rem,1.8vw,1.4rem); color:rgba(255,255,255,.65);
      margin-bottom:48px; font-weight:500;
    }
    #laika .lk-flow { display:flex; align-items:stretch; justify-content:space-between; gap:20px; }
    #laika .lk-block {
      opacity:0; transform:translateX(-30px);
      transition:opacity .8s cubic-bezier(.4,0,.2,1), transform .8s cubic-bezier(.4,0,.2,1);
    }
    #laika .lk-card {
      background:#fff; border:1.5px solid #e2e8f0; border-radius:10px;
      box-shadow:0 8px 24px rgba(0,0,0,0.04); padding:18px 20px;
    }
    #laika .lk-card:hover { box-shadow:0 16px 36px rgba(0,0,0,0.09); transform:translateY(-4px)!important; }
    #laika .lk-side { flex:1; min-width:200px; display:flex; flex-direction:column; gap:12px; }
    #laika .lk-side .lk-card { flex:1; display:flex; flex-direction:column; justify-content:center; }
    #laika .lk-arrow { align-self:center; }
    #laika .lk-header { font-size:.95rem; color:#ddeac4; font-weight:700; line-height:1.5; min-height:52px; }
    #laika .lk-db-item { display:flex; align-items:flex-start; gap:12px; font-size:.88rem; color:#0b1c3f; font-weight:600; line-height:1.45; position:relative; z-index:1; }
    #laika .lk-db-item svg { flex-shrink:0; margin-top:2px; color:#4a6c1a; }
    #laika .lk-db-items-wrap {
      display:flex; flex-direction:column; gap:18px; position:relative;
      padding:14px 12px; border-radius:8px;
      background:radial-gradient(ellipse at 50% 110%, rgba(74,108,26,0.11) 0%, transparent 65%);
    }
    #laika .lk-center { flex:2.8; padding:20px 24px; }
    #laika .lk-stitle {
      color:#4a6c1a; font-weight:700; font-size:.78rem; text-transform:uppercase;
      letter-spacing:1.2px; margin-bottom:14px; display:inline-block;
      border-bottom:2px solid #4a6c1a; padding-bottom:4px;
    }
    #laika .lk-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:18px; }
    #laika .lk-feat h4 { font-size:.88rem; font-weight:700; color:#0b1c3f; margin-bottom:6px; min-height:34px; }
    #laika .lk-feat p  { font-size:.8rem; color:#4a5568; line-height:1.5; }
    #laika .lk-feat { display:flex; flex-direction:column; }
    #laika .lk-icon-wrap { height:80px; display:flex; align-items:center; margin-bottom:10px; }
    #laika .lk-feat-icon { object-fit:contain; display:block; width:80px; height:80px; }
    #laika .lk-grid .lk-feat:nth-child(3) .lk-feat-icon { width:60px; height:60px; }
    #laika .lk-divider { height:1px; background:#e2e8f0; margin:14px 0; }
    #laika .lk-arrow {
      width:46px; height:56px; background:#c8d5b5; flex-shrink:0;
      clip-path:polygon(0 0,60% 0,100% 50%,60% 100%,0 100%,40% 50%);
      opacity:0; transform:scale(.8);
      transition:opacity .6s ease, transform .6s ease;
    }
    #laika .lk-validate-box {
      border:1.5px solid #e2e8f0; padding:18px 18px 18px 50px; border-radius:8px; margin-top:12px;
      position:relative; overflow:visible;
    }
    #laika .lk-validate-box p { font-size:.88rem; color:#0b1c3f; line-height:1.6; font-weight:500; }
    #laika .lk-validate-box strong { color:#0b1c3f; font-weight:800; }
    #laika .lk-mol-img {
      width:90px; height:90px; object-fit:contain;
      position:absolute; left:-45px; top:50%; transform:translateY(-50%);
    }
    #laika .lk-side-right { overflow:visible; padding-left:50px; }
    #laika .lk-side-left  { overflow:visible; }
    #laika .lk-db-img {
      width:90px; height:90px; object-fit:contain;
      position:absolute; left:-45px; top:50%; transform:translateY(-50%);
    }
    /* lk-block visible in carousel (no scroll-triggered fade) */
    #laika .lk-block { opacity:1; transform:none; }
    #laika .lk-arrow { opacity:1; transform:none; }
    @media(max-width:1024px){
      #laika .lk-flow { flex-direction:column; }
      #laika .lk-side, #laika .lk-center { width:100%; flex:none; }
      #laika .lk-side .lk-card { flex:none; justify-content:flex-start; padding:12px 14px 12px 42px !important; }
      #laika .lk-side .lk-db-items-wrap { padding:8px 10px; gap:10px; }
      #laika .lk-db-img, #laika .lk-mol-img { width:70px; height:70px; left:-35px; }
      #laika .lk-side-right { padding-left:38px; }
      #laika .lk-center { padding:16px 18px; }
      #laika .lk-arrow { width:56px; height:44px; margin:6px auto; clip-path:polygon(0 0,100% 0,100% 60%,50% 100%,0 60%); }
    }
    @media(max-width:768px){
      #laika .lk-heading { font-size:1.9rem; }
      #laika .lk-grid { grid-template-columns:1fr; text-align:center; }
      #laika .lk-feat h4 { min-height:auto; }
      #laika .lk-nodes { justify-content:center; }
    }

    .ip-stats-bar {
      display:flex; border:1.5px solid #e2e8f0; border-radius:10px; overflow:hidden;
      margin-top:2.75rem;
      opacity:0; transform:translateY(18px);
      transition: opacity 0.55s ease 1.5s, transform 0.55s ease 1.5s;
    }
    .ip-stats-bar.ip-on { opacity:1; transform:translateY(0); }
    .ip-stat-cell { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:20px 12px; gap:5px; }
    .ip-stat-lbl { font-size:0.6rem; font-weight:700; letter-spacing:0.14em; color:#94a3b8; text-transform:uppercase; }
    .ip-stat-val { font-size:clamp(1rem,1.3vw,1.2rem); font-weight:800; color:#071e60; white-space:nowrap; }
    .ip-stat-div { width:1.5px; align-self:stretch; background:#e2e8f0; flex-shrink:0; }

    /* ═══ S7: Pipeline ═══════════════════════════════════════════════════════ */
    #pipeline { padding:80px 5% 70px; background:#fff; }
    .pp-inner { max-width:1400px; margin:0 auto; }
    .pp-headline {
      font-family:'Oswald',sans-serif; font-size:clamp(1.5rem,2.4vw,2.2rem);
      color:#071e60; font-weight:800; line-height:1.15;
      max-width:860px; margin-bottom:40px; letter-spacing:-.01em;
    }
    /* chevron header row */
    .pp-top-row { display:flex; align-items:stretch; margin-bottom:0; }
    .pp-label-spacer { width:190px; flex-shrink:0; display:flex; align-items:center; padding-right:16px; }
    .pp-chevrons { flex:1; display:flex; height:82px; }
    .pp-chev {
      flex:1; height:100%; display:flex; flex-direction:column;
      align-items:center; justify-content:center; text-align:center;
      color:#fff; font-size:.68rem; font-weight:700; line-height:1.3;
      padding:0 28px; gap:5px;
      opacity:0; transform:translateX(-30px);
      transition:opacity .55s cubic-bezier(.4,0,.2,1), transform .55s cubic-bezier(.4,0,.2,1);
    }
    .pp-chev:first-child {
      clip-path:polygon(0% 0%, calc(100% - 25px) 0%, 100% 50%, calc(100% - 25px) 100%, 0% 100%);
    }
    .pp-chev:not(:first-child) {
      clip-path:polygon(0% 0%, calc(100% - 25px) 0%, 100% 50%, calc(100% - 25px) 100%, 0% 100%, 25px 50%);
      margin-left:-20px;
    }
    .pp-chev:last-child {
      clip-path:polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 25px 50%);
      background:#c4961e !important;
    }
    .pp-chev img { width:28px; height:28px; object-fit:contain; filter:brightness(0) invert(1); flex-shrink:0; }
    .pp-n1,.pp-n2,.pp-n3,.pp-n4,.pp-n5 { background:#071e60; }
    /* stagger */
    #pipeline .pp-chevrons .pp-chev:nth-child(1) { transition-delay:.10s; }
    #pipeline .pp-chevrons .pp-chev:nth-child(2) { transition-delay:.28s; }
    #pipeline .pp-chevrons .pp-chev:nth-child(3) { transition-delay:.46s; }
    #pipeline .pp-chevrons .pp-chev:nth-child(4) { transition-delay:.64s; }
    #pipeline .pp-chevrons .pp-chev:nth-child(5) { transition-delay:.82s; }
    #pipeline .pp-chevrons .pp-chev:nth-child(6) { transition-delay:1.00s; }
    /* animate trigger */
    #pipeline.pp-animate .pp-chev { opacity:1; transform:translateX(0); }
    /* rows */
    .pp-rows { display:flex; flex-direction:column; gap:8px; margin-top:6px; }
    .pp-row { display:flex; align-items:center; }
    .pp-row-label {
      width:190px; flex-shrink:0; display:flex; align-items:center;
      gap:10px; padding-right:16px;
    }
    .pp-row-label span { font-size:.82rem; font-weight:700; color:#071e60; line-height:1.25; }
    .pp-animal { width:38px; height:38px; flex-shrink:0; display:flex; align-items:center; justify-content:center; }
    .pp-animal img { width:34px; height:34px; object-fit:contain; }
    .pp-animal-ph {
      width:34px; height:34px; flex-shrink:0;
      background:#e8edf5; border-radius:50%;
      border:1.5px dashed #94a3b8;
    }
    .pp-animal-multi { display:flex; align-items:center; gap:5px; width:auto; }
    .pp-animal-multi img { width:26px; height:26px; object-fit:contain; flex-shrink:0; }
    .pp-bar-track {
      flex:1; height:46px; background:#f1f5f9; border-radius:6px;
      position:relative; overflow:hidden;
    }
    .pp-stage-lines { position:absolute; inset:0; display:flex; pointer-events:none; z-index:1; }
    .pp-stage-line { flex:1; border-right:1px solid rgba(100,116,139,.18); }
    .pp-stage-line:last-child { border-right:none; }
    .pp-bar {
      height:100%; border-radius:6px; width:0%;
      transition:width 1.5s cubic-bezier(.25,.8,.25,1);
      display:flex; align-items:center; padding-left:14px;
      position:relative; will-change:width;
    }
    .pp-bar-green { background:#3a5c0e; }
    .pp-bar-navy  { background:#071e60; }
    @keyframes badge-glow {
      0%,100% { box-shadow:0 0 0 0 rgba(255,255,255,.3),0 0 0 0 rgba(255,255,255,.12); transform:scale(1); }
      50%      { box-shadow:0 0 8px 4px rgba(255,255,255,.18),0 0 18px 8px rgba(255,255,255,.08); transform:scale(1.07); }
    }
    .pp-badge {
      display:flex; align-items:center; gap:5px; white-space:nowrap;
      font-size:.64rem; font-weight:800; color:#fff; letter-spacing:.03em;
      background:rgba(255,255,255,.2); border:1px solid rgba(255,255,255,.45);
      border-radius:20px; padding:3px 10px 3px 7px;
      cursor:pointer; user-select:none;
      animation:badge-glow 2.4s ease-in-out infinite;
      transition:background .2s, transform .15s;
    }
    .pp-badge:hover { background:rgba(255,255,255,.38); transform:scale(1.12) !important; }
    .pp-badge svg { width:11px; height:11px; flex-shrink:0; }
    .pp-footer-txt {
      max-width:1400px; margin:28px auto 0;
      font-size:1.3rem; color:#64748b; font-style:normal; font-weight:500; text-align:center;
    }

    /* ══ Patent modals ═══════════════════════════════════════════════════════ */
    .patent-modal {
      position:fixed; inset:0; z-index:9000;
      display:flex; align-items:center; justify-content:center;
      opacity:0; pointer-events:none;
      transition:opacity .35s ease;
    }
    .patent-modal.pm-open { opacity:1; pointer-events:all; }
    .pm-overlay {
      position:absolute; inset:0;
      background:rgba(4,10,30,.78); backdrop-filter:blur(7px);
      cursor:pointer;
    }
    .pm-box {
      position:relative; z-index:1;
      width:min(92vw,960px); height:min(78vh,520px);
      border-radius:18px; overflow:hidden;
      background-size:cover; background-position:center;
      display:flex; align-items:stretch;
      transform:scale(.88) translateY(24px);
      transition:transform .42s cubic-bezier(.25,.8,.25,1);
      box-shadow:0 36px 90px rgba(0,0,0,.65), 0 0 0 1px rgba(255,255,255,.06);
    }
    .patent-modal.pm-open .pm-box { transform:scale(1) translateY(0); }
    .pm-mastitis { background-image:url('../img/teta.svg'); }
    .pm-derma    { background-image:url('../img/ferida.svg'); }
    .pm-panel {
      width:52%; padding:44px 48px;
      background:linear-gradient(135deg,rgba(7,30,96,.92) 60%,rgba(7,30,96,.75));
      backdrop-filter:blur(3px);
      display:flex; flex-direction:column; justify-content:center; gap:0;
      border-right:1px solid rgba(255,255,255,.08);
    }
    .pm-tag {
      font-size:.68rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase;
      color:#fbc02d; margin-bottom:10px; display:flex; align-items:center; gap:6px;
    }
    .pm-tag svg { width:13px; height:13px; }
    .pm-name {
      font-family:'Oswald',sans-serif; font-size:1.7rem; color:#fbc02d;
      font-weight:700; line-height:1.15; margin-bottom:6px;
    }
    .pm-name span { color:#fbc02d; opacity:.85; }
    .pm-title {
      font-family:'Oswald',sans-serif; font-size:1.45rem; font-weight:700;
      color:#fff; margin-bottom:26px; line-height:1.2;
    }
    .pm-list { list-style:none; padding:0; margin:0 0 28px; display:flex; flex-direction:column; gap:10px; }
    .pm-list li {
      color:#d8e4f5; font-size:.98rem; line-height:1.45;
      padding-left:20px; position:relative;
    }
    .pm-list li::before { content:'●'; position:absolute; left:0; color:#fbc02d; font-size:.55rem; top:5px; }
    .pm-list strong { color:#fff; font-weight:800; }
    .pm-pill {
      display:inline-flex; align-items:center; gap:7px;
      background:rgba(74,122,20,.85); border:1px solid rgba(255,255,255,.2);
      color:#fff; font-weight:800; font-size:.8rem; letter-spacing:.04em;
      padding:8px 18px; border-radius:22px; width:fit-content;
    }
    .pm-pill svg { width:14px; height:14px; }
    .pm-close {
      position:absolute; top:18px; right:20px;
      background:#071e60; border:1.5px solid rgba(255,255,255,.3);
      color:#fff; font-size:1.3rem; width:38px; height:38px;
      border-radius:50%; cursor:pointer; z-index:3;
      display:flex; align-items:center; justify-content:center;
      transition:background .2s, transform .2s; line-height:1;
    }
    .pm-close:hover { background:#0d2d82; transform:rotate(90deg); }
    .pm-img-side {
      flex:1; display:flex; align-items:center; justify-content:center;
      padding:32px; position:relative; overflow:hidden;
    }
    .pm-img-side::before {
      content:''; position:absolute; inset:0;
      background:linear-gradient(90deg, rgba(7,30,96,.35) 0%, transparent 60%);
    }
    .pm-img-side img { width:100%; max-width:240px; object-fit:contain; position:relative; z-index:1; filter:drop-shadow(0 12px 28px rgba(0,0,0,.5)); }

    /* ══ S8: Business Model ════════════════════════════════════════════════ */
    #business-model { padding:80px 5% 70px; background:linear-gradient(135deg,#e8edf6 0%,#dde5f2 100%); }
    .bm-inner { max-width:1400px; margin:0 auto; }
    .bm-eyebrow { font-family:'Oswald',sans-serif; font-size:.72rem; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:#64748b; text-align:center; margin-bottom:14px; }
    .bm-headline { font-family:'Oswald',sans-serif; font-size:clamp(1.3rem,2.4vw,2.2rem); font-weight:800; color:#071e60; line-height:1.45; max-width:800px; margin:0 auto 52px; text-align:center; }
    .bm-hl-green { color:#4a6c1a; }
    .bm-hl-gold  { color:#c4961e; }
    .bm-flow { display:flex; align-items:center; margin-bottom:4px; }
    .bm-chevs-left  { flex:5; display:flex; height:80px; min-width:0; }
    .bm-chevs-right { flex:3; display:flex; height:80px; min-width:0; }
    .bm-chev {
      flex:1; height:100%; display:flex; flex-direction:column;
      align-items:center; justify-content:center; text-align:center;
      color:#fff; font-size:.6rem; font-weight:700; line-height:1.3;
      padding:0 22px; gap:4px; min-width:0;
      opacity:0; transform:translateX(-30px);
      transition:opacity .55s cubic-bezier(.4,0,.2,1), transform .55s cubic-bezier(.4,0,.2,1);
    }
    .bm-chev img { width:24px; height:24px; object-fit:contain; filter:brightness(0) invert(1); flex-shrink:0; }
    .bm-chevs-left .bm-chev:first-child  { clip-path:polygon(0% 0%,calc(100% - 22px) 0%,100% 50%,calc(100% - 22px) 100%,0% 100%); }
    .bm-chevs-left .bm-chev:not(:first-child) { clip-path:polygon(0% 0%,calc(100% - 22px) 0%,100% 50%,calc(100% - 22px) 100%,0% 100%,22px 50%); margin-left:-18px; }
    .bm-cn1,.bm-cn2,.bm-cn3,.bm-cn4,.bm-cn5 { background:#071e60; }
    .bm-chevs-right .bm-chev { clip-path:polygon(0% 0%,calc(100% - 22px) 0%,100% 50%,calc(100% - 22px) 100%,0% 100%,22px 50%); margin-left:-18px; }
    .bm-chevs-right .bm-chev:last-child { clip-path:polygon(0% 0%,100% 0%,100% 100%,0% 100%,22px 50%); }
    .bm-cg1,.bm-cg2,.bm-cg3 { background:#3a5c0e; }
    .bm-circle-wrap {
      flex-shrink:0; width:148px; display:flex; align-items:center; justify-content:center;
      z-index:2; position:relative; padding-right:16px;
      opacity:0; transform:scale(.75);
      transition:opacity .6s cubic-bezier(.4,0,.2,1), transform .6s cubic-bezier(.4,0,.2,1);
      transition-delay:.90s;
    }
    .bm-circle {
      width:108px; height:108px; border-radius:50%;
      background:linear-gradient(135deg,#c4961e,#fbc02d);
      display:flex; flex-direction:column; align-items:center; justify-content:center;
      gap:5px; text-align:center; color:#fff;
      font-size:.6rem; font-weight:800; line-height:1.3; letter-spacing:.04em; color:#071e60;
      box-shadow:0 6px 28px rgba(196,150,30,.45);
    }
    .bm-circle img { width:26px; height:26px; filter:brightness(0) invert(1) sepia(1) hue-rotate(185deg) saturate(1.5) brightness(0.25); }
    #business-model .bm-chevs-left  .bm-chev:nth-child(1) { transition-delay:.08s; }
    #business-model .bm-chevs-left  .bm-chev:nth-child(2) { transition-delay:.22s; }
    #business-model .bm-chevs-left  .bm-chev:nth-child(3) { transition-delay:.36s; }
    #business-model .bm-chevs-left  .bm-chev:nth-child(4) { transition-delay:.50s; }
    #business-model .bm-chevs-left  .bm-chev:nth-child(5) { transition-delay:.64s; }
    #business-model .bm-chevs-right .bm-chev:nth-child(1) { transition-delay:1.18s; }
    #business-model .bm-chevs-right .bm-chev:nth-child(2) { transition-delay:1.34s; }
    #business-model .bm-chevs-right .bm-chev:nth-child(3) { transition-delay:1.50s; }
    #business-model.bm-animate .bm-chev        { opacity:1; transform:translateX(0); }
    #business-model.bm-animate .bm-circle-wrap { opacity:1; transform:scale(1); }
    .bm-revenue { position:relative; height:200px; margin-top:14px; margin-bottom:28px; }
    .bm-rv-svg  { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; overflow:visible; }
    .bm-rv-icon { width:34px; height:34px; object-fit:contain; display:block; margin:0 auto 5px; }
    .bm-rv-label { font-size:.78rem; font-weight:600; color:#475569; letter-spacing:.03em; }
    .bm-rv-upfront   { position:absolute; top:0; left:61%; transform:translateX(-50%); text-align:center; display:flex; flex-direction:column; align-items:center; }
    .bm-rv-royalties { position:absolute; top:0; left:93%; transform:translateX(-50%); text-align:center; display:flex; flex-direction:column; align-items:center; }
    .bm-rv-logo { position:absolute; bottom:0; left:77%; transform:translateX(-50%); text-align:center; }
    .bm-rv-logo img { height:44px; width:auto; object-fit:contain; }
    .bm-footer-txt { max-width:1400px; margin:28px auto 0; font-size:1.3rem; color:#64748b; font-style:normal; font-weight:500; text-align:center; }

    /* ══ Team redesign ═══════════════════════════════════════════════════════ */
    #team { padding:80px 5% 80px; background:#f8fafc; }
    .tm-inner { max-width:1300px; margin:0 auto; }
    .tm-eyebrow { font-size:.72rem; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:#64748b; text-align:center; margin-bottom:14px; }
    .tm-headline { font-family:'Oswald',sans-serif; font-size:clamp(1.7rem,3.2vw,2.8rem); font-weight:800; color:#071e60; line-height:1.25; max-width:920px; margin:0 auto 56px; text-align:center; }
    .tm-hl-green { color:#4a6c1a; }
    /* ── team circles ── */
    .tm-grid { display:flex; flex-wrap:wrap; justify-content:center; gap:10px 20px; margin-bottom:44px; }
    .tm-person { display:flex; flex-direction:column; align-items:center; text-align:center; width:150px; padding:18px 8px 16px; border-radius:20px; cursor:pointer; transition:background .25s, transform .25s, box-shadow .25s; -webkit-user-select:none; user-select:none; }
    .tm-person:hover { background:#fff; transform:translateY(-5px); box-shadow:0 12px 40px rgba(7,30,96,.11); }
    .tm-avatar-wrap { position:relative; margin-bottom:13px; }
    .tm-avatar { width:108px; height:108px; border-radius:50%; object-fit:cover; object-position:top center; display:block; border:3px solid #f8fafc; box-shadow:0 0 0 2.5px #4a6c1a, 0 6px 22px rgba(0,0,0,.13); transition:box-shadow .3s; }
    .tm-person:hover .tm-avatar { box-shadow:0 0 0 3px #4a6c1a, 0 12px 30px rgba(7,30,96,.2); }
    .tm-avatar-li { position:absolute; bottom:1px; right:1px; width:26px; height:26px; border-radius:50%; background:#0a66c2; border:2.5px solid #f8fafc; display:flex; align-items:center; justify-content:center; color:#fff; text-decoration:none; transition:transform .2s, box-shadow .2s; z-index:1; }
    .tm-avatar-li:hover { transform:scale(1.18); box-shadow:0 3px 10px rgba(10,102,194,.5); }
    .tm-avatar-li svg { width:11px; height:11px; }
    .tm-person-role { font-size:.54rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:#4a6c1a; margin-bottom:3px; line-height:1.4; }
    .tm-person-name { font-family:'Oswald',sans-serif; font-size:.88rem; font-weight:700; color:#071e60; line-height:1.2; }
    /* advisors row */
    .tm-advisors-label { font-size:.66rem; font-weight:800; letter-spacing:.22em; text-transform:uppercase; color:#94a3b8; margin-bottom:18px; text-align:center; }
    .tm-advisors-grid { display:flex; flex-wrap:wrap; justify-content:center; gap:10px 20px; }
    /* ── unified team modal ── */
    #tm-modal { display:none; position:fixed; inset:0; z-index:9990; background:rgba(4,9,20,.72); align-items:center; justify-content:center; padding:20px; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); }
    #tm-modal.open { display:flex; }
    .tm-modal-box { max-width:440px; width:100%; background:#fff; border-radius:24px; overflow:hidden; box-shadow:0 40px 120px rgba(0,0,0,.35); position:relative; animation:tm-pop .3s cubic-bezier(.4,0,.2,1); }
    @keyframes tm-pop { from { opacity:0; transform:scale(.93) translateY(18px); } to { opacity:1; transform:none; } }
    .tm-modal-header { padding:36px 24px 22px; text-align:center; background:linear-gradient(150deg,#061847 0%,#0d2680 100%); }
    .tm-modal-avatar { width:120px; height:120px; border-radius:50%; object-fit:cover; object-position:top center; display:block; margin:0 auto 14px; border:4px solid rgba(255,255,255,.18); box-shadow:0 0 0 1px rgba(255,255,255,.09), 0 10px 36px rgba(0,0,0,.38); }
    .tm-modal-role { font-size:.57rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:#6ee7b7; margin-bottom:4px; }
    .tm-modal-name { font-family:'Oswald',sans-serif; font-size:1.4rem; font-weight:800; color:#fff; line-height:1.2; }
    .tm-modal-body { padding:22px 24px 26px; }
    .tm-modal-bio { list-style:none; padding:0; margin:0 0 18px; display:flex; flex-direction:column; gap:7px; }
    .tm-modal-bio li { font-size:.81rem; color:#475569; line-height:1.6; padding-left:15px; position:relative; }
    .tm-modal-bio li::before { content:'\25B8'; position:absolute; left:0; color:#4a6c1a; font-size:.65rem; top:4px; }
    .tm-modal-li { display:inline-flex; align-items:center; gap:7px; font-size:.73rem; font-weight:700; color:#0a66c2; text-decoration:none; padding:7px 14px; border:1.5px solid rgba(10,102,194,.3); border-radius:8px; transition:background .2s, color .2s, border-color .2s; }
    .tm-modal-li:hover { background:#0a66c2; color:#fff; border-color:#0a66c2; }
    .tm-modal-li svg { width:13px; height:13px; }
    .tm-modal-close { position:absolute; top:12px; right:13px; z-index:10; width:30px; height:30px; border-radius:50%; background:rgba(255,255,255,.15); border:none; color:#fff; font-size:.85rem; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .2s; }
    .tm-modal-close:hover { background:rgba(255,255,255,.28); }

    /* ══ Contact form ═══════════════════════════════════════════════════════ */
    .ct-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
    .ct-field { display:flex; flex-direction:column; gap:5px; }
    .ct-field.ct-full { grid-column:1/-1; }
    .ct-label { font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:#94a3b8; }
    .ct-input, .ct-textarea {
      background:rgba(255,255,255,.07); border:1.5px solid rgba(255,255,255,.12);
      border-radius:8px; padding:10px 14px; color:#fff; font-size:.88rem;
      font-family:inherit; width:100%; box-sizing:border-box;
      transition:border-color .2s, background .2s; outline:none;
    }
    .ct-input::placeholder, .ct-textarea::placeholder { color:#475569; }
    .ct-input:focus, .ct-textarea:focus { border-color:#4a6c1a; background:rgba(255,255,255,.1); }
    .ct-textarea { resize:vertical; min-height:110px; }
    .ct-honeypot { display:none !important; }
    .ct-submit {
      width:100%; margin-top:6px; padding:12px 24px;
      background:#4a6c1a; color:#fff; font-weight:800; font-size:.9rem;
      border:none; border-radius:8px; cursor:pointer;
      transition:background .2s, transform .2s; letter-spacing:.04em;
    }
    .ct-submit:hover:not(:disabled) { background:#527a14; transform:translateY(-1px); }
    .ct-submit:disabled { opacity:.6; cursor:not-allowed; }
    .ct-msg { display:none; margin-top:10px; padding:10px 14px; border-radius:8px; font-size:.85rem; font-weight:600; }
    .ct-success { background:rgba(74,108,26,.25); border:1px solid rgba(74,108,26,.5); color:#86efac; }
    .ct-error   { background:rgba(220,38,38,.15); border:1px solid rgba(220,38,38,.35); color:#fca5a5; }
    .ct-hq-photo { width:100%; height:auto; display:block; border-radius:12px; margin-bottom:20px; }
    .ct-info-row { display:flex; align-items:flex-start; gap:12px; margin-bottom:16px; }
    .ct-info-icon { width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
    .ct-info-icon-green { background:rgba(74,108,26,.2); color:#86efac; }
    .ct-info-icon-blue  { background:rgba(99,179,237,.12); color:#7dd3fc; }
    .ct-info-label { font-size:.68rem; color:#64748b; margin-bottom:2px; }
    .ct-info-value { font-size:.82rem; font-weight:600; color:#e2e8f0; line-height:1.5; }
    .ct-info-value a { color:#86efac; text-decoration:none; }
    .ct-info-value a:hover { color:#4ade80; }

    /* ══ Awards carousel ════════════════════════════════════════════════════ */
    #awards { padding:52px 0; background:#fff; overflow:hidden; border-top:1px solid #e2e8f0; border-bottom:1px solid #e2e8f0; }
    .aw-eyebrow { text-align:center; font-size:.72rem; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:#94a3b8; margin-bottom:32px; }
    .aw-carousel-wrap { position:relative; overflow:hidden; }
    .aw-carousel-wrap::before,
    .aw-carousel-wrap::after {
      content:''; position:absolute; top:0; bottom:0; z-index:2; width:140px; pointer-events:none;
    }
    .aw-carousel-wrap::before { left:0;  background:linear-gradient(90deg,#fff 30%,transparent); }
    .aw-carousel-wrap::after  { right:0; background:linear-gradient(270deg,#fff 30%,transparent); }
    .aw-track {
      display:flex; align-items:center; gap:56px;
      width:max-content; padding:8px 28px;
      animation:aw-scroll 28s linear infinite;
    }
    .aw-track:hover { animation-play-state:paused; }
    .aw-logo {
      height:82px; width:auto; max-width:220px;
      object-fit:contain; flex-shrink:0;
      opacity:.75; transition:opacity .3s, transform .3s;
    }
    .aw-logo:hover { opacity:1; transform:scale(1.1); cursor:pointer; }
    @keyframes aw-scroll {
      0%   { transform:translateX(0); }
      100% { transform:translateX(-50%); }
    }

    /* ══════════════════════════════════════════════════════
       MOBILE RESPONSIVE — full-site breakpoints
       ══════════════════════════════════════════════════════ */

    /* ── Hero: reduce animals height on small screens ── */
    @media(max-width:640px) {
      #hero .relative.z-\[8\] { height:260px; }
    }

    /* ── Industry Problem: mobile image replaces interactive content ── */
    .ip-mobile-img {
      display:none;
      width:100%;
      height:auto;
      border-radius:10px;
    }
    @media(max-width:768px) {
      .ip-mobile-img { display:block; }
      .ip-interactive-content .ip-steps-row,
      .ip-interactive-content .ip-phase-labels { display:none; }
    }

    /* ── S3 Question: mobile image replaces parallax ── */
    .wl-mobile-img {
      display:none;
      width:100%;
      height:auto;
    }
    .wl-desktop-content { display:contents; }
    @media(max-width:768px) {
      #why-lower { height:auto; min-height:0; }
      .wl-mobile-img { display:block; }
      .wl-desktop-content { display:none; }
    }

    /* ── Platform Compare: mobile image replaces animation ── */
    .cmp-mobile-img { display:none; width:100%; height:auto; border-radius:10px; }
    @media(max-width:768px) {
      .cmp-mobile-img { display:block; }
      .cmp-interactive-content { display:none; }
      .comparison-section { padding:50px 4%; }
      .comparison-section .cmp-title { font-size:1.6rem; margin-bottom:20px; }
    }

    /* ── Pipeline: scale down label + chevrons + bars ── */
    @media(max-width:768px) {
      #pipeline { padding:50px 4% 50px; }
      .pp-label-spacer { width:96px; }
      .pp-row-label { width:96px; padding-right:8px; }
      .pp-row-label span { font-size:.7rem; }
      .pp-animal { width:26px; height:26px; }
      .pp-animal img { width:24px; height:24px; }
      .pp-animal-multi img { width:20px; height:20px; }
      .pp-chevrons { height:62px; }
      .pp-chev { font-size:.54rem; padding:0 10px; gap:2px; }
      .pp-chev img { width:17px; height:17px; }
      .pp-bar-track { height:36px; }
      .pp-bar { padding-left:8px; }
      .pp-badge { font-size:.55rem; padding:2px 7px 2px 5px; }
      .pp-badge svg { width:9px; height:9px; }
    }
    @media(max-width:480px) {
      .pp-label-spacer { width:72px; }
      .pp-row-label { width:72px; }
      .pp-row-label span { font-size:.6rem; }
      .pp-chevrons { height:54px; }
      .pp-chev { font-size:.46rem; padding:0 6px; }
      .pp-chev img { width:14px; height:14px; }
    }

    /* ── Business Model: vertical stack on mobile ── */
    @media(max-width:768px) {
      #business-model { padding:50px 4% 50px; }
      .bm-headline { font-size:clamp(1.15rem,4vw,1.7rem); margin-bottom:28px; }
      .bm-flow { flex-direction:column; align-items:stretch; gap:4px; }
      .bm-chevs-left,
      .bm-chevs-right { height:auto; flex-direction:column; gap:3px; flex:none; width:100%; }
      .bm-chev {
        clip-path:none !important;
        margin-left:0 !important;
        height:44px;
        border-radius:6px;
        flex-direction:row;
        justify-content:flex-start;
        padding:0 14px;
        gap:10px;
        font-size:.72rem;
        text-align:left;
        line-height:1.4;
      }
      .bm-chev img { width:18px; height:18px; }
      .bm-circle-wrap { width:100%; padding:12px 14px; justify-content:flex-start; }
      /* Revenue: static row layout (JS absolute positioning overridden) */
      .bm-revenue {
        height:auto !important;
        display:flex !important;
        flex-direction:row;
        justify-content:center;
        gap:32px;
        margin:14px 0 8px;
        padding:12px 0;
      }
      .bm-rv-svg { display:none; }
      .bm-rv-upfront,
      .bm-rv-royalties {
        position:static !important;
        transform:none !important;
        left:auto !important;
        top:auto !important;
      }
      .bm-rv-logo { display:none; }
    }

    /* ── Team: tighter padding on mobile ── */
    @media(max-width:640px) {
      #team { padding:50px 4% 50px; }
      .tm-headline { margin-bottom:32px; }
      .tm-grid { gap:8px 10px; }
      .tm-person { width:130px; padding:14px 6px 12px; }
      .tm-avatar { width:90px; height:90px; }
    }

    /* ── Team modal: scrollable + compact on small screens ── */
    @media(max-width:480px) {
      #tm-modal { padding:10px; align-items:flex-start; padding-top:60px; }
      .tm-modal-box { border-radius:16px; margin:0 auto; }
      .tm-modal-header { padding:22px 16px 14px; }
      .tm-modal-avatar { width:80px; height:80px; margin-bottom:10px; }
      .tm-modal-body { padding:14px 16px 18px; }
    }

    /* ── Patent Modals: single column on mobile ── */
    @media(max-width:640px) {
      .pm-box {
        flex-direction:column;
        width:min(95vw,480px);
        height:auto;
        max-height:88vh;
        overflow-y:auto;
      }
      .pm-panel { width:100%; padding:28px 20px 22px; }
      .pm-img-side { display:none; }
      .pm-name { font-size:1.4rem; }
      .pm-title { font-size:1.2rem; margin-bottom:14px; }
      .pm-list li { font-size:.88rem; }
    }

    /* ── Contact: section padding ── */
    @media(max-width:640px) {
      #contact { padding:60px 0 60px; }
      #contact .reveal { border-radius:16px; padding:24px !important; }
    }

    /* ── Terms modal: reduce padding on mobile ── */
    @media(max-width:640px) {
      #terms-modal { padding:20px 10px !important; }
      #terms-modal > div { padding:24px 18px !important; border-radius:12px !important; }
    }

    /* ── General: reduce section padding on smallest screens ── */
    @media(max-width:480px) {
      #industry-problem { padding:50px 4% 40px; }
      #pipeline { padding:40px 4% 40px; }
      #business-model { padding:40px 4% 40px; }
      #team { padding:40px 4% 40px; }
      .pp-footer-txt, .bm-footer-txt { font-size:1rem; }
    }

    /* ── LAIKA Slide 1: 2-column layout on mobile ── */
    @media(max-width:768px) {
      .lk-s1-grid {
        grid-template-columns: 3fr 2fr !important;
        gap: 8px !important;
        align-items: center;
      }
      /* Reduce LAIKA card padding & inner canvas height */
      .lk-s1-grid .laika-card { padding: 10px !important; }
      .lk-s1-grid .laika-card .flex.items-center.justify-between { margin-bottom: 8px !important; }
      .lk-s1-grid .laika-card img[alt="Peptidus Biotech"] { height: 22px !important; }
      .lk-s1-grid .rounded-2xl.h-\[420px\] { height: 160px !important; }
      /* Reduce dog height */
      #dog-scene { min-height: 160px !important; }
    }

    /* ── Business Model: mobile image replacement ── */
    .bm-mobile-img { display:none; width:100%; height:auto; border-radius:10px; }
    @media(max-width:768px) {
      .bm-mobile-img { display:block; }
      .bm-interactive-content { display:none; }
    }

    /* ── Pipeline: mobile image replacement ── */
    .pp-mobile-wrap   { display:none; }
    .pp-mobile-img    { width:100%; height:auto; border-radius:10px; display:block; }
    .pp-mobile-badges { display:none; flex-wrap:wrap; gap:10px; margin-top:14px; }
    .pp-mobile-badge  {
      display:inline-flex; align-items:center; gap:6px;
      background:#3a5c0e; color:#fff;
      border:none; border-radius:20px;
      padding:8px 14px;
      font-size:.75rem; font-weight:700; font-family:inherit;
      cursor:pointer; white-space:nowrap;
      box-shadow:0 2px 8px rgba(0,0,0,.25);
    }
    .pp-mobile-badge:active { opacity:.8; }
    @media(max-width:768px) {
      .pp-mobile-wrap   { display:block; }
      .pp-mobile-badges { display:flex; }
      .pp-interactive-content { display:none; }
    }

    /* ── LAIKA Slide 2: mobile image replacement ── */
    .lk-s2-mobile-img { display:none; width:100%; height:auto; border-radius:10px; }
    @media(max-width:768px) {
      .lk-s2-mobile-img { display:block; }
      .lk-s2-interactive-content { display:none; }
    }
