:root{
  --ink:#0d2732;--muted:#58717b;--line:#d7e8ed;--water:#0c8ca0;--water-2:#54c8d4;--water-dark:#075b6a;--soft:#eef9fb;--sand:#faf6ee;--card:#ffffff;--page:#f6fbfc;--white:#fff;--deep:#062631;--shadow:0 24px 75px rgba(8,45,60,.11);--shadow-soft:0 14px 45px rgba(8,45,60,.08);--radius:28px;--radius-lg:38px;--focus:#71d4e0;--container:1240px;
}
:root[data-theme="dark"]{--ink:#e9f7fa;--muted:#abc7cf;--line:#244a56;--water:#77e1e8;--water-2:#a9f3f5;--water-dark:#c4fbff;--soft:#102f3a;--sand:#132a34;--card:#0d2a35;--page:#061b24;--white:#0b2530;--deep:#031219;--shadow:0 26px 85px rgba(0,0,0,.32);--shadow-soft:0 18px 48px rgba(0,0,0,.24)}
:root[data-theme="easy"]{--ink:#172c35;--muted:#4e6873;--line:#d6e7eb;--water:#247a8b;--water-2:#8ed5dd;--water-dark:#1c5f6e;--soft:#f8fcfd;--sand:#fffaf0;--card:#fff;--page:#fffdf8;--shadow:0 14px 42px rgba(8,45,60,.08);--radius:20px;font-size:18px}
:root.site-theme-aquator-lab{--water:#0c8ca0;--water-2:#54c8d4;--water-dark:#075b6a}
:root.site-theme-coastal-clear{--water:#2d88a0;--water-2:#88d8e2;--water-dark:#176276;--page:#fbfefe;--soft:#f1fbfd;--radius:24px}
:root.site-theme-classic-science{--water:#34566a;--water-2:#9cb8c3;--water-dark:#233b4a;--page:#f8f6f0;--soft:#f5f5f2;--radius:18px;--shadow:0 14px 35px rgba(20,36,45,.08)}
:root.site-theme-deep-lab{--ink:#e9f8fb;--muted:#acc7cf;--line:#214955;--water:#7de3e6;--water-2:#b9fbff;--water-dark:#c7fbff;--soft:#102f3a;--sand:#142b35;--card:#0d2631;--page:#061b24;--white:#0b2833;--deep:#020f15;--shadow:0 28px 82px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--page);transition:background-color .35s ease,color .35s ease}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:radial-gradient(circle at 8% -8%,color-mix(in srgb,var(--water) 15%,transparent),transparent 26rem),linear-gradient(180deg,var(--page),color-mix(in srgb,var(--soft) 70%,var(--page)) 44rem,var(--page));line-height:1.68;transition:background .45s ease,color .35s ease}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 520px);z-index:-1}a,button,input,textarea,select,.content-card,.sidebar-card,.feature-card,.partner-card,.publication-item,.hero,.site-header,.site-footer{transition:background-color .35s ease,border-color .35s ease,color .35s ease,box-shadow .35s ease,transform .25s ease}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;background:var(--card);padding:.8rem;z-index:20;border-radius:12px}.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:120;pointer-events:none}.reading-progress:before{content:"";display:block;width:var(--progress,0%);height:100%;background:linear-gradient(90deg,var(--water),var(--water-2))}.preview-bar{position:sticky;top:0;z-index:99;background:#fff8d1;color:#705900;text-align:center;padding:.6rem;font-weight:750}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--card) 80%,transparent);backdrop-filter:blur(22px);border-bottom:1px solid color-mix(in srgb,var(--line) 88%,transparent)}.nav-wrap{width:min(var(--container),calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:.75rem 0}.brand{display:flex;align-items:center;gap:.78rem;text-decoration:none;color:var(--ink);min-width:260px}.brand img{width:48px;height:48px;object-fit:contain;border-radius:16px}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,var(--water),color-mix(in srgb,var(--water-2) 80%,white));color:white;font-weight:900;box-shadow:0 14px 30px color-mix(in srgb,var(--water) 23%,transparent)}.brand strong{display:block;font-size:1.1rem;line-height:1;letter-spacing:-.03em}.brand small{display:block;color:var(--muted);font-size:.76rem;line-height:1.35;max-width:280px}.main-nav{display:flex;align-items:center;justify-content:center;gap:.12rem}.main-nav a,.lang-switch{position:relative;color:var(--ink);text-decoration:none;padding:.72rem .86rem;border-radius:999px;font-weight:800;font-size:.92rem;white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current=page],.lang-switch:hover{background:color-mix(in srgb,var(--water) 9%,var(--card));color:var(--water-dark)}.main-nav a[aria-current=page]:after{content:"";position:absolute;left:50%;bottom:.28rem;width:18px;height:3px;border-radius:999px;background:var(--water);transform:translateX(-50%)}.nav-tools{display:flex;align-items:center;gap:.45rem;justify-content:flex-end}.lang-switch{border:1px solid var(--line);background:color-mix(in srgb,var(--card) 70%,transparent)}.theme-select{display:flex;align-items:center;gap:.35rem;border:1px solid var(--line);border-radius:999px;padding:.25rem .35rem .25rem .65rem;background:color-mix(in srgb,var(--card) 86%,transparent);font-weight:850;color:var(--muted);font-size:.76rem}.theme-select select{border:0;background:transparent;color:var(--ink);font:inherit;font-weight:850;outline:0}.theme-select option{color:#14242d}.reading-tools{display:flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--card) 86%,transparent)}.reading-tools button{border:0;background:transparent;color:var(--ink);font-weight:900;padding:.55rem .66rem;cursor:pointer}.reading-tools button:hover{background:color-mix(in srgb,var(--water) 10%,transparent)}.menu-toggle{display:none}.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(circle at 82% 18%,color-mix(in srgb,var(--water-2) 28%,transparent),transparent 22rem),linear-gradient(135deg,color-mix(in srgb,var(--soft) 88%,var(--card)),var(--page) 62%,color-mix(in srgb,var(--sand) 68%,var(--page)))}.hero-bg{position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 55%,color-mix(in srgb,var(--water) 8%,transparent) 55% 100%);opacity:.75}.hero-inner{position:relative;z-index:1;width:min(var(--container),calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(330px,.72fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;min-height:min(720px,calc(100vh - 90px));padding:clamp(4rem,8vw,7rem) 0}.kicker{display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .78rem;border:1px solid color-mix(in srgb,var(--water) 25%,transparent);border-radius:999px;background:color-mix(in srgb,var(--card) 75%,transparent);color:var(--water-dark);font-weight:900;letter-spacing:.07em;text-transform:uppercase;font-size:.74rem}.kicker:before{content:"";width:.45rem;height:.45rem;border-radius:999px;background:var(--water);box-shadow:0 0 0 5px color-mix(in srgb,var(--water) 14%,transparent)}.hero h1{font-size:clamp(3.2rem,7.7vw,7rem);line-height:.91;margin:.85rem 0 1.2rem;letter-spacing:-.078em;max-width:980px;text-wrap:balance}.hero-text{font-size:clamp(1.05rem,1.7vw,1.28rem);color:var(--muted);max-width:760px}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:2.2rem}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;padding:.86rem 1.12rem;text-decoration:none;color:var(--ink);font-weight:900;background:color-mix(in srgb,var(--card) 88%,transparent);cursor:pointer}.btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(8,45,60,.1)}.btn.primary{background:linear-gradient(135deg,var(--water),var(--water-dark));color:#fff;border-color:transparent;box-shadow:0 18px 38px color-mix(in srgb,var(--water) 25%,transparent)}.btn.ghost{background:color-mix(in srgb,var(--card) 70%,transparent)}.hero-media{position:relative;min-height:420px;display:grid;place-items:center}.hero-media figure{position:relative;margin:0;width:100%;aspect-ratio:4/4.55;border:1px solid color-mix(in srgb,var(--water) 22%,var(--line));border-radius:var(--radius-lg);overflow:hidden;background:var(--card);box-shadow:var(--shadow)}.hero-media figure:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(0,35,45,.53));z-index:1}.hero-media img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.96) contrast(1.03)}.hero-media figcaption{position:absolute;left:1rem;right:1rem;bottom:1rem;z-index:2;color:white;font-weight:850;line-height:1.25;text-shadow:0 2px 18px rgba(0,0,0,.35)}.hero-lab .hero-inner,.hero-minimal .hero-inner{grid-template-columns:1fr}.hero-minimal .hero-media{display:none}.hero-full-bleed.has-hero-image{background:#062631}.hero-full-bleed.has-hero-image .hero-inner{min-height:680px}.hero-full-bleed.has-hero-image .hero-media{position:absolute;inset:0;z-index:0;opacity:.38}.hero-full-bleed.has-hero-image .hero-media figure{width:100%;height:100%;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none}.hero-full-bleed.has-hero-image .hero-media figcaption{display:none}.hero-full-bleed.has-hero-image .hero-copy{position:relative;z-index:2;color:white}.hero-full-bleed.has-hero-image .hero-text{color:rgba(255,255,255,.82)}.lab-orb{width:min(360px,80vw);aspect-ratio:1;border-radius:42% 58% 60% 40%/45% 40% 60% 55%;background:repeating-radial-gradient(circle at 45% 40%,color-mix(in srgb,var(--water) 18%,transparent) 0 7px,transparent 8px 17px),linear-gradient(135deg,color-mix(in srgb,var(--card) 70%,transparent),color-mix(in srgb,var(--water) 12%,transparent));border:1px solid color-mix(in srgb,var(--water) 24%,var(--line));filter:drop-shadow(0 28px 54px rgba(8,41,54,.12));animation:aquaFloat 9s ease-in-out infinite}.lab-orb i,.lab-orb b,.lab-orb span{position:absolute;border-radius:999px;background:color-mix(in srgb,var(--water) 28%,transparent)}.lab-lines{margin-top:1rem;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--card) 70%,transparent);padding:1rem;box-shadow:var(--shadow-soft)}.lab-lines strong,.lab-lines small{display:block}.lab-lines small{color:var(--muted)}.section-band,.feature-section,.page-shell{width:min(var(--container),calc(100% - 2rem));margin:0 auto}.section-band{padding:2.4rem 0 1rem}.section-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.25rem;align-items:stretch}.content-card,.sidebar-card,.feature-card,.partner-card,.publication-item,.company-details-card,.contact-form,.signal-card{background:color-mix(in srgb,var(--card) 92%,transparent);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.content-card{padding:clamp(1.4rem,3vw,2.6rem)}.home-statement{padding:clamp(1.8rem,4vw,3rem)}.signal-card{padding:1.2rem;display:grid;gap:.7rem;align-content:center;background:linear-gradient(145deg,color-mix(in srgb,var(--deep) 96%,black),color-mix(in srgb,var(--water-dark) 70%,var(--deep)));color:white}.signal-card span{color:color-mix(in srgb,var(--water-2) 80%,white);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.signal-card strong{display:block;padding:.8rem .9rem;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.06)}.page-shell{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:1.35rem;padding:2.4rem 0 4.5rem}.page-shell-wide,.page-shell-story,.no-sidebar .page-shell{grid-template-columns:1fr}.layout-wide .content-card{padding:clamp(1.5rem,4vw,3.5rem)}.layout-story .content-card{background:linear-gradient(180deg,color-mix(in srgb,var(--card) 96%,transparent),color-mix(in srgb,var(--soft) 60%,var(--card)));}.sidebar-card{align-self:start;position:sticky;top:6rem;padding:1.35rem}.sidebar-card h2,.company-details-card h2{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--water-dark);margin:0 0 .55rem}.sidebar-card address,.company-details-card address{font-style:normal;color:var(--muted)}.sidebar-card address strong,.company-details-card address strong{color:var(--ink)}.sidebar-card hr{border:0;border-top:1px solid var(--line);margin:1.2rem 0}.sidebar-cta{display:inline-flex;margin:.9rem 0 0;text-decoration:none;color:var(--water-dark);font-weight:900}.rich-text{font-size:1.02rem}.rich-text h2{font-size:clamp(1.9rem,3.2vw,3rem);line-height:1.05;margin:2.5rem 0 1rem;letter-spacing:-.06em;text-wrap:balance}.rich-text h2:first-child{margin-top:0}.rich-text h3{font-size:1.35rem;line-height:1.18;margin:1.8rem 0 .75rem;letter-spacing:-.035em}.rich-text p{margin:0 0 1.05rem}.rich-text ul,.rich-text ol{padding-left:1.2rem}.rich-text a,.text-link{color:var(--water-dark);font-weight:900}.rich-text img{max-width:100%;border-radius:22px;box-shadow:var(--shadow-soft)}.prose-comfortable{max-width:78ch}.prose-wide{max-width:100%}.prose-narrow{max-width:65ch}.feature-section{padding:2rem 0 4.5rem}.section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.45fr);gap:1rem;align-items:end;margin-bottom:1rem}.section-head span,.collection-heading span{color:var(--water-dark);font-weight:950;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}.section-head h2{font-size:clamp(2rem,4vw,4rem);line-height:.98;letter-spacing:-.065em;margin:.35rem 0 0;text-wrap:balance}.feature-grid,.partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.feature-card,.partner-card{position:relative;overflow:hidden;padding:1.25rem}.feature-card:before,.partner-card:before{content:"";position:absolute;right:-4rem;bottom:-4rem;width:10rem;height:10rem;border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--water) 13%,transparent),transparent 68%)}.feature-card:hover,.partner-card:hover,.publication-item:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--water) 28%,var(--line))}.feature-card span{position:relative;color:var(--water-dark);font-weight:900;text-transform:uppercase;font-size:.72rem;letter-spacing:.07em}.feature-card h3,.partner-card h3{position:relative;margin:.4rem 0 .45rem;font-size:1.3rem;letter-spacing:-.04em}.feature-card p,.collection-description{position:relative;color:var(--muted)}.partner-card img{position:relative;max-width:150px;max-height:78px;object-fit:contain;margin-bottom:1rem}.collection-block{display:grid;gap:2rem}.publication-group{display:grid;gap:.85rem}.collection-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:.65rem}.collection-heading strong{display:grid;place-items:center;min-width:2rem;height:2rem;border-radius:999px;background:color-mix(in srgb,var(--water) 12%,var(--card));color:var(--water-dark)}.publication-list{display:grid;gap:.75rem}.publication-item{display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:1rem;align-items:start;padding:1.05rem 1.2rem}.publication-item time{display:inline-grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--water) 11%,var(--card));color:var(--water-dark);font-weight:950;padding:.35rem .65rem}.publication-item h3{font-size:1.06rem;line-height:1.32;margin:.1rem 0 .2rem}.contact-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:1.2rem;align-items:start}.company-details-card{padding:1.25rem;background:linear-gradient(180deg,color-mix(in srgb,var(--soft) 80%,var(--card)),var(--card))}.company-details-card p{color:var(--muted)}.contact-form{display:grid;gap:1rem;padding:1.25rem}.contact-form label{display:grid;gap:.35rem;font-weight:900}.contact-form input,.contact-form textarea{border:1px solid var(--line);border-radius:16px;padding:.92rem 1rem;font:inherit;background:var(--white);color:var(--ink)}.contact-form input:focus,.contact-form textarea:focus{outline:3px solid color-mix(in srgb,var(--focus) 25%,transparent);border-color:var(--focus)}.hp-field{position:absolute;left:-9999px}.notice{border-radius:18px;padding:1rem;margin:1rem 0}.notice.success{background:#e8f9ef;border:1px solid #a9e4bd;color:#17472a}.notice.error{background:#fff0f0;border:1px solid #ffc1c1;color:#7a2525}.site-footer{margin-top:2rem;padding:0 1rem 1rem;color:#dff3f7}.footer-grid{width:min(1360px,100%);margin:0 auto;border-radius:var(--radius-lg);background:radial-gradient(circle at 86% 8%,color-mix(in srgb,var(--water) 18%,transparent),transparent 18rem),linear-gradient(135deg,color-mix(in srgb,var(--deep) 96%,black),color-mix(in srgb,var(--water-dark) 65%,var(--deep)));box-shadow:0 24px 80px rgba(0,25,35,.18);padding:clamp(1.6rem,4vw,3.2rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.75fr);gap:2rem}.footer-brand strong{display:block;color:#fff;font-size:1.35rem;margin-bottom:.55rem}.footer-text{color:#c6e5eb;max-width:68ch}.footer-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.footer-columns section{display:grid;gap:.45rem;align-content:start}.footer-columns span{color:color-mix(in srgb,var(--water-2) 80%,white);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}.footer-columns a,.site-footer a{color:#fff;text-decoration:none;font-weight:850}.footer-columns a:hover{text-decoration:underline}.footer-columns address{font-style:normal;color:#c6e5eb}.footer-form-link{display:inline-flex;justify-content:center;border-radius:999px;background:rgba(255,255,255,.1);padding:.68rem .95rem;border:1px solid rgba(255,255,255,.16);margin-top:.35rem}.maintenance-page{min-height:100vh;background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--water) 22%,transparent),transparent 25rem),linear-gradient(180deg,var(--page),color-mix(in srgb,var(--water) 6%,var(--page)));display:grid;place-items:center;padding:1rem}.maintenance-wrap{width:min(980px,100%)}.maintenance-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:38px;background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:blur(18px);box-shadow:0 34px 95px rgba(8,41,54,.14);padding:clamp(1.6rem,5vw,4rem);text-align:left}.maintenance-card h1{font-size:clamp(2.2rem,7vw,5.6rem);line-height:.95;letter-spacing:-.08em;max-width:780px;margin:.6rem 0 1rem}.maintenance-card p{max-width:68ch;color:var(--muted);font-size:1.1rem}.maintenance-visual{position:absolute;right:clamp(1rem,5vw,4rem);top:clamp(1rem,5vw,3rem);width:min(260px,34vw);aspect-ratio:1;border-radius:45% 55% 62% 38%/45% 38% 62% 55%;background:repeating-radial-gradient(circle at 38% 34%,color-mix(in srgb,var(--water) 14%,transparent) 0 8px,transparent 8px 18px),linear-gradient(135deg,color-mix(in srgb,var(--card) 68%,transparent),color-mix(in srgb,var(--water) 14%,transparent));border:1px solid color-mix(in srgb,var(--water) 25%,var(--line));opacity:.72;animation:aquaFloat 9s ease-in-out infinite}.maintenance-time,.maintenance-note,.maintenance-links{position:relative}.maintenance-time{display:inline-flex;margin:1rem 0;padding:.7rem 1rem;border-radius:999px;background:color-mix(in srgb,var(--water) 10%,var(--card));border:1px solid var(--line);font-weight:900;color:var(--water-dark)}.maintenance-note{display:grid;gap:.2rem;margin-top:1.2rem;padding:1rem;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--card) 80%,transparent);max-width:560px}.maintenance-links{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin-top:1rem}.maintenance-links a{display:inline-flex;padding:.58rem .8rem;border-radius:999px;background:var(--ink);color:var(--card);text-decoration:none;font-weight:900}@keyframes aquaFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-12px) rotate(2deg)}}[data-reveal]{opacity:0;transform:translateY(18px)}[data-reveal].is-visible{opacity:1;transform:none}.site-theme-deep-lab .hero{background:radial-gradient(circle at top right,rgba(125,227,230,.12),transparent 34rem),linear-gradient(180deg,#061b24,#0b2530)}.site-theme-classic-science body{background:linear-gradient(180deg,#fbfaf6,#f4f1e8)}:root[data-text-scale="large"] body{font-size:1.08rem}@media(max-width:1120px){.nav-wrap{grid-template-columns:auto auto}.brand{min-width:0}.main-nav{grid-column:1/-1;order:4}.nav-tools{grid-column:1/-1;justify-content:flex-start}.hero-inner{grid-template-columns:1fr;min-height:auto}.hero-media{min-height:300px}.hero-media figure{aspect-ratio:16/8}.section-grid,.page-shell,.contact-layout,.footer-grid{grid-template-columns:1fr}.sidebar-card{position:relative;top:auto}.feature-grid,.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head{grid-template-columns:1fr}}@media(max-width:780px){.site-header{position:sticky}.nav-wrap{width:calc(100% - 1rem);grid-template-columns:1fr auto;padding:.55rem 0}.brand img,.brand-mark{width:42px;height:42px;border-radius:14px}.brand small{max-width:190px;font-size:.7rem}.menu-toggle{display:inline-grid;grid-template-columns:1fr;gap:3px;place-items:center;border:1px solid var(--line);border-radius:999px;background:var(--card);padding:.55rem .65rem;color:var(--ink);font-weight:900}.menu-toggle span{display:block;width:18px;height:2px;background:currentColor;border-radius:99px}.menu-toggle em{display:none}.main-nav{display:none;width:100%;margin:0;justify-content:flex-start;flex-direction:column;align-items:stretch;background:color-mix(in srgb,var(--card) 94%,transparent);border:1px solid var(--line);border-radius:22px;padding:.55rem}.main-nav.open{display:flex}.main-nav a{width:100%;text-align:left}.nav-tools{display:grid;grid-template-columns:auto 1fr;gap:.45rem;width:100%}.theme-select{justify-content:space-between}.reading-tools{grid-column:1/-1}.reading-tools button{flex:1}.hero-inner{width:calc(100% - 1rem);padding:2.2rem 0 2.6rem;gap:1.2rem}.hero h1{font-size:clamp(2.7rem,15vw,4.5rem)}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-media{min-height:220px}.hero-media figure{border-radius:24px;aspect-ratio:16/10}.section-band,.feature-section,.page-shell{width:calc(100% - 1rem)}.section-band{padding:1rem 0}.content-card,.sidebar-card,.feature-card,.partner-card,.publication-item,.company-details-card,.contact-form,.signal-card{border-radius:22px}.content-card,.home-statement,.sidebar-card{padding:1rem}.feature-grid,.partner-grid{grid-template-columns:1fr}.publication-item{grid-template-columns:1fr;gap:.5rem}.footer-grid{border-radius:28px;padding:1.2rem}.footer-columns{grid-template-columns:1fr}.maintenance-visual{position:relative;right:auto;top:auto;width:150px;margin-bottom:1rem}.maintenance-card{border-radius:26px}.maintenance-card h1{font-size:clamp(2rem,13vw,3.5rem)}}@media(prefers-reduced-motion:reduce){*,html,body{transition:none!important;scroll-behavior:auto!important;animation:none!important}[data-reveal]{opacity:1;transform:none}}

/* v0.1.0-alpha.13: back-to-top reading control */
.back-to-top{position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:80;border:1px solid color-mix(in srgb,var(--water) 32%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:blur(16px);color:var(--ink);box-shadow:0 20px 45px rgba(8,41,54,.16);display:inline-flex;align-items:center;gap:.45rem;padding:.72rem .92rem;font:inherit;font-weight:950;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease,box-shadow .25s ease,background-color .25s ease}
.back-to-top span{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:999px;background:linear-gradient(135deg,var(--water),var(--water-dark));color:#fff;line-height:1}.back-to-top:hover{transform:translateY(6px);box-shadow:0 26px 58px rgba(8,41,54,.2)}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:none}@media(max-width:780px){.back-to-top{right:.75rem;bottom:.75rem;padding:.62rem}.back-to-top strong{display:none}}


/* v0.1.0-alpha.15: consistent language layouts, scalable hero imagery and stronger company sidebar */
.hero-media figure{transform:scale(var(--hero-image-scale,1));transform-origin:center;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.hero-media img{object-position:var(--hero-image-position,center center);object-fit:var(--hero-image-fit,cover)}
.hero-full-bleed.has-hero-image .hero-media figure{transform:none}.hero-full-bleed.has-hero-image .hero-media img{transform:scale(var(--hero-image-scale,1));transform-origin:var(--hero-image-position,center center)}
.page-shell{align-items:start}.has-sidebar .page-shell:not(.page-shell-wide):not(.page-shell-story){grid-template-columns:minmax(0,1fr) minmax(290px,340px)}.has-sidebar .page-shell.page-shell-wide,.has-sidebar .page-shell.page-shell-story{grid-template-columns:minmax(0,1fr) minmax(290px,340px)}
.company-sidebar{position:sticky;top:calc(74px + 1.25rem);display:grid;gap:1rem;padding:1.1rem;background:linear-gradient(180deg,color-mix(in srgb,var(--card) 96%,transparent),color-mix(in srgb,var(--soft) 65%,var(--card)))}
.sidebar-section + .sidebar-section{border-top:1px solid var(--line);padding-top:1rem}.sidebar-eyebrow{display:block;color:var(--water-dark);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:950;margin-bottom:.35rem}.sidebar-card h2{font-size:1rem;letter-spacing:.04em;text-transform:uppercase;margin:.1rem 0 .65rem}.sidebar-card address{font-style:normal;color:var(--muted);line-height:1.55}.sidebar-cta{display:inline-flex;margin-top:.85rem;border-radius:999px;background:color-mix(in srgb,var(--water) 10%,var(--card));border:1px solid color-mix(in srgb,var(--water) 20%,var(--line));padding:.58rem .8rem;color:var(--water-dark);text-decoration:none;font-weight:900}.sidebar-card p{color:var(--muted);margin:.2rem 0 0}
.rich-text img{max-width:100%;height:auto;border-radius:22px;box-shadow:0 18px 46px rgba(8,41,54,.12);border:1px solid var(--line)}.rich-text figure{margin:2rem 0}.rich-text figure img{display:block}.rich-text figcaption{color:var(--muted);font-size:.92rem;margin-top:.6rem}
@media(max-width:980px){.has-sidebar .page-shell,.has-sidebar .page-shell.page-shell-wide,.has-sidebar .page-shell.page-shell-story{grid-template-columns:1fr}.company-sidebar{position:relative;top:auto;order:2}.page-shell>.content-card{order:1}}

/* v0.1.0-alpha.16: bilingual layout stability and homepage section cleanup */
/* v0.1.0-alpha.17: contact form focus/blur sizing stability */
.hero-copy,.hero-media,.hero-inner>*{min-width:0}
.hero h1{max-width:100%;overflow-wrap:anywhere;hyphens:auto;font-size:clamp(2.8rem,6.6vw,6.55rem);line-height:.94}
.hero-text,.rich-text,.content-card,.sidebar-card{overflow-wrap:anywhere;hyphens:auto}
.has-sidebar .page-shell-wide,.has-sidebar .page-shell-story{grid-template-columns:minmax(0,1fr) 320px}
.has-sidebar .page-shell-split{grid-template-columns:minmax(0,1fr) 320px}
.feature-section{padding-top:2.1rem;padding-bottom:3rem}
.feature-section .section-head,.feature-section .home-section-head{display:block;max-width:860px;margin:0 0 1.15rem 0}
.feature-section .section-head h2,.feature-section .home-section-head h2{font-size:clamp(2rem,3.25vw,3.35rem);line-height:1.04;letter-spacing:-.055em;max-width:850px;margin:.45rem 0 0}
.home-intro .company-sidebar{position:relative;top:auto;align-self:stretch;background:linear-gradient(180deg,color-mix(in srgb,var(--card) 94%,transparent),color-mix(in srgb,var(--soft) 88%,var(--card)))}
.home-intro .company-sidebar:before{content:"";position:absolute;right:-3rem;top:-3rem;width:11rem;height:11rem;border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--water) 11%,transparent),transparent 70%);pointer-events:none}
@media(max-width:1120px){.has-sidebar .page-shell-wide,.has-sidebar .page-shell-story,.has-sidebar .page-shell-split{grid-template-columns:1fr}.hero h1{font-size:clamp(2.8rem,10vw,5.4rem)}}
@media(max-width:780px){.hero h1{font-size:clamp(2.45rem,13vw,4.2rem);line-height:.98}.feature-section .section-head h2,.feature-section .home-section-head h2{font-size:clamp(1.85rem,8vw,2.7rem)}}


/* v0.1.0-alpha.17: stable contact form sizing on focus/blur */
.contact-layout{align-items:start}
.contact-layout>div{min-width:0;width:100%}
.contact-layout .company-details-card,.contact-layout .contact-form{align-self:start;width:100%;max-width:100%;transform:none!important}
.contact-form{grid-auto-rows:auto;contain:layout style;isolation:isolate}
.contact-form label{min-width:0}
.contact-form input,.contact-form textarea{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;appearance:none;-webkit-appearance:none;outline-offset:2px}
.contact-form textarea{resize:vertical;min-height:13.5rem}
.contact-form input:focus,.contact-form textarea:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--focus) 12%,transparent)}
.contact-form .btn{width:max-content;max-width:100%;transform:none}
.contact-form .btn:hover{transform:none;box-shadow:0 12px 24px rgba(8,45,60,.10)}
@media(max-width:780px){.contact-form .btn{width:100%}.contact-form textarea{min-height:12rem}}


/* v0.1.0-alpha.18: stable language switching and non-structural focus mode */
/* Focus mode used to hide the right sidebar and shrink the page shell. That looked like
   random layout changes when switching EN/NL or after clicks. Keep all structural page
   regions in place and make focus a calm visual preference only. */

/* v0.1.0-alpha.24: responsive section visibility, header logo sizing and tablet polish */
.site-header{--brand-logo-size:48px}.brand img,.brand-mark{width:var(--brand-logo-size,48px);height:var(--brand-logo-size,48px);min-width:var(--brand-logo-size,48px)}
.hide-desktop{display:none!important}
@media (min-width:781px) and (max-width:1120px){
  .hide-desktop{display:revert!important}.hide-tablet{display:none!important}
  .nav-wrap{grid-template-columns:auto 1fr auto;gap:.7rem;width:min(100% - 1rem,var(--container))}.brand{min-width:210px}.brand small{max-width:210px}.main-nav{grid-column:auto;order:initial;overflow-x:auto;justify-content:flex-start;scrollbar-width:none}.main-nav::-webkit-scrollbar{display:none}.main-nav a{padding:.58rem .68rem;font-size:.84rem}.nav-tools{grid-column:auto;justify-content:flex-end}.theme-select span{display:none}.reading-tools button{padding:.48rem .55rem}.lang-switch{padding:.58rem .66rem}
  .hero-inner{grid-template-columns:minmax(0,1fr) minmax(260px,.78fr);gap:clamp(1.4rem,3vw,2.6rem);padding:clamp(3rem,6vw,5rem) 0}.hero-media{min-height:300px}.hero-media figure{aspect-ratio:4/4.3}.hero h1{font-size:clamp(3rem,7.2vw,5.4rem)}
  .page-shell{width:min(100% - 2rem,1040px);padding:2rem 0 3.5rem}.has-sidebar .page-shell,.has-sidebar .page-shell.page-shell-wide,.has-sidebar .page-shell.page-shell-story,.has-sidebar .page-shell.page-shell-split{grid-template-columns:minmax(0,1fr) minmax(250px,300px)}.content-card{padding:clamp(1.3rem,3vw,2rem)}.sidebar-card{padding:1.1rem}.publication-item{grid-template-columns:72px minmax(0,1fr);gap:.85rem;padding:1rem}.publication-item .text-link{grid-column:2}.publication-item h3{font-size:1.08rem}.collection-heading{font-size:1rem}.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.7fr)}
}
@media (max-width:780px){.hide-desktop{display:revert!important}.hide-mobile{display:none!important}.brand{min-width:0}.brand strong{font-size:.95rem}.brand small{display:none}.publication-item time{width:max-content}.page-shell{padding:1.1rem 0 2.4rem}.content-card{box-shadow:0 12px 40px rgba(8,41,54,.08)}}

/* v0.1.0-alpha.25: safer publication rendering and tablet scale */
.template-publications .content-card,.template-partners .content-card{min-width:0}.publication-collection{width:100%;min-width:0}.publication-item{min-width:0}.publication-item>div{min-width:0}.publication-item h3{overflow-wrap:anywhere;hyphens:auto}
.no-sidebar.template-publications .page-shell,.no-sidebar.template-partners .page-shell{max-width:min(1180px,calc(100% - 2rem))}.no-sidebar.template-publications .content-card,.no-sidebar.template-partners .content-card{padding:clamp(1.35rem,3.2vw,2.5rem)}
@media (min-width:781px) and (max-width:1120px){.template-publications .page-shell,.template-partners .page-shell{width:min(100% - 1.25rem,1080px)}.template-publications .publication-item{grid-template-columns:86px minmax(0,1fr) auto}.template-publications .publication-item h3{font-size:clamp(1rem,1.75vw,1.18rem)}.template-publications .content-card{padding:clamp(1.2rem,2.4vw,2rem)}}


/* v0.1.0-alpha.29: proportional header logo and optional brand text */
.site-header{--brand-logo-size:56px}
.brand{min-width:0;gap:.72rem}
.brand img{height:var(--brand-logo-size,56px);width:auto;max-width:min(240px,32vw);min-width:0;object-fit:contain;display:block}
.brand-mark{width:var(--brand-logo-size,56px);height:var(--brand-logo-size,56px);min-width:var(--brand-logo-size,56px)}
.brand .brand-copy{display:grid;line-height:1.12;min-width:0}
.brand .brand-copy:empty{display:none}
@media (min-width:781px) and (max-width:1120px){.brand{min-width:0}.brand img{max-width:min(190px,25vw)}.brand small{max-width:220px}}
@media (max-width:780px){.brand img{max-width:min(150px,44vw)}.brand .brand-copy:empty{display:none}}


/* v0.1.0-alpha.32: compact wide-logo header sizing */
.site-header{--brand-logo-size:120px;--brand-logo-max-height:62px}
.nav-wrap{min-height:60px;padding:.45rem 0}
.brand img{width:var(--brand-logo-size,120px);height:auto;max-height:var(--brand-logo-max-height,72px);max-width:min(var(--brand-logo-size,120px),34vw);object-fit:contain;border-radius:0}
.brand-mark{width:clamp(42px,var(--brand-logo-size,120px),68px);height:clamp(42px,var(--brand-logo-size,120px),68px);min-width:clamp(42px,var(--brand-logo-size,120px),68px)}
@media (min-width:781px) and (max-width:1120px){.nav-wrap{min-height:60px}.brand img{max-height:54px;max-width:min(var(--brand-logo-size,120px),24vw)}}
@media (max-width:780px){.nav-wrap{min-height:56px}.brand img{max-height:48px;max-width:min(var(--brand-logo-size,120px),48vw)}}


/* v0.1.0-alpha.33: frontend full-size image lightbox */
.is-lightboxable{cursor:zoom-in}
.is-lightboxable:hover{filter:saturate(1.03);box-shadow:0 24px 62px rgba(8,41,54,.18)}
.is-lightboxable:focus-visible{outline:3px solid var(--focus);outline-offset:5px}
.lightbox-open{overflow:hidden}
.image-lightbox{position:fixed;inset:0;z-index:999;display:grid;place-items:center;padding:clamp(1rem,3vw,2rem);opacity:0;pointer-events:none;transition:opacity .22s ease}
.image-lightbox.is-open{opacity:1;pointer-events:auto}
.image-lightbox-backdrop{position:absolute;inset:0;border:0;background:color-mix(in srgb,var(--deep) 84%,rgba(0,0,0,.78));backdrop-filter:blur(18px);cursor:zoom-out}
.image-lightbox-frame{position:relative;z-index:1;display:grid;gap:.75rem;margin:0;max-width:min(96vw,1480px);max-height:92vh;place-items:center}
.image-lightbox-frame img{display:block;max-width:100%;max-height:calc(92vh - 4.5rem);width:auto;height:auto;border-radius:clamp(14px,2vw,28px);background:var(--card);box-shadow:0 35px 120px rgba(0,0,0,.38);border:1px solid color-mix(in srgb,var(--white) 22%,transparent);object-fit:contain}
.image-lightbox-frame figcaption{max-width:min(86vw,900px);padding:.55rem .8rem;border-radius:999px;background:color-mix(in srgb,var(--card) 88%,transparent);color:var(--ink);font-size:.92rem;font-weight:800;text-align:center;box-shadow:0 12px 34px rgba(0,0,0,.14)}
.image-lightbox-close{position:absolute;z-index:2;top:clamp(.75rem,2vw,1.25rem);right:clamp(.75rem,2vw,1.25rem);width:46px;height:46px;border-radius:999px;border:1px solid color-mix(in srgb,var(--white) 35%,transparent);background:color-mix(in srgb,var(--card) 90%,transparent);color:var(--ink);font-size:2rem;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 16px 40px rgba(0,0,0,.18)}
.image-lightbox-close:hover{transform:scale(1.04);background:var(--card)}
@media(max-width:780px){.image-lightbox{padding:.75rem}.image-lightbox-frame img{max-height:calc(92vh - 4rem);border-radius:18px}.image-lightbox-close{width:42px;height:42px;font-size:1.7rem}.image-lightbox-frame figcaption{border-radius:18px}}
@media(prefers-reduced-motion:reduce){.image-lightbox{transition:none}.image-lightbox-close:hover{transform:none}}


/* v0.1.0-alpha.34: make full hero/top-section image cards openable as a whole */
.hero-media figure.is-lightboxable,.media-figure.is-lightboxable{cursor:zoom-in}
.hero-media figure.is-lightboxable img,.media-figure.is-lightboxable img{cursor:zoom-in}
.hero-media figure.is-lightboxable:focus-visible,.media-figure.is-lightboxable:focus-visible{outline:3px solid var(--focus);outline-offset:6px}
.hero-media figure.is-lightboxable:hover{filter:saturate(1.04);box-shadow:0 30px 74px rgba(8,41,54,.2)}

/* v0.1.0-alpha.36: responsive frontend videos */
.hero-media video,.hero-video{width:100%;height:100%;display:block;object-fit:var(--hero-image-fit,cover);object-position:var(--hero-image-position,center center);background:#061f2a;border-radius:inherit}
.hero-video-figure{overflow:hidden;background:#061f2a}.hero-video-figure figcaption{pointer-events:none}
.rich-text video,.aq-content-video,.content-card video{width:100%;max-width:100%;height:auto;display:block;border-radius:clamp(14px,2vw,24px);background:#061f2a;box-shadow:0 18px 46px rgba(8,41,54,.12);border:1px solid var(--line)}
.rich-text .video-figure{margin:1.4rem 0}.rich-text .video-figure figcaption{margin-top:.55rem;color:var(--muted);font-size:.92rem;font-weight:750;text-align:center}
.hero.has-hero-video .hero-media figure{cursor:default}.hero.has-hero-video .hero-media figure:hover{filter:none;box-shadow:0 22px 60px rgba(8,41,54,.16)}

/* v0.1.0-alpha.40: Aquator Flow water theme, scalable page typography and publication layout repair */
:root.site-theme-aquator-flow{
  --ink:#082936;--muted:#4d7080;--line:#cbe9f1;--water:#087fa8;--water-2:#62d8ea;--water-dark:#04526f;
  --soft:#e7f8fc;--sand:#f3fbfd;--card:#ffffff;--page:#effaff;--deep:#032e43;
  --shadow:0 26px 78px rgba(1,72,99,.12);--shadow-soft:0 16px 48px rgba(1,72,99,.085);--radius:32px;--radius-lg:46px;--focus:#55d6ed;
}
:root.site-theme-aquator-flow[data-theme="dark"]{
  --ink:#eafaff;--muted:#a9cbd5;--line:#245465;--water:#67dff0;--water-2:#a8f3fb;--water-dark:#bfeff8;
  --soft:#0d3444;--sand:#0c2a39;--card:#092d3c;--page:#041f2d;--white:#082a38;--deep:#021620;
  --shadow:0 28px 90px rgba(0,0,0,.34);--shadow-soft:0 18px 52px rgba(0,0,0,.26)
}
:root.site-theme-aquator-flow[data-theme="easy"]{
  --ink:#102f3b;--muted:#4d6872;--line:#cfe7ec;--water:#187b99;--water-2:#83dbe7;--water-dark:#0d5c75;
  --soft:#f2fbfd;--sand:#fbfeff;--card:#fff;--page:#fbfeff;--radius:24px
}

/* Page-specific type controls from the CMS. */
.hero h1{font-size:clamp(var(--hero-title-min,3.2rem),var(--hero-title-fluid,7.7vw),var(--hero-title-max,7rem))}
.hero-text{font-size:clamp(var(--hero-text-min,1.05rem),var(--hero-text-fluid,1.7vw),var(--hero-text-max,1.28rem))}
.page-shell>.content-card,.home-statement,.feature-section,.publication-item,.partner-card,.contact-layout{font-size:var(--page-font-size,1rem)}
.page-shell>.content-card .rich-text,.home-statement .rich-text,.collection-description{font-size:inherit}

/* Replace the technical straight grid with moving-water depth and bubbles. */
.site-theme-aquator-flow body{
  background:
    radial-gradient(ellipse at 12% -6%,color-mix(in srgb,var(--water-2) 34%,transparent),transparent 31rem),
    radial-gradient(ellipse at 93% 24%,color-mix(in srgb,var(--water) 12%,transparent),transparent 28rem),
    linear-gradient(180deg,var(--page),color-mix(in srgb,var(--soft) 78%,var(--page)) 48rem,var(--page));
}
.site-theme-aquator-flow body:before{
  background:
    radial-gradient(circle at 12% 16%,color-mix(in srgb,var(--water-2) 20%,transparent) 0 5px,transparent 6px),
    radial-gradient(circle at 81% 10%,color-mix(in srgb,var(--water) 15%,transparent) 0 9px,transparent 10px),
    radial-gradient(circle at 68% 34%,color-mix(in srgb,var(--water-2) 12%,transparent) 0 3px,transparent 4px),
    radial-gradient(ellipse at 50% -8%,color-mix(in srgb,var(--water) 8%,transparent),transparent 64%);
  background-size:190px 170px,280px 240px,140px 150px,100% 650px;
  mask-image:linear-gradient(to bottom,black,rgba(0,0,0,.55) 38rem,transparent 78rem);
  opacity:.85;
}

.site-theme-aquator-flow .site-header{
  border-bottom:0;
  background:color-mix(in srgb,var(--card) 84%,transparent);
  box-shadow:0 10px 34px rgba(2,70,96,.07);
}
.site-theme-aquator-flow .site-header:after{
  content:"";position:absolute;left:0;right:0;bottom:-12px;height:18px;pointer-events:none;
  background:radial-gradient(36px 14px at 18px 0,color-mix(in srgb,var(--water-2) 18%,transparent) 48%,transparent 52%) repeat-x;
  background-size:72px 18px;opacity:.55
}
.site-theme-aquator-flow .main-nav a[aria-current=page]{background:linear-gradient(135deg,color-mix(in srgb,var(--water) 14%,var(--card)),color-mix(in srgb,var(--water-2) 9%,var(--card)))}
.site-theme-aquator-flow .main-nav a[aria-current=page]:after{width:26px;border-radius:60% 40% 55% 45%}

.site-theme-aquator-flow .hero{
  border-bottom:0;
  background:
    radial-gradient(ellipse at 82% 22%,color-mix(in srgb,var(--water-2) 34%,transparent),transparent 23rem),
    radial-gradient(ellipse at 22% 92%,color-mix(in srgb,var(--water) 10%,transparent),transparent 28rem),
    linear-gradient(142deg,color-mix(in srgb,var(--soft) 90%,var(--card)),var(--page) 54%,color-mix(in srgb,var(--water-2) 11%,var(--page)));
}
.site-theme-aquator-flow .hero-bg{
  opacity:1;
  background:
    radial-gradient(ellipse at 78% 43%,transparent 0 33%,color-mix(in srgb,var(--water) 7%,transparent) 34% 44%,transparent 45%),
    radial-gradient(ellipse at 88% 54%,transparent 0 28%,color-mix(in srgb,var(--water-2) 8%,transparent) 29% 38%,transparent 39%);
  transform:rotate(-4deg) scale(1.08)
}
.site-theme-aquator-flow .hero:after{
  content:"";position:absolute;z-index:2;left:-8%;right:-8%;bottom:-72px;height:130px;pointer-events:none;
  background:var(--page);border-radius:50% 47% 0 0/88% 78% 0 0;transform:rotate(-1deg);
  box-shadow:0 -18px 38px color-mix(in srgb,var(--water-2) 8%,transparent)
}
.site-theme-aquator-flow .hero-inner{padding-bottom:clamp(5.5rem,9vw,8rem)}
.site-theme-aquator-flow .kicker{border-color:color-mix(in srgb,var(--water) 30%,transparent);background:color-mix(in srgb,var(--card) 82%,transparent);box-shadow:0 10px 26px rgba(2,95,127,.08)}
.site-theme-aquator-flow .hero-media figure{
  border-radius:42% 58% 50% 50%/34% 42% 58% 66%;
  border:1px solid color-mix(in srgb,var(--water-2) 42%,var(--line));
  box-shadow:0 32px 90px rgba(2,79,108,.2),0 0 0 12px color-mix(in srgb,var(--water-2) 8%,transparent)
}
.site-theme-aquator-flow .hero-media:before,.site-theme-aquator-flow .hero-media:after{
  content:"";position:absolute;border-radius:50%;pointer-events:none;border:1px solid color-mix(in srgb,var(--water-2) 42%,transparent)
}
.site-theme-aquator-flow .hero-media:before{width:54px;height:54px;right:4%;top:5%;box-shadow:-34px 72px 0 -17px color-mix(in srgb,var(--water) 20%,transparent),-9px 118px 0 -23px color-mix(in srgb,var(--water-2) 25%,transparent)}
.site-theme-aquator-flow .hero-media:after{width:18px;height:18px;left:3%;bottom:16%;box-shadow:24px 38px 0 8px color-mix(in srgb,var(--water-2) 12%,transparent)}
.site-theme-aquator-flow .hero-actions .btn.primary{background:linear-gradient(135deg,#0c96bb,var(--water-dark));box-shadow:0 18px 42px rgba(4,103,137,.25)}
.site-theme-aquator-flow .hero-actions .btn.ghost{border-color:color-mix(in srgb,var(--water) 24%,var(--line));background:color-mix(in srgb,var(--card) 80%,transparent)}

.site-theme-aquator-flow .content-card,.site-theme-aquator-flow .sidebar-card,.site-theme-aquator-flow .feature-card,.site-theme-aquator-flow .partner-card,.site-theme-aquator-flow .publication-item,.site-theme-aquator-flow .company-details-card,.site-theme-aquator-flow .contact-form{
  border-color:color-mix(in srgb,var(--water) 15%,var(--line));
  box-shadow:0 18px 52px rgba(2,76,103,.085)
}
.site-theme-aquator-flow .content-card{border-radius:44px 28px 48px 32px/34px 46px 30px 48px}
.site-theme-aquator-flow .sidebar-card{border-radius:30px 42px 28px 46px/40px 30px 48px 34px;background:linear-gradient(160deg,color-mix(in srgb,var(--card) 96%,transparent),color-mix(in srgb,var(--soft) 68%,var(--card)))}
.site-theme-aquator-flow .feature-card:nth-child(3n+1),.site-theme-aquator-flow .partner-card:nth-child(3n+1){border-radius:36px 24px 44px 28px}
.site-theme-aquator-flow .feature-card:nth-child(3n+2),.site-theme-aquator-flow .partner-card:nth-child(3n+2){border-radius:24px 42px 28px 38px}
.site-theme-aquator-flow .feature-card:nth-child(3n),.site-theme-aquator-flow .partner-card:nth-child(3n){border-radius:42px 30px 24px 40px}

/* Publications now always keep year, content and action in predictable columns. */
.template-publications .publication-collection{display:grid;gap:2.25rem;min-width:0}
.template-publications .publication-group{min-width:0}
.template-publications .publication-list{display:grid;gap:.9rem;min-width:0}
.template-publications .publication-item{
  width:100%;min-width:0;display:grid;grid-template-columns:minmax(72px,88px) minmax(0,1fr) max-content;
  gap:1rem 1.15rem;align-items:start;padding:1.15rem 1.25rem;overflow:hidden
}
.template-publications .publication-item>time{grid-column:1;align-self:start;width:max-content;max-width:100%}
.template-publications .publication-item>div{grid-column:2;min-width:0}
.template-publications .publication-item>.text-link{grid-column:3;align-self:center;white-space:nowrap}
.template-publications .publication-item h3{margin:0 0 .3rem;line-height:1.28;overflow-wrap:anywhere}
.template-publications .publication-item .collection-description{min-width:0;color:var(--muted);overflow-wrap:anywhere}
.site-theme-aquator-flow .publication-item:nth-child(odd){border-radius:28px 42px 30px 46px}
.site-theme-aquator-flow .publication-item:nth-child(even){border-radius:42px 28px 46px 30px;background:linear-gradient(145deg,color-mix(in srgb,var(--card) 96%,transparent),color-mix(in srgb,var(--soft) 50%,var(--card)))}
.site-theme-aquator-flow .collection-heading{border-bottom:0;padding:.55rem .7rem .75rem;position:relative;color:var(--water-dark)}
.site-theme-aquator-flow .collection-heading:after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:0;height:5px;border-radius:60% 40% 55% 45%;background:linear-gradient(90deg,var(--water),var(--water-2),transparent)}

.site-theme-aquator-flow .site-footer{position:relative;margin-top:3.5rem;padding-top:2.5rem}
.site-theme-aquator-flow .site-footer:before{
  content:"";position:absolute;left:-4%;right:-4%;top:-28px;height:72px;pointer-events:none;
  background:color-mix(in srgb,var(--water) 9%,var(--page));border-radius:0 0 48% 52%/0 0 100% 100%;transform:rotate(.7deg)
}
.site-theme-aquator-flow .footer-grid{position:relative;border-radius:54px 34px 50px 38px/38px 54px 34px 50px;background:radial-gradient(ellipse at 86% 8%,rgba(98,216,234,.22),transparent 20rem),linear-gradient(140deg,#032e43,#045d7a 58%,#067c9d)}

@media (min-width:781px) and (max-width:1120px){
  .template-publications .publication-item{grid-template-columns:76px minmax(0,1fr);}
  .template-publications .publication-item>.text-link{grid-column:2;justify-self:start}
  .site-theme-aquator-flow .hero:after{bottom:-78px}
}
@media(max-width:780px){
  .hero h1{font-size:min(var(--hero-title-min,3.2rem),15vw)}
  .site-theme-aquator-flow .hero:after{bottom:-82px;height:120px}
  .site-theme-aquator-flow .hero-media figure{border-radius:30px 44px 32px 42px/40px 30px 46px 34px}
  .site-theme-aquator-flow .content-card{border-radius:28px 20px 32px 24px}
  .template-publications .publication-item{grid-template-columns:1fr;gap:.55rem;padding:1rem}
  .template-publications .publication-item>time,.template-publications .publication-item>div,.template-publications .publication-item>.text-link{grid-column:1}
  .template-publications .publication-item>.text-link{justify-self:start}
}

/* Keep headings proportional to the page text-size control as well. */
.page-shell>.content-card .rich-text h2,.home-statement .rich-text h2{font-size:clamp(1.9em,3.2vw,3em)}
.page-shell>.content-card .rich-text h3,.home-statement .rich-text h3{font-size:1.35em}
.template-publications .publication-item h3{font-size:1.06em}
.feature-card h3,.partner-card h3{font-size:1.3em}

/* v0.1.0-alpha.42: complete phone/tablet responsive hardening */
html,body{max-width:100%;overflow-x:clip}
.site-footer{overflow-x:clip}
.home-intro .company-sidebar{overflow:hidden}

/* The earlier editorial selector is more specific than the generic tablet rule.
   Repeat every layout variant here so the sidebar can never squeeze the article
   into a few pixels on portrait tablets or phones. */
@media(max-width:980px){
  .has-sidebar .page-shell,
  .has-sidebar .page-shell:not(.page-shell-wide):not(.page-shell-story),
  .has-sidebar .page-shell.page-shell-wide,
  .has-sidebar .page-shell.page-shell-story,
  .has-sidebar .page-shell.page-shell-split{
    grid-template-columns:minmax(0,1fr);
  }
  .page-shell>.content-card,
  .page-shell>.company-sidebar{
    width:100%;min-width:0;
  }
  .page-shell>.content-card{order:1}
  .page-shell>.company-sidebar{order:2;position:relative;top:auto}
}

@media(max-width:780px){
  .nav-wrap{row-gap:.55rem}
  .menu-toggle{min-width:44px;min-height:44px;padding:.55rem;touch-action:manipulation}
  .main-nav{max-height:calc(100dvh - 9rem);overflow-y:auto;overscroll-behavior:contain}
  .main-nav a{min-height:44px;display:flex;align-items:center;padding:.68rem .82rem}
  .nav-tools{
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;gap:.4rem;min-width:0
  }
  .lang-switch,.theme-select,.reading-tools button{min-height:44px}
  .lang-switch{display:inline-flex;align-items:center;justify-content:center;padding:.5rem .68rem}
  .theme-select{min-width:0;padding:.25rem .4rem;justify-content:center}
  .theme-select span{display:none}
  .theme-select select{width:100%;min-width:0;max-width:5.5rem;height:36px}
  .reading-tools{grid-column:auto;min-width:88px;height:44px}
  .reading-tools button{min-width:44px;padding:.45rem .55rem;touch-action:manipulation}

  .hero-inner{align-items:start}
  .hero h1{
    font-size:clamp(var(--hero-title-mobile-min,2.2rem),var(--hero-title-mobile-fluid,12vw),var(--hero-title-mobile-max,3.35rem));
    line-height:1.02;letter-spacing:-.055em;text-wrap:balance;overflow-wrap:break-word
  }
  .hero-text{line-height:1.6}
  .hero-actions{gap:.6rem;margin-top:1.5rem}
  .hero-actions .btn,.btn{min-height:46px;white-space:normal;text-align:center;line-height:1.25}
  .hero-media{width:100%;min-width:0;overflow:hidden}
  .hero-media figure{width:100%;max-width:100%;transform:none;border-radius:24px}
  .hero-media img,.hero-media video{max-width:100%}
  .hero-media figcaption{left:.8rem;right:.8rem;bottom:.8rem;font-size:.9rem;overflow-wrap:break-word}

  .page-shell{grid-template-columns:minmax(0,1fr)!important;gap:1rem}
  .content-card,.sidebar-card,.company-details-card,.contact-form,.partner-card,.publication-item{min-width:0;max-width:100%}
  .rich-text{min-width:0;font-size:1rem;overflow-wrap:break-word;hyphens:auto}
  .rich-text h2,.page-shell>.content-card .rich-text h2,.home-statement .rich-text h2{
    font-size:clamp(1.65rem,8.5vw,2.25rem);line-height:1.12;letter-spacing:-.045em;text-wrap:balance;overflow-wrap:break-word
  }
  .rich-text h3,.page-shell>.content-card .rich-text h3,.home-statement .rich-text h3{
    font-size:clamp(1.2rem,5.8vw,1.5rem);line-height:1.22;overflow-wrap:break-word
  }
  .rich-text ul,.rich-text ol{padding-inline-start:1.35rem;margin-inline:0}
  .rich-text img,.rich-text video,.rich-text iframe,.content-card video{display:block;max-width:100%;height:auto}
  .rich-text pre,.rich-text code{max-width:100%;overflow-wrap:anywhere;white-space:pre-wrap}

  .collection-heading{gap:.65rem;align-items:flex-start}
  .collection-heading span{min-width:0;overflow-wrap:break-word}
  .template-publications .publication-item{overflow:hidden}
  .template-publications .publication-item>.text-link,
  .partner-card>.text-link{display:inline-flex;align-items:center;min-height:44px;width:max-content;max-width:100%;padding:.45rem 0}
  .partner-card img{max-width:min(150px,70%);height:auto}

  .contact-layout{grid-template-columns:minmax(0,1fr);gap:1rem}
  .contact-form input,.contact-form textarea{font-size:16px;min-height:48px}
  .contact-form textarea{min-height:11rem}

  .footer-grid{min-width:0;gap:1.25rem}
  .footer-brand,.footer-columns,.footer-columns section{min-width:0}
  .footer-columns a{display:flex;align-items:center;min-height:44px;padding:.35rem 0;overflow-wrap:anywhere}
  .back-to-top{min-width:48px;min-height:48px}
}

@media(max-width:360px){
  .nav-wrap,.hero-inner,.section-band,.feature-section,.page-shell{width:calc(100% - .75rem)}
  .brand img{max-width:min(var(--brand-logo-size,120px),44vw)}
  .nav-tools{gap:.3rem}
  .lang-switch{padding:.45rem .55rem}
  .theme-select{padding-inline:.25rem}
  .theme-select select{max-width:4.75rem}
  .content-card,.home-statement,.sidebar-card,.feature-card,.partner-card,.publication-item,.company-details-card,.contact-form{padding:.9rem}
  .site-footer{padding-inline:.5rem}
  .footer-grid{padding:1rem}
}


/* v0.1.0-alpha.45: CMS-controlled hero title formatting and caption removal */
.hero h1{
  font-weight:var(--hero-title-weight,900);
  font-style:var(--hero-title-style,normal);
  text-decoration-line:var(--hero-title-decoration,none);
  text-decoration-thickness:.075em;
  text-underline-offset:.12em;
  text-decoration-color:color-mix(in srgb,var(--water) 72%,currentColor);
}
.hero-media figcaption{display:none!important}
