/* SERV-INFO: editorial layouts, useful paths and restrained motion. */
.site-experience { --experience-teal:#177b80; --experience-ink:#0c2431; }
.site-experience :focus-visible { outline:3px solid #168991; outline-offset:5px; }
.site-experience [hidden] { display:none!important; }
.site-experience :is(.experience-section,.experience-situations,.orientation-result) { scroll-margin-top:120px; }
.experience-breadcrumb { display:flex;flex-wrap:wrap;gap:9px;padding-top:13px;padding-bottom:13px;font-size:.74rem;color:#536c76; }
.experience-breadcrumb a { text-decoration:underline;text-underline-offset:3px; }
.site-experience .header-shell { max-width:1440px; }
.site-experience .nav-assistance { color:#126d72;border-left:1px solid #d3e2e5;padding-left:15px; }
.site-experience .nav-assistance .nav-icon { display:none; }
.site-experience .nav-solutions .nav-panel { grid-template-columns:1fr 1fr;width:610px; }
.site-experience .nav-solutions.is-open .nav-panel { display:grid; }
.site-experience .nav-panel-link:last-child { border-radius:4px; }
.site-experience .nav-solutions .nav-panel-link:last-child { background:#e8f4f3;color:#115d65;grid-column:1/-1; }
@media(min-width:1101px) {
 .site-experience .header-shell { width:calc(100% - 48px);grid-template-columns:96px minmax(0,1fr) auto;gap:24px;min-height:90px; }
 .site-experience .brand,.site-experience .brand img { width:94px; }
 .site-experience .menu-toggle { display:none; }
 .site-experience .site-nav { display:flex!important;position:static;flex-direction:row;justify-content:center;align-items:center;gap:18px;width:auto;max-height:none;padding:0;background:none;border:0;box-shadow:none;overflow:visible; }
 .site-experience .site-nav>a,.site-experience .nav-group>button { width:auto;font-size:.82rem;padding:10px 0;justify-content:center;white-space:nowrap; }
 .site-experience .nav-group { position:relative;width:auto;padding:18px 0;margin:-18px 0; }
 .site-experience .nav-group::after { display:block; }
 .site-experience .nav-panel { display:block;position:absolute;left:50%;top:100%;width:320px;transform:translate(-50%,8px);max-height:0;opacity:0;visibility:hidden;pointer-events:none;border:1px solid #dae5e8;padding:0;box-shadow:0 16px 30px #0c243117; }
 .site-experience .nav-group.is-open .nav-panel { display:grid;transform:translate(-50%,0);max-height:min(650px,75dvh);opacity:1;visibility:visible;pointer-events:auto;padding:14px;overflow:auto; }
 .site-experience .nav-solutions .nav-panel { left:0;transform:translateY(8px);width:610px; }
 .site-experience .nav-solutions.is-open .nav-panel { transform:none; }
 .site-experience .header-actions { grid-column:auto;grid-row:auto; }
 .site-experience .header-actions .button { padding:14px 18px;font-size:.8rem; }
 .site-experience .mobile-menu-tools { display:none!important; }
 .site-experience .site-nav .nav-assistance { padding-left:16px; }
 .site-experience .nav-sigest-link { flex:none; }
}
@media(max-width:1100px) {
 .site-experience .nav-solutions .nav-panel { width:100%;grid-template-columns:1fr 1fr; }
 .site-experience .nav-assistance { border-left:0;border-top:1px solid #dae5e8;margin-top:12px;padding-top:16px; }
}
@media(max-width:600px) { .site-experience .nav-solutions .nav-panel { grid-template-columns:1fr; } }

/* Entry animation is independent of the carousel, so the message stays readable. */
.home-hero--overview { position:relative;display:grid;isolation:isolate; }
.home-hero--overview>.pole-slides { position:absolute;inset:0;z-index:-1; }
.home-hero--overview .pole-slide { min-height:0;padding:0; }
.home-hero--overview .pole-image { width:70%;height:100%;max-height:none;object-position:center; }
.home-hero--overview .pole-slide::after { background:linear-gradient(90deg,#0c2431 3%,#0c2431ed 31%,#0c24317a 60%,#0c24311a 100%),linear-gradient(0deg,#0c2431e8,transparent 65%); }
.overview-copy { padding-top:72px;padding-bottom:56px; }
.site-v2 .overview-copy .eyebrow { color:#9fdcdb;font-size:.7rem;letter-spacing:.1em;max-width:85ch; }
.site-v2 .overview-copy h1 { color:#fff;font-size:clamp(2.8rem,4.6vw,4.6rem);line-height:1.07;letter-spacing:-.05em;font-weight:600;max-width:15ch;margin:22px 0; }
.site-v2 .overview-copy h1 em { color:#65d9d2;font-style:normal; }
.site-v2 .overview-lead { color:#e1edef;font-size:1.06rem;line-height:1.8;max-width:48ch;margin:0 0 28px; }
.overview-copy>.eyebrow,.overview-copy>h1,.overview-copy>.overview-lead,.overview-copy>.hero-actions { animation:experience-enter .8s both; }
.overview-copy>h1 { animation-delay:.1s; }.overview-copy>.overview-lead { animation-delay:.2s; }.overview-copy>.hero-actions { animation-delay:.3s; }
.home-hero--overview .pole-slides { animation:experience-image-enter 1.4s both; }
.overview-bottom { position:relative; }
.overview-access { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #ffffff40;border-bottom:1px solid #ffffff30;animation:experience-enter .8s .4s both; }
.overview-access>a { display:flex;align-items:center;gap:18px;color:#fff;padding:25px 22px;min-width:0;transition:background .2s; }
.overview-access>a:first-child { padding-left:0; }.overview-access>a+a { border-left:1px solid #ffffff30; }
.overview-access>a:hover { background:#154653a8; }.overview-access .icon { color:#6cddd4;flex:none;width:26px;height:26px; }
.overview-access strong { display:block;font-size:1rem;line-height:1.4; }.overview-access small { display:block;color:#b9d2d8;font-size:.78rem;margin-top:5px; }.overview-access a>span:last-child { margin-left:auto;color:#6cddd4; }
.home-hero--overview .pole-navigation { min-height:60px;border:0;justify-content:flex-end;gap:24px;padding:9px 0; }
.home-hero--overview .pole-tabs { align-self:center;gap:10px;width:auto; }
.home-hero--overview .pole-tabs button { min-height:38px;min-width:38px;padding:7px 9px;justify-content:center;border-bottom-width:2px; }
.home-hero--overview .pole-controls button { min-width:38px;min-height:38px; }
@keyframes experience-enter { from { opacity:0;transform:translateY(20px); } to { opacity:1;transform:none; } }
@keyframes experience-image-enter { from { opacity:0;transform:scale(1.035); } to { opacity:1;transform:scale(1); } }

/* Distinct interior compositions, with the existing photographic library. */
.experience-page .hero { padding:56px 0; }
.experience-page .hero-grid { align-items:center;gap:56px; }
.site-v2 .experience-page .hero h1 { font-size:clamp(2.4rem,3.7vw,3.8rem);line-height:1.12;max-width:19ch; }
.experience-page .hero-image { height:340px;border-radius:2px 48px 2px 2px;box-shadow:none; }
.experience-page--sector .hero { background:#edf4f4; }
.site-v2 .experience-page--sector .hero h1 { color:#102f3b; }
.site-v2 .experience-page--sector .hero .eyebrow { color:#16747b; }
.site-v2 .experience-page--sector .hero-lead { color:#3c5965; }
.experience-page--sector .hero-panel li { color:#315660; }
.experience-page--sector .hero-actions .button--secondary { color:#156e76;border-color:#99bec1; }
.experience-page--training .hero { background:#103a43; }
.experience-page--training .hero-image { border-radius:48px 2px 48px 2px; }
.experience-page--equipment .hero-image { height:370px;border-radius:2px; }
.experience-page--maintenance .hero-image { border-radius:80px 2px 2px 2px; }
.experience-summary { display:flex;flex-wrap:wrap;align-items:center;gap:8px 25px;padding-top:17px;padding-bottom:17px;border-bottom:1px solid #d4e3e5; }
.experience-summary>span { color:#607983;font-size:.72rem;text-transform:uppercase;letter-spacing:.09em; }
.experience-summary a { display:inline-flex;align-items:center;min-height:40px;font-size:.85rem;color:#165e68;font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#b9d3d5; }
.experience-heading { max-width:780px;margin-bottom:36px; }
.site-v2 .experience-heading h2 { font-size:clamp(1.85rem,2.8vw,2.7rem);line-height:1.15;letter-spacing:-.035em; }
.experience-heading>p:not(.eyebrow) { font-size:1.04rem;line-height:1.8;color:#49646e; }
.experience-situations { padding:68px 0; }
.situations-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px; }
.situation { border-top:2px solid #b5d5d5;padding-top:22px;display:flex;flex-direction:column;align-items:flex-start; }
.situation-number { color:#197c81;font-size:.78rem;font-weight:700;letter-spacing:.08em; }
.site-v2 .situation h3 { font-size:1.34rem;line-height:1.35;margin:18px 0 12px; }
.situation>p { font-size:.96rem;line-height:1.8;color:#49626b;margin:0 0 20px; }
.situation .text-link { margin-top:auto;font-size:.86rem;padding:8px 0; }
.experience-page .sector-poles { padding-top:0; }
.experience-case { display:flex;gap:32px;align-items:center;justify-content:space-between;background:#edf5f4;border-left:4px solid #27878a;padding:36px 40px;margin-top:32px;margin-bottom:48px; }
.site-v2 .experience-case h2 { font-size:1.6rem;line-height:1.4;max-width:40ch;margin:12px 0; }
.experience-case p { max-width:70ch;font-size:.96rem;line-height:1.7; }
.experience-case .button { flex-shrink:0; }
.experience-section { padding:64px 0; }
.experience-section--training-detail:nth-of-type(even) { background:#f1f6f6; }
.training-detail-grid { display:grid;grid-template-columns:1.2fr 1fr;gap:32px 56px; }
.training-detail-grid h3 { font-size:1.05rem;line-height:1.5;color:#133b47; }
.training-objectives ul { list-style:none;padding:0;margin:20px 0; }
.training-objectives li { position:relative;padding:12px 0 12px 24px;border-bottom:1px solid #d4e4e5;font-size:1rem;line-height:1.7; }
.training-objectives li::before { content:'↗';position:absolute;left:0;color:#127a7f; }
.training-facts { border-left:1px solid #bfd7d9;padding-left:32px; }
.training-facts>div+div { margin-top:22px; }
.training-facts h3 { margin:0 0 6px; }.training-facts p { margin:0;font-size:.94rem;line-height:1.75;color:#49646e; }
.training-practice { grid-column:1/-1;background:#123d47;color:#fff;padding:28px 32px;border-radius:4px; }
.site-v2 .training-practice .eyebrow { color:#85dcd6; }.site-v2 .training-practice>p:last-child { color:#edf7f7;font-size:1.02rem;line-height:1.8;margin:0;max-width:85ch; }
.experience-section-action { margin-top:28px; }
.experience-section--project-steps>.container { display:grid;grid-template-columns:.9fr 1.2fr;gap:70px;align-items:start; }
.project-timeline { list-style:none;padding:0;margin:0; }
.project-timeline>li { display:grid;grid-template-columns:46px 1fr;gap:22px;position:relative;padding-bottom:32px; }
.project-timeline>li:not(:last-child)::before { content:'';position:absolute;left:21px;top:45px;bottom:0;width:1px;background:#bfd6d8; }
.project-timeline>li>span { display:grid;place-items:center;width:44px;height:44px;border:1px solid #a6c9cb;color:#197980;border-radius:50%;font-size:.78rem; }
.project-timeline h3 { margin:6px 0 12px;font-size:1.3rem; }.project-timeline p { line-height:1.8;font-size:.96rem;color:#48636d; }
.project-timeline .step-takeaway { font-size:.85rem;color:#16666f;border-left:2px solid #66b8b5;padding-left:14px; }
.experience-invitation { background:#edf5f4;padding:56px 0; }
.experience-invitation>.container { display:flex;align-items:center;justify-content:space-between;gap:40px; }
.site-v2 .experience-invitation h2 { font-size:2.25rem;line-height:1.2; }.experience-invitation p { max-width:62ch;line-height:1.7; }
.experience-invitation>.container>div:last-child { display:grid;gap:20px;justify-items:start;flex-shrink:0; }
.case-directory { display:grid;grid-template-columns:1fr 1fr;gap:28px; }
.case-directory>a { padding:32px;border:1px solid #cbdfe0;border-top:4px solid #25868a;background:#f3f7f7;display:flex;flex-direction:column;align-items:flex-start; }
.case-directory h3 { line-height:1.4;font-size:1.35rem; }.case-directory p { font-size:.95rem;line-height:1.8; }.case-directory .text-link { margin-top:auto; }

.orientation-form { padding:36px;background:#eff5f5;border:1px solid #d2e2e4;border-radius:8px;scroll-margin-top:120px; }
.orientation-form fieldset { padding:0;margin:0 0 28px;border:0;min-width:0; }
.orientation-form legend { font-size:1.35rem;font-weight:600;color:#113542;margin-bottom:24px;line-height:1.5; }
.orientation-form legend>span { color:#208289;margin-right:12px;font-size:.83rem; }
.orientation-options { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.orientation-options label { display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #c2d8db;padding:17px 20px;cursor:pointer;border-radius:4px;color:#244956; }
.orientation-options input { width:18px;height:18px;accent-color:#167a80;flex-shrink:0; }
.orientation-options label:has(input:checked) { border-color:#137e82;background:#e0f0ee;box-shadow:inset 0 0 0 1px #137e82; }
.orientation-options label:has(input:focus-visible) { outline:3px solid #168991;outline-offset:3px; }
.orientation-progress { font-size:.78rem;color:#19777d;letter-spacing:.05em;margin:0 0 20px; }
.orientation-controls { display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:26px; }
.orientation-note { font-size:.8rem;color:#5b747c;line-height:1.7;margin:20px 0 0; }
.orientation-result { padding:36px;background:#fff;border:2px solid #2a9695;margin-top:32px;border-radius:8px; }
.orientation-result h3 { font-size:1.6rem;line-height:1.35; }.orientation-result>p { max-width:85ch;line-height:1.8; }
.orientation-recap { display:grid;grid-template-columns:1fr 1fr;gap:14px;list-style:none;padding:0;margin:28px 0; }.orientation-recap li { background:#eff6f5;padding:16px;font-size:.9rem; }.orientation-recap strong { display:block;font-size:.72rem;color:#25727a;margin-bottom:8px; }
.orientation-links { display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 30px; }.orientation-links a { padding:12px 17px;border:1px solid #b7d3d7;color:#195d68; }
.orientation-incident { padding:18px;background:#fff3e2;color:#70470e; }.orientation-incident a { font-weight:700;text-decoration:underline; }
.training-request-hint { color:#126b73;font-size:.85rem;line-height:1.6; }
@media(min-width:801px) { .home-training-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:950px) {
 .situations-grid { gap:22px; }.training-detail-grid { gap:28px; }
 .experience-section--project-steps>.container { grid-template-columns:1fr;gap:20px; }
 .experience-invitation>.container { align-items:flex-start;flex-direction:column;gap:22px; }
 .experience-case { align-items:flex-start;flex-direction:column;gap:16px; }
}
@media(max-width:800px) {
 .site-experience :is(.experience-section,.experience-situations,.orientation-result) { scroll-margin-top:94px; }
 .overview-copy { padding-top:115px;padding-bottom:28px; }
 .home-hero--overview .pole-image { width:100%;height:400px;object-position:65% top; }
 .home-hero--overview .pole-slide::after { background:linear-gradient(180deg,#0c24310a,#0c2431c9 220px,#0c2431 410px); }
 .site-v2 .overview-copy h1 { font-size:2.7rem;max-width:17ch;margin:18px 0; }
 .site-v2 .overview-copy .eyebrow { font-size:.61rem;max-width:40ch;line-height:1.7; }
 .site-v2 .overview-lead { font-size:.96rem;line-height:1.7; }
 .overview-copy .hero-actions { gap:18px; }.overview-copy .hero-actions .button { min-height:48px; }
 .overview-access { grid-template-columns:1fr; }
 .overview-access>a,.overview-access>a:first-child { padding:17px 0;gap:15px; }
 .overview-access>a+a { border-left:0;border-top:1px solid #ffffff25; }
 .overview-access strong { font-size:.9rem; }.overview-access small { font-size:.73rem; }.overview-access .icon { width:22px;height:22px; }
 .home-hero--overview .pole-navigation { min-height:54px;flex-wrap:nowrap;justify-content:space-between; }.home-hero--overview .pole-controls { margin:0; }
 .experience-page .hero { padding:32px 0; }.experience-page .hero-grid { gap:26px; }
 .site-v2 .experience-page .hero h1 { font-size:2.3rem;max-width:none; }
 .experience-page .hero-image { height:210px;border-radius:2px 32px 2px 2px; }
 .experience-page .hero-panel { padding-top:6px; }.experience-page .hero-panel ul { margin-top:10px; }
 .experience-page .hero-panel li { padding:4px 0;font-size:.72rem; }
 .experience-breadcrumb { font-size:.7rem;padding-top:10px;padding-bottom:10px; }
 .experience-summary { gap:0 20px;padding-top:10px;padding-bottom:10px; }.experience-summary>span { width:100%;margin-bottom:4px; }.experience-summary a { font-size:.78rem; }
 .experience-situations,.experience-section { padding:42px 0; }.experience-heading { margin-bottom:24px; }.experience-heading>p:not(.eyebrow) { font-size:.96rem; }
 .situations-grid { grid-template-columns:1fr;gap:26px; }.situation { padding-top:18px; }.site-v2 .situation h3 { margin:12px 0 10px; }.situation>p { margin-bottom:10px; }
 .training-detail-grid { grid-template-columns:1fr;gap:25px; }.training-facts { padding:24px 0 0;border-left:0;border-top:1px solid #bfd7d9; }.training-practice { padding:24px; }
 .experience-case { padding:26px;margin-bottom:35px; }.experience-case .button { width:100%;text-align:center; }
 .case-directory { grid-template-columns:1fr;gap:20px; }.case-directory>a { padding:25px; }
 .orientation-form,.orientation-result { padding:25px 20px;scroll-margin-top:94px; }.orientation-form legend { font-size:1.12rem; }.orientation-options { grid-template-columns:1fr;gap:10px; }.orientation-options label { padding:14px;min-height:50px;font-size:.92rem; }
 .orientation-recap { grid-template-columns:1fr; }.orientation-controls .button { flex:1;min-height:48px;font-size:.83rem; }.orientation-result>.button { width:100%;text-align:center; }
 .experience-invitation { padding:40px 0; }.site-v2 .experience-invitation h2 { font-size:1.9rem; }
 .project-timeline>li { gap:16px; }.project-timeline h3 { font-size:1.15rem; }
}
@media(max-width:480px) { .site-v2 .overview-copy h1 { font-size:2.35rem; } }
@media(max-width:380px) { .site-v2 .overview-copy h1 { font-size:2.2rem; }.overview-copy .hero-actions { align-items:flex-start;flex-direction:column; } }
@media(prefers-reduced-motion:reduce) { .overview-copy>*,.overview-access,.home-hero--overview .pole-slides { animation:none!important; }.overview-access>a { transition:none; } }
