/* V55: original split hero, viewport-height anchored company rail, brand treatment. */
body:has(.on[data-p="home"]) {--site-header-height:114px;}
header.top, header.top.sc, header.top.scrolled-deep {background:#0f2a57 !important;border-bottom:1px solid #385681!important;color:#fff!important;}
header.top .bar, header.top.sc .bar {background:#0f2a57!important;}
header.top .logo::before {background:#4b88c6!important;}
header.top .logo img{filter:grayscale(1) brightness(0) invert(1);}
header.top nav ul a,header.top nav ul a:visited{color:#f1f5fb!important;}
header.top nav ul a:hover,header.top nav ul a[aria-current="page"]{color:#fff!important;background:rgba(255,255,255,.12)!important;}
header.top .portal{color:#fff!important;border-color:#95b6df!important;background:transparent!important;}
header.top .portal:hover{background:#fff!important;color:#0f2a57!important;}
header.top .menu{color:white!important;border-color:rgba(255,255,255,.45)!important;}
.on[data-p="home"] > section.hero.hero-atelier{box-sizing:border-box;min-height:calc(100vh - var(--site-header-height));min-height:calc(100svh - var(--site-header-height));display:flex;flex-direction:column;justify-content:space-between;padding:0!important;background:#fff!important;text-align:left!important;overflow:hidden;}
.on[data-p="home"] > section.hero.hero-atelier > .hero-artboard{width:100%;max-width:var(--helprite-content-width,1120px);margin:auto;flex:1 0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(24px,4vw,62px);align-items:center;padding-block:clamp(34px,5.5vh,76px);}
.hero-atelier .hero-copy{text-align:left;min-width:0;}
.hero-atelier .hero-kicker{display:flex;align-items:center;gap:12px;margin:0 0 20px!important;font-size:.78rem;letter-spacing:.1em;color:#285895;}
.hero-atelier .kicker-line{height:2px;width:30px;background:#4b88c6;display:block;}
.hero-atelier .hero-copy h1{font-size:clamp(2.6rem,4.35vw,4.4rem);line-height:1.07;letter-spacing:-.025em;text-align:left;max-width:14ch;margin:0 0 24px;color:#14213d;}
.hero-atelier .hero-emphasis{color:#2962a2;position:relative;}
.hero-atelier .hero-emphasis::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#4b88c6;transform:rotate(-2deg);}
.hero-atelier .hero-summary{max-width:52ch;margin:0!important;text-align:left;color:#566780;font-size:clamp(1rem,1.25vw,1.15rem);line-height:1.75;}
.hero-atelier .hero-actions{margin-top:24px;display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:18px 25px;}
.hero-atelier .hero-actions .btn{background:#1c4f9c;color:#fff!important;display:inline-flex;align-items:center;gap:14px;padding:15px 22px;border-radius:4px;}
.hero-atelier .hero-actions .lnk{display:inline-flex;gap:12px;align-items:center;text-decoration:none;}
.hero-atelier .material-icon{width:17px;height:17px;fill:currentColor;}
.hero-atelier .hero-stage{position:relative;min-width:0;width:100%;display:flex;align-items:center;justify-content:center;}
.hero-atelier .hero-stage::before{content:"";position:absolute;inset:8% 4% -5% 0;border:1px solid #d9e3f1;transform:translate(14px,11px);pointer-events:none;}
.hero-atelier .stage-frame{position:relative;width:min(100%,460px);aspect-ratio: .96;background:#102f56;}
.hero-atelier .stage-image{width:100%;height:100%;display:block;object-fit:cover;}
.hero-atelier .stage-graticule{position:absolute;inset:14px;border:1px solid rgba(255,255,255,.19);pointer-events:none;}
.hero-atelier .stage-index{position:absolute;top:24px;left:28px;color:#c5d8f1;font:700 11px 'Instrument Sans',sans-serif;letter-spacing:.14em;}
.hero-atelier .stage-foot{position:absolute;bottom:24px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;color:#fff;font:700 11px 'Instrument Sans',sans-serif;letter-spacing:.07em;}
.hero-atelier .stage-foot svg{width:25px;height:25px;}
.hero-atelier .hero-side-marker{position:absolute;right:-23px;top:30%;writing-mode:vertical-rl;font-size:10px;letter-spacing:.15em;color:#587ca9;}
.hero-atelier .hero-side-marker span:first-child{display:none;}
.on[data-p="home"] > section.hero.hero-atelier > .trust{flex:0 0 auto;width:100%;margin-top:auto!important;background:#0f2a57!important;position:relative!important;}
.on[data-p="home"] > section.hero.hero-atelier > .trust ul.w{width:100%;max-width:var(--helprite-content-width,1120px);margin:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 26px;padding:15px clamp(1rem,4vw,2rem)!important;}
.on[data-p="home"] > section.hero.hero-atelier > .trust li{font-size:clamp(.73rem,.95vw,.87rem);color:#e3ecfc;white-space:normal;}
/* Logo images are transparent; replace dark card backgrounds with a navy blue matching the brand. */
body .dir .lt,body .dir .brand-card .lt,body .dir .care .lt{background:#1d4677!important;background-image:linear-gradient(135deg,#245584,#173a68)!important;}
@media(max-width:900px){
 header.top nav{background:#0f2a57!important;border-color:#385681!important;}
 header.top nav ul a{color:#fff!important;}
 .on[data-p="home"] > section.hero.hero-atelier > .hero-artboard{grid-template-columns:1fr;gap:24px;padding-block:32px;}
 .hero-atelier .hero-copy h1{max-width:19ch;font-size:clamp(2.3rem,7vw,3.8rem);}
 .hero-atelier .hero-stage{max-width:360px;margin-inline:auto;}
 .hero-atelier .stage-frame{max-height:300px;aspect-ratio:1.15;}
 .hero-atelier .hero-side-marker{display:none;}
}
@media(max-width:580px){
 body:has(.on[data-p="home"]){--site-header-height:70px;}
 .on[data-p="home"] > section.hero.hero-atelier > .hero-artboard{gap:20px;padding-block:24px;}
 .hero-atelier .hero-copy h1{font-size:clamp(2.1rem,9vw,3rem);margin-bottom:14px;}
 .hero-atelier .hero-summary{font-size:.95rem;line-height:1.55;}
 .hero-atelier .hero-kicker{margin-bottom:12px!important;}
 .hero-atelier .hero-actions{margin-top:18px;gap:12px;}
 .hero-atelier .hero-actions .btn{padding:11px 14px;min-height:44px;font-size:.86rem;}
 .hero-atelier .hero-stage{max-width:250px;}
 .hero-atelier .stage-frame{max-height:190px;aspect-ratio:1.25;}
 .on[data-p="home"] > section.hero.hero-atelier > .trust ul.w{gap:5px 14px;padding:10px 12px!important;}
 .on[data-p="home"] > section.hero.hero-atelier > .trust li{font-size:10px;}
}
@media(max-height:650px){.on[data-p="home"] > section.hero.hero-atelier > .hero-artboard{padding-block:20px;}.hero-atelier .stage-frame{max-height:270px;}}
