/* Calm editorial hierarchy within the approved Vortex design system. */
:root{--fg-3:#68686E}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--fg-3:#A1A1A6}}
:root[data-theme="dark"]{--fg-3:#A1A1A6}
/* Preserve the original paths; keep the two fine rules legible at small sizes. */
.brand.nav-brand{gap:12px}
.brand.nav-brand .mark{width:46px;height:auto;flex:none;overflow:visible;shape-rendering:geometricPrecision}
.brand.nav-brand b{font-size:21px;font-weight:650;letter-spacing:-.025em;white-space:nowrap}
.mark .lns path{fill:none;stroke:currentColor;stroke-width:1.15px;vector-effect:non-scaling-stroke;stroke-linecap:butt}
.mark{overflow:visible}
.rail-brand .mark{width:40px;shape-rendering:geometricPrecision}
.rail-wordmark{font-size:18px}
footer .brand{gap:12px;max-width:100%;color:var(--fg)}
footer .brand .footer-mark{display:block;width:46px;height:34px;flex:0 0 46px;overflow:visible;fill:currentColor}
footer .brand b{font-size:21px;line-height:1.2}
.dive-body .dr.why>.dr-k{display:block;font-size:14px;margin-bottom:12px}
.form-foot [role="status"]{font-size:14px;line-height:1.6}
.contact-hours-note{max-width:70ch;margin:20px auto 0;text-align:center;color:var(--fg-2);font-size:14px;line-height:1.6}
.fld input,.fld select,.fld textarea{font-size:16px;min-height:46px}
.foot-nav{gap:14px 24px;flex-wrap:wrap}
.foot-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
@media(max-width:440px){footer .brand b{font-size:19px}footer .brand .footer-mark{width:42px;flex-basis:42px}}
/* Reserve room for every header control; never squeeze tabs behind the brand. */
.nav-in{height:auto;min-height:72px;padding-block:10px;column-gap:16px}
.nav-in>.brand,.nav-in>.util{position:relative;min-width:0}
.nav-in>.tabnav{min-width:0}
@media(min-width:761px) and (max-width:1280px){
 .nav-in{display:grid;grid-template-columns:minmax(0,1fr) auto;row-gap:10px}
 .nav-in>.brand{grid-column:1;grid-row:1;justify-self:start}
 .nav-in>.util{grid-column:2;grid-row:1;margin-left:0}
 .nav-in>.tabnav{grid-column:1/-1;grid-row:2;width:100%;justify-content:center;overflow:visible}
 .nav-in .tabs{min-width:0;max-width:100%}
 .nav-in .lang{display:flex}
}
@media(max-width:760px){
 .nav-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-inline:16px}
 .nav-in>.brand{grid-column:1;grid-row:1;min-width:0}
 .nav-in>.util{grid-column:2;grid-row:1;margin-left:0;gap:6px}
 .nav-in>.tabnav{grid-column:1/-1;width:auto;min-width:0}
}
@media(max-width:440px){
 .nav-in{grid-template-columns:1fr}
 .nav-in>.brand{grid-column:1;grid-row:1;justify-self:start}
 .nav-in>.util{grid-column:1;grid-row:2;width:100%;justify-content:flex-end}
 .nav-in>.tabnav{grid-column:1;grid-row:3}
 .nav-in .lang{display:flex;margin-right:auto}
}
@media(max-width:1080px) and (min-width:761px){.brand.nav-brand .mark{width:40px}.brand.nav-brand b{font-size:19px}}
@media(max-width:760px){.brand.nav-brand .mark{width:42px}.brand.nav-brand b{font-size:19px}.brand.nav-brand{gap:10px}}
@media(max-width:400px){.brand.nav-brand .mark{width:38px}.brand.nav-brand b{font-size:17px}.brand.nav-brand{gap:8px}}
.service-brief{max-width:780px;margin:22px auto 0}
.brief-lede{font-size:clamp(19px,2.1vw,25px);line-height:1.45;color:var(--fg-2);text-wrap:balance}
.service-brief ul{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:10px 22px;padding:0;margin:22px 0 0}
.service-brief li{font-size:14px;line-height:1.5;color:var(--fg-2);display:flex;gap:9px;align-items:center}
.service-brief li:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--accent);flex:none}
[data-sub]:not([data-sub="index"]) .phead{padding-bottom:32px}
[data-sub]:not([data-sub="index"]) .shot.wide{aspect-ratio:16/8;max-height:560px;border-radius:20px}
.shot .photo-caption{font-size:14px;padding:40px 24px 18px}
.shot.photo-product{border:1px solid var(--line)}
.shot.photo-product>img.photo{padding:28px 15% 78px}
.scope-row.has-photo{gap:22px;padding:22px 0;transition:background .2s ease}
.scope-row .scope-thumb{border-radius:9px;filter:saturate(.9)}
.scope-row:hover .scope-thumb{transform:none}
.scope-row:focus-visible,summary:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.dive-body{max-width:880px;margin-inline:auto!important}
.dive-body>.dr:has(.technical-detail){display:block;padding:0;border:0;background:transparent}
.technical-detail{border-bottom:1px solid var(--line)}
.technical-detail>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px 0;list-style:none;font-size:18px;font-weight:550;color:var(--fg)}
.technical-detail>summary::-webkit-details-marker,.document-example>summary::-webkit-details-marker{display:none}
.technical-detail>summary:after,.document-example>summary:after{content:'+';font-weight:400;font-size:23px;color:var(--accent)}
.technical-detail[open]>summary:after,.document-example[open]>summary:after{content:'−'}
.technical-content{padding:0 0 25px;max-width:72ch}
.technical-content p,.dive-body .dr.why p{font-size:16px;line-height:1.75}
.dive-body .dr.why{margin:24px 0;padding:26px 30px;background:var(--bg-2);border-radius:0 14px 14px 0}
.faq{max-width:880px;margin-inline:auto!important}
.faq summary{font-size:17px!important;line-height:1.5;min-height:48px}
.faq-a p{font-size:16px!important;line-height:1.75!important}
.document-example{margin:32px auto 0;text-align:left;max-width:940px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.document-example>summary{padding:22px 26px;display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;cursor:pointer;font-size:17px;font-weight:550}
.sample-body{padding:12px 26px 30px;background:var(--bg-2)}
.sample-label{font-size:12px;letter-spacing:.08em;color:var(--accent);line-height:1.6}
.sample-body h3{font-size:24px;margin:18px 0}
.sample-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:17px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.5}
.sample-row span+span{color:var(--fg-2)}
.sample-note{font-size:14px;line-height:1.6;color:var(--fg-2);margin-top:22px}
@media(max-width:700px){
 .service-brief ul{display:grid;gap:10px;text-align:left;justify-content:start;margin-inline:auto;width:fit-content}
 .service-brief{margin-top:18px}.brief-lede{font-size:20px}
 [data-sub]:not([data-sub="index"]) .shot.wide{aspect-ratio:4/3;border-radius:12px}
 .shot .photo-caption{padding:28px 16px 14px;display:block;font-size:14px}.photo-caption>span+span{display:block;margin-top:8px}
 .dive-body .dr.why{padding:22px 20px}.technical-detail>summary{font-size:17px;padding:20px 0}
 .scope-row.has-photo{grid-template-columns:82px minmax(0,1fr) auto;gap:14px}.scope-row .scope-thumb{width:82px;height:78px}
 .sample-row{grid-template-columns:1fr;gap:6px}.sample-body{padding:12px 18px 24px}.document-example>summary{padding:20px 18px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.immersive-bg img{transform:none!important}}
/* On small screens, credits must not obscure the equipment being described. */
@media(max-width:700px){
 [data-sub]:not([data-sub="index"]) .shot.wide{aspect-ratio:auto!important;max-height:none}
 [data-sub]:not([data-sub="index"]) .shot.wide>img.photo{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:4/3;max-width:100%;transform:none}
 [data-sub]:not([data-sub="index"]) .shot.wide.photo-product>img.photo{padding:24px;object-fit:contain}
 [data-sub]:not([data-sub="index"]) .shot.wide .photo-caption{position:relative;inset:auto;background:var(--bg-2);color:var(--fg);padding:16px;display:block}
 [data-sub]:not([data-sub="index"]) .photo-caption a{white-space:normal;display:inline-block;padding-block:5px}
 .photo-caption .credit{font-size:12px;line-height:1.5}
}
