:root{--ink:#151515;--muted:#676767;--blue:#0868dd;--line:#e6e9ed;--max:1540px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Georgia,'Times New Roman',serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(calc(100% - 72px),var(--max));margin:auto}.sans{font-family:Arial,Helvetica,sans-serif}
.header{height:92px;border-bottom:1px solid var(--line);background:#fff;position:relative;z-index:50}.header .wrap{height:100%;display:flex;align-items:center;gap:40px}.brand{width:300px;min-width:300px;display:flex;align-items:center}.brand-logo{display:block;width:270px;height:auto;max-height:72px;object-fit:contain;object-position:left center}.nav{margin-left:auto;display:flex;gap:38px;align-items:center;font:14px Arial,sans-serif}.nav a{padding:10px 0}.menu-btn{display:none;margin-left:auto;border:0;background:none;font-size:27px}
.hero-home{height:650px;position:relative;overflow:hidden;background:#fff}
.hero-lab{position:absolute;left:0;right:0;bottom:0;height:430px;background:url('../images/lab-continuous.jpg') left bottom/cover no-repeat}
.hero-lab:before{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.92) 0%,rgba(255,255,255,.56) 18%,rgba(255,255,255,.08) 42%,rgba(255,255,255,0) 62%);pointer-events:none}
.hero-layout{height:100%;position:relative}
.hero-copy{position:absolute;left:0;top:32px;width:56%;z-index:4}
.eyebrow{display:flex;gap:16px;align-items:center;font:12px Arial,sans-serif;letter-spacing:.36em;color:#59616b;text-transform:uppercase}.eyebrow:before{content:'';width:46px;height:1px;background:#667587}
.hero h1{font-size:clamp(58px,4.2vw,76px);line-height:.93;font-weight:500;margin:22px 0 0;letter-spacing:-.035em;max-width:780px}
.hero-subtitle{font-size:clamp(24px,1.6vw,29px);line-height:1.15;margin-top:12px;max-width:810px}
.lead{font-size:19px;line-height:1.4;color:#666;max-width:690px;margin:22px 0 23px}
.actions{display:flex;gap:18px}.btn{display:inline-flex;align-items:center;justify-content:center;min-width:205px;height:52px;padding:0 26px;border:1px solid #91a9c4;border-radius:4px;font:16px Arial,sans-serif;background:#fff}.btn.primary{background:var(--blue);color:#fff;border-color:var(--blue)}
.support{position:absolute;right:0;top:46px;width:42%;display:grid;grid-template-columns:190px 1fr;gap:28px;align-items:start;z-index:5}.support-logo{margin:0}.support img{width:190px}.support p{margin:0;color:#686868;font:14px/1.48 Arial,sans-serif}.support-copy>a{display:inline-block;margin-top:9px;color:#0564c9;text-decoration:underline;font:14px Arial,sans-serif}
.hero-filter{position:absolute;z-index:3;width:min(900px,57vw);max-height:330px;object-fit:contain;right:4%;bottom:0;filter:drop-shadow(0 13px 13px rgba(32,48,64,.13))}
.quick{height:146px;border-bottom:1px solid var(--line);background:#fff}.quick .wrap{height:100%;display:grid;grid-template-columns:repeat(5,1fr)}.quick a{padding:27px 26px;border-right:1px solid var(--line);display:flex;gap:18px;align-items:flex-start}.quick a:last-child{border-right:0}.icon{font:31px Arial,sans-serif;color:var(--blue);width:34px;flex:0 0 34px}.quick strong{font-size:19px;font-weight:500;white-space:nowrap}.quick span{display:block;margin-top:7px;color:#747474;font:14px/1.42 Arial,sans-serif}
.section{padding:88px 0;border-bottom:1px solid var(--line)}.section h2{font-size:48px;font-weight:500;line-height:1.05;margin:0 0 22px}.section .intro{max-width:850px;color:#6b6b6b;font-size:20px;line-height:1.55}.two{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.dynamic-body{font-family:Arial,sans-serif;color:#4d535b;line-height:1.75}.dynamic-body h3{font-family:Georgia,serif;color:#111;font-size:28px;margin:28px 0 10px}.tech-card{background:#fff;border:1px solid var(--line);padding:24px}.tech-card img{width:100%;height:390px;object-fit:contain}.caption{margin-top:12px;color:#777;font:13px Arial,sans-serif}#project{scroll-margin-top:20px}
.page-hero{padding:72px 0 34px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#f7fafc)}.page-hero h1{font-size:clamp(42px,6vw,76px);font-weight:500;line-height:1.03;margin:14px 0}.page-hero p{max-width:820px;font-size:20px;line-height:1.5;color:#6c6c6c}.content{padding:72px 0}.content h2{font-size:38px;font-weight:500}.content p,.content li{font:17px/1.7 Arial,sans-serif;color:#626262}.page-image{margin:28px 0;border:1px solid var(--line);background:#fff;padding:18px}.page-image img{width:100%;max-height:650px;object-fit:contain}.support-inline{display:grid;grid-template-columns:240px 1fr;gap:35px;align-items:center}.footer{padding:44px 0;background:#fafafa}.footer .wrap{display:grid;grid-template-columns:1fr 1fr;gap:30px}.footer small{font:12px/1.6 Arial,sans-serif;color:#777}.footer .right{text-align:right}.lightbox{position:fixed;inset:0;background:rgba(255,255,255,.96);z-index:80;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-height:90vh;max-width:94vw}.lightbox button{position:absolute;right:25px;top:20px;border:0;background:none;font-size:40px;cursor:pointer}
@media(min-width:1900px){:root{--max:1680px}.hero-home{height:710px}.hero-lab{height:540px}.hero-copy{top:42px}.hero h1{font-size:90px}.hero-subtitle{font-size:34px}.lead{font-size:22px}.hero-filter{width:min(1080px,60vw);max-height:430px}.quick{height:154px}}
@media(min-width:2500px){:root{--max:2100px}.header{height:112px}.brand{min-width:390px}.brand strong{font-size:38px}.brand span{font-size:12px}.nav{font-size:18px;gap:52px}.hero-home{height:870px}.hero-lab{height:670px}.hero-copy{top:58px}.hero h1{font-size:112px;max-width:1050px}.hero-subtitle{font-size:43px;max-width:1100px}.lead{font-size:28px;max-width:940px}.btn{height:66px;min-width:270px;font-size:20px}.support{top:90px;grid-template-columns:260px 1fr}.support img{width:260px}.support p,.support-copy>a{font-size:20px}.hero-filter{width:min(1380px,59vw);max-height:535px}.quick{height:190px}.quick strong{font-size:25px}.quick span{font-size:18px}.quick a{padding:38px 34px}}
@media(max-width:1100px){.wrap{width:min(calc(100% - 40px),var(--max))}.nav{display:none;position:absolute;top:92px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:20px 24px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu-btn{display:block}.hero-home{height:auto;padding-bottom:0}.hero-lab{position:relative;height:360px;margin-top:390px}.hero-layout{position:absolute;inset:0 auto auto 50%;transform:translateX(-50%);height:750px}.hero-copy{top:28px;width:100%;padding-right:0}.hero h1{font-size:58px;max-width:760px}.hero-subtitle{font-size:25px}.support{top:235px;left:0;right:auto;width:100%;grid-template-columns:160px 1fr;max-width:650px}.support img{width:160px}.hero-filter{bottom:0;right:-5%;width:84vw;max-height:315px}.quick{height:auto}.quick .wrap{grid-template-columns:1fr 1fr}.quick a{min-height:116px;border-bottom:1px solid var(--line)}.two{grid-template-columns:1fr}.footer .wrap{grid-template-columns:1fr}.footer .right{text-align:left}}
@media(max-width:650px){.wrap{width:min(calc(100% - 28px),var(--max))}.header{height:78px}.brand{min-width:0}.brand strong{font-size:23px}.brand span{font-size:8px;white-space:normal}.nav{top:78px}.hero-lab{height:270px;margin-top:520px;background-position:20% bottom}.hero-layout{height:790px}.hero-copy{top:24px}.eyebrow{font-size:10px;letter-spacing:.26em}.hero h1{font-size:43px;line-height:.95}.hero-subtitle{font-size:21px}.lead{font-size:17px}.actions{flex-direction:column}.btn{width:100%}.support{top:330px;grid-template-columns:125px 1fr;gap:14px}.support img{width:125px}.support p,.support-copy>a{font-size:11px}.hero-filter{width:112vw;right:-35%;max-height:245px}.quick .wrap{grid-template-columns:1fr}.quick a{border-right:0}.section{padding:58px 0}.section h2,.page-hero h1{font-size:38px}.tech-card img{height:auto}.support-inline{grid-template-columns:1fr}.footer{padding:35px 0}}
/* v11 hero alignment: preserve a clearly visible microscope/laboratory background */
@media(min-width:1101px){
  .hero-home{height:650px}
  .hero-lab{height:430px;background-size:cover;background-position:left bottom}
  .hero-filter{width:min(900px,57vw);max-height:330px;right:4%;bottom:0}
}
@media(min-width:1900px){
  .hero-home{height:710px}.hero-lab{height:475px}.hero-copy{top:40px}.hero-filter{width:min(1020px,56vw);max-height:380px}
}
@media(min-width:2500px){
  .hero-home{height:860px}.hero-lab{height:575px}.hero-copy{top:56px}.hero-filter{width:min(1280px,56vw);max-height:470px}
}
@media(max-width:1100px){
  .hero-lab{background-position:left bottom;background-size:auto 100%;}
}
@media(max-width:650px){
  .hero-lab{background-position:18% bottom;background-size:auto 100%;}
}

/* v13 — rebuilt as real HTML/CSS layers; no screenshot used as page content */
@media (min-width:1101px){
  .hero-home{height:650px;background:#fff;overflow:hidden}
  .hero-lab{left:0;right:0;bottom:0;height:500px;background-image:url('../images/lab-continuous.jpg');background-size:cover;background-position:left bottom;background-repeat:no-repeat;filter:none;opacity:1}
  .hero-lab:before{display:none!important}
  .hero-layout{height:100%}
  .hero-copy{top:28px;width:55%;z-index:6}
  .hero h1{font-size:clamp(60px,4.15vw,76px);line-height:.93;margin-top:20px;max-width:760px}
  .hero-subtitle{font-size:28px;max-width:800px;margin-top:12px}
  .lead{font-size:19px;line-height:1.38;max-width:700px;margin:22px 0 22px}
  .support{top:42px;width:42%;grid-template-columns:185px 1fr;gap:26px;z-index:7}
  .support img{width:185px;max-height:130px;object-fit:contain}
  .hero-filter{width:min(900px,57vw);height:340px;max-height:none;object-fit:contain;object-position:right bottom;right:2.5%;bottom:-3px;z-index:5;filter:drop-shadow(0 12px 12px rgba(28,42,56,.12))}
}
@media (min-width:1900px){
  .hero-home{height:710px}.hero-lab{height:535px}.hero-copy{top:38px}.hero h1{font-size:86px}.hero-subtitle{font-size:32px}.lead{font-size:21px}.support{top:58px}.hero-filter{width:min(1030px,57vw);height:405px}
}
@media (min-width:2500px){
  .hero-home{height:860px}.hero-lab{height:650px}.hero-copy{top:52px}.hero h1{font-size:106px;max-width:1000px}.hero-subtitle{font-size:40px;max-width:1050px}.lead{font-size:26px;max-width:900px}.support{top:80px;grid-template-columns:245px 1fr}.support img{width:245px;max-height:175px}.hero-filter{width:min(1320px,58vw);height:510px}
}
@media (max-width:1100px){
  .hero-lab:before{display:none!important}
  .hero-lab{filter:none!important;opacity:1!important;background-image:url('../images/lab-continuous.jpg');background-size:auto 100%;background-position:left bottom;background-repeat:no-repeat}
}

/* v14.5 — Fund/support block stays entirely in the white content band */
@media (min-width:1101px){
  .hero-home{height:820px;background:#fff;overflow:hidden}
  .hero-lab{top:auto!important;bottom:0!important;height:430px!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;filter:none!important;opacity:1!important}
  .hero-layout{height:390px!important;position:relative}
  .hero-copy{top:28px!important;width:54%!important}
  .hero h1{font-size:clamp(54px,3.7vw,68px)!important;line-height:.94!important;margin-top:18px!important;max-width:720px!important}
  .hero-subtitle{font-size:25px!important;line-height:1.16!important;margin-top:10px!important;max-width:760px!important}
  .hero .lead{font-size:18px!important;line-height:1.35!important;max-width:690px!important;margin:18px 0!important}
  .hero .actions{margin-top:16px!important}
  .support{top:42px!important;width:43%!important;grid-template-columns:170px 1fr!important;gap:24px!important;align-items:start!important}
  .support img{width:170px!important;max-height:122px!important;object-fit:contain!important}
  .support p{font-size:13px!important;line-height:1.42!important}
  .support-copy>a{font-size:13px!important;margin-top:8px!important}
}
@media (min-width:1900px){
  .hero-home{height:880px}
  .hero-lab{height:470px!important}
  .hero-layout{height:410px!important}
  .hero-copy{top:34px!important}
  .support{top:48px!important}
}
@media (min-width:2500px){
  .hero-home{height:1080px}
  .hero-lab{height:590px!important}
  .hero-layout{height:490px!important}
  .hero h1{font-size:88px!important;max-width:920px!important}
  .hero-subtitle{font-size:34px!important;max-width:980px!important}
  .hero .lead{font-size:22px!important;max-width:850px!important}
  .support{top:64px!important;grid-template-columns:220px 1fr!important}
  .support img{width:220px!important;max-height:155px!important}
  .support p,.support-copy>a{font-size:17px!important}
}

/* v14.6 — show lab-background without cropping on desktop */
@media (min-width:1101px){
  .hero-home{
    height:calc(390px + 36.914vw)!important;
    max-height:none!important;
  }
  .hero-lab{
    height:36.914vw!important;
    max-height:none!important;
    background-size:100% auto!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
    background-color:#eef6fb!important;
  }
}
@media (min-width:1900px){
  .hero-home{height:calc(410px + 36.914vw)!important}
  .hero-lab{height:36.914vw!important}
}
@media (min-width:2500px){
  .hero-home{height:calc(490px + 36.914vw)!important}
  .hero-lab{height:36.914vw!important}
}
@media (max-width:1100px){
  .hero-lab{
    background-size:cover!important;
    background-position:center center!important;
  }
}

/* v14.7 — responsive rebuild: prevent hero, Fund block and controls from overlapping */
@media (max-width:1100px){
  .header{height:auto;min-height:78px}
  .header .wrap{min-height:78px;height:auto;padding-top:10px;padding-bottom:10px;gap:18px}
  .brand{width:270px;min-width:0;max-width:calc(100% - 56px)}
  .brand-logo{width:230px;max-width:100%;max-height:58px}
  .nav{top:100%;z-index:60;gap:6px}
  .nav a{width:100%;padding:11px 0}

  .hero-home{display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;overflow:visible!important;background:#fff}
  .hero-layout{order:1!important;position:relative!important;inset:auto!important;left:auto!important;transform:none!important;height:auto!important;min-height:0!important;padding-top:28px!important;padding-bottom:30px!important}
  .hero-copy{position:relative!important;inset:auto!important;top:auto!important;left:auto!important;width:100%!important;padding:0!important}
  .hero h1{font-size:clamp(46px,7vw,64px)!important;line-height:.96!important;max-width:850px!important;margin-top:18px!important}
  .hero-subtitle{font-size:clamp(22px,3.3vw,28px)!important;max-width:820px!important}
  .hero .lead{font-size:18px!important;line-height:1.45!important;max-width:760px!important;margin:18px 0!important}
  .actions{display:flex!important;flex-wrap:wrap!important;gap:12px!important;margin-top:18px!important}
  .actions .btn{width:auto!important;max-width:100%}

  .support{position:relative!important;inset:auto!important;top:auto!important;right:auto!important;left:auto!important;width:100%!important;max-width:none!important;margin-top:28px!important;display:grid!important;grid-template-columns:minmax(120px,160px) minmax(0,1fr)!important;gap:20px!important;align-items:start!important}
  .support img{width:100%!important;max-width:160px!important;height:auto!important;max-height:none!important}
  .support p{font-size:13px!important;line-height:1.5!important;overflow-wrap:anywhere}
  .support-copy>a{font-size:13px!important;line-height:1.4!important;overflow-wrap:anywhere}

  .hero-lab{order:2!important;position:relative!important;inset:auto!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:2048/756!important;margin:0!important;background-size:100% 100%!important;background-position:center center!important;background-repeat:no-repeat!important;background-color:#eef6fb!important;filter:none!important;opacity:1!important}
  .hero-lab:before{display:none!important}

  .quick{height:auto!important}
  .quick .wrap{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .quick a{min-width:0!important;min-height:112px!important;padding:22px 18px!important}
  .quick strong,.quick span{overflow-wrap:anywhere}
}

@media (max-width:650px){
  .wrap{width:min(calc(100% - 28px),var(--max))}
  .header .wrap{min-height:72px}
  .brand{width:230px}
  .brand-logo{width:210px;max-width:100%;max-height:52px}
  .menu-btn{font-size:25px;padding:8px}

  .hero-layout{padding-top:22px!important;padding-bottom:24px!important}
  .eyebrow{font-size:9px!important;letter-spacing:.22em!important}
  .hero h1{font-size:clamp(38px,12vw,48px)!important;line-height:.94!important;letter-spacing:-.025em!important;margin-top:16px!important}
  .hero-subtitle{font-size:20px!important;line-height:1.18!important}
  .hero .lead{font-size:16px!important;line-height:1.45!important;margin:15px 0!important}
  .actions{flex-direction:column!important;gap:10px!important}
  .actions .btn{width:100%!important;min-width:0!important;height:auto!important;min-height:50px!important;padding:13px 16px!important}

  .support{margin-top:24px!important;grid-template-columns:1fr!important;gap:12px!important}
  .support-logo{display:block}
  .support img{width:135px!important;max-width:45vw!important}
  .support p{font-size:12px!important;line-height:1.48!important}
  .support-copy>a{font-size:12px!important}

  .hero-lab{aspect-ratio:2048/756!important;background-size:100% 100%!important;background-position:center!important}
  .quick .wrap{grid-template-columns:1fr!important}
  .quick a{min-height:0!important;padding:18px 14px!important;border-right:0!important}
  .two{grid-template-columns:1fr!important;gap:28px!important}
  .section{padding:48px 0!important}
  .section h2,.page-hero h1{font-size:clamp(34px,10vw,42px)!important}
}

@media (max-width:380px){
  .wrap{width:calc(100% - 22px)}
  .brand{width:210px}
  .brand-logo{width:195px}
  .hero h1{font-size:36px!important}
  .hero-subtitle{font-size:18px!important}
  .hero .lead{font-size:15px!important}
}

/* v14.8 — elegant hero image spacing: controls never overlap laboratory image */
@media (min-width:1101px){
  .hero-home{
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    display:flex!important;
    flex-direction:column!important;
    padding-bottom:0!important;
  }
  .hero-layout{
    order:1!important;
    position:relative!important;
    height:auto!important;
    min-height:390px!important;
    padding-top:28px!important;
    padding-bottom:34px!important;
  }
  .hero-copy{position:relative!important;top:auto!important;left:auto!important;width:54%!important;}
  .hero .actions{margin-bottom:0!important;}
  .support{top:58px!important;}
  .hero-lab{
    order:2!important;
    position:relative!important;
    left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;
    width:min(calc(100% - 64px),1680px)!important;
    height:auto!important;
    aspect-ratio:2048/756!important;
    margin:18px auto 0!important;
    background-size:contain!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    background-color:#fff!important;
    filter:none!important;
    opacity:1!important;
  }
  .hero-lab:before{display:none!important;}
}
@media (min-width:1900px){
  .hero-layout{min-height:430px!important;padding-bottom:40px!important;}
  .hero-lab{width:min(calc(100% - 96px),1760px)!important;margin-top:20px!important;}
}
@media (min-width:2500px){
  .hero-layout{min-height:520px!important;padding-bottom:48px!important;}
  .hero-lab{width:min(calc(100% - 140px),2100px)!important;margin-top:24px!important;}
}
@media (max-width:1100px){
  .hero-layout{padding-bottom:34px!important;}
  .hero-lab{width:calc(100% - 32px)!important;margin:14px auto 0!important;background-size:contain!important;background-color:#fff!important;}
}
@media (max-width:650px){
  .hero-layout{padding-bottom:26px!important;}
  .hero-lab{width:calc(100% - 20px)!important;margin-top:10px!important;}
}

/* v14.9 — Polymer filter page */
.filter-features{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:13px}
.filter-features li{position:relative;padding-left:24px;line-height:1.55}
.filter-features li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border:2px solid #1768dc;border-radius:50%}
.filter-material-image img{display:block;width:100%;height:auto;object-fit:contain;background:transparent}
@media (min-width:901px){.filter-material-image{align-self:center}.filter-material-image img{max-height:520px}}

/* v14.12 — intellectual property cards on Results */
.ip-section{padding-top:18px;background:#fafbfc;border-top:1px solid #e8ebef}
.ip-section h2{margin:10px 0 8px;font-size:clamp(30px,3vw,48px);font-weight:500}
.ip-intro{margin:0 0 30px;color:#68717c;font-size:17px}
.patent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.patent-card{display:grid;grid-template-columns:minmax(180px,38%) 1fr;gap:24px;align-items:start;background:#fff;border:1px solid #e1e5ea;padding:22px;box-shadow:0 12px 35px rgba(25,39,58,.05)}
.patent-image{display:block;width:100%;padding:0;border:0;background:#f5f6f8;cursor:zoom-in}
.patent-image img{display:block;width:100%;height:auto;max-height:430px;object-fit:contain}
.patent-kind{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#607087;margin-bottom:8px}
.patent-number{font-size:15px;color:#1764c0;margin-bottom:10px}
.patent-copy h3{font-size:24px;line-height:1.18;margin:0 0 14px;font-weight:500}
.patent-copy p{margin:0;color:#5f6670;line-height:1.65}
@media(max-width:1100px){.patent-card{grid-template-columns:1fr}.patent-image img{max-height:520px}}
@media(max-width:760px){.patent-grid{grid-template-columns:1fr;gap:18px}.patent-card{padding:16px;gap:18px}.patent-copy h3{font-size:21px}.ip-intro{font-size:15px}}

/* v14.13 — compact, consistent internal pages */
.page-hero{
  padding:42px 0 24px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%)!important;
}
.page-hero .eyebrow{font-size:11px!important;letter-spacing:.30em!important}
.page-hero h1{
  font-size:clamp(38px,4.2vw,58px)!important;
  line-height:1.02!important;
  margin:12px 0 10px!important;
  max-width:980px!important;
}
.page-hero p,.page-hero .lead{
  max-width:780px!important;
  margin:0!important;
  font-size:17px!important;
  line-height:1.48!important;
  color:#68717a!important;
}
main>.section{
  padding:46px 0!important;
}
main>.section .two{
  gap:48px!important;
  align-items:start!important;
}
.dynamic-body h2{
  font-size:clamp(28px,2.6vw,38px)!important;
  line-height:1.1!important;
  margin:0 0 14px!important;
}
.dynamic-body p{
  margin:0!important;
  font-size:16px!important;
  line-height:1.62!important;
}
.page-image{
  margin:0!important;
  padding:14px!important;
  border-color:#e5e8ec!important;
}
.page-image img{max-height:520px!important}
.ip-section{padding:38px 0 52px!important}
.ip-section h2{font-size:clamp(28px,2.7vw,40px)!important;margin:8px 0 6px!important}
.ip-intro{margin-bottom:22px!important;font-size:16px!important}

@media(max-width:1100px){
  .page-hero{padding:34px 0 20px!important}
  main>.section{padding:38px 0!important}
  main>.section .two{gap:28px!important}
  .page-image{max-width:760px;width:100%}
}
@media(max-width:650px){
  .page-hero{padding:28px 0 18px!important}
  .page-hero h1{font-size:clamp(32px,10vw,40px)!important;margin:10px 0 8px!important}
  .page-hero p,.page-hero .lead{font-size:15px!important;line-height:1.45!important}
  main>.section{padding:30px 0!important}
  .dynamic-body h2{font-size:27px!important;margin-bottom:10px!important}
  .dynamic-body p{font-size:15px!important;line-height:1.55!important}
  .page-image{padding:10px!important}
  .ip-section{padding:30px 0 38px!important}
}


/* v14.19 — Contacts: compact information + dedicated feedback card */
.contacts-hub{background:linear-gradient(180deg,#fff 0,#f7f9fc 100%)!important;padding:42px 0 58px!important;border-top:1px solid #edf0f3}
.contacts-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(520px,1.22fr);gap:54px;align-items:start}
.contacts-side{padding:12px 0}.contacts-side h2{font-size:clamp(28px,3vw,40px)!important;margin:8px 0 12px!important}.contacts-copy{max-width:520px;margin:0 0 24px;color:#66717e;font:15px/1.65 Arial,sans-serif}
.contact-cards{display:grid;gap:10px}.contact-card{display:flex;gap:14px;align-items:center;padding:15px 16px;background:#fff;border:1px solid #e2e7ed;border-radius:12px;text-decoration:none;color:#17202b;box-shadow:0 5px 18px rgba(27,42,63,.035);transition:.2s ease}.contact-card:hover{border-color:#b9d2f3;transform:translateY(-1px)}.contact-card>span:last-child{min-width:0}.contact-card small,.contact-card strong{display:block}.contact-card small{color:#7b8794;font:12px/1.3 Arial,sans-serif;margin-bottom:3px}.contact-card strong{font:600 14px/1.4 Arial,sans-serif;overflow-wrap:anywhere}.contact-icon{width:38px;height:38px;flex:0 0 38px;border-radius:10px;background:#edf5ff;color:#1768dc;display:grid;place-items:center;font:700 17px Arial,sans-serif}
.contact-panel{background:#fff;border:1px solid #dfe5ec;border-radius:18px;padding:30px;box-shadow:0 18px 50px rgba(27,42,63,.08)}.contact-panel-head{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;padding-bottom:22px;border-bottom:1px solid #edf0f3;margin-bottom:22px}.contact-panel-head h2{font-size:clamp(28px,3vw,38px)!important;margin:7px 0 8px!important}.contact-panel-head p{margin:0;max-width:620px;color:#687481;font:15px/1.55 Arial,sans-serif}.secure-mark{white-space:nowrap;background:#eef8f2;color:#2d6b44;border:1px solid #cce6d5;border-radius:99px;padding:7px 10px;font:12px Arial,sans-serif}
.contact-form{position:relative;font-family:Arial,sans-serif}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid label{display:grid;gap:7px;color:#28313b;font-size:13px;font-weight:600}.form-grid label>span:not(.upload-title){color:#1768dc}.form-grid .full{grid-column:1/-1}.contact-form input,.contact-form textarea{width:100%;box-sizing:border-box;border:1px solid #ccd5df;border-radius:9px;background:#fff;padding:12px 13px;font:15px Arial,sans-serif;color:#15191e;outline:none;transition:border-color .2s,box-shadow .2s}.contact-form textarea{resize:vertical;min-height:132px}.contact-form input:focus,.contact-form textarea:focus{border-color:#1768dc;box-shadow:0 0 0 3px rgba(23,104,220,.09)}
.upload-box{border:1px dashed #b9c7d7;border-radius:12px;background:#f8fafc;padding:14px 16px!important;gap:6px!important}.upload-box:hover{border-color:#79a9e8;background:#f5f9ff}.upload-box input{border:0!important;padding:6px 0!important;background:transparent!important;box-shadow:none!important}.upload-title{font-size:14px;color:#26313d}.upload-box small{font-weight:400;color:#7a8693;font-size:12px;line-height:1.4}.captcha-field{grid-column:1/-1;grid-template-columns:auto 110px!important;align-items:center!important;justify-content:start}.captcha-field input{width:110px!important}
.form-actions{display:flex;align-items:center;gap:18px;margin-top:20px}.contact-submit{border:0;border-radius:9px;background:#1768dc;color:#fff;padding:14px 20px;font:600 14px Arial,sans-serif;cursor:pointer;box-shadow:0 8px 18px rgba(23,104,220,.18)}.contact-submit:hover{background:#0f59bf}.form-actions p{margin:0;color:#7b8793;font:12px/1.45 Arial,sans-serif}.form-alert{margin-bottom:18px;padding:12px 14px;border-radius:9px;font-size:14px}.form-alert.success{background:#eef8f1;border:1px solid #bcdcc5;color:#285f38}.form-alert.error{background:#fff3f2;border:1px solid #edc3bf;color:#8b332d}.contact-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:1050px){.contacts-layout{grid-template-columns:1fr;gap:26px}.contact-cards{grid-template-columns:1fr 1fr}.contact-panel{padding:26px}}
@media(max-width:650px){.contacts-hub{padding:26px 0 38px!important}.contact-cards{grid-template-columns:1fr}.contact-panel{padding:18px;border-radius:14px}.contact-panel-head{display:block;padding-bottom:16px;margin-bottom:18px}.secure-mark{display:inline-block;margin-top:12px}.form-grid{grid-template-columns:1fr;gap:14px}.form-grid .full,.captcha-field{grid-column:auto}.captcha-field{grid-template-columns:1fr!important}.captcha-field input{width:100%!important}.form-actions{align-items:stretch;flex-direction:column}.contact-submit{width:100%}.contacts-copy{font-size:14px}}

/* v14.20 — inline validation for contact form */
.contact-form .form-field.has-error input,
.contact-form .form-field.has-error textarea{border-color:#d84a42!important;background:#fffafa!important;box-shadow:0 0 0 3px rgba(216,74,66,.09)!important}
.contact-form .upload-box.has-error{border-color:#d84a42!important;background:#fffafa!important}
.contact-form .upload-box.has-error input{box-shadow:none!important;background:transparent!important}
.contact-form .field-error{display:block!important;color:#b93630!important;font:500 12px/1.35 Arial,sans-serif!important;margin:0!important;grid-column:1/-1}
.contact-form .captcha-field.has-error{row-gap:7px!important}
.contact-form input[aria-invalid="true"]:focus,.contact-form textarea[aria-invalid="true"]:focus{border-color:#c9342d!important;box-shadow:0 0 0 3px rgba(201,52,45,.12)!important}



/* v14.36 — consolidated responsive image system */
.page-image{
  width:min(100%,var(--page-image-width,480px))!important;
  max-width:var(--page-image-width,480px)!important;
  margin:0!important;
  padding:12px!important;
  justify-self:center;
  border:1px solid #e5e8ec;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
  box-sizing:border-box;
}
.page-image img{
  display:block;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
}
.results-summary-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(200px,var(--page-image-width,480px));
  gap:clamp(28px,4vw,54px);
  align-items:center;
}
.results-summary-grid .dynamic-body{display:block!important;min-width:0}
.results-summary-grid .page-image{display:block!important;justify-self:end}
.two>.dynamic-body,.two>.page-image{min-width:0}
.two>.page-image{justify-self:end}

.oil-recovery-section{padding-top:30px!important;border-top:1px solid var(--line)}
.oil-recovery-section>.wrap>h2{max-width:980px;margin:12px 0 14px;font-size:clamp(30px,3.2vw,46px);font-weight:500;line-height:1.12}
.oil-recovery-intro{max-width:1080px;margin:0 0 30px;color:#5f6873;font:16px/1.7 Arial,sans-serif}
.oil-recovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.oil-recovery-card{width:min(100%,var(--oil-card-width,560px));max-width:var(--oil-card-width,560px);margin:0;justify-self:center;border:1px solid #dde4eb;border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 10px 32px rgba(25,42,62,.055);box-sizing:border-box}
.oil-recovery-image{position:relative;display:block;width:100%;height:auto;aspect-ratio:16/10;padding:0;border:0;overflow:hidden;background:#f4f6f8;cursor:zoom-in;text-align:initial;font:inherit;color:inherit}
.oil-recovery-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.2,.7,.2,1);cursor:zoom-in}
.oil-recovery-image .zoom-hint{position:absolute;right:14px;bottom:14px;padding:8px 11px;border-radius:999px;background:rgba(20,29,38,.78);color:#fff;font:12px/1 Arial,sans-serif;opacity:0;transform:translateY(5px);transition:.25s ease;pointer-events:none}
.oil-recovery-image:focus-visible{outline:3px solid #386ee8;outline-offset:-3px}
.oil-recovery-card figcaption{display:grid;gap:7px;padding:18px 20px 20px}
.oil-recovery-card figcaption strong{font:600 17px/1.35 Arial,sans-serif;color:#1d2731}
.oil-recovery-card figcaption span{font:14px/1.55 Arial,sans-serif;color:#6b7580;overflow-wrap:anywhere}
.oil-recovery-note{margin-top:16px;color:#89929b;font:12px/1.5 Arial,sans-serif}

@media (hover:hover) and (pointer:fine){
  .oil-recovery-card:hover .oil-recovery-image img{transform:scale(1.07)}
  .oil-recovery-card:hover .zoom-hint,.oil-recovery-image:focus-visible .zoom-hint{opacity:1;transform:none}
}
@media (min-width:1101px){
  .results-summary-section{padding:34px 0 38px!important}
}
@media (max-width:1100px){
  .results-summary-grid{grid-template-columns:minmax(0,1fr) minmax(200px,var(--page-image-width,480px));gap:30px}
}
@media (max-width:900px){
  .results-summary-grid,.oil-recovery-grid{grid-template-columns:1fr}
  .results-summary-grid .page-image,.page-image,.oil-recovery-card{
    width:min(100%,var(--page-image-width,480px))!important;
    max-width:100%!important;
    justify-self:center!important;
  }
  .oil-recovery-card{width:min(100%,var(--oil-card-width,560px))!important}
  .results-summary-grid .page-image{margin-top:22px!important}
  .oil-recovery-intro{font-size:15px}
}
@media (max-width:650px){
  .page-image{width:100%!important;padding:8px!important}
  .oil-recovery-section{padding-top:20px!important}
  .oil-recovery-grid{gap:16px}
  .oil-recovery-card{width:100%!important;border-radius:11px}
  .oil-recovery-card figcaption{padding:15px 16px 17px}
  .oil-recovery-image .zoom-hint{opacity:.9;transform:none}
  .lightbox{padding:12px}
  .lightbox img{max-width:94vw;max-height:90vh;width:auto;height:auto;object-fit:contain}
}
@media (max-width:380px){
  .oil-recovery-card figcaption strong{font-size:15px}
  .oil-recovery-card figcaption span{font-size:13px}
}
@media (prefers-reduced-motion:reduce){
  .oil-recovery-image img{transition:none!important}
  .oil-recovery-card:hover .oil-recovery-image img{transform:none!important}
}

/* v14.41 — technical SEO content for polymer filter */
.filter-technical-intro{padding-bottom:0}
.filter-technical-card{max-width:980px;padding:clamp(22px,3vw,36px);border:1px solid rgba(28,74,58,.14);border-radius:24px;background:rgba(255,255,255,.76);box-shadow:0 16px 42px rgba(24,55,45,.06)}
.filter-technical-card h2{margin:0 0 16px;font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.2}
.filter-technical-card p{margin:0;line-height:1.75;white-space:normal}
.oil-recovery-subtitle{margin:.35rem 0 1rem;font-size:clamp(1.05rem,1.7vw,1.3rem);font-weight:600;line-height:1.35}
@media(max-width:650px){.filter-technical-card{padding:20px;border-radius:18px}.filter-technical-card p{line-height:1.65}}

/* v14.42 — unified LONGCAR logo on every public page */
.brand-logo{image-rendering:auto}
@media (max-width:650px){.header .wrap{gap:10px}.brand-logo{height:auto}}

/* Partner logos: fund + university entrepreneurship platform */
.support-logos{display:flex;align-items:center;justify-content:flex-start;gap:16px;min-width:0}
.support-logos .support-logo{display:flex;align-items:center;justify-content:center;min-width:0;flex:1 1 0}
.support-logos .support-logo img{display:block;width:100%!important;max-width:170px!important;max-height:125px!important;height:auto!important;object-fit:contain}
.support-logos .support-logo-platform img{max-width:170px!important}
@media (min-width:901px){.support{grid-template-columns:minmax(290px,1.4fr) minmax(150px,1fr)}}
@media (max-width:900px){.support-logos{max-width:330px}.support-logos .support-logo img{max-width:150px!important}}
@media (max-width:480px){.support-logos{gap:10px}.support-logos .support-logo img{max-width:135px!important}}

/* Two separate partner endorsements with text beside each logo */
.hero-layout .support{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px!important}
.support-partner{display:grid;grid-template-columns:minmax(105px,32%) minmax(0,1fr);gap:15px;align-items:start;min-width:0}
.support-partner .support-logo{display:flex;align-items:flex-start;justify-content:center;min-width:0}
.support-partner .support-logo img{display:block;width:100%!important;max-width:170px!important;max-height:112px!important;height:auto!important;object-fit:contain}
.support-partner .support-copy{min-width:0}
.support-partner .support-copy p+p{margin-top:7px}
@media(min-width:1900px){.support-partner{gap:22px;grid-template-columns:minmax(145px,32%) minmax(0,1fr)}.support-partner .support-logo img{max-width:210px!important;max-height:145px!important}}
@media(max-width:900px){.support-partner{grid-template-columns:minmax(100px,29%) minmax(0,1fr);gap:14px}}
@media(max-width:480px){.hero-layout .support{gap:14px!important}.support-partner{grid-template-columns:100px minmax(0,1fr);gap:10px}.support-partner .support-logo img{max-width:100px!important}.support-partner .support-copy p{font-size:11px!important;line-height:1.42!important}}

/* Three remaining project directions. */
@media(min-width:1101px){.quick .wrap{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:651px) and (max-width:1100px){.quick a:last-child:nth-child(odd){grid-column:1/-1}}
