/* GorWay: keep the original RR shell but flatten the header into one clean row */
#headerwrapper, #headerwrapper.row { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; gap: 24px !important; height: 100px !important; box-sizing: border-box !important; padding: 0 24px !important; margin: 0 !important; }
#headerwrapper > #logo { display: flex !important; align-items: center !important; flex: 0 0 auto !important; width: auto !important; height: 64px !important; }
#headerwrapper > #top-left { display: flex !important; align-items: center !important; flex: 1 1 auto !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
#topnavigation, #fwMenu, .fwMenuwrapper, #section-Homepage-level1 { display: flex !important; align-items: center !important; justify-content: flex-end !important; gap: 0 !important; height: 64px !important; padding: 0 !important; margin: 0 !important; }
#section-Homepage-level1 { width: auto !important; max-width: none !important; }
/* Neutralise every legacy RR hover/opacity effect on the desktop nav */
body.megamenuhover, body.megamenuhover #topnavigation, body.megamenuhover .fwMenuwrapper { opacity: 1 !important; }
#topnavigation .fwMenuwrapper > ul li.do-opaque a, #topnavigation .fwMenuwrapper > ul li.do-opaque span, #topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive.selected.haschildren a, #topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive.selected.haschildren span, body.megamenuhover #topnavigation .fwMenuwrapper > ul li.do-opaque a, body.megamenuhover #topnavigation .fwMenuwrapper > ul li.do-opaque span, body.megamenuhover #topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive a, body.megamenuhover #topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive span { color: #0a1a3a !important; opacity: 1 !important; }
/* GorWay: kill the legacy dim on non-hovered siblings */ body.megamenuhover #topnavigation .fwMenuwrapper > ul li a, body.megamenuhover #topnavigation .fwMenuwrapper > ul li span, body.megamenuhover #topnavigation .fwMenuwrapper > ul li:not(.hoveractive) a, body.megamenuhover #topnavigation .fwMenuwrapper > ul li:not(.hoveractive) span { color: #0a1a3a !important; opacity: 1 !important; }
/* GorWay: RR adds padding-bottom:53px to inner span when .hoveractive, which makes the <li> taller and wraps the flex row */ #topnavigation .fwMenuwrapper > ul li.hoveractive > a > span, #topnavigation .fwMenuwrapper > ul li.hoveractive > span { padding-bottom: 0 !important; }
#section-Homepage-level1 > li, #section-Homepage-level1 > li > a { opacity: 1 !important; }
#section-Homepage-level1.do-opaque > li:not(.hoveractive), #header-wrapper.do-opaque > #top-left > * { opacity: 1 !important; }
#section-Homepage-level1.do-opaque, body.do-opaque, .fwMenuwrapper.do-opaque, #topnavigation.do-opaque, .do-opaque { background: transparent !important; }
#section-Homepage-level1 > li.hoveractive > a, #section-Homepage-level1 > li:hover > a, #section-Homepage-level1 > li.do-opaque > a { background: transparent !important; }
#section-Homepage-level1 > li > a { transition: color 120ms ease-in-out !important; }
#section-Homepage-level1 > li > a:hover { color: #0a7a8a !important; }
/* Top nav: keep exactly 6 items */
/* Force the original RR top header to span the full viewport width */
#header, #header.container-fluid, #header.MainWrapperInner { max-width: none !important; width: 100% !important; margin: 0 !important; padding: 0 24px !important; box-sizing: border-box !important; }
.padding-container, #headerwrapper, #headerwrapper.row, .white-overlay { max-width: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
#headerwrapper { padding: 0 24px !important; }
/* Show every top-level entry the CMS provides (the legacy extras are removed server-side) */
#section-Homepage-level1 > li { display: flex !important; align-items: center !important; height: 64px !important; margin: 0 14px !important; padding: 0 !important; float: none !important; }
#section-Homepage-level1 > li > a { display: inline-flex !important; align-items: center !important; height: 64px !important; padding: 0 !important; font-size: 15px !important; line-height: 1 !important; background: transparent !important; box-shadow: none !important; }
#section-Homepage-level1 > li > a:hover { color: #0a7a8a !important; }
/* Disable mega-menu hover panels and the legacy mobile-menu widget */
#section-Homepage-level1 > li > ul, #section-Homepage-level1 > li.hoveractive > ul, #section-Homepage-level1 > li.haschildren > ul, #topnavigation .mega-menu, #topnavigation .sub-menu, .mm-panel, .mm-list, .mm-menu, #mob-menu-wrap, #mm-0, .mob-menu-wrap { display: none !important; visibility: hidden !important; height: 0 !important; opacity: 0 !important; pointer-events: none !important; }
.show-ul-outer, .show-ul, .show-menu, .header-outer .show-ul-outer, .header-outer .show-ul, .header-outer .show-menu, ul[id$="-level2"], [class*="show-ul"], [class*="hero-promo"] { display: none !important; visibility: hidden !important; height: 0 !important; opacity: 0 !important; pointer-events: none !important; }
/* Logo: tight, horizontal, no subtitle */
.logo-inner, .Nav-logo { width: auto !important; max-width: 240px !important; height: auto !important; line-height: 0 !important; padding: 18px 0 0 0 !important; }
.logo-inner img, .Nav-logo img { width: 118px !important; max-width: 240px !important; height: 120px !important; display: block !important; }
/* GorWay: original RR logo-inner has 30px padding pushing the img right of the div */ .logo-inner, .Nav-logo, .col-md-1.logo, .col-xs-8.logo, #logo .logo-inner { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; }
#logo { padding: 0 !important; margin: 0 !important; line-height: 0 !important; }
/* Hide duplicate or RR-specific nav */
#nav-innovation-level1, #new-secondnav-nav-innovation-level1, #nav-about-level1, #new-secondnav-nav-about-level1 { display: none !important; }
/* Force Contact nav to show */
#nav-contact-us-level1, #new-secondnav-nav-contact-us-level1 { display: list-item !important; visibility: visible !important; }
#new-secondnav-nav-contact-us-level1 { display: inline-block !important; }
/* Suppress Rolls-Royce-era chrome */
.share-ticker-container, #ExternalWebContentExternalIFrameHeadTicker, iframe[title="Share Price Ticker"] { display: none !important; }
#headerlinks, .ce-lg-switcher-mobi-main { display: none !important; }
.goog-te-banner-frame, .skiptranslate, .goog-te-gadget, #google_translate_element, .goog-tooltip, .goog-tooltip:hover { display: none !important; visibility: hidden !important; height: 0 !important; }
iframe[id^="goog"], iframe[name="googleTranslateElement"], iframe[src*="translate.google"] { display: none !important; height: 0 !important; }
html, body { top: 0 !important; }
/* Footer hub CTA copy swap */
a[href="/cases/capital-markets-day"] { font-size: 0; }
a[href="/cases/capital-markets-day"]::after { content: "OPEN RESOURCE HUB"; font-size: 14px; letter-spacing: 1.5px; color: #ffffff; font-weight: 600; }
/* Footer link column (now driven by 页脚栏目 in the admin) */
.fw-box3 { display: flex !important; flex-wrap: wrap !important; gap: 24px 32px !important; align-items: flex-start !important; width: auto !important; float: none !important; }
.fw-box3 .ftr-col { min-width: 130px; flex: 0 1 auto; }
.fw-box3 .ftr-ttl { display: block !important; font-size: 13px; letter-spacing: 1.2px; text-transform: uppercase; margin: 0 0 10px; opacity: .85; }
.fw-box3 ul { display: block !important; }
.gw-ftr-addr, .gw-ftr-hours { font-size: 13px; opacity: .8; margin: 2px 0; }
/* Resource hub CTA */
a[href="/cases/capital-markets-day"].module-cta-link { font-size: 14px !important; }
/* GorWay: align CMS Jinja pages (cases/contact/products) nav with the RR-mirror home page style */
.site-header { background: #ffffff !important; color: #0a1a3a !important; padding: 0 !important; border-bottom: 1px solid #e6ebef !important; box-shadow: 0 1px 3px rgba(10,26,58,.06) !important; position: relative !important; z-index: 10 !important; }
.site-header .container.header-inner { max-width: none !important; width: 100% !important; margin: 0 !important; padding: 0 24px !important; height: 100px !important; display: flex !important; flex-direction: row !important; justify-content: space-between !important; align-items: center !important; gap: 24px !important; box-sizing: border-box !important; }
.site-header .brand { display: flex !important; align-items: center !important; flex: 0 0 auto !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
.site-header .brand img { width: 118px !important; max-width: 118px !important; height: 120px !important; display: block !important; }
.site-header .brand .brand-text { display: none !important; }
nav.primary-nav { display: flex !important; align-items: center !important; justify-content: flex-end !important; gap: 0 !important; height: 64px !important; padding: 0 !important; margin: 0 !important; flex: 1 1 auto !important; }
nav.primary-nav a { color: #0a1a3a !important; font-size: 15px !important; line-height: 1 !important; padding: 0 14px !important; margin: 0 !important; height: 64px !important; display: inline-flex !important; align-items: center !important; background: transparent !important; border-radius: 0 !important; font-weight: 400 !important; transition: color 120ms ease-in-out !important; box-shadow: none !important; }
nav.primary-nav a:hover, nav.primary-nav a.active, nav.primary-nav a[aria-current="page"] { color: #0a7a8a !important; background: transparent !important; }
.site-header .lang-switch { display: none !important; }
a[href="/cases/capital-markets-day"]::after { content: none !important; }
#topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive > a,
#topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive > span,
#topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive.selected.haschildren > a,
#topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive.selected.haschildren > span,
body.megamenuhover #topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive > a,
body.megamenuhover #topnavigation .fwMenuwrapper > ul li.do-opaque.hoveractive > span,
#section-Homepage-level1.do-opaque > li.hoveractive > a,
#section-Homepage-level1 > li.hoveractive > a,
#section-Homepage-level1 > li:hover > a { color: #0a7a8a !important; opacity: 1 !important; }
body.megamenuhover #logo, body.megamenuhover #logo img, body.megamenuhover #logo svg, body.megamenuhover .Nav-logo, body.megamenuhover .logo-inner, body.megamenuhover #top-left, body.megamenuhover #headerwrapper, body.megamenuhover #header, body.megamenuhover .padding-container { opacity: 1 !important; filter: none !important; }
body.megamenuhover #headerwrapper::before, body.megamenuhover #headerwrapper::after, body.megamenuhover #top-left::before, body.megamenuhover #top-left::after { content: none !important; display: none !important; opacity: 0 !important; }
.hover-dim, .hover-fade, .hover-overlay, .nav-overlay, .megamenu-overlay, .fade-overlay, [class*="hover-dim"], [class*="fade-overlay"], [class*="hover-overlay"], [class*="nav-fade"], [class*="nav-overlay"], [class*="dim"], [class*="overlay"][class*="header"] { display: none !important; visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
/* CMS-injected content sections (admin -> 页面版块) */
.gw-cms-section { padding: 56px 0; background: #fff; }
.gw-cms-section:nth-of-type(even) { background: #f6f8fa; }
.gw-cms-section .container { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.gw-cms-section h2 { font-size: 30px; line-height: 1.25; margin: 0 0 12px; color: #0a1a3a; font-weight: 600; }
.gw-cms-section-lead { font-size: 16px; line-height: 1.7; color: #48566b; max-width: 780px; margin: 0 0 28px; }
.gw-cms-section-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; }
.gw-cms-section-card { display: block; background: #fff; border: 1px solid #e6ebef; border-radius: 6px; padding: 22px; text-decoration: none; color: #0a1a3a; transition: box-shadow .15s ease, transform .15s ease; }
.gw-cms-section-card:hover { box-shadow: 0 6px 20px rgba(10,26,58,.08); transform: translateY(-2px); text-decoration: none; }
.gw-cms-section-card-img { display: block; height: 150px; border-radius: 4px; background-size: cover; background-position: center; margin-bottom: 14px; background-color: #eef2f5; }
.gw-cms-section-card-tag { display: inline-block; font-size: 11px; letter-spacing: 1.4px; color: #0a7a8a; font-weight: 700; margin-bottom: 6px; }
.gw-cms-section-card h3 { font-size: 17px; margin: 0 0 8px; color: #0a1a3a; }
.gw-cms-section-card p { font-size: 14px; line-height: 1.65; color: #5a6a80; margin: 0; }
.gw-cms-section-cta { margin: 28px 0 0; }
/* Page hero heading: a real <h1> styled like the banner headline */
.full-width-banner-content .gw-hero-title { font-size: 3.125rem; line-height: 1.08; margin: 0 0 20px; padding: 0; font-weight: 500; color: inherit; }
.full-width-banner-content .gw-hero-subtitle { font-size: 18px; line-height: 1.55; font-weight: 400; max-width: 620px; margin: 0 0 24px; color: inherit; }
@media (max-width: 767px) { .full-width-banner-content .gw-hero-title { font-size: 2rem; } }
/* Breadcrumbs */
.gw-breadcrumbs { background: #f6f8fa; border-bottom: 1px solid #e6ebef; font-size: 13px; }
.gw-breadcrumbs .container { max-width: 1180px; margin: 0 auto; padding: 10px 24px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.gw-breadcrumbs a { color: #0a7a8a; text-decoration: none; }
.gw-breadcrumbs a:hover { text-decoration: underline; }
.gw-crumb-sep { color: #9aa7b6; }
.gw-crumb-current { color: #5a6a80; }
/* Visible breadcrumb strip carries the mirror page background */
.gw-breadcrumbs + * { margin-top: 0 !important; }
