/* Vault: quieter light, distinct spaces, generous room for people. */
:root{--air-ease:cubic-bezier(.22,.7,.25,1)}
body{--aura-a:#36adc724;--aura-b:#8056b32b}
.ambient{background:none}
.ambient:after{opacity:.06}
.mesh{width:78vw;height:85vh;border-radius:50%;filter:blur(90px);opacity:.55;will-change:transform;animation:vault-breathe 12s ease-in-out infinite alternate}
.mesh-teal{left:-27vw;top:5vh;background:radial-gradient(ellipse,var(--aura-a),transparent 68%)}
.mesh-purple{right:-27vw;top:13vh;background:radial-gradient(ellipse,var(--aura-b),transparent 68%);animation-delay:-6s;animation-duration:15s}
@keyframes vault-breathe{from{transform:scale(.94);opacity:.35}to{transform:scale(1.1);opacity:.7}}
.home-hero:before{background:radial-gradient(ellipse at 82% 47%,#7851ac29,transparent 48%),radial-gradient(ellipse at 57% 72%,#269bb21c,transparent 45%);animation:vault-breathe 13s ease-in-out infinite alternate}
.home-hero-copy>p{line-height:1.85}
.cosmic-sculpture{position:relative;animation:cosmic-float 14s ease-in-out infinite alternate}
.cosmic-sculpture:after{opacity:.18;animation:vault-breathe 9s ease-in-out infinite alternate}
.cosmic-sculpture .cosmic-heart{position:absolute;inset:0;transform-origin:50% 53%;mix-blend-mode:screen;mask-image:radial-gradient(ellipse 22% 25% at 50% 53%,#000 45%,transparent 93%);-webkit-mask-image:radial-gradient(ellipse 22% 25% at 50% 53%,#000 45%,transparent 93%);opacity:0;animation:vault-heartbeat 2.8s ease-in-out infinite;pointer-events:none;will-change:transform,opacity}
@keyframes cosmic-float{from{transform:translateY(4px) rotate(-.35deg)}to{transform:translateY(-5px) rotate(.35deg)}}
@keyframes vault-heartbeat{0%,45%,100%{transform:scale(1);opacity:0}12%{transform:scale(1.065);opacity:.62}21%{transform:scale(1.01);opacity:.1}31%{transform:scale(1.038);opacity:.43}}
.section-heading>p{line-height:1.85}
.section{padding-block:110px}
.info-card,.risk-layer,.contact-card,.claims-concierge,.advisory-deck{box-shadow:0 18px 55px #020c1814}
.footer-signature img{opacity:.62}
[data-page=our-approach] .journey-steps:before{display:none}
[data-page=our-approach] .journey-step:before{left:0;top:-1px;height:2px;width:65px;box-shadow:none}
.culture-type>div:after{border-radius:inherit}
/* Health: a welcoming portrait, pale aqua, and generous consultation space. */
[data-page=health-insurance]{--bg:#f0f7f7}
[data-page=health-insurance] .health-opening{padding-block:35px 85px}
[data-page=health-insurance] .health-opening-grid{grid-template-columns:.92fr 1.08fr;gap:85px}
[data-page=health-insurance] .health-portrait{order:-1;height:625px;border-radius:220px 220px 28px 28px;box-shadow:0 30px 60px #355d6a14}
[data-page=health-insurance] .topic-copy h1{font-size:clamp(52px,5.1vw,77px)}
[data-page=health-insurance] #options .info-grid{gap:22px;border:0;overflow:visible}
[data-page=health-insurance] #options .info-card{padding:37px;border:1px solid var(--line)!important;border-radius:23px;background:#ffffffb5;min-height:235px}
[data-page=health-insurance] #options .small-index{color:#408494;font-size:14px;margin-bottom:26px}
[data-page=health-insurance] .topic-advice-health{grid-template-columns:.8fr 1.2fr;gap:85px}
[data-page=health-insurance] .topic-advice-health .advisory-deck{padding:42px;background:linear-gradient(140deg,#e4f1f3,#f4f1fb);color:var(--ink)}
[data-page=health-insurance] #review .editorial-row{grid-template-columns:55px .85fr 1.4fr;padding-block:38px}
/* Life: a warmer dusk palette, a family photograph with its own space. */
body[data-page=life-insurance]{background:#191624;--aura-a:#5b76a918;--aura-b:#a369b62c}
[data-page=life-insurance] .header-shell{background:#191624e8}
[data-page=life-insurance] .life-opening{min-height:0;padding-bottom:85px}
[data-page=life-insurance] .life-title{max-width:none;text-align:center;padding:20px 0 50px}
[data-page=life-insurance] .life-title h1{font-size:clamp(55px,6.2vw,88px);max-width:none;line-height:1.22}
[data-page=life-insurance] .life-opening-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:75px;align-items:center}
[data-page=life-insurance] .life-portrait{position:relative;inset:auto;height:510px;z-index:0;opacity:1;mask-image:none;border-radius:30px 150px 30px 30px;overflow:hidden}
[data-page=life-insurance] .life-portrait:after{background:linear-gradient(0deg,#20152980,transparent 45%)}
[data-page=life-insurance] .life-portrait>span{display:block;position:absolute;left:30px;bottom:28px;color:#f1e8f5;font-size:12px;letter-spacing:.11em}
[data-page=life-insurance] .life-intro{max-width:none}
[data-page=life-insurance] .life-intro>p{font-size:20px;line-height:1.85;color:#c5bdd0}
[data-page=life-insurance] .life-commitments{display:flex;flex-direction:column;gap:15px;align-items:flex-start;margin-block:30px}
[data-page=life-insurance] .life-commitments span{font-size:20px;color:#e0d1e7;border:0}
[data-page=life-insurance] .life-intro .actions{gap:15px}
[data-page=life-insurance] #options .feature-note{background:linear-gradient(140deg,#735b8a20,#47365430);border-radius:28px;min-height:360px}
[data-page=life-insurance] .chapter-shell{background:#201b2bf2}
[data-page=life-insurance] #review .editorial-row{grid-template-columns:55px 1fr 1.2fr;padding-block:44px}
/* Vehicle keeps its wide horizon; the advice below it is more open. */
[data-page=vehicle-insurance] .vehicle-opening{min-height:800px}
[data-page=vehicle-insurance] #options .info-card{background:transparent;box-shadow:none;border-radius:0;border:0;border-top:1px solid #91bdd747;padding:30px 8px;min-height:245px}
[data-page=vehicle-insurance] .topic-advice-vehicle .advisory-deck{border-radius:6px;background:#1322359e}
[data-page=vehicle-insurance] .topic-advice-vehicle .deck-panel{padding:45px}
/* Business: architectural photographs and a numbered risk ledger. */
body[data-page=business-insurance]{background:#111c29;--aura-a:#5894b314;--aura-b:#7a86b112}
[data-page=business-insurance] .header-shell{background:#111c29ed}
[data-page=business-insurance] .business-landscape{height:470px;border-radius:8px}
[data-page=business-insurance] .business-landscape:after{background:linear-gradient(0deg,#0d203759,transparent 50%)}
[data-page=business-insurance] .business-pillars{background:transparent;border-radius:0;margin-top:18px}
[data-page=business-insurance] .risk-layers{display:block;border:0;border-radius:0;background:none}
[data-page=business-insurance] .risk-layer{display:grid;grid-template-columns:130px 1fr;gap:35px;padding:45px 0;border:0;border-top:1px solid #abc1d63d;border-radius:0}
[data-page=business-insurance] .risk-layer:last-child{border-bottom:1px solid #abc1d63d}
[data-page=business-insurance] .risk-layer>div{display:grid;grid-template-columns:.9fr 1.1fr;gap:10px 55px;align-items:start}
[data-page=business-insurance] .risk-layer .eyebrow{grid-column:1/-1;margin-bottom:8px}
[data-page=business-insurance] .risk-layer h3{font-size:38px;line-height:1.22}
[data-page=business-insurance] .risk-layer p{margin:0;font-size:18px;line-height:1.8}
[data-page=business-insurance] .risk-index{font-size:86px;margin:0;align-self:center}
[data-page=business-insurance] .risk-layer:after{display:none}
[data-page=business-insurance] .sector-card{border-radius:8px}
/* About: paper, a small family portrait, and a story told with typography. */
body[data-page=about]{--bg:#f7f5fa;--aura-a:#a5cfce17;--aura-b:#b29bd21d}
[data-page=about] .hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;min-height:0;padding:35px 0 65px;border:0;border-radius:0;overflow:visible;align-items:center}
[data-page=about] .hero-copy{max-width:none}
[data-page=about] .hero-copy h1{font-size:clamp(47px,5vw,72px);line-height:1.23}
[data-page=about] .hero-copy p{max-width:560px}
[data-page=about] .hero-visual{position:relative;inset:auto;z-index:0}
[data-page=about] .hero-visual:after,[data-page=about] .hero-visual:before{display:none}
[data-page=about] .editorial-image{height:440px;opacity:1;border-radius:50% 50% 12px 12px;box-shadow:0 25px 60px #5238610c}
[data-page=about] .editorial-image:after{background:linear-gradient(0deg,#27203a29,transparent 60%)}
[data-page=about] .editorial-image img{object-position:60% center}
[data-page=about] .heritage{padding-block:85px 115px;border-top:1px solid var(--line);gap:110px}
[data-page=about] .heritage-date>strong{background:var(--gradient);background-clip:text;color:transparent;-webkit-text-stroke:0;font-size:clamp(175px,21vw,285px)}
[data-page=about] .heritage-date>p{border-color:var(--line)}
[data-page=about] .heritage-now h2{font-size:clamp(38px,4vw,58px)}
[data-page=about] .story-manifesto{grid-template-columns:1.1fr .9fr;gap:95px;padding-top:10px}
[data-page=about] .story-manifesto>p{font-size:clamp(28px,3vw,42px);color:var(--ink)!important}
[data-page=about] #values .info-card{border:0;border-top:1px solid var(--line);border-radius:0;padding:35px 0;background:none;box-shadow:none}
/* Claims: a calm place to start, with contact details at the centre. */
body[data-page=claims]{background:#0d2026;--aura-a:#3d9b981c;--aura-b:#7b85a615}
[data-page=claims] .header-shell{background:#0d2026ed}
[data-page=claims] .claims-opening-grid{display:block}
[data-page=claims] .claims-opening .topic-copy{max-width:1000px;margin:auto;text-align:center;padding:25px 0}
[data-page=claims] .claims-opening h1{font-size:clamp(50px,6.3vw,87px);line-height:1.24}
[data-page=claims] .claims-opening .topic-copy>p{max-width:670px;margin:30px auto 0;font-size:18px;line-height:1.85}
[data-page=claims] .claims-opening .actions{justify-content:center}
[data-page=claims] .claims-concierge{display:grid;grid-template-columns:1fr 1fr;gap:80px;max-width:1030px;margin:40px auto 10px;padding:48px 55px;background:linear-gradient(110deg,#1a373c,#22333f);border-radius:28px;box-shadow:none}
[data-page=claims] .concierge-main h2{font-size:34px}
[data-page=claims] .concierge-main>p{font-size:16px;color:#b7cdd3;margin-top:18px}
[data-page=claims] .concierge-main>.plain-link{margin-top:17px;font-size:15px}
[data-page=claims] .concierge-phone{font-size:28px;padding-top:20px;margin-top:25px}
[data-page=claims] .claim-ready{margin:0;padding:0;border:0;align-self:center;grid-column:auto;grid-row:auto}
[data-page=claims] .claim-ready>span{margin-bottom:25px}
[data-page=claims] .chapter-shell{background:#10282ded}
/* Careers: a light studio layout, with values alongside the invitation. */
body[data-page=careers]{--bg:#f2eef9;--aura-a:#b6c4e41c;--aura-b:#a47ed726}
[data-page=careers] .careers-opening{display:grid;grid-template-columns:1.4fr .6fr;gap:25px 85px;padding-bottom:80px;align-items:center}
[data-page=careers] .careers-opening>.breadcrumb{grid-column:1/-1}
[data-page=careers] .careers-title{padding:15px 0 30px}
[data-page=careers] .careers-title h1{font-size:clamp(55px,6.1vw,85px);line-height:1.22}
[data-page=careers] .culture-type{display:grid;grid-template-columns:1fr;border:0;padding:0;margin:0;gap:17px;background:none;overflow:visible}
[data-page=careers] .culture-type>div,[data-page=careers] .culture-type>div:first-child,[data-page=careers] .culture-type>div:last-child{padding:27px;border:1px solid var(--line);border-radius:22px;gap:18px;background:linear-gradient(115deg,#2032458a,#352e4d64)}
[data-page=careers] .culture-type strong{font-size:45px;background:var(--gradient);background-clip:text;color:transparent}
[data-page=careers] #work .editorial-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;border:0}
[data-page=careers] #work .editorial-row{display:block;border-top:1px solid var(--line);border-bottom:0;padding:32px 0}
[data-page=careers] #work .editorial-row h3{margin-block:25px;font-size:31px}
[data-page=careers] #work .editorial-row p{font-size:17px}
[data-page=careers] .career-invitation{padding:65px;border-radius:30px;background:linear-gradient(130deg,#e0e8f7,#e9ddf5)}
/* Contact: open, bright and deliberately practical. */
body[data-page=contact]{--bg:#eff5f8;--aura-a:#83c9d11c;--aura-b:#b3afd51c}
[data-page=contact] .hero-grid{display:block}
[data-page=contact] .hero-copy{max-width:1050px}
[data-page=contact] .hero-copy h1{font-size:clamp(54px,6.2vw,85px);line-height:1.22}
[data-page=contact] .hero-visual{margin-top:50px}
[data-page=contact] .contact-card{display:grid;grid-template-columns:1.25fr .75fr;gap:20px 70px;padding:38px 45px;background:linear-gradient(120deg,#deedf3,#e7e5f2);border:0;border-radius:25px;box-shadow:none}
[data-page=contact] .contact-card>.eyebrow{grid-column:1/-1;margin:0}
[data-page=contact] .contact-number{font-size:clamp(35px,4.5vw,60px);color:var(--ink);grid-column:1}
[data-page=contact] .contact-card>p{grid-column:2;grid-row:2/4;margin:0;align-self:center}
[data-page=contact] .contact-card>.plain-link{justify-self:start;font-size:17px}
[data-page=contact] .contact-routing{gap:24px}
[data-page=contact] .social-connect{padding-block:100px}
[data-page=contact] .contact-layout{padding-top:50px}
/* Partners use an atlas. The approach uses three open columns. */
[data-page=partners] .partner-opening{text-align:center;padding-bottom:65px}
[data-page=partners] .partner-opening h1{max-width:1000px;margin:auto}
[data-page=partners] .partner-intro{justify-content:center;gap:50px;text-align:left}
[data-page=partners] main>.section{display:grid;grid-template-columns:280px 1fr;gap:70px;align-items:start;padding-block:70px;border-top:1px solid var(--line)}
[data-page=partners] main>.section h2{font-size:40px}
[data-page=partners] .partner-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body[data-page=our-approach]{--bg:#f2f5fa;--aura-a:#83baca15;--aura-b:#a994cb1f}
[data-page=our-approach] .approach-opening{padding-bottom:80px}
[data-page=our-approach] .journey{display:block;padding-top:45px}
[data-page=our-approach] .journey-heading{position:relative;top:auto;max-width:1000px}
[data-page=our-approach] .journey-progress{display:none}
[data-page=our-approach] .journey-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:45px}
[data-page=our-approach] .journey-step{min-height:300px;padding:32px 0;border-top:1px solid var(--line);border-bottom:0;opacity:1}
[data-page=our-approach] .journey-step h3{font-size:32px}
[data-page=our-approach] .step-tags span{background:#dce6f150}
/* Sector pages follow the character of the work. */
[data-page=industries] .hero-grid{display:block}
[data-page=industries] .hero-copy{max-width:1030px}
[data-page=industries] .hero-visual{margin-top:50px}
[data-page=industries] .editorial-image{height:470px;border-radius:8px 100px 8px 8px}
[data-page=industries] .sector-grid{grid-template-columns:1fr 1fr;gap:35px}
[data-page=industries-construction] #priorities .info-grid{display:block}
[data-page=industries-construction] #priorities .info-card{display:grid;grid-template-columns:55px .85fr 1.15fr;gap:35px;min-height:0;padding:35px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:none;box-shadow:none}
[data-page=industries-construction] #priorities .info-card p{margin:0}
body[data-page=industries-education]{--bg:#f0f7f5;--aura-a:#8fcacb26;--aura-b:#9cafd61c}
[data-page=industries-education] .page-hero{background:none}
[data-page=industries-education] #priorities .info-grid{gap:22px;overflow:visible}
[data-page=industries-education] #priorities .info-card{background:white;border:1px solid var(--line);border-radius:24px}
body[data-page=industries-hospitality]{background:#1b1b2a;--aura-a:#809ab712;--aura-b:#ad81b91e}
[data-page=industries-hospitality] #priorities .info-grid{gap:40px}
[data-page=industries-hospitality] #priorities .info-card{border:0;border-top:1px solid var(--line);border-radius:0;background:none;padding:30px 0;box-shadow:none}
[data-page=industries-hospitality] .hero-visual:after{background:linear-gradient(90deg,#191c29ed,#201d3266 68%,#241d3022)}
body[data-page=industries-manufacturing]{background:#111e2b;--aura-a:#4c8d9e18;--aura-b:#577eac16}
[data-page=industries-manufacturing] #priorities .info-card{border-radius:0;border-top:1px solid #719eac82;background:#1b31412b;padding:35px 28px}
[data-page=industries-manufacturing] #priorities .small-index{font-size:44px;margin-bottom:24px}
/* Paused means still, including the heart. */
.motion-paused .mesh,.tab-hidden .mesh,.motion-paused .cosmic-heart,.tab-hidden .cosmic-heart,.offscreen .cosmic-heart{animation-play-state:paused!important}
.motion-paused .cosmic-heart{opacity:0!important;transform:none!important}
@media(max-width:1100px){
 [data-page=claims] .claims-concierge{gap:35px;padding:35px}
 body[data-tone=light] #navigation.open{background:#f5f8fb;color:var(--ink)}
 [data-page=health-insurance] .health-opening-grid{gap:45px}
 [data-page=health-insurance] .health-portrait{height:545px}
 [data-page=health-insurance] .topic-advice-health{gap:45px}
 [data-page=about] .hero-grid{gap:45px}
 [data-page=about] .hero-copy h1{font-size:55px}
 [data-page=about] .editorial-image{height:400px}
 [data-page=about] .heritage{gap:60px}
 [data-page=careers] .careers-opening{gap:25px 40px;grid-template-columns:1.25fr .75fr}
 [data-page=careers] .careers-title h1{font-size:61px}
 [data-page=partners] main>.section{grid-template-columns:230px 1fr;gap:35px}
 [data-page=partners] .partner-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 [data-page=life-insurance] .life-opening-grid{gap:45px}
 [data-page=life-insurance] .life-portrait{height:470px}
}
@media(max-width:700px){
 .section{padding-block:70px}.mesh{width:120vw;height:75vh;filter:blur(65px)}.mesh-teal{left:-70vw}.mesh-purple{right:-60vw}
 .cosmic-sculpture .cosmic-heart{animation-duration:3s}
 [data-page=health-insurance] .health-opening{padding:25px 0 45px}
 [data-page=health-insurance] .health-opening-grid{display:flex;flex-direction:column;gap:38px}
 [data-page=health-insurance] .health-portrait{order:1;width:100%;height:420px;border-radius:160px 160px 22px 22px}
 [data-page=health-insurance] .topic-copy h1{font-size:clamp(41px,10.8vw,60px)}
 [data-page=health-insurance] #options .info-grid{gap:18px}
 [data-page=health-insurance] #options .info-card{padding:30px;min-height:0}
 [data-page=health-insurance] .topic-advice-health{grid-template-columns:1fr;gap:30px}
 [data-page=health-insurance] .topic-advice-health .advisory-deck{padding:26px}
 [data-page=health-insurance] #review .editorial-row{grid-template-columns:35px 1fr;gap:15px}
 [data-page=health-insurance] #review .editorial-row p{grid-column:2}
 [data-page=life-insurance] .life-title{text-align:left;padding:10px 0 35px}
 [data-page=life-insurance] .life-title h1{font-size:clamp(40px,10.7vw,62px)}
 [data-page=life-insurance] .life-opening-grid{grid-template-columns:1fr;gap:35px}
 [data-page=life-insurance] .life-portrait{height:350px;border-radius:25px 100px 25px 25px}
 [data-page=life-insurance] .life-intro>p{font-size:18px}
 [data-page=life-insurance] .life-commitments{gap:12px;flex-direction:row;flex-wrap:wrap;margin-block:22px}
 [data-page=life-insurance] .life-commitments span{font-size:15px}
 [data-page=life-insurance] #review .editorial-row{grid-template-columns:35px 1fr;gap:15px}
 [data-page=life-insurance] #review .editorial-row p{grid-column:2}
 [data-page=vehicle-insurance] .vehicle-opening{min-height:850px}
 [data-page=vehicle-insurance] #options .info-card{min-height:0;padding:28px 0}
 [data-page=vehicle-insurance] .topic-advice-vehicle .deck-panel{padding:28px}
 [data-page=business-insurance] .business-landscape{height:320px}
 [data-page=business-insurance] .risk-layer{grid-template-columns:48px 1fr;gap:18px;padding-block:33px}
 [data-page=business-insurance] .risk-layer>div{display:block}
 [data-page=business-insurance] .risk-layer h3{font-size:28px}
 [data-page=business-insurance] .risk-layer p{margin-top:20px;font-size:16px}
 [data-page=business-insurance] .risk-index{font-size:46px;align-self:start}
 [data-page=about] .page-hero{width:calc(100% - 40px);padding-top:25px}
 [data-page=about] .breadcrumb{margin-inline:0}
 [data-page=about] .hero-grid{display:flex;flex-direction:column;gap:40px;min-height:0;padding:0 0 50px}
 [data-page=about] .hero-copy h1{font-size:clamp(40px,10.4vw,60px)}
 [data-page=about] .hero-visual{width:100%}
 [data-page=about] .editorial-image{height:350px;border-radius:140px 140px 20px 20px}
 [data-page=about] .heritage{grid-template-columns:1fr;gap:50px;padding-block:65px}
 [data-page=about] .heritage-date>strong{font-size:clamp(145px,42vw,235px)}
 [data-page=about] .heritage-now h2{font-size:39px}
 [data-page=about] .story-manifesto{grid-template-columns:1fr;gap:35px}
 [data-page=about] .story-manifesto>p{font-size:29px}
 [data-page=claims] .claims-opening .topic-copy{text-align:left;padding-top:5px}
 [data-page=claims] .claims-opening h1{font-size:clamp(40px,10.7vw,62px)}
 [data-page=claims] .claims-opening .topic-copy>p{font-size:17px;margin-top:25px}
 [data-page=claims] .claims-opening .actions{justify-content:flex-start}
 [data-page=claims] .claims-concierge{display:block;padding:30px;margin-top:18px}
 [data-page=claims] .concierge-main h2{font-size:32px}
 [data-page=claims] .concierge-phone{font-size:25px}
 [data-page=claims] .claim-ready{margin-top:35px}
 [data-page=careers] .careers-opening{display:block;padding-bottom:50px}
 [data-page=careers] .careers-title h1{font-size:clamp(41px,10.7vw,60px)}
 [data-page=careers] .culture-type{grid-template-columns:1fr;gap:14px}
 [data-page=careers] .culture-type>div,[data-page=careers] .culture-type>div:first-child,[data-page=careers] .culture-type>div:last-child{padding:25px;gap:14px}
 [data-page=careers] .culture-type strong{font-size:44px}
 [data-page=careers] #work .editorial-rows{grid-template-columns:1fr;gap:20px}
 [data-page=careers] #work .editorial-row h3{font-size:30px;margin-block:20px}
 [data-page=careers] .career-invitation{padding:30px}
 [data-page=contact] .hero-copy h1{font-size:clamp(40px,10.7vw,60px)}
 [data-page=contact] .contact-card{display:block;padding:28px}
 [data-page=contact] .contact-number{display:block;font-size:clamp(26px,7.5vw,40px);margin-block:22px}
 [data-page=contact] .contact-card>p{margin-bottom:24px}
 [data-page=contact] .contact-card>.plain-link{font-size:15px}
 [data-page=contact] .social-connect{padding-block:65px}
 [data-page=partners] .partner-opening{text-align:left}
 [data-page=partners] .partner-intro{display:block}
 [data-page=partners] main>.section{display:block;padding-block:55px}
 [data-page=partners] main>.section h2{font-size:38px}
 [data-page=partners] .partner-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 [data-page=our-approach] .journey-steps{grid-template-columns:1fr;gap:20px;margin-top:25px}
 [data-page=our-approach] .journey-step{min-height:0;padding-block:30px}
 [data-page=industries] .editorial-image{height:340px;border-radius:8px 75px 8px 8px}
 [data-page=industries] .sector-grid{grid-template-columns:1fr;gap:25px}
 [data-page=industries-construction] #priorities .info-card{grid-template-columns:35px 1fr;gap:15px}
 [data-page=industries-construction] #priorities .info-card p{grid-column:2}
}
@media(max-width:360px){[data-page=claims] .claims-concierge{padding:25px}[data-page=claims] .concierge-phone{font-size:22px}[data-page=health-insurance] .health-portrait{height:370px}[data-page=about] .page-hero{width:calc(100% - 36px)}[data-page=about] .editorial-image{height:310px}}
@media(prefers-reduced-motion:reduce){.mesh,.cosmic-heart,.cosmic-sculpture,.home-hero:before{animation:none!important}.cosmic-heart{opacity:0!important}}


/* V20. One midnight palette, light that breathes, and distinct page rhythms. */
body[data-page]{color-scheme:dark;--bg:#0c1525;--ink:#f2f5ff;--muted:#b5c4d7;--line:#aac7e12b;--teal:#75d6e2;--purple:#b096eb;--gradient:linear-gradient(110deg,#74d9e3,#a3b6ee 50%,#c398ed);--wave-teal:#69cfde;--wave-violet:#ae8bdc;background:var(--bg);color:var(--ink)}
body[data-page] .header-shell,body[data-page].has-scrolled .header-shell{background:#0c1525e8;border-color:var(--line)}
body[data-page] .chapter-shell{background:#0e1b2deb;border-color:var(--line)}
body[data-page] .chapter-nav a{color:#c2cfe1}
body[data-page] .chapter-nav a[aria-current]{color:#94e1eb}
body[data-page] :is(.health-opening,.page-hero){background:transparent;color:var(--ink)}
body[data-page] :is(.health-opening,.page-hero) .breadcrumb,body[data-page] :is(.health-opening,.page-hero) .breadcrumb a{color:#b0c1d7}
body[data-page] :is(.health-opening,.page-hero) .eyebrow{color:#90d4e1}
body[data-page] :is(h1,h2) em,body[data-page] :is(h1,h2) em .word{background:var(--gradient);background-clip:text;color:transparent}
body[data-page] .health-opening .topic-copy>p{color:var(--muted)}
body[data-page] .health-opening .button-outline{color:var(--ink);background:#adc9e708;border-color:#b8d5ed59}
body[data-page] :is(.health-caption,.culture-type span,.career-email,.heritage-proof span,.approach-rail){color:#b7cbdc}
body[data-page] :is(.contact-card,.career-invitation,.claims-concierge){background:linear-gradient(125deg,#163040dc,#232940db);border:1px solid var(--line);box-shadow:0 24px 90px #02061224}
body[data-page=health-insurance] #options .info-card{background:linear-gradient(145deg,#1636408c,#19243985);border-color:#a4cee22c}
body[data-page=health-insurance] .topic-advice-health .advisory-deck{background:linear-gradient(135deg,#173540da,#212b45d6);color:var(--ink)}
body[data-page=health-insurance] #options .small-index{color:#82cedb}
body[data-page=careers] .culture-type>div{background:linear-gradient(115deg,#2032458a,#352e4d64)}
body[data-page] .portrait-note{background:#0d243ad9;border-color:#c2e6f447}
body[data-page] .portrait-note p{color:#f3f7ff}
body[data-page] .portrait-note>span{color:#ade6ed}
body[data-page] .heritage-date>strong{background:var(--gradient);background-clip:text;color:transparent}
body[data-page] .contact-number{color:#e6f1fc}
body[data-page] .partner-logo-card{background:#c2d9f109}
body[data-page] .partner-logo-image{background:#fff}
body[data-page=our-approach] .step-tags span{background:#acc3ee0d;color:#bdcddd}
body[data-page] footer{background:transparent}
/* Diffused planes of light replace the tightly packed line waves. */
.ambient{background:none;overflow:hidden;isolation:isolate}
.ambient:after{opacity:.06}
.light-tide{position:absolute;inset:-12% -20%;transform:translate3d(var(--tide-x,0px),var(--tide-y,0px),0) rotate(var(--tide-angle,0deg));will-change:transform;opacity:.85}
.light-veil{position:absolute;border-radius:50%;pointer-events:none;will-change:transform;filter:blur(42px);mix-blend-mode:screen}
.veil-teal{width:94%;height:75%;left:-23%;top:32%;background:conic-gradient(from 120deg at 55% 50%,transparent 0deg,#3cc8d51a 60deg,#47d1dc48 97deg,#589ab921 125deg,transparent 170deg);animation:tide-teal 27s cubic-bezier(.45,0,.55,1) infinite alternate;mask-image:radial-gradient(ellipse,#000 23%,transparent 68%)}
.veil-violet{width:115%;height:104%;right:-25%;top:-16%;background:conic-gradient(from 210deg at 48% 52%,transparent 0deg,#8061b929 62deg,#a77dea42 99deg,#647db51e 135deg,transparent 180deg);animation:tide-violet 31s cubic-bezier(.45,0,.55,1) infinite alternate;mask-image:radial-gradient(ellipse,#000 24%,transparent 69%)}
.veil-pearl{width:85%;height:40%;left:22%;top:42%;filter:blur(36px);background:radial-gradient(ellipse at 55% 55%,#aab9e526,transparent 64%);animation:tide-pearl 19s ease-in-out infinite alternate;opacity:.5}
@keyframes tide-teal{from{transform:translate3d(-5%,7%,0) rotate(-17deg) scale(.93)}to{transform:translate3d(14%,-8%,0) rotate(20deg) scale(1.12)}}
@keyframes tide-violet{from{transform:translate3d(8%,-6%,0) rotate(14deg) scale(1)}to{transform:translate3d(-12%,8%,0) rotate(-18deg) scale(1.06)}}
@keyframes tide-pearl{from{transform:translate3d(-16%,7%,0) rotate(-24deg);opacity:.25}to{transform:translate3d(10%,-9%,0) rotate(12deg);opacity:.65}}
.home-hero:before{opacity:.6}
.closing{isolation:isolate;overflow:hidden}
.closing:before{background:radial-gradient(ellipse at 30% 75%,#30859c2b,transparent 57%),radial-gradient(ellipse at 76% 60%,#8066b632,transparent 57%);mask-image:linear-gradient(0deg,transparent,#000 25%,#000 75%,transparent);animation:closing-light 20s ease-in-out infinite alternate}
@keyframes closing-light{from{transform:translateX(-7%) scale(.95);opacity:.55}to{transform:translateX(7%) scale(1.08);opacity:.85}}
/* Keep the symbol crisp; its inner light responds with a gentle double heartbeat. */
.heart-ripples{position:absolute;inset:22% 17% 17%;pointer-events:none;z-index:0}
.heart-ripples i{position:absolute;inset:0;border-radius:50%;background:radial-gradient(ellipse,transparent 38%,#71dce822 51%,#9987e00b 59%,transparent 69%);opacity:0;animation:heart-resonance 8.4s ease-out infinite;will-change:transform,opacity}
.heart-ripples i:nth-child(2){animation-delay:-2.8s}.heart-ripples i:nth-child(3){animation-delay:-5.6s}
@keyframes heart-resonance{0%{transform:scale(.75);opacity:0}22%{opacity:.6}100%{transform:scale(1.65);opacity:0}}
.cosmic-sculpture{z-index:1}
/* Chapters become connected as the visitor reads, with the text always stable. */
.flow-chapter>.section-heading h2 em{background-size:180% 100%;background-position:calc(var(--chapter-reveal,0) * 100%) 50%}
.flow-row{position:relative}
.risk-layer.flow-row:before,.editorial-row.flow-row:before,.culture-type>.flow-row:before{content:'';position:absolute;left:0;right:0;top:-1px;height:1px;background:linear-gradient(90deg,var(--wave-teal),var(--wave-violet),transparent 95%);transform:scaleX(var(--chapter-reveal,0));transform-origin:left;pointer-events:none;opacity:.8}
.info-grid>.reveal,.partner-logo-grid>.reveal,.sector-grid>.reveal{transition-delay:var(--arrival-delay,0ms)}
.heritage-date{position:relative;isolation:isolate}
.heritage-date:after{content:'';position:absolute;left:-15%;top:8%;width:75%;height:70%;z-index:-1;background:radial-gradient(ellipse,#49bec527,transparent 65%);filter:blur(25px);transform:translateX(calc(var(--chapter-reveal,0) * 85%));pointer-events:none}
/* Health: a slowly breathing portrait and a soft perimeter of protection. */
.health-portrait{isolation:isolate}
.health-portrait:after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 70px #5fd1d535;pointer-events:none;animation:care-breathe 7s ease-in-out infinite alternate}
@keyframes care-breathe{from{opacity:.2}to{opacity:.85}}
/* Life: the image lifts into the story; the family stays the focal point. */
.life-portrait{translate:0 calc(var(--scene-depth,0) * -22px)}
.life-commitments span{position:relative;padding-left:20px}
.life-commitments span:before{content:'';position:absolute;left:0;top:.52em;width:5px;height:5px;border-radius:50%;background:#af98e1;box-shadow:0 0 12px #ad8aea55}
/* Vehicle: a broad, slow travelling horizon at the foot of the scene. */
.vehicle-opening:after{content:'';position:absolute;bottom:0;left:-30%;width:140%;height:180px;background:radial-gradient(ellipse at 40% 90%,#64b6d953,transparent 65%);filter:blur(22px);pointer-events:none;animation:journey-light 18s ease-in-out infinite alternate}
@keyframes journey-light{from{transform:translateX(-12%);opacity:.35}to{transform:translateX(12%);opacity:.75}}
/* Commercial: architectural reveals follow the project from structure to cover. */
.business-landscape{isolation:isolate}
.business-landscape:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(115deg,transparent 32%,#a0d9f326 49%,transparent 66%);transform:translateX(calc(-100% + var(--chapter-reveal,0) * 160%));mix-blend-mode:screen}
.risk-index{background:var(--gradient);background-clip:text;color:transparent;opacity:calc(.5 + var(--chapter-reveal,0) * .5)}
/* Careers: three values, each arriving with its own rhythm. */
.culture-type>div{transition:translate .8s var(--air-ease),border-color .4s;translate:0 calc((1 - var(--chapter-reveal,1)) * 18px)}
.culture-type>div:nth-child(2){transition-delay:.1s}.culture-type>div:nth-child(3){transition-delay:.2s}
.culture-type>div:hover{border-color:#a29bdf7d}
.culture-type strong{background-size:180% 100%;background-position:calc(var(--chapter-reveal,0) * 100%) 50%}
.career-invitation{isolation:isolate;overflow:hidden}
.career-invitation:after{content:'';position:absolute;width:70%;height:180%;top:-65%;right:-25%;z-index:-1;background:radial-gradient(ellipse,#8199d329,transparent 65%);transform:rotate(-30deg) translateY(calc(var(--chapter-reveal,0) * 15%));pointer-events:none}
/* Claims and Contact: light gathers around the useful next step. */
.claims-concierge,.contact-card{position:relative;isolation:isolate;overflow:hidden}
.claims-concierge:after,.contact-card:after{content:'';position:absolute;z-index:-1;inset:-20%;background:radial-gradient(ellipse at 20% 60%,#59bac624,transparent 60%);animation:care-breathe 9s ease-in-out infinite alternate;pointer-events:none}
/* Education: correct source proportions and an open, campus-specific composition. */
body[data-page=industries-education] .page-hero{width:calc(100% - 100px);max-width:1320px;padding:32px 0 75px;color:var(--ink)}
body[data-page=industries-education] .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:65px;align-items:center}
body[data-page=industries-education] .hero-copy{min-width:0}
body[data-page=industries-education] .hero-copy h1{font-size:clamp(48px,5.2vw,72px);line-height:1.22}
body[data-page=industries-education] .hero-copy .actions{gap:14px}
body[data-page=industries-education] .industry-visual{height:auto;aspect-ratio:3/2;border-radius:110px 24px 24px 24px;overflow:hidden;box-shadow:0 25px 65px #01060d3d}
body[data-page=industries-education] .industry-visual .sector-image{aspect-ratio:3/2;height:100%;background-size:200% 200%;background-position:100% 0}
body[data-page=industries-education] #priorities .info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;overflow:visible;border-radius:0}
body[data-page=industries-education] #priorities .info-card{display:block;min-width:0;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#18333f8a,#222e458a);padding:35px;min-height:280px}
body[data-page=industries-education] #priorities .small-index{font-size:45px;background:var(--gradient);background-clip:text;color:transparent;margin-bottom:35px}
body[data-page=industries-education] #priorities .info-card:nth-child(2){margin-top:30px}
body[data-page=industries-education] #priorities .info-card:nth-child(3){margin-top:60px}
body[data-page=industries-education] #review .editorial-row{padding-block:40px}
/* Sound is an explicit choice, with a consistent control on every page. */
.sound-control{position:fixed;left:24px;bottom:24px;z-index:45;display:flex;align-items:center;gap:12px;min-height:48px;padding:12px 17px;border:1px solid #c1dbea38;border-radius:100px;background:#102137e8;backdrop-filter:blur(20px);color:#d7e7f5;font:inherit;font-size:14px;box-shadow:0 8px 25px #02091424;cursor:pointer;transition:background .3s,border-color .3s}
.sound-control:hover{background:#21334ced;border-color:#a4d8eb73}
.sound-control[aria-pressed=true]{border-color:#80c9da7a}
.sound-bars{height:17px;width:22px;display:flex;align-items:center;gap:3px}
.sound-bars i{width:2px;height:4px;border-radius:3px;background:linear-gradient(#85dce4,#a290db);transform-origin:50%;animation:sound-meter 1s ease-in-out infinite alternate;animation-play-state:paused}
.sound-bars i:nth-child(2){height:13px;animation-delay:-.6s}.sound-bars i:nth-child(3){height:17px;animation-delay:-.2s}.sound-bars i:nth-child(4){height:9px;animation-delay:-.8s}
.sound-on .sound-bars i{animation-play-state:running}
@keyframes sound-meter{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.footer-bottom{padding-bottom:90px}
.living-scene:not(.scene-visible):after{animation-play-state:paused}
.motion-paused .light-veil,.tab-hidden .light-veil,.motion-paused .living-scene:after,.tab-hidden .living-scene:after{animation-play-state:paused!important}
.motion-paused .heart-ripples{opacity:0}
.motion-paused .life-portrait,.motion-paused .culture-type>div{translate:none!important;transition:none!important}
@media(max-width:1100px){
 body[data-page=industries-education] .page-hero{width:calc(100% - 70px)}
 body[data-page=industries-education] .hero-grid{gap:35px}
 body[data-page=industries-education] .hero-copy h1{font-size:50px}
 body[data-page=industries-education] #priorities .info-grid{gap:16px}
 body[data-page=industries-education] #priorities .info-card{padding:25px}
}
@media(max-width:800px){
 body[data-page=industries-education] .hero-grid{grid-template-columns:1fr;gap:38px}
 body[data-page=industries-education] .industry-visual{max-width:680px;width:100%;border-radius:70px 20px 20px 20px}
 body[data-page=industries-education] #priorities .info-grid{grid-template-columns:1fr}
 body[data-page=industries-education] #priorities .info-card{margin-top:0!important;min-height:0}
 body[data-page=industries-education] #priorities .small-index{margin-bottom:25px}
}
@media(max-width:700px){
 .light-tide{inset:-10% -65%;opacity:.7}.light-veil{filter:blur(32px)}
 .veil-violet{top:-8%}.veil-teal{top:42%}
 .sound-control{left:16px;bottom:17px;min-height:44px;padding:10px 13px;gap:8px;font-size:12px}
 .sound-bars{width:18px;gap:2px}
 body[data-page=industries-education] .page-hero{width:calc(100% - 40px);padding:25px 0 50px}
 body[data-page=industries-education] .hero-copy h1{font-size:clamp(39px,10.3vw,60px)}
 body[data-page=industries-education] .hero-copy .button{min-height:56px;font-size:16px}
 body[data-page=industries-education] .hero-description{font-size:17px}
 .life-portrait{translate:0 calc(var(--scene-depth,0) * -10px)}
 .footer-bottom{padding-bottom:90px}
}
@media(prefers-reduced-motion:reduce){
 .light-veil,.living-scene:after,.heart-ripples i,.closing:before,.sound-bars i{animation:none!important}
 .light-tide{transform:none!important}.heart-ripples{display:none}
 .life-portrait,.culture-type>div{translate:none!important}
 .flow-row:before,.heritage-date:after{transform:none!important}
 .info-grid>.reveal,.partner-logo-grid>.reveal,.sector-grid>.reveal{transition-delay:0ms}
}
/* Sector imagery keeps the aspect ratio of its source instead of stretching it. */
.sector-card .sector-image{aspect-ratio:3/2}
body[data-page=industries-manufacturing] .industry-visual{height:auto;aspect-ratio:3/2}
body[data-page=industries-manufacturing] .industry-visual .sector-image{height:100%;aspect-ratio:3/2}
body[data-page=industries-education] .industry-visual:before{content:'';position:absolute;inset:0;z-index:1;border-radius:inherit;box-shadow:inset 0 0 55px #91d9df24;pointer-events:none;animation:care-breathe 8s ease-in-out infinite alternate}
body[data-page=industries-manufacturing] .industry-visual:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,transparent,#99dbed23,transparent);transform:translateX(calc(-100% + var(--chapter-reveal,0) * 170%));pointer-events:none}
body[data-page=industries-hospitality] .hero-visual{translate:0 calc(var(--scene-depth,0) * 12px)}
.motion-paused .industry-visual:before,.tab-hidden .industry-visual:before,.industry-visual.offscreen:before{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.industry-visual:before{animation:none!important}body[data-page=industries-hospitality] .hero-visual{translate:none!important}}
