/* Shared layout. All dimensions are CSS pixels; no production dependencies. */
:root{color-scheme:dark;--bg:#00111f;--panel:#041d2c;--line:#16394b;--text:#eaf2fb;--muted:#b8cbd9;--cyan:#5bc7ee;--blue:#1475b1;--motion-intensity:.85}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;background:radial-gradient(ellipse at 58% 12%,#06213366,transparent 48%),var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.4;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:3px}
a:hover{color:#a2e4ff}
a:focus-visible{outline:3px solid #9ae4ff;outline-offset:5px;border-radius:2px}
img,svg{max-width:100%}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:500;line-height:1.15}
h1{font-size:38px;letter-spacing:1.3px;max-width:670px;margin:5px 0 17px;font-weight:600}
h2{font-size:26px;letter-spacing:.5px;margin:3px 0 10px}
h3{font-size:17px;margin-bottom:7px;font-weight:600}
p{color:var(--muted);margin-bottom:12px}
p:last-child{margin-bottom:0}
ul,ol{padding:0;margin:0;list-style:none}
.wrap{width:calc(100% - 128px);max-width:1320px;margin-inline:auto}
.header{display:flex;justify-content:space-between;align-items:center;padding-block:22px 18px;min-height:112px}
.brand{display:inline-flex;flex-direction:column;align-items:flex-start;text-decoration:none;flex-shrink:0}
.brand img{width:215px;height:auto;display:block}
.brand span{font-size:8px;letter-spacing:1.35px;color:#b7e9f9;margin:1px 0 0 50px;white-space:nowrap}
.header nav a{display:inline-block;padding:12px 0 12px 24px;text-decoration:none;font-size:16px}
.header nav a[aria-current]{color:#95dcff}
.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:30px;align-items:center;padding-block:20px 34px;min-height:420px}
.hero>div{min-width:0}
.hero p{max-width:630px}
.eyebrow{font-size:12px;letter-spacing:2px;font-weight:500;color:#86d6f5;margin:0 0 5px;line-height:1.4}
.hero .eyebrow{font-size:12px;letter-spacing:1.8px}
.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:17px 0 9px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;padding:12px 20px;border:1px solid #2b91c3;border-radius:4px;background:linear-gradient(110deg,#1079b4,#12659e);box-shadow:inset 0 1px #56b8ef25;text-decoration:none;color:#f8fbff;font-size:14px;font-weight:500;min-height:44px;line-height:1.25}
.button:hover{background:#1886bf;color:#fff}
.button span{font-size:20px;line-height:1}
.mail{font-size:14px;white-space:nowrap}
.small{font-size:13px}
.network-wrap{position:relative;align-self:stretch;display:flex;align-items:center}
.network{width:100%;overflow:visible}
.network-lines path{stroke:#3489b2;stroke-width:.9;fill:none;opacity:.5}
.orbits{stroke:#20546c;stroke-width:.7;stroke-dasharray:1 4;opacity:.75}
.minor-nodes{fill:#91cde9;opacity:.8}
.major-nodes{fill:#78d4ff}
.major-nodes .halo{fill:#159bdd;filter:blur(7px);opacity:.8}
.network-labels,.route-labels{fill:#cde6f6;font-size:10px;letter-spacing:1.1px;font-weight:600}
.network-caption{position:absolute;right:0;bottom:5%;font-size:13px;line-height:1.4;max-width:155px}
.network-caption span{display:block;color:#98d3ec;margin-top:6px}
.traveller{fill:none;stroke-linecap:round;opacity:0;pointer-events:none}
.traveller.trail{stroke:#5fd2ff;stroke-width:5;filter:blur(4px)}
.traveller.head{stroke:#c4f2ff;stroke-width:1.8;filter:drop-shadow(0 0 3px #24b4ff)}
.section{border-top:1px solid var(--line);padding-block:21px}
.problem-intro{display:grid;grid-template-columns:1fr 1.12fr;gap:55px;margin-bottom:25px}
.problem-intro p{font-size:14px}
.grid{display:grid;gap:14px}
.grid>*{min-width:0}
.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{padding:16px;border:1px solid var(--line);border-radius:5px;background:linear-gradient(110deg,#06223380,#021c2980);display:flex;gap:13px}
.card p{font-size:14px;line-height:1.35}
.card .icon{flex-shrink:0}
.icon{width:29px;height:29px;fill:none;stroke:var(--cyan);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;display:block}
.plain{gap:0}
.plain .card{padding:0 22px;border:0;border-radius:0;background:none;border-left:1px solid var(--line)}
.plain .card:first-child{padding-left:0;border-left:0}
.plain .card:last-child{padding-right:0}
.plain .card h3{font-size:15px}
.plain .card p{font-size:13px}
.offer{display:grid;grid-template-columns:1fr 320px;border:1px solid #21506a;border-radius:5px;padding:20px;gap:30px}
.offer .plain{margin-top:24px}
.offer .card{display:block}
.offer .icon{margin-bottom:12px}
.offer-price{border-left:1px solid #24506b;padding:28px 0 8px 30px;display:flex;flex-direction:column;justify-content:center}
.price{display:block;font-size:38px;letter-spacing:.8px;line-height:1.2;margin-bottom:8px;font-weight:600}
.offer-price h3{font-size:23px;font-weight:500}
.offer-price .button{font-size:14px;padding:12px 17px}
.benefits .card{display:flex;flex-direction:column;gap:0;padding:13px 18px}
.number{display:flex;justify-content:center;align-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(#caeaff,#8bc4eb);color:#103147;font-size:19px;flex-shrink:0;margin-bottom:9px}
.benefits h3{font-size:20px;min-height:46px;font-weight:500}
.benefits p{font-size:17px}
.after-line{padding-block:14px}
.after-line .wrap{display:flex;align-items:center;gap:16px}
.after-line h2{font-size:19px;white-space:nowrap;margin:0;border-right:1px solid #285770;padding-right:35px}
.after-line p{font-size:14px;margin:0;padding-left:20px}
.audience{display:flex;align-items:center;justify-content:space-between;gap:25px}
.audience h2{font-size:20px;line-height:1.3;margin:0}
.pills{display:flex;gap:15px;flex-wrap:wrap;justify-content:flex-end}
.pills li{border:1px solid #165072;border-radius:30px;padding:7px 24px;color:#7ed2f7;font-size:14px}
.split{display:grid;grid-template-columns:31% 1fr;gap:28px;align-items:start}
.experience .split{grid-template-columns:1.6fr 1fr}
.experience .split>div+div{border-left:1px solid var(--line);padding-left:30px;padding-top:17px}
.experience p,.role-top p{font-size:14px}
.role-top{display:grid;grid-template-columns:1.8fr 1fr;gap:30px}
.role-top>p{border-left:1px solid var(--line);padding:18px 0 0 30px}
.exclusions li,.inclusions li{position:relative;padding-left:24px}
.exclusions li:before,.inclusions li:before{position:absolute;left:0;top:.12em;display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border:1px solid currentColor;border-radius:50%;font-size:12px;line-height:1}
.exclusions li:before{content:"×";color:#92aec0}
.inclusions li:before{content:"✓";color:#68d5bb}
.home-exclusions{display:flex;justify-content:space-between;gap:15px;margin-top:16px;color:#b7c7d3;font-size:13px}
.final{position:relative;isolation:isolate;display:flex;justify-content:space-between;align-items:center;gap:35px;border:1px solid #35617a;border-radius:6px;padding:22px;overflow:hidden;background:#092c45;margin-top:0;min-height:164px}
.final:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#062033 13%,#062033c9 43%,#05213522 74%,#02172499),url('../img/mountains-master.webp') right 35%/90% auto no-repeat}
.final h2{font-size:25px}
.final p{font-size:14px}
.final .decor{width:125px;flex-shrink:0;font-size:13px;line-height:1.4;color:#d0dfeb}
.final .actions{margin-bottom:0}
.footer{display:flex;justify-content:space-between;align-items:center;padding-block:23px 28px;gap:30px}
.footer .brand img{width:185px}
.footer .brand span{font-size:7px;letter-spacing:1px;margin-left:43px}
.footer>div{text-align:right}
.footer p{font-size:12px;margin-top:10px}
.skip{position:fixed;left:20px;top:-100px;background:#e4f3ff;color:#062033;padding:10px;z-index:10}
.skip:focus{top:10px}
/* Audit: the narrower editorial column follows the reference. */
.audit{font-size:14px}
.audit h2{font-size:23px;letter-spacing:0}
.audit h3{font-size:13px;line-height:1.25}
.audit .section{padding-block:20px}
.audit-hero{position:relative;min-height:374px;grid-template-columns:1.05fr 1fr;padding-block:10px 25px}
.audit-hero h1{font-size:34px;letter-spacing:0;white-space:nowrap;position:relative;z-index:1}
.audit-hero .lead{font-size:23px;color:#d9e7f3;line-height:1.2}
.hero-price{border:1px solid #345f78;border-radius:5px;max-width:460px;padding:12px 17px}
.hero-price .price{font-size:29px;margin:0}
.hero-price h3{font-size:14px;font-weight:400;margin:0}
.hero-price p{font-size:12px;margin:1px 0}
.audit-hero .actions{gap:24px}
.audit-hero .button{font-size:13px;padding:10px 14px}
.mountain-visual{position:relative;align-self:stretch;min-height:350px;isolation:isolate}
.mountain-visual:before{content:"";position:absolute;inset:5% -25px 0 -70px;z-index:-1;background:linear-gradient(90deg,var(--bg),transparent 25%),linear-gradient(0deg,var(--bg),transparent 40%,#03172377),url('../img/mountains-master.webp') right center/cover;opacity:.7;mask-image:linear-gradient(0deg,transparent,black 20%,black 80%,transparent)}
.mountain-route{width:100%;height:100%;min-height:330px}
.route-line{stroke:#62b5e3;stroke-width:1;stroke-dasharray:1.2 3;fill:none}
.route-points{fill:#a9e5ff;filter:drop-shadow(0 0 5px #34b9ff)}
.mountain-visual .network-caption{right:0;bottom:6%;font-size:14px}
.steps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:20px;margin-top:18px}
.steps li{position:relative}
.steps li:not(:last-child):after{content:"";position:absolute;left:34px;right:-20px;top:16px;height:1px;background:#4c96bf}
.steps h3{font-size:16px}
.steps p{font-size:13px}
.audit .card{padding:12px;gap:10px}
.audit .card p{font-size:12px}
.audit .card .icon{width:24px;height:24px}
.audit .split>.grid{align-self:stretch}
.audit .four .card{display:block}
.audit .four .icon{float:left;width:22px;margin:0 9px 10px 0}
.audit .four h3{min-height:31px}
.note{border:1px solid var(--line);border-radius:4px;padding:8px 12px;margin-top:11px;display:flex;align-items:center;gap:12px;font-size:12px}
.note .icon{width:19px;height:19px}
.documents{position:relative;width:260px;height:150px;margin:14px auto -20px;overflow:hidden}
.paper{position:absolute;width:115px;height:155px;top:10px;padding:16px 10px;background:#c6dce9;color:#163a51;box-shadow:0 0 15px #0004;font-size:10px;line-height:1.4}
.paper span{display:block;height:3px;background:#8ba7bc;margin-top:12px}
.paper.back{left:25px;transform:rotate(-10deg);top:34px}
.paper.rear{right:7px;transform:rotate(10deg);top:26px;z-index:0}
.paper.cover{left:91px;transform:rotate(8deg);background:#10304a;color:#dbeaf5;z-index:1;width:125px;top:4px}
.paper.cover img{width:85px;margin-bottom:15px}
.paper.cover strong{font-size:10px;font-weight:400}
.paper.cover div{height:60px;margin:12px -10px 0;background:url('../img/mountains-master.webp') center/cover}
.analysis-flow{display:grid;grid-template-columns:1fr 150px;gap:22px;align-items:center}
.flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.flow>div{position:relative;border:1px solid var(--line);border-radius:4px;padding:12px 7px;text-align:center;min-width:0}
.flow>div:not(:last-child):after{content:"→";position:absolute;right:-14px;top:45%;color:#65bbe8}
.flow h3{font-size:11px}
.flow p{font-size:11px}
.pragmatic{border-left:1px solid var(--line);padding-left:18px}
.pragmatic .eyebrow{font-size:10px;letter-spacing:1px}
.pragmatic p{font-size:11px}
.action-plan .card{min-height:108px}
.action-plan .urgent{border-color:#DB0000}
.action-plan .urgent h3,.action-plan .urgent .icon{color:#DB0000;stroke:#DB0000}
.action-plan .planned{border-color:#246084}
.action-plan .planned h3{color:#96d7ff}
.action-plan .ongoing{border-color:#196b67}
.action-plan .ongoing h3,.action-plan .ongoing .icon{color:#58d5b8;stroke:#58d5b8}
.scope .card{display:block}
.scope h3{margin-bottom:9px;color:#97e2d2}
.audit .scope .card + .card h3,.audit .scope .exclusions li::before{color:#DB0000}
.scope li{font-size:12px;margin-bottom:3px}
.audit .final{min-height:155px}
.audit .final h2{font-size:25px}
/* Tablet and phone: preserve reading order without shrinking entire layouts. */
@media(min-width:1600px){.wrap{max-width:1380px}}
@media(max-width:1150px){
.wrap{width:calc(100% - 72px)}body{font-size:14px}h1{font-size:32px}h2{font-size:23px}
.hero{gap:10px}.hero .actions{gap:14px}.button{font-size:12px;padding:11px 14px}.mail{font-size:13px}
.offer{grid-template-columns:1fr 260px;gap:22px}.offer-price{padding-left:22px}.price{font-size:32px}
.plain .card{padding-inline:13px}.plain .card h3{font-size:13px}.plain .card p{font-size:12px}
.problem-intro{gap:30px}.benefits h3{font-size:18px}.benefits p{font-size:15px}
.split{gap:22px}.pills{gap:8px}.pills li{padding:7px 17px}.audience h2{font-size:17px}
.audit-hero h1{font-size:29px}.audit-hero .lead{font-size:20px}.audit .split{grid-template-columns:30% 1fr}
.audit .card{gap:8px;padding:10px}.audit .card .icon{width:21px;height:21px}.audit .card h3{font-size:12px}
.analysis-flow{grid-template-columns:1fr}.pragmatic{display:none}.flow{gap:12px}.flow h3{font-size:10px}
}
@media(max-width:900px){
.wrap{width:calc(100% - 48px)}.header{min-height:98px;padding-block:18px}
.hero{grid-template-columns:1fr 1fr;align-items:center}.hero h1{font-size:30px}.network-caption{font-size:11px;bottom:15%}
.network-labels{font-size:11px;letter-spacing:.5px}.network-wrap{align-self:center}
.grid.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.plain .card{border:0;padding:0}.problem-intro{grid-template-columns:1fr 1fr;gap:25px}
.offer{grid-template-columns:1fr 220px}.offer-price .button{font-size:12px}.offer-price .price{font-size:29px}
.benefits h3{min-height:0}.after-line .wrap{flex-wrap:wrap}.after-line p{padding-left:0}
.audience{align-items:flex-start;flex-direction:column}.pills{justify-content:flex-start}
.role-top{grid-template-columns:1fr}.role-top>p{padding:0;border:0}.home-exclusions{flex-wrap:wrap;justify-content:flex-start;gap:15px 25px}
.audit-hero{grid-template-columns:1.2fr 1fr}.audit-hero h1{white-space:normal;font-size:30px}.audit-hero .lead{font-size:19px}
.mountain-visual{min-height:290px}.mountain-route{min-height:260px}.mountain-visual .network-caption{font-size:12px}
.steps{gap:15px}.steps h3{font-size:13px}.steps p{font-size:11px}.steps li:not(:last-child):after{right:-15px}
.audit .split{grid-template-columns:1fr}.audit .split>div:first-child{max-width:620px}
.audit .deliverables .split{grid-template-columns:32% 1fr}.audit h2{font-size:23px}
.audit .grid.three{gap:10px}.audit .grid.three .card{display:block}.audit .grid.three .icon{margin-bottom:8px}
.audit .card h3{font-size:14px}.audit .card p{font-size:13px}.documents{width:220px}
.analysis-flow{grid-template-columns:1fr 170px}.pragmatic{display:block}.flow h3{font-size:11px}
.final:before{background-size:auto,auto 115%}.final h2{font-size:22px}.final .decor{width:100px}
}
@media(max-width:600px){
.wrap{width:calc(100% - 36px)}body,.audit{font-size:15px}
.header{padding-block:17px;min-height:100px}.brand img{width:177px}.brand span{font-size:6.6px;letter-spacing:.8px;margin-left:41px}
.header nav a{font-size:14px;padding-left:15px}
.hero,.audit-hero{grid-template-columns:1fr;gap:0;padding-block:20px 28px}
.hero h1,.audit-hero h1{font-size:32px;letter-spacing:.3px;margin-bottom:17px;line-height:1.15}
.hero .eyebrow{font-size:10px;letter-spacing:1.3px}
.hero p{line-height:1.5}.hero .lead{font-size:21px;line-height:1.3}
.actions{gap:16px}.button{font-size:13px;padding:12px 13px;gap:14px;max-width:100%}.button span{font-size:17px}
.hero .small{font-size:12px}.small br{display:none}
.network-wrap{margin:18px -5px 0;min-width:0;display:block}.network{display:block}.network-caption{font-size:10px;bottom:0;right:3px}
.network-labels{font-size:11px}.section,.audit .section{padding-block:25px}h2,.audit h2{font-size:24px;line-height:1.2}
h2 br{display:none}.eyebrow{font-size:10px;letter-spacing:1.6px}
.problem-intro{grid-template-columns:1fr;gap:10px;margin-bottom:25px}.problem-intro p{font-size:15px}
.grid.four,.grid.three,.grid.two{grid-template-columns:1fr;gap:13px}
.plain .card{display:flex;border:0;padding:12px 0;gap:17px}
.plain .card h3{font-size:16px}.plain .card p{font-size:14px}
.offer{grid-template-columns:1fr;padding:18px;gap:22px}.offer .plain{margin-top:14px}.offer .icon{margin-bottom:0}
.offer-price{padding:22px 0 0;border-left:0;border-top:1px solid var(--line);align-items:flex-start}.offer-price .button{font-size:13px}
.offer-price .price{font-size:34px}.offer-price h3{font-size:21px}.offer-price p{font-size:14px}
.benefits .card{display:grid;grid-template-columns:34px 1fr;column-gap:13px;padding:18px}.benefits .number{grid-row:span 2;margin:0}
.benefits h3{font-size:19px;min-height:0;margin-bottom:6px}.benefits h3 br{display:none}.benefits p{grid-column:2;font-size:15px}
.after-line h2{border:0;padding:0;font-size:20px}.after-line p{font-size:15px}.after-line .icon{flex-shrink:0}
.audience h2{font-size:20px}.pills{gap:9px}.pills li{font-size:13px;padding:7px 17px}
.split,.experience .split,.audit .split,.audit .deliverables .split{grid-template-columns:1fr;gap:19px}
.experience .split>div+div{border:0;padding:0}.experience p,.role-top p{font-size:15px}
.role-top{gap:8px}.role-top br{display:none}.home-exclusions{flex-direction:column;gap:12px;font-size:14px}
.final{display:block;padding:20px;margin-top:0;min-height:270px}.final:before{background:linear-gradient(90deg,#062033ed,#06203366),url('../img/mountains-master.webp') 86% center/cover}
.final h2,.audit .final h2{font-size:24px}.final p{font-size:14px}.final .decor{margin:25px 0 0 auto;width:150px;font-size:12px}
.final .actions{gap:15px}.final .mail{font-size:13px}
.footer{align-items:flex-start;flex-direction:column;padding-block:25px;gap:22px}.footer>div{text-align:left}.footer .brand img{width:177px}.footer .brand span{margin-left:41px;font-size:6.6px}
.audit-hero .actions{gap:16px}.hero-price{max-width:none;margin-top:18px}.hero-price p{font-size:13px}
.mountain-visual{min-height:220px;margin-top:5px}.mountain-visual:before{inset:0 -18px;background-size:auto,auto,cover}
.mountain-route{min-height:0;height:auto;display:block}.mountain-visual .network-caption{font-size:11px;bottom:0;right:0}
.steps{grid-template-columns:1fr;margin-top:22px;gap:0}.steps li{padding:0 0 23px 50px;min-height:90px}
.steps .number{position:absolute;left:0;top:0;z-index:1}.steps li:not(:last-child):after{left:16px;top:33px;bottom:0;width:1px;height:auto;right:auto}
.steps h3{font-size:17px}.steps p{font-size:14px}.steps li:last-child{padding-bottom:0;min-height:60px}
.audit .card,.audit .grid.three .card,.audit .grid.four .card{display:flex;padding:16px;gap:13px}
.audit .card h3{font-size:16px;min-height:0}.audit .card p{font-size:14px}.audit .card .icon{width:25px;height:25px;float:none;margin:0}
.documents{height:165px;width:260px;margin:15px auto 0}.note{font-size:13px;align-items:flex-start}.note .icon{flex-shrink:0}
.analysis-flow{grid-template-columns:1fr;gap:20px}.flow{grid-template-columns:1fr;gap:22px}
.flow>div{padding:14px;text-align:left}.flow h3{font-size:16px}.flow p{font-size:14px}
.flow>div:not(:last-child):after{content:"↓";right:50%;top:auto;bottom:-22px}
.pragmatic{padding-left:15px}.pragmatic .eyebrow{font-size:11px}.pragmatic p{font-size:14px}
.audit .scope .card{display:block}.scope li{font-size:14px;margin-bottom:9px;line-height:1.4}
.audit .final{min-height:270px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.traveller{display:none!important}}
/* Visual QA refinements: preserve content at intermediate widths. */
.orbits{stroke:#287195;stroke-width:.8;stroke-dasharray:1.5 3;opacity:.95}
.mountain-visual{overflow:clip}
@media(min-width:901px) and (max-width:1150px){.pragmatic{display:block}.pragmatic p{font-size:12px}.analysis-flow{grid-template-columns:1fr}.pragmatic{margin-top:5px}}@media(max-width:600px){.brand span,.footer .brand span{font-size:8px;letter-spacing:.55px;max-width:174px;white-space:normal;line-height:1.45}}.home .final:before{background-image:linear-gradient(90deg,#062033 13%,#062033c9 43%,#05213522 74%,#02172499),url('../img/mountains-master.webp')}
@media(max-width:600px){.home .final:before{background-image:linear-gradient(90deg,#062033ed,#06203366),url('../img/mountains-master.webp')}}@media(max-width:600px){.network-labels{font-size:17px;letter-spacing:.5px}.route-labels{font-size:16px;letter-spacing:.6px}.network-wrap .network-caption{position:static;text-align:right;max-width:none;margin:0 0 0 auto;width:160px;font-size:12px}.network-caption span{margin-top:2px}}@media(min-width:601px) and (max-width:900px){.steps{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:22px}.steps li:nth-child(4):after{display:none}.steps h3{font-size:15px}.steps p{font-size:13px}.network-labels{font-size:15px}.route-labels{font-size:15px}}
/* V1: header booking link; existing content and illustrations are unchanged. */
.header nav{display:flex;align-items:center;gap:28px}
.header nav .button{padding:12px 20px;font-size:14px;color:#f8fbff}
.legal-content{padding-block:35px 70px;min-height:45vh}
@media(max-width:900px){.header nav{gap:18px}.header nav .button{font-size:13px;padding:12px 14px}}
@media(max-width:600px){
.header{flex-wrap:wrap;gap:16px}
.header nav{flex:1 0 100%;justify-content:space-between;gap:12px}
.header nav>a:not(.button){padding:12px 0}
.header nav .button{font-size:12px;padding:12px 10px;gap:10px}
.legal-content h1{font-size:30px}
}

/* Reference reconstruction, scoped exclusively to the home hero network. */
.network-reference .nr-secondary{fill:none;stroke:#1c6081;stroke-width:.65;opacity:.30}
.network-reference .nr-rings{fill:none;stroke:#257a9f;stroke-width:.75;opacity:.40}
.network-reference .nr-orbit{fill:none;stroke:#21698b;stroke-width:.75;opacity:.40}
.network-reference .nr-links{fill:none;stroke:#3698c0;stroke-width:.85;opacity:.70}
.network-reference .nr-spokes{fill:none;stroke:#2a789d;stroke-width:.65;opacity:.38}
.network-reference .nr-dots{fill:#b6dfef}
.network-reference .network-labels{font-weight:600;letter-spacing:.8px}
.network-reference .traveller.head{stroke-width:1.5}
.network-reference .traveller.trail{stroke-width:3;filter:blur(3px)}

/* Home hero only: a broad, feathered light envelope around two dark masses.
   Foreground gradients protect the text and network; lower layers spread
   the blue mist through the centre and all four diagonal areas. */
.home .hero{position:relative;isolation:isolate}
.home .hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(ellipse 29% 43% at 23% 49%,rgb(3 23 35 / .9) 22%,rgb(3 23 35 / .5) 55%,transparent 86%),
    radial-gradient(ellipse 27% 43% at 82% 49%,rgb(3 23 35 / .88) 22%,rgb(3 23 35 / .45) 57%,transparent 86%),
    radial-gradient(ellipse 22% 57% at 53% 50%,rgb(103 169 198 / .1),rgb(57 128 164 / .045) 52%,transparent 88%),
    radial-gradient(ellipse 46% 36% at 27% 13%,rgb(86 157 190 / .095),transparent 85%),
    radial-gradient(ellipse 42% 37% at 82% 14%,rgb(77 151 186 / .09),transparent 85%),
    radial-gradient(ellipse 47% 38% at 23% 88%,rgb(81 153 183 / .095),transparent 85%),
    radial-gradient(ellipse 43% 37% at 83% 87%,rgb(81 154 186 / .09),transparent 85%),
    radial-gradient(ellipse 65% 27% at 51% 7%,rgb(43 112 152 / .05),transparent 87%),
    radial-gradient(ellipse 65% 28% at 51% 95%,rgb(44 119 153 / .05),transparent 87%);
  filter:blur(22px);
  mask-image:radial-gradient(ellipse 73% 76% at 50% 50%,#000 42%,transparent 96%);
  clip-path:inset(0);
}
@media(max-width:600px){
  .home .hero::before{
    /* The two dark masses follow the stacked text and illustration. */
    background:
      radial-gradient(ellipse 61% 29% at 48% 30%,rgb(3 23 35 / .86) 25%,transparent 88%),
      radial-gradient(ellipse 59% 20% at 50% 78%,rgb(3 23 35 / .83) 22%,transparent 88%),
      radial-gradient(ellipse 80% 20% at 50% 61%,rgb(96 165 194 / .075),transparent 85%),
      radial-gradient(ellipse 53% 45% at 8% 26%,rgb(73 148 182 / .065),transparent 87%),
      radial-gradient(ellipse 53% 44% at 94% 27%,rgb(80 153 186 / .065),transparent 87%),
      radial-gradient(ellipse 57% 35% at 8% 88%,rgb(77 149 183 / .07),transparent 85%),
      radial-gradient(ellipse 57% 35% at 94% 89%,rgb(79 154 185 / .07),transparent 85%);
    filter:blur(18px);
  }
}


/* Reposition only the home network; preserve its size and the existing halo. */
@media(min-width:1151px){
  .home .network-wrap > .network{transform:translateX(48px)}
}
@media(min-width:901px) and (max-width:1150px){
  .home .network-wrap > .network{transform:translateX(24px)}
}
@media(min-width:601px) and (max-width:900px){
  .home .network-wrap > .network{transform:translateX(12px)}
}

/* One HD landscape; proportional, distinct crops for the two closing banners. */
.home .final::before{background-size:auto,74% auto;background-position:center,right 12%}
@media(min-width:601px) and (max-width:900px){
  .home .final::before{background-size:auto,auto 100%;background-position:center,right center}
}
@media(max-width:600px){
  .home .final::before{background-size:auto,cover;background-position:center,78% center}
}

/* Home and Audit headers: right-aligned navigation, existing row height. */
:is(.home,.audit) .header nav{justify-content:flex-end;min-height:44px}
