:root{
  --ink:#0a3145;
  --green:#208f38;
  --cyan:#13a9c4;
  --soft:#f2f8f6;
  --muted:#536271;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Montserrat,Arial,sans-serif;color:#15263c;background:#fff}
.container{width:min(1180px,calc(100% - 72px));margin:auto}
.brandbar{height:132px;display:flex;align-items:center;background:rgba(255,255,255,.97)}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{width:72px;height:72px;color:var(--cyan)}
.brand-mark svg{width:100%;height:100%}
.brand-name{font-size:54px;line-height:.8;font-weight:800;letter-spacing:1px;color:#20a6c3}
.brand-sub{font-size:13px;color:#2d963f;margin-top:7px;font-weight:700}
.hero{position:relative;min-height:580px;overflow:hidden;background:linear-gradient(90deg,#fff 0%,#f3f8f7 47%,#dbe9eb 100%)}
.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.88) 44%,rgba(255,255,255,.13) 66%,rgba(255,255,255,0) 100%),url('hero-seaweed.png') right center/58% 100% no-repeat;filter:saturate(1.05)}
.hero-content{position:relative;padding:10px 0 54px}
.eyebrow{margin:0 0 26px;color:var(--green);font-weight:800;font-size:17px;letter-spacing:.1px}
h1{margin:0;color:var(--ink);font-size:47px;line-height:1.18;letter-spacing:-1px;max-width:780px;font-weight:800}
.lead{font-size:18px;line-height:1.7;max-width:570px;margin:26px 0 30px}
.btn{display:inline-flex;align-items:center;gap:20px;padding:17px 28px;border-radius:999px;background:linear-gradient(90deg,#259c4a,#23ad5f);color:#fff;text-decoration:none;font-weight:800;font-size:14px;box-shadow:0 8px 24px rgba(32,143,56,.2)}
.btn span{font-size:23px;line-height:1}
.innovation{padding:45px 0 42px;background:linear-gradient(180deg,#fff,#f8fbfb)}
.center{text-align:center}
.section-eyebrow{font-size:14px;margin-bottom:28px;position:relative;display:inline-block}
.section-eyebrow:after{content:"";position:absolute;width:64px;height:2px;background:var(--green);left:50%;bottom:-12px;transform:translateX(-50%)}
.innovation h2,.alliances h2{color:var(--ink);font-size:31px;line-height:1.25;margin:0 0 15px}
.section-intro{font-size:17px;line-height:1.55;margin:0 auto 34px;max-width:650px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:28px}
.card{min-height:286px;padding:28px 30px;border-radius:8px;background:linear-gradient(135deg,#edf5ef,#f8fbfa);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.card:nth-child(2){background:linear-gradient(135deg,#edf8f5,#f2fbfa)}
.card:nth-child(3){background:linear-gradient(135deg,#eef5f6,#f7fbfb)}
.icon-circle{width:64px;height:64px;border-radius:50%;background:#fff;display:grid;place-items:center;margin-bottom:14px}
.icon-circle svg{width:40px;height:40px;fill:none;stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.card h3{margin:0 0 18px;color:var(--green);font-size:25px}
.card p{font-size:14px;line-height:1.65;margin:0;max-width:280px}
.mini-line{width:30px;height:2px;background:var(--green);margin-top:22px}
.bionexa-logo{font-family:Georgia,serif;font-size:36px;color:#111;display:flex;align-items:center;gap:12px;margin-bottom:30px}
.bionexa-logo .swirl{font-family:Arial;color:#6cae22;font-size:40px}
.alliances{padding:46px 0 38px}
.alliance-grid{display:grid;grid-template-columns:38% 62%;gap:0}
.alliance-copy{padding-right:48px;border-right:1px solid #c8d0d4}
.section-eyebrow.left:after{left:0;transform:none}
.alliance-copy h2{font-size:33px;margin-bottom:20px}
.alliance-copy>p:not(.eyebrow){font-size:14px;line-height:1.65;margin-bottom:18px}
.btn.small{padding:12px 22px;font-size:12px}
.contact-lines{margin-top:16px;display:grid;gap:9px;font-size:13px;color:#15344e}.contact-lines div{display:flex;gap:12px}
.pillars{padding-left:50px;display:grid;grid-template-columns:1fr 1fr;gap:54px 52px;align-content:center}
.pillar{display:grid;grid-template-columns:58px 1fr;gap:18px;align-items:start}
.pillar-icon{width:58px;height:58px;border-radius:50%;background:#e9f4ea;color:var(--green);display:grid;place-items:center;font-size:30px}
.pillar h3{margin:4px 0 10px;color:#102c44;font-size:16px;line-height:1.35}.pillar p{margin:0;font-size:12px;line-height:1.55}
footer{padding:18px 0 22px;background:linear-gradient(180deg,#eff8fa,#fff);font-size:12px;line-height:1.7;color:#19354d}footer strong{display:block;font-size:15px;color:#1697b5}
@media (max-width:900px){
  .container{width:min(100% - 36px,740px)}
  .brandbar{height:100px}.brand-mark{width:56px;height:56px}.brand-name{font-size:41px}
  .hero{min-height:auto}.hero-bg{background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.83) 58%,rgba(255,255,255,.25) 100%),url('hero-seaweed.png') center bottom/cover no-repeat}
  .hero-content{padding:50px 0 240px}h1{font-size:38px}.lead{font-size:16px}
  .cards{grid-template-columns:1fr}.card{min-height:250px}
  .alliance-grid{grid-template-columns:1fr}.alliance-copy{border-right:0;border-bottom:1px solid #c8d0d4;padding:0 0 34px}.pillars{padding:36px 0 0;grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .container{width:calc(100% - 28px)}.brandbar{height:88px}.brand-mark{width:48px;height:48px}.brand-name{font-size:35px}.brand-sub{font-size:10px}
  .hero-content{padding-top:34px}.eyebrow{font-size:12px;line-height:1.5;margin-bottom:18px}h1{font-size:30px;line-height:1.2}.lead{font-size:15px;line-height:1.6}.btn{font-size:12px;padding:14px 19px}
  .innovation h2,.alliances h2,.alliance-copy h2{font-size:26px}.section-intro{font-size:15px}.cards{gap:16px}.pillars{grid-template-columns:1fr;gap:28px}
}


.logo2 {
    display: block;
    width: 200px;
    height: auto;
    max-width: 200px;
    object-fit: contain;
    flex-shrink: 0;
    margin:2rem;
}

.logo {
    display: block;
    width: 220px;
    height: auto;
    max-width: 220px;
    object-fit: contain;
    flex-shrink: 0;
}

.brand {
    display: flex;
    align-items: center;
}

.brand .logo {
    width: 200px;
    max-width: 200px;
    height: auto;
}

.small-icon {
    display: block;
    width: 64px;
    height: auto;
    max-width: 64px;
    object-fit: contain;
    flex-shrink: 0;
}
