/* V11.6 — stable homepage; editorial pages and compact interaction refinements. */
.nav-dropdown a,.resource-filter,.resource-item,.role-row{touch-action:manipulation}
html[data-app-ready] .nav-item[data-open=false]>.nav-dropdown{pointer-events:none;visibility:hidden;max-height:0;opacity:0}
html[data-app-ready] .nav-item[data-open=true]>.nav-dropdown{visibility:visible;pointer-events:auto}
html[data-app-ready] .compat-nav-check{display:none!important}
/* Native radio fallback: only one dropdown can be selected. */
.native-menu-close{padding:8px 20px;text-align:right;font-size:12px;cursor:pointer;color:#5e768a}
html:not([data-app-ready]) .nav-item:has(.compat-nav-check:checked):not(:focus-within)>.nav-dropdown{max-height:0!important;visibility:hidden!important;opacity:0;pointer-events:none}
html:not([data-app-ready]) .nav-item:has(.compat-nav-check:checked):focus-within>.nav-dropdown{visibility:visible!important;pointer-events:auto}
html:not([data-app-ready]) .nav-item:has(.nav-toggle:focus)>.nav-dropdown{visibility:visible}
/* Our Story: year + title + fuller copy at left, a smaller photograph at right. */
#history-page .story-journey{display:flex;flex-direction:column;gap:0;list-style:none;padding:0;margin:0}
#history-page .journey-stage,#history-page .journey-stage:nth-child(5){display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,29%);grid-template-rows:auto auto;gap:0 64px;align-items:center;padding:31px 0 33px;border-top:1px solid #cad8e2;grid-column:auto;grid-row:auto}
#history-page .journey-marker{grid-column:1;grid-row:1;border:0;padding:0;margin:0 0 12px;justify-content:flex-start}
#history-page .journey-number{display:none}
#history-page .journey-year{font-size:28px;line-height:1.15}
#history-page .journey-copy,#history-page .journey-stage:nth-child(5) .journey-copy{grid-column:1;grid-row:2;padding:0;align-self:start}
#history-page .journey-copy h2{font-size:23px;line-height:1.35;margin:0 0 11px}
#history-page .journey-copy p{font-size:15px;line-height:1.65;max-width:46em}
#history-page .journey-stage .media-slot{grid-column:2;grid-row:1/3;aspect-ratio:8/5!important;width:100%;align-self:center}
#history-page .story-intro{padding-top:57px;padding-bottom:34px}
#history-page .story-intro .story-deck{font-size:20px;line-height:1.5}
/* Image-led careers page, aligned to the same content rails as the homepage. */
.careers-banner.hero{padding:0;background:none}
.careers-banner .hero-media{aspect-ratio:21/9}
#careers-page .editorial-hero{padding:54px 0 28px;background:#fff}
#careers-page .editorial-hero h1{font-size:38px;line-height:1.28;margin:0 0 18px}
#careers-page .editorial-intro{margin:0;max-width:760px;font-size:17px;line-height:1.65}
#careers-page .careers-body{padding-top:10px;padding-bottom:78px}
.role-list{gap:20px 36px}
.role-row,.role-row:last-child{border-bottom:0!important;padding:22px 21px 24px;gap:14px}
.role-row h3{font-size:21px;line-height:1.35}
.role-row p{line-height:1.6}
.role-dates{font-family:var(--font-en),var(--font);display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:#5e7180;line-height:1.5}
.role-row[aria-expanded=true] .role-dates,.role-row:active .role-dates{color:#e4eff9}
.jobs-empty{padding:26px 0;font-size:14px;color:#5e7180}
#info-dialog.job-review{width:min(820px,calc(100vw - 48px))}
#info-dialog.job-review .dialog-body{padding:28px 36px 36px}
.job-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 22px;padding:0 0 22px;margin:0 0 25px;border-bottom:1px solid #dce4ea}
.job-meta p{font-size:12px!important;line-height:1.5!important}
.job-meta strong{font-weight:500;color:#60778a;display:block;font-size:11px;margin-bottom:4px}
.job-intro{font-size:15px!important;line-height:1.7!important;margin-bottom:23px}
#info-dialog.job-review h3{font-size:17px;margin-top:25px;margin-bottom:12px}
#info-dialog.job-review ul{padding-left:18px;color:#303d49;font-size:14px;line-height:1.7}
#info-dialog.job-review li+li{margin-top:7px}
.job-apply-row{border-top:1px solid #dce4ea;margin-top:30px;padding-top:24px;margin-bottom:10px}
#info-dialog.job-review .sub-button,.compat-job .sub-button{min-height:42px;min-width:0;width:204px;max-width:100%;padding:11px 16px;font-size:13px;line-height:1.4;justify-content:space-between;box-sizing:border-box}
#career-form-slot{margin-top:22px}
#career-interest-form .form-grid{gap:12px 18px}
#career-interest-form input,#career-interest-form textarea{font-size:14px;line-height:1.5}
#career-interest-form .form-grid label{margin-bottom:8px}
#career-interest-form button[type=submit]{margin-top:22px}
.career-privacy{font-size:12px!important;line-height:1.5!important;margin:14px 0}
.job-preparation{font-size:13px!important;line-height:1.65!important;color:#4f606e}
/* Policy title and consistent navigation glyph. Body wording retained. */
.policy-page .editorial-hero{padding-block:40px 34px}
.policy-page .editorial-hero h1{font-size:36px;margin:0}
.policy-tab .arrow{width:15px!important;height:15px!important;flex:0 0 15px;align-self:center}
/* Resource center stays a light modal, not another full content page. */
#info-dialog.resource-review{width:min(900px,calc(100vw - 48px))}
#info-dialog.resource-review .dialog-body{padding:24px 30px 30px}
.resource-filters{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:21px;border-bottom:1px solid #dce4ea;margin-bottom:0}
.resource-filter{padding:8px 16px;min-height:38px;background:#eef3f7;color:#29445b;font-size:13px;transition:background .22s,color .22s;border:0}
.resource-filter[aria-pressed=true]{background:var(--blue);color:#fff}
.resource-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;border-bottom:1px solid #e0e6ec;padding:18px 0}
.resource-item h3{font-size:16px!important;line-height:1.4;margin:0 0 7px!important;color:var(--ink)!important}
.resource-item p{font-size:12px!important;line-height:1.5!important;color:#637484}
.resource-actions{display:flex;align-items:center;gap:15px;flex-shrink:0}
.resource-download{width:40px;height:40px;display:grid;place-items:center;background:var(--blue);color:#fff;transition:background .2s}
.resource-download svg{width:18px;height:18px}
.resource-pending{font-size:12px;color:#6a7e8e;min-width:48px;text-align:right}
.resource-upload{cursor:pointer;display:inline-flex;font-size:12px;color:var(--link);padding:7px 0}
.resource-open{font-size:12px;color:var(--link)}
.resource-note{font-size:12px!important;line-height:1.6!important;color:#6b7c89;margin:20px 0 0}
#info-dialog.resource-review .review-notice{margin-top:20px}
@media(hover:hover) and (pointer:fine){.resource-filter:not([aria-pressed=true]):hover{background:var(--hover-tint,#e6f0f9)}.resource-download:hover{background:var(--blue-dark)}.role-row:hover{background:var(--hover-tint,#e6f0f9)}}
/* More compact forms; retain comfortable touch controls. */
#inquiry-dialog .dialog-head{padding:22px 28px 17px}
#inquiry-dialog .dialog-body{padding:20px 28px 26px}
#inquiry-form label{margin-bottom:11px;font-size:13px;line-height:1.45}
#inquiry-form label>span{margin-bottom:5px;display:inline-block}
#inquiry-form input:not([type=radio]):not([type=file]),#inquiry-form select{min-height:42px;padding:10px 12px;font-size:14px;line-height:1.4}
#inquiry-form textarea{padding:10px 12px;font-size:14px;line-height:1.5;min-height:82px}
#inquiry-form .form-grid{gap:12px 18px}
#inquiry-form .contact-note{font-size:11px;margin:0 0 12px;line-height:1.45}
#inquiry-form .form-types{margin-bottom:18px}
#inquiry-form .form-privacy{font-size:11px;line-height:1.5;margin-bottom:14px}
/* Global contacts: keep country-to-country spacing; compact the details only. */
.presence-address p,.presence-address .entity-name{font-size:13px!important;line-height:1.5!important;margin:5px 0!important}
.presence-address h3{font-size:21px;margin-bottom:7px!important}
.provider-note{font-size:11px!important;line-height:1.55!important;color:#936f3c;background:#fcf6ea;padding:8px 10px;margin-top:12px}
.provider-source{font-size:11px;margin-top:9px;color:#607a90;line-height:1.6}
.provider-source a{color:var(--link);text-decoration:underline;text-underline-offset:2px}
.presence-pin .pin-dot{fill:#ec242b!important;stroke:#fff!important;stroke-width:2.2}
.presence-pin[data-active=true] .pin-halo{fill:#e8242b;fill-opacity:.24;animation:teconce-presence-pulse 1.7s ease-out infinite;transform-box:fill-box;transform-origin:center}
.compat-location p{font-size:13px;line-height:1.5;margin:5px 0}
html:not([data-app-ready]) #compat-locations .presence-pin .pin-dot{fill:#ec242b!important;stroke:#fff!important}
@keyframes teconce-presence-pulse{0%{opacity:.8;transform:scale(.62)}80%{opacity:.05;transform:scale(1.35)}100%{opacity:0;transform:scale(1.35)}}
/* Resource fallback remains a pop-up even where scripts are unavailable. */
html:not([data-app-ready]) #compat-resources:target{display:block!important;position:fixed;inset:0;z-index:1100;overflow:auto;background:#001b3e80;padding:38px 18px;scroll-margin:0}
.compat-resource-modal{position:relative;background:#fff;max-width:860px;margin:auto;padding:26px 30px 30px;box-shadow:0 22px 80px #001b3e40}
.compat-resource-modal h1{font-size:23px;line-height:1.35;color:var(--blue);margin:0 0 25px;padding-right:40px}
.compat-resource-close{position:absolute;right:24px;top:22px;width:30px;height:30px;color:var(--blue);display:grid;place-items:center;font-size:26px}
.compat-resource-modal .resource-filters label{cursor:pointer}
.compat-resource-modal input:checked+.resource-filter{background:var(--blue);color:#fff}
.compat-resource-modal:has([value=company]:checked) .resource-item:not([data-resource-category=company]),.compat-resource-modal:has([value=technical]:checked) .resource-item:not([data-resource-category=technical]),.compat-resource-modal:has([value=engineering]:checked) .resource-item:not([data-resource-category=engineering]){display:none}
@media(max-width:900px){
 #history-page .journey-stage,#history-page .journey-stage:nth-child(5){grid-template-columns:minmax(0,1fr) 29%;gap:0 32px}
 #history-page .journey-copy p{font-size:14px}
 .role-list{gap:18px 24px}
}
@media(max-width:620px){
 #history-page .journey-stage,#history-page .journey-stage:nth-child(5){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;padding:24px 0;gap:0}
 #history-page .journey-marker{grid-column:1;grid-row:1;margin-bottom:10px}
 #history-page .journey-year{font-size:25px}
 #history-page .journey-copy{grid-row:2!important;grid-column:1!important}
 #history-page .journey-copy h2{font-size:20px;line-height:1.35;margin-bottom:10px}
 #history-page .journey-copy p{font-size:14px;line-height:1.58}
 #history-page .journey-stage .media-slot{grid-column:1;grid-row:3;aspect-ratio:8/5!important;margin-top:19px;width:74%;justify-self:end}
 #history-page .story-intro{padding-block:32px 26px}
 #history-page .story-intro .story-deck{font-size:17px;line-height:1.5}
 .careers-banner .hero-media{aspect-ratio:16/10}
 #careers-page .editorial-hero{padding:31px 0 23px}
 #careers-page .editorial-hero h1{font-size:26px;margin-bottom:13px;line-height:1.32}
 #careers-page .editorial-intro{font-size:14px;line-height:1.6}
 #careers-page .careers-body{padding-top:0;padding-bottom:46px}
 .role-list{grid-template-columns:1fr;gap:7px}
 .role-row{padding:20px 16px 23px;gap:13px}
 .role-dates{font-size:10px;gap:8px 14px}
 .role-row h3{font-size:19px}
 #info-dialog.job-review{width:calc(100vw - 30px)}
 #info-dialog.job-review .dialog-body{padding:22px 23px 28px}
 .job-meta{gap:10px 16px;margin-bottom:19px;padding-bottom:18px}
 .job-meta p{font-size:11px!important}
 #info-dialog.job-review ul{font-size:13px;line-height:1.6}
 #info-dialog.job-review li+li{margin-top:7px}
 #info-dialog.job-review .sub-button,.compat-job .sub-button{width:190px;font-size:12px;min-height:42px}
 #career-interest-form .form-grid{grid-template-columns:1fr;gap:8px}
 .job-apply-row{margin-top:26px;padding-top:23px}
 .policy-page .editorial-hero{padding-block:29px 27px}
 .policy-page .editorial-hero h1{font-size:27px}
 #inquiry-dialog .dialog-head{padding:19px 21px 15px}
 #inquiry-dialog .dialog-body{padding:17px 21px 24px}
 #inquiry-form .form-grid{gap:8px}
 #inquiry-form label{margin-bottom:8px;font-size:12px;line-height:1.45}
 #inquiry-form textarea{min-height:76px}
 #inquiry-form .contact-note{font-size:10px;margin-bottom:10px}
 .presence-address p,.presence-address .entity-name,.compat-location p{font-size:12px!important;line-height:1.45!important;margin:4px 0!important}
 .presence-address h3{font-size:19px}
 #info-dialog.resource-review{width:calc(100vw - 28px)}
 #info-dialog.resource-review .dialog-body{padding:19px 20px 24px}
 .resource-filters{gap:6px;padding-bottom:17px}
 .resource-filter{font-size:12px;padding:7px 11px;min-height:36px}
 .resource-item{gap:12px;padding:17px 0}
 .resource-item h3{font-size:14px!important}
 .resource-item p{font-size:11px!important}
 .resource-actions{flex-direction:column;gap:6px;align-items:flex-end}
 .resource-note{font-size:11px!important}
 .compat-resource-modal{padding:23px 20px 25px}
 .compat-resource-modal h1{font-size:22px}
}
@media(prefers-reduced-motion:reduce){.presence-pin[data-active=true] .pin-halo{animation:none!important;opacity:.26!important;transform:none!important}}

#history-page .journey-stage::before,#history-page .journey-stage::after{content:none!important;display:none!important}
#careers-page{padding-bottom:0}
