@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/sofia-sans-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/sofia-sans-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/sofia-sans-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/sofia-sans-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/sofia-sans-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/sofia-sans-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sofia Sans Condensed";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/sofia-sans-condensed-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sofia Sans Condensed";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/sofia-sans-condensed-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sofia Sans Condensed";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/sofia-sans-condensed-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sofia Sans Condensed";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/sofia-sans-condensed-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/sofia-sans-latin-ext-300-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/sofia-sans-latin-300-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/sofia-sans-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Sofia Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/sofia-sans-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Miosen v7 — one continuous page.
   A single reading spine (heading left, content right), no boxes,
   one navy moment per page, the value chain drawn as one line,
   the teal square as the brand's full stop. */
:root{
  --navy:#071D3A; --teal:#0D9B9D; --teal-ink:#0A7E80; --teal-soft:#7FD3D4;
  --bg:#FFFFFF; --mist:#F2F5F6; --line:#E1E7EB; --line-strong:#C9D3DC;
  --text:#132034; --muted:#4A5768; --on-navy:#F1F5F9; --on-navy-muted:#C6D2DE;
  --orange:#E8731F;
  --font:"Sofia Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --wrap:1248px; --gap:clamp(96px,11vw,168px);
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:96px}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:1.0625rem;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy);text-underline-offset:.2em}
a:hover{color:var(--teal-ink)}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
h1,h2,h3{margin:0;color:var(--navy);text-wrap:balance}
p{margin:0}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0}.skip:focus{left:16px;top:16px;background:var(--bg);padding:8px 12px;z-index:40}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}
.nw{white-space:nowrap}
.sq{display:inline-block;width:.19em;height:.19em;background:var(--teal);margin-left:.06em;vertical-align:baseline}
.navy .sq{background:var(--teal-soft)}

/* header */
.site-head{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.82);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .2s}
.site-head.scrolled{border-bottom-color:var(--line)}
.head-row{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:80px;position:relative}
.brand img{height:28px;width:auto}
.nav{display:flex;align-items:center;gap:32px}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:32px}
.nav a{text-decoration:none;font-weight:500;color:var(--text)}
.nav a:hover,.nav a[aria-current="page"]{color:var(--teal-ink)}
.nav a.pill-solid,.nav a.pill-solid:hover{color:#fff}
.lang{display:flex;gap:6px;align-items:center;font-size:.92rem;color:var(--muted)}
.lang a{text-decoration:none;color:var(--muted);padding:4px 2px;font-weight:500}
.lang a[aria-current="true"]{color:var(--navy);font-weight:700}
.menu{display:none}
.menu summary{list-style:none;cursor:pointer;font-weight:600;color:var(--navy);display:flex;align-items:center;gap:10px;min-height:44px}
.menu summary::-webkit-details-marker{display:none}
.menu summary::before{content:"";width:10px;height:10px;background:var(--teal)}
@media (max-width:900px){
  .nav{display:none}.menu{display:block}
  .menu[open] .menu-panel{display:flex}
  .menu-panel{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;padding:8px 24px 20px}
  .menu-panel a{text-decoration:none;font-weight:600;padding:12px 0;border-bottom:1px solid var(--line);color:var(--text)}
  .menu-panel .lang{padding-top:12px}
}

/* buttons */
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border-radius:999px;font-weight:600;text-decoration:none;border:1.5px solid var(--line-strong);color:var(--navy);background:transparent;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
.pill:hover{border-color:var(--navy);color:var(--navy)}
.pill-solid{background:var(--navy);border-color:var(--navy);color:#fff}
.pill-solid:hover{background:var(--teal-ink);border-color:var(--teal-ink);color:#fff}
.pill-sm{min-height:42px;padding:0 20px}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.copy{align-self:flex-start;font:inherit;font-weight:600;font-size:.95rem;min-height:42px;padding:0 18px;border-radius:999px;border:1.5px solid var(--line-strong);background:transparent;color:var(--navy);cursor:pointer}
.copy:hover{border-color:var(--navy)}

/* type */
.display{font-size:clamp(3rem,7.6vw,7rem);line-height:.98;letter-spacing:-.045em;font-weight:650}
.h2{font-size:clamp(2rem,3.6vw,3.1rem);line-height:1.05;letter-spacing:-.03em;font-weight:700}
.h3x{font-size:clamp(1.6rem,2.4vw,2.1rem);line-height:1.12;letter-spacing:-.02em;font-weight:700}
.kicker{font-size:.95rem;font-weight:600;color:var(--teal-ink)}
.navy .kicker{color:var(--teal-soft)}
.lead{font-size:clamp(1.2rem,1.7vw,1.5rem);line-height:1.42;font-weight:500;color:var(--navy)}
.soft{font-weight:300;color:#3A4A60;font-size:1.12rem;line-height:1.55}
.muted{color:var(--muted)}
.cap{font-size:.88rem;color:var(--muted);max-width:80ch}

/* the spine: every section reads heading-left, content-right */
.sec{padding-block:var(--gap) 0}
.spine{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,104px);align-items:start}
.spine-h{display:flex;flex-direction:column;gap:16px;position:sticky;top:120px}
.spine-b{display:flex;flex-direction:column;gap:22px;max-width:680px}
@media (max-width:900px){.spine{grid-template-columns:1fr;gap:24px}.spine-h{position:static}}

/* the one navy moment */
.navy{background:var(--navy);color:var(--on-navy);margin-top:var(--gap);padding-block:clamp(80px,9vw,128px)}
.navy + .sec{padding-top:var(--gap)}
.navy h2,.navy h3{color:#fff}
.navy .soft{color:var(--on-navy-muted)}
.navy .lead{color:#fff}
.yours{font-size:clamp(1.3rem,2vw,1.6rem);font-weight:650;letter-spacing:-.02em;color:#fff;margin-top:8px}
.yours-light{font-size:clamp(1.3rem,2vw,1.6rem);font-weight:650;letter-spacing:-.02em;color:var(--navy);margin-top:6px}

/* hero + vessel */
.hero{padding-block:clamp(48px,7vw,96px) clamp(16px,2vw,24px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:end}
.hero-side{display:flex;flex-direction:column;gap:18px;padding-bottom:12px}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr}}
.vessel{margin:0}
.vessel-scroll{overflow-x:auto}
.vessel svg{display:block;width:100%;min-width:760px;height:auto}
.vessel .stroke{fill:#fff;stroke:var(--navy);stroke-width:2}
.vessel .thin{fill:none;stroke:var(--navy);stroke-width:1}
.vessel .wl{fill:none;stroke:#A9DADB;stroke-width:1.5}
.vessel .wave{fill:none;stroke:#DCEFF0;stroke-width:1}
.vessel .call{stroke:var(--teal);stroke-width:1;transition:stroke-width .2s}
.vessel .node{fill:var(--teal)}
.vessel .halo{fill:none;stroke:var(--teal);stroke-width:1;opacity:0;transition:opacity .2s}
.vessel .t1{font-family:var(--font);font-size:15px;font-weight:600;fill:var(--navy);transition:fill .2s}
.vessel .t2{font-family:var(--font);font-size:13px;fill:#5B6878}
.vessel .callout.on .halo,.vessel .callout:hover .halo{opacity:1}
.vessel .callout.on .t1,.vessel .callout:hover .t1{fill:var(--teal-ink)}
.vessel .callout.on .call,.vessel .callout:hover .call{stroke-width:2}
@media (prefers-reduced-motion:no-preference){
  .vessel .draw{stroke-dasharray:1;stroke-dashoffset:0;animation:draw 1.4s cubic-bezier(.6,.05,.2,1) both}
  @keyframes draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
  .vessel .callout{animation:pop .5s ease-out both;animation-delay:var(--d)}
  @keyframes pop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  .vessel .drift{animation:drift 9s linear infinite}
  @keyframes drift{from{transform:translateX(0)}to{transform:translateX(180px)}}
}

/* requirements line, read as the vessel's caption */
.reqline{padding-top:8px}
.reqline-l{font-size:.9rem;color:var(--muted);margin-bottom:10px}
.marquee{display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mq-track{list-style:none;margin:0;padding:0;display:flex;flex:none}
.mq-track li{display:flex;align-items:center;gap:22px;padding-right:22px;font-size:1.1rem;font-weight:500;color:var(--navy);white-space:nowrap}
.mq-track li::after{content:"";width:7px;height:7px;background:var(--teal)}
@media (prefers-reduced-motion:no-preference){
  .mq-track{animation:mq 56s linear infinite}
  .marquee:hover .mq-track{animation-play-state:paused}
  @keyframes mq{from{transform:translateX(0)}to{transform:translateX(-100%)}}
}
@media (prefers-reduced-motion:reduce){.marquee{-webkit-mask-image:none;mask-image:none}.mq-track{flex-wrap:wrap;row-gap:8px}.mq-track[aria-hidden]{display:none}}

/* tool rows (navy) */
.rows{display:flex;flex-direction:column}
.rows > a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:baseline;padding:26px 0;border-bottom:1px solid rgba(241,245,249,.18);text-decoration:none;color:#fff}
.rows > a:first-child{padding-top:0}
.rows > a:last-child{border-bottom:0}
.rows .r-n{display:flex;flex-direction:column;gap:4px;font-size:1.4rem;font-weight:600;line-height:1.25;transition:color .2s}
.rows .r-tag{font-size:.88rem;font-weight:500;color:var(--teal-soft)}
.rows .r-d{color:var(--on-navy-muted)}
.rows > a:hover .r-n,.rows > a.on .r-n{color:var(--teal-soft)}
@media (max-width:700px){.rows > a{grid-template-columns:1fr;gap:8px}}

/* product entries: open list, no boxes */
.entries{display:flex;flex-direction:column}
.entry{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:32px 0;border-top:1px solid var(--line);text-decoration:none;color:inherit}
.entry:first-child{border-top:0;padding-top:0}
.entry-n{display:block}
.pname{font-size:clamp(1.8rem,2.8vw,2.4rem);font-weight:700;letter-spacing:-.025em;color:var(--navy);line-height:1}
.entry-d{display:flex;flex-direction:column;gap:6px}
.entry-go{font-weight:600;color:var(--teal-ink);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.25em;transition:text-decoration-color .2s}
.entry:hover .entry-go{text-decoration-color:currentColor}
.nlogo{display:inline-flex;align-items:flex-end;gap:3px;font-weight:700;letter-spacing:-.02em;color:var(--navy);line-height:1;font-size:clamp(2.2rem,3.6vw,2.8rem)}
.nlogo .nsq{width:.25em;height:.25em;background:var(--orange);margin-bottom:.2em}

/* value chain: one line, five stations */
.chain-h{margin-bottom:clamp(40px,5vw,64px)}
.chain{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0 28px;position:relative}
.chain::before{content:"";position:absolute;left:0;right:0;top:5px;height:2px;background:var(--navy)}
.chain li{position:relative;display:flex;flex-direction:column;gap:8px;padding-top:34px;min-width:0}
.ch-node{position:absolute;top:0;left:0;width:12px;height:12px;background:var(--teal)}
.ch-name{font-weight:700;color:var(--navy);font-size:1.15rem;line-height:1.25}
.ch-who{color:var(--muted);font-size:.95rem;line-height:1.4}
.ch-req{font-size:.95rem;color:var(--text);line-height:1.6;margin-top:6px}
.chain-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 56px;margin-top:clamp(40px,5vw,64px);max-width:1040px}
.chain-notes p{color:var(--text)}
.chain-notes strong{color:var(--navy);font-weight:650}
.chain + .chain-notes + .cap{margin-top:20px}
.chain-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 48px}
.navy .chain::before{background:rgba(241,245,249,.35)}
.chain-3 li h3{font-size:clamp(1.3rem,2vw,1.6rem);font-weight:650}
.chain-3 li:last-child .ch-node{background:var(--teal-soft);width:16px;height:16px;top:-2px}
@media (max-width:960px){
  .chain,.chain-3{grid-template-columns:1fr;gap:28px}
  .chain::before{left:5px;right:auto;top:0;bottom:0;width:2px;height:auto}
  .chain li{padding:0 0 0 36px}
  .chain-3 li:last-child .ch-node{left:-2px;top:0}
  .chain-notes{grid-template-columns:1fr}
}

/* text pairs: heading + line, in two columns */
.pairs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 48px}
.pairs h3{font-size:1.2rem;font-weight:700;margin-bottom:6px}
@media (max-width:600px){.pairs{grid-template-columns:1fr;gap:28px}}

/* tool and product detail sections */
.ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.ticks li{display:flex;gap:12px;align-items:baseline}
.ticks li::before{content:"";width:8px;height:8px;background:var(--teal);flex:none;transform:translateY(-2px)}
.tool .spine-h .muted{font-size:.98rem}

/* page head */
.page-head{padding-block:clamp(56px,8vw,112px) 0}
.page-head .wrap{display:flex;flex-direction:column;gap:22px}
.page-head .display{font-size:clamp(2.6rem,6vw,5.2rem)}
.page-head h1:not(.display){font-size:clamp(2.6rem,6vw,4.6rem);line-height:1;letter-spacing:-.035em}
.page-head + .navy{margin-top:clamp(56px,7vw,96px)}
.tags{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:6px}
.tags span{display:flex;align-items:center;gap:10px;font-weight:500;color:var(--navy)}
.tags span::before{content:"";width:8px;height:8px;background:var(--teal)}

/* closing */
.close{padding-block:var(--gap) clamp(72px,8vw,112px)}
.close-line{font-size:clamp(2.4rem,5.4vw,4.6rem);line-height:1.02;letter-spacing:-.04em;font-weight:650;color:var(--navy);max-width:16ch}
.close-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 32px;margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}

/* contact */
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:clamp(40px,5vw,64px)}
.contact-grid > div{display:flex;flex-direction:column;gap:10px}
.big{font-size:clamp(1.25rem,1.9vw,1.6rem);font-weight:700;color:var(--navy);text-decoration:none;white-space:nowrap}
.contact-grid .pill{align-self:flex-start}
@media (max-width:960px){.contact-grid{grid-template-columns:1fr}}
@media (max-width:420px){.big{white-space:normal;overflow-wrap:anywhere}}
main > section:last-child:not(.close){padding-bottom:clamp(72px,8vw,112px)}

/* legal */
.legal{padding-block:clamp(40px,5vw,64px) clamp(72px,8vw,112px)}
.legal .wrap{max-width:820px;display:flex;flex-direction:column;gap:1em}
.legal h2{font-size:1.6rem;margin-top:24px}
.legal h3{font-size:1.1rem;margin-top:12px}
.legal ul{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:.4em}

/* footer */
.site-foot{border-top:1px solid var(--line);padding-block:56px 28px;font-size:.92rem;color:var(--muted)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1.2fr 1.4fr .8fr;gap:32px 40px}
.foot-brand{display:flex;flex-direction:column;gap:14px}
.foot-brand img{height:22px;width:auto;align-self:flex-start}
.foot-brand p{color:var(--navy);font-weight:500}
.foot-col{display:flex;flex-direction:column;gap:8px}
.foot-h{font-size:.92rem;font-weight:700;color:var(--navy);margin-bottom:4px}
.foot-col a{color:var(--muted);text-decoration:none;white-space:nowrap}
.foot-col a:hover{color:var(--teal-ink)}
.foot-base{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:44px;padding-top:20px;border-top:1px solid var(--line);font-size:.85rem}
.foot-base a{color:var(--muted)}
@media (max-width:960px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot-grid{grid-template-columns:1fr}}

/* reporting services list (products page) */
.prep{border-top:1px solid var(--line)}
.prep > div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line)}
.prep h3{font-size:1.1rem;font-weight:700;margin:0}
@media (max-width:700px){.prep > div{grid-template-columns:1fr;gap:6px}}
.page-head .btns{margin-top:6px}
/* life-cycle section (home) */
.chain-intro{max-width:62ch;margin:-24px 0 clamp(40px,5vw,56px)}
.chain .ch-req{color:var(--text)}
.chain-close{display:flex;justify-content:space-between;align-items:center;gap:20px 40px;flex-wrap:wrap;margin-top:clamp(40px,5vw,56px);padding-top:28px;border-top:1px solid var(--line)}
.chain-close p{margin:0;color:var(--text)}
.chain-close strong{color:var(--navy);font-weight:650}
