/* EAIBSA visual redesign — image-led, authoritative and content-first. */
:root{
  --navy:#071d2d;
  --navy-2:#102f43;
  --orange:#ed6f1d;
  --orange-dark:#c95108;
  --paper:#f4f5f2;
  --mist:#e9eef0;
  --line:#d8dee1;
  --muted:#596772;
  --container:1240px;
}

body{font-size:16px;line-height:1.7;background:#fff}
body::before{display:none}
h1,h2,h3{letter-spacing:-.04em}
h2{font-size:clamp(2.15rem,3.8vw,4rem)}
p{line-height:1.75}
.copy-minus-one{font-size:calc(1rem - 1px)}
.copy-lead-minus-one{font-size:calc(1.25rem - 1px)}
.section{padding:96px 0}
.kicker{display:flex;align-items:center;gap:10px;margin-bottom:17px;font-size:.68rem;letter-spacing:.2em}
.kicker::before{content:"";width:24px;height:2px;background:currentColor;flex:0 0 24px}
.button{padding:15px 21px;color:#fff;background:var(--orange);box-shadow:0 10px 25px rgba(201,81,8,.18)}
.button:hover{background:var(--orange-dark)}
.button-light{color:var(--navy);background:#fff;box-shadow:none}

/* Header */
.site-header{position:sticky;top:0;box-shadow:0 8px 30px rgba(7,29,45,.07)}
.utility-bar{background:#061722}
.utility-inner{min-height:34px}
.utility-inner>span,.utility-inner a{font-size:inherit;font-weight:400}
.utility-inner>span{letter-spacing:normal}
.utility-contact{align-items:center}
.utility-socials{display:flex;align-items:center;gap:6px!important;margin-left:3px;padding-left:10px;border-left:1px solid rgba(255,255,255,.22)}
.utility-socials a{width:23px;height:23px;display:grid;place-items:center;color:#dce7ed;text-decoration:none;border:1px solid rgba(255,255,255,.18);transition:color .2s ease,background .2s ease,border-color .2s ease}
.utility-socials a:hover,.utility-socials a:focus-visible{color:#fff;background:var(--orange);border-color:var(--orange)}
.utility-socials i{font-size:.84rem;line-height:1}
.header-inner{height:124px}
.brand img{width:auto;height:112px;max-width:387px;object-fit:contain}
.brand--animated{position:relative;display:inline-block;isolation:isolate;line-height:0}
.brand--animated img{position:relative;z-index:1;display:block}
.brand--animated::before,.brand--animated::after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;-webkit-mask:url("../images/eaibsa-logo-mark.png") left center/contain no-repeat;mask:url("../images/eaibsa-logo-mark.png") left center/contain no-repeat}
.brand--animated::before{background:linear-gradient(135deg,#ffb36f 0%,var(--orange) 48%,#ff7a1a 100%);opacity:.08;filter:drop-shadow(0 0 6px rgba(237,111,29,.8)) drop-shadow(0 0 17px rgba(237,111,29,.42));transform-origin:50% 50%;animation:eaibsa-brand-mark-pulse 4.6s ease-in-out infinite}
.brand--animated::after{background:linear-gradient(105deg,transparent 15%,rgba(255,255,255,.2) 32%,#fff 47%,rgba(255,177,112,.82) 57%,transparent 75%);background-size:250% 100%;background-position:165% 0;opacity:0;animation:eaibsa-brand-mark-sweep 4.6s ease-in-out infinite}
.brand--animated:hover::before,.brand--animated:hover::after{animation-duration:2.3s}
@keyframes eaibsa-brand-mark-pulse{0%,100%{opacity:.1;transform:scale(1)}50%{opacity:.58;transform:scale(1.035)}}
@keyframes eaibsa-brand-mark-sweep{0%{background-position:165% 0;opacity:0}5%{opacity:.92}27%{background-position:-95% 0;opacity:.24}34%,100%{background-position:-95% 0;opacity:0}}
/* Keep the requested logo animation active for every browser motion preference. */
.primary-nav{gap:34px}
.primary-nav>a{font-size:.76rem;text-transform:uppercase;letter-spacing:.055em}
.primary-nav .nav-cta{padding:17px 20px;background:var(--orange);color:#fff}
.primary-nav .nav-cta:hover{background:var(--orange-dark)}

/* Home hero: retain the established two-column layout, reduce heading size. */
.hero{min-height:655px;background:var(--navy);overflow:visible}
.hero-image{background-position:center center}
.hero::before{z-index:1;background:linear-gradient(90deg,rgba(3,16,25,.94) 0%,rgba(6,28,43,.84) 42%,rgba(7,29,45,.30) 73%,rgba(7,29,45,.18) 100%)}
.hero::after{z-index:3;height:6px;width:27%}
.hero-grid{z-index:2}
.hero-inner{z-index:3;grid-template-columns:minmax(0,1.45fr) .55fr;padding-top:72px;padding-bottom:72px;align-items:center}
.hero-copy h1{font-size:clamp(2.4rem,4vw,4rem);max-width:760px;margin-bottom:24px}
.hero-copy>p:not(.kicker){font-size:1.06rem;max-width:640px}
.hero-standard{background:rgba(7,29,45,.68);border-left:4px solid var(--orange);padding:25px 24px;margin-bottom:0;backdrop-filter:blur(5px)}
.hero-standard strong{font-size:2.15rem}
.hero-slider{display:block;min-height:0;overflow:visible}
.hero-slider::before,.hero-slider::after{display:none}
.hero-stage{position:relative;min-height:655px;overflow:hidden;background:var(--navy)}
.hero-stage::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,16,25,.94) 0%,rgba(6,28,43,.84) 42%,rgba(7,29,45,.30) 73%,rgba(7,29,45,.18) 100%);pointer-events:none}
.hero-stage::after{content:"";position:absolute;left:0;bottom:0;z-index:3;width:27%;height:6px;background:var(--orange)}
.hero-slide{position:absolute;inset:0;display:flex;align-items:stretch;opacity:0;visibility:hidden;transition:opacity .9s cubic-bezier(.22,.61,.36,1),visibility .9s ease}
.hero-slide.is-active{opacity:1;visibility:visible}
.hero-slide .hero-image{transform:scale(1.01);transition:transform 10s cubic-bezier(.2,.55,.35,1);will-change:transform}
.hero-slide.is-active .hero-image{transform:scale(1.065)}
.hero-slide .hero-copy>*{opacity:0;transform:translateY(20px);transition:opacity .62s ease,transform .62s cubic-bezier(.22,.61,.36,1)}
.hero-slide.is-active .hero-copy>*{opacity:1;transform:translateY(0)}
.hero-slide.is-active .hero-copy .kicker{transition-delay:.12s}
.hero-slide.is-active .hero-copy h1{transition-delay:.20s}
.hero-slide.is-active .hero-copy>p:not(.kicker){transition-delay:.29s}
.hero-slide.is-active .hero-copy .button-row{transition-delay:.38s}
.hero-slide .hero-standard{opacity:0;transform:translateX(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,.61,.36,1)}
.hero-slide.is-active .hero-standard{opacity:1;transform:translateX(0);transition-delay:.30s}
.hero-slide .hero-inner{width:min(calc(100% - 40px),var(--container));height:100%;padding-top:72px;padding-bottom:72px}
.hero-controls{position:absolute;left:auto;right:max(24px,calc((100vw - var(--container))/2));top:28px;bottom:auto;z-index:6;transform:none;width:auto;margin:0;display:flex;justify-content:flex-end;align-items:center;gap:10px;pointer-events:none}
.hero-controls>button,.hero-dots button{pointer-events:auto;border:1px solid rgba(255,255,255,.42);background:rgba(7,29,45,.72);color:#fff;cursor:pointer}
.hero-controls>button{width:42px;height:42px;display:grid;place-items:center;font-size:1.1rem}
.hero-dots{display:flex;align-items:center;gap:7px}
.hero-dots button{width:9px;height:9px;padding:0;border-radius:50%;background:rgba(255,255,255,.45)}
.hero-dots button.is-active{background:var(--orange);border-color:var(--orange);transform:scale(1.2)}
.hero-controls button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.hero-progress{position:absolute;left:0;right:0;bottom:-10px;height:3px;overflow:hidden;background:rgba(255,255,255,.22)}
.hero-progress>span{display:block;width:100%;height:100%;background:var(--orange);transform:scaleX(0);transform-origin:left center}
.hero-slider.is-progressing .hero-progress>span{animation:heroProgress 10s linear forwards}
.hero-slider.is-paused .hero-progress>span{animation-play-state:paused}
@keyframes heroProgress{to{transform:scaleX(1)}}
.credential-strip{z-index:4;margin-top:-34px;margin-bottom:0;box-shadow:0 18px 45px rgba(7,29,45,.16);align-items:stretch}
.credential-strip span{padding:21px 25px;min-height:72px;display:flex;align-items:center}

/* Shared interior hero */
.page-hero{min-height:350px;background-color:var(--navy);background-image:linear-gradient(90deg,rgba(3,16,25,.94) 0%,rgba(7,29,45,.82) 48%,rgba(7,29,45,.34) 100%),var(--page-hero-image);background-position:center;background-size:cover}
.page-hero::after{height:6px;width:22%}
.page-hero-grid{display:none}
.page-hero-inner{min-height:350px;padding-top:68px;padding-bottom:61px;grid-template-columns:1fr 170px}
.page-hero-inner>div:first-child{max-width:760px}
.page-hero h1{font-size:clamp(2.45rem,4vw,4rem);margin-bottom:16px}
.page-hero p:not(.kicker){max-width:620px;font-size:1rem;color:#d9e3e8}
.hero-breadcrumbs{margin:0 0 19px;color:#d4dee4;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.hero-breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none}
.hero-breadcrumbs li{display:flex;align-items:center;gap:5px;min-width:0}
.hero-breadcrumbs a{color:#d4dee4;text-decoration:none;transition:color .2s ease}
.hero-breadcrumbs a:hover,.hero-breadcrumbs a:focus-visible{color:var(--orange)}
.hero-breadcrumbs [aria-current="page"]{color:#fff}
.hero-breadcrumbs i{color:var(--orange);font-size:.95rem}
.page-index{background:rgba(7,29,45,.68);border-left:3px solid var(--orange);padding:21px 22px;backdrop-filter:blur(4px)}
.page-index span{font-size:3.15rem}

/* Editorial content rhythm */
.intro-section{padding-top:126px}
.split-intro{grid-template-columns:.86fr 1.14fr;gap:105px}
.split-intro>div:last-child{padding-top:33px}
.split-intro h2{max-width:590px}
.home-role-intro{display:block}
.home-role-heading{width:100%;max-width:none}
.home-role-heading h2{width:100%;max-width:none;margin-bottom:42px;font-size:38px!important}
.home-role-copy{width:100%;max-width:none}
.home-role-copy p{margin-bottom:20px;font-size:15px}
.home-role-copy .lead{font-size:17px}
.home-role-copy .text-link{margin-top:14px}
.home-role-visual{position:relative;margin:42px 0 0;overflow:hidden;background:var(--navy);aspect-ratio:16/10}
.home-role-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:44% center}
.home-role-visual figcaption{position:absolute;left:0;bottom:0;margin:0;padding:14px 20px;background:var(--orange);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.legacy-intro{border:0;background:var(--paper);padding:78px 0}
.legacy-intro .split-intro{grid-template-columns:.92fr 1.08fr;gap:70px;align-items:start}
.legacy-intro .split-intro>div:last-child{padding-top:0}
.legacy-intro-heading{padding-right:56px;border-right:1px solid #ced5d7}
.legacy-intro-summary{max-width:470px;font-size:1.15rem;line-height:1.55;color:var(--muted);margin:0}
.legacy-intro-copy .lead{font-size:17px;color:var(--ink);font-weight:400}
.legacy-intro-copy p:last-child{margin-bottom:0}
.accreditation-marks{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:34px}
.accreditation-marks figure{margin:0;min-height:118px;padding:15px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-direction:column}
.accreditation-marks img{display:block;width:auto;max-width:175px;max-height:68px;object-fit:contain}
.accreditation-marks figcaption{margin-top:12px;color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;text-align:center}
.section-heading{align-items:start;margin-bottom:47px}
.section-heading>p{padding-top:35px}

/* Assurance cards */
.mandate-section{background:#fff}
.mandate-grid{border:0;gap:18px;background:transparent}
.mandate-grid article{min-height:315px;border:1px solid var(--line);border-top:4px solid var(--orange);padding:34px;background:#fff;box-shadow:0 16px 34px rgba(7,29,45,.05)}
.mandate-grid article:last-child{border:1px solid var(--line);border-top:4px solid var(--orange)}
.mandate-grid h3{font-size:2rem;margin:75px 0 15px}
.purpose-section{padding-top:96px}
.purpose-grid{gap:20px}
.purpose-grid>article{border:1px solid var(--line);border-top:4px solid var(--orange);background:#fff;box-shadow:0 13px 32px rgba(7,29,45,.04);display:flex;flex-direction:column}
.purpose-grid .check-list li{font-size:calc(1rem - 1px)}

/* Pathways and scope */
.pathways{background:var(--paper)}
.pathway-grid{gap:18px}
.pathway-grid a{min-height:355px;padding:31px;border-top-width:4px;overflow:hidden;position:relative;background-size:cover;background-position:center;isolation:isolate}
.pathway-grid a:nth-child(1){background-image:linear-gradient(rgba(7,29,45,.90),rgba(7,29,45,.90)),url('../images/eaibsa-pathway-contractors.png')}
.pathway-grid a:nth-child(2){background-image:linear-gradient(rgba(16,47,67,.89),rgba(16,47,67,.89)),url('../images/eaibsa-pathway-electricians.png')}
.pathway-grid a:nth-child(3){background-image:linear-gradient(rgba(36,75,97,.88),rgba(36,75,97,.88)),url('../images/eaibsa-pathway-industry.png')}
.pathway-grid a>*{position:relative;z-index:1}
.pathway-grid a::after{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-45px;bottom:-45px}
.pathway-grid a:hover{background-size:106%;background-color:inherit}
.pathway-grid h3{font-size:30px;margin:52px 0 17px}
.scope-preview{background:#061d2d}
.scope-copy{padding-top:87px;padding-bottom:87px}
.accreditation-band{background:#071D2D}
.accreditation-inner{grid-template-columns:minmax(0,1fr) 230px;gap:90px}
.accreditation-inner>div{max-width:850px}

/* Photography-led service grids */
.service-overview{background:#fff}
.service-overview-grid{grid-template-columns:repeat(4,1fr);gap:18px;border:0;background:transparent}
.service-overview-grid article{padding:0;min-height:0;border:1px solid var(--line);display:flex;flex-direction:column;background:#fff;overflow:hidden;transition:transform .25s,box-shadow .25s}
.service-overview-grid article:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(7,29,45,.12)}
.service-card-media,.showcase-media{position:relative;height:190px;background-size:cover;background-position:center;overflow:hidden}
.service-card-media::after,.showcase-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,29,45,.02),rgba(7,29,45,.76))}
.service-card-media i,.showcase-media i{position:absolute;z-index:2;right:20px;bottom:18px;width:48px;height:48px;display:grid;place-items:center;background:var(--orange);color:#fff;font-size:1.5rem}
.service-card-body{padding:24px 24px 28px;flex:1}
.service-card-body>span{font-size:.68rem;font-weight:800;letter-spacing:.15em;color:var(--orange)}
.service-overview-grid h3{margin:23px 0 12px;font-size:1.2rem}
.service-overview-grid p{font-size:.88rem;margin-bottom:0}
.media-services{background-image:url('../images/eaibsa-services-inspection.png')}
.media-about{background-image:url('../images/eaibsa-about-inspection.png')}
.media-industry{background-image:url('../images/eaibsa-industry-inspection.png')}
.media-hero{background-image:url('../images/eaibsa-hero-inspection.png')}
.media-hazloc{background-image:url('../images/eaibsa-hazloc-ex-inspection-v2.png')}
.media-hv-lv{background-image:url('../images/eaibsa-hv-lv-inspection-female.png')}
.media-reporting{background-image:url('../images/eaibsa-reporting-certification-female.png')}

.services-showcase{padding-top:80px;background:var(--paper)}
.service-showcase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-showcase-grid article{background:#fff;border:1px solid var(--line);box-shadow:0 14px 34px rgba(7,29,45,.04);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.service-showcase-grid article:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(7,29,45,.12)}
.service-showcase-grid article>div:last-child{padding:27px;display:flex;flex:1;flex-direction:column;align-items:flex-start}
.service-showcase-grid .showcase-media{height:220px}
.showcase-media>span{position:absolute;z-index:2;left:20px;top:17px;color:#fff;font:800 .68rem Manrope,sans-serif;letter-spacing:.14em}
.service-showcase-grid h3{font-size:1.6rem;margin:0 0 13px}
.service-showcase-grid p:not(.kicker){font-size:.9rem}
.service-showcase-grid a{display:inline-flex;align-items:center;gap:8px;color:var(--navy);font-size:.78rem;font-weight:800;text-decoration:none;border-bottom:1px solid var(--navy)}
.service-showcase-grid a.service-scope-cta,.blog-card a.blog-read-cta{margin-top:auto;padding:15px 21px;gap:8px;font-size:.78rem;color:#fff;background:#071D2D;border:0;box-shadow:0 10px 25px rgba(7,29,45,.18)}
.service-showcase-grid a.service-scope-cta:hover,.blog-card a.blog-read-cta:hover{color:#fff;background:var(--orange);box-shadow:0 10px 25px rgba(201,81,8,.18)}
.service-showcase-grid .kicker{margin-bottom:12px}

/* Process */
.process-section{background:var(--paper)}
.process-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center;margin-bottom:67px}
.process-feature>div:first-child{padding-right:20px}
.process-image{min-height:370px;background-image:linear-gradient(90deg,rgba(7,29,45,.2),rgba(7,29,45,.03)),url('../images/eaibsa-industry-inspection.png');background-size:cover;background-position:center;position:relative}
.process-image::after{content:"ISO / IEC 17020";position:absolute;left:0;bottom:0;padding:15px 20px;background:var(--orange);color:#fff;font:800 .7rem Manrope,sans-serif;letter-spacing:.13em}
.process-line{position:relative;grid-template-columns:repeat(4,minmax(0,1fr));border-top:0;gap:22px}
.process-line li,.deliverable-grid article{position:relative;isolation:isolate;min-height:276px;padding:0;overflow:visible;border:1px solid #d6dde1;border-top:0;background:#fff;box-shadow:0 16px 38px rgba(7,29,45,.07);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.process-line li::before,.deliverable-grid article::before{display:block;content:"";position:absolute;z-index:1;inset:0 0 auto;height:5px;width:auto;background:linear-gradient(90deg,var(--orange) 0 34%,var(--navy) 34% 100%)}
.process-line li:not(:last-child)::after,.deliverable-grid article:not(:last-child)::after{content:"\2192";position:absolute;z-index:4;top:46px;right:-29px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;box-shadow:0 0 0 6px var(--paper);font:700 1.05rem/1 Manrope,sans-serif}
.process-line li:hover,.deliverable-grid article:hover{transform:translateY(-7px);border-color:#c7d1d6;box-shadow:0 25px 58px rgba(7,29,45,.14)}
.process-step-head{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:31px 28px 0}
.process-step-head span{width:48px;height:48px;display:grid;place-items:center;background:#fff0e5;color:var(--orange);font:800 .72rem/1 Manrope,sans-serif;letter-spacing:.08em}
.process-step-head i{width:52px;height:52px;display:grid;place-items:center;background:var(--navy);color:var(--orange);font-size:1.55rem}
.process-step-body{position:relative;z-index:2;padding:28px 28px 32px}
.process-line h3,.deliverable-grid h3{margin:0 0 13px;font-size:1.35rem}
.process-line p,.deliverable-grid p{margin:0;font-size:.92rem;line-height:1.72}

/* About */
.story-band{padding-top:0;padding-bottom:0}
.story-grid{grid-template-columns:1.05fr .95fr}
.story-image{min-height:610px;background-position:center}
.story-copy{display:flex;flex-direction:column;justify-content:center;padding:82px clamp(38px,6vw,100px);border-left:6px solid var(--orange)}
.story-copy blockquote{font-size:45px}
.management-system{position:relative;overflow:hidden;background:#071d2c;color:#fff}
.management-system::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(237,111,29,.08),transparent 42%),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:auto,80px 80px,80px 80px;pointer-events:none}
.management-system .container{position:relative}
.management-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:50px;align-items:end;margin-bottom:54px}
.management-heading h2{max-width:720px;margin:0;color:#fff}
.standard-seal{min-width:220px;padding:22px 25px;border-left:4px solid var(--orange);background:rgba(255,255,255,.07);display:grid;grid-template-columns:auto 1fr;column-gap:13px;align-items:center}
.standard-seal i{grid-row:1/3;color:var(--orange);font-size:2rem}
.standard-seal span{font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#aebdc6}
.standard-seal strong{font:800 1.12rem Manrope,sans-serif;color:#fff}
.management-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:22px;align-items:stretch}
.management-overview{padding:42px;background:linear-gradient(145deg,#12384f,#0b2a3d);border-top:4px solid var(--orange);display:flex;flex-direction:column}
.management-lead{font:700 1.35rem/1.55 Manrope,sans-serif;color:#fff}
.management-overview>p:not(.kicker):not(.management-lead){color:#c6d2d8}
.assurance-points{display:grid;gap:12px;margin-top:auto;padding-top:30px}
.assurance-points span{display:flex;align-items:center;gap:11px;padding:14px 16px;background:rgba(255,255,255,.07);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.assurance-points i{color:var(--orange);font-size:1.15rem}
.policy-panel{padding:36px;background:#f4f5f2;color:var(--navy)}
.policy-intro{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:start;margin-bottom:26px}
.policy-intro p:last-child{margin:0}
.policy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#d9dfe1;border:1px solid #d9dfe1}
.policy-grid article{position:relative;min-height:235px;padding:30px;background:#fff}
.policy-grid article>span{font:800 .68rem Manrope,sans-serif;letter-spacing:.12em;color:var(--orange)}
.policy-grid article>i{position:absolute;right:26px;top:25px;color:#d6dde0;font-size:2rem}
.policy-grid h3{margin:37px 0 11px;font-size:1.25rem}
.policy-grid p{margin:0;font-size:.88rem}

/* Updated About page */
.about-authority-intro{background:#fff}
.about-authority-intro .lead{font-size:17px}
.authority-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:65px;background:var(--line);border:1px solid var(--line)}
.authority-strip span{min-height:105px;padding:26px 30px;display:flex;align-items:center;gap:16px;background:var(--paper);font:800 .8rem Manrope,sans-serif;text-transform:uppercase;letter-spacing:.07em;color:var(--navy)}
.authority-strip i{width:44px;height:44px;display:grid;place-items:center;background:var(--navy);color:var(--orange);font-size:1.35rem}
.accreditation-profile{position:relative;overflow:hidden;background:#071d2d;color:#fff}
.accreditation-profile::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(237,111,29,.09),transparent 40%),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:auto,76px 76px,76px 76px}
.accreditation-profile .container{position:relative}
.accreditation-heading{margin-bottom:45px}
.accreditation-profile-intro{display:grid;grid-template-columns:1fr 280px;gap:70px;align-items:end;padding:0 0 42px}
.accreditation-profile-intro>p:first-child{max-width:860px;margin:0;color:#cbd8df;font-size:1.03rem;line-height:1.8}
.accreditation-profile-intro .kicker{margin:0;text-align:right}
.accreditation-benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#d2dadd;border:1px solid #d2dadd}
.accreditation-benefits article{position:relative;min-height:270px;padding:34px 36px;background:#fff;color:var(--navy)}
.accreditation-benefits article>span{font:800 .68rem Manrope,sans-serif;letter-spacing:.13em;color:var(--orange)}
.accreditation-benefits article>i{position:absolute;right:32px;top:29px;color:#ced8dd;font-size:2rem}
.accreditation-benefits h3{margin:45px 0 14px;font-size:1.45rem}
.accreditation-benefits p{margin:0;font-size:.94rem;line-height:1.75}
.accreditation-closing{display:grid;grid-template-columns:70px 1fr;gap:26px;align-items:start;margin-top:28px;padding:32px 38px;background:#133a51;border-left:5px solid var(--orange)}
.accreditation-closing i{color:var(--orange);font-size:2.7rem}
.accreditation-closing p{max-width:960px;margin:0;color:#fff;font:700 1.18rem/1.65 Manrope,sans-serif}
.disclaimer-section{background:var(--paper)}
.disclaimer-panel{display:grid;grid-template-columns:.42fr 1fr;gap:70px;padding:55px;background:#fff;border-top:5px solid var(--orange);box-shadow:0 18px 42px rgba(7,29,45,.08)}
.disclaimer-heading{display:flex;align-items:flex-start;gap:22px}
.disclaimer-heading>span{width:62px;height:62px;flex:0 0 62px;display:grid;place-items:center;background:var(--navy);color:var(--orange);font-size:1.8rem}
.disclaimer-heading h2{margin:0}
.disclaimer-copy{padding-left:52px;border-left:1px solid var(--line)}
.disclaimer-copy p{font-size:.94rem;line-height:1.8}
.disclaimer-copy p:last-child{margin-bottom:0}

/* Services and detailed content */
.service-resources{padding:0;background:var(--paper)}
.service-resources .container{border:0;background:transparent;gap:12px;padding-bottom:78px}
.service-resources a{border:1px solid var(--line);background:#fff;transition:transform .2s,box-shadow .2s}
.service-resources a:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(7,29,45,.08);background:#fff}
.services-intro .lead{font-size:17px}
.contractors-intro .lead{font-size:17px}
.electricians-intro .lead{font-size:17px}
.services-intro .service-resources{margin-top:58px;background:transparent}
.service-resources-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.service-groups{padding-top:82px}
.service-group{grid-template-columns:65px .82fr 1.18fr;gap:52px;padding:61px 0}
.service-group .check-list li{font-size:calc(1rem - 1px)}
.service-intro h2{font-size:2.45rem}
.service-intro>p:not(.kicker){font-size:calc(1rem - 1px)}
.standards-panel{background-image:linear-gradient(90deg,rgba(7,29,45,.96),rgba(7,29,45,.80)),url('../images/eaibsa-services-inspection.png');background-size:cover;background-position:center}
.full-scope{scroll-margin-top:120px}
.content-accordion details{margin-bottom:10px;border:1px solid var(--line)}
.content-accordion{border:0}
.content-accordion summary{padding:23px 26px}
.content-accordion .detail-content p,.content-accordion .detail-content .check-list li{font-size:calc(1rem - 1px)}
.deliverables{background:var(--paper)}
.deliverable-grid{gap:22px}

/* Industry pages */
.role-framework,.role-cards{background:var(--paper)}
.role-grid{gap:20px}
.role-grid aside{position:relative;overflow:hidden;background-image:linear-gradient(180deg,rgba(7,29,45,.96),rgba(7,29,45,.92)),url('../images/eaibsa-industry-inspection.png');background-size:cover}
.responsibility-list{padding:25px 50px;background:#fff}
.responsibility-list p{font-size:calc(1rem - 1px)}
.emerging-points article,.role-cards article{background:#fff;border:1px solid var(--line);border-top:4px solid var(--orange);box-shadow:0 13px 30px rgba(7,29,45,.05)}
.emerging-points p{font-size:calc(1rem - 1px)}
.role-cards .container{gap:24px;align-items:stretch}
.role-cards article{padding:0;overflow:hidden}
.role-card-head{min-height:136px;padding:25px 30px;background:linear-gradient(135deg,#071d2d 0%,#12384f 100%);align-items:center;position:relative;isolation:isolate}
.role-card-head::before{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-62px;top:-90px;z-index:-1}
.role-card-head::after{content:"";position:absolute;width:92px;height:92px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:44px;bottom:-57px;z-index:-1}
.role-index{display:flex;flex-direction:column;color:#fff}
.role-index small{font-size:.64rem;line-height:1;text-transform:uppercase;letter-spacing:.17em;color:#9db4c2;font-weight:800}
.role-index strong{font:800 2.25rem/1 Manrope,sans-serif;color:#fff;margin-top:11px}
.role-emblem{width:72px;height:72px;display:grid;place-items:center;background:var(--orange);clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%);filter:drop-shadow(0 8px 16px rgba(0,0,0,.2))}
.role-card-head .role-emblem i{font-size:2.15rem;color:#fff}
.role-card-body{padding:34px 34px 38px}
.role-cards h3{font-size:30px;margin:0 0 20px}
.role-cards .check-list li{font-size:calc(1rem - 1px)}
.role-card-body>h3+p{font-size:calc(1rem - 1px)}
.role-card-body>p:last-child{margin-bottom:0}
.contractor-inspection{padding:76px 0;background:#f4f5f2}
.contractor-inspection-panel{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);box-shadow:0 20px 48px rgba(7,29,45,.11)}
.contractor-inspection-feature{display:flex;flex-direction:column;justify-content:center;min-height:440px;padding:52px;background:linear-gradient(145deg,rgba(7,29,45,.97),rgba(16,53,75,.95)),url('../images/eaibsa-industry-inspection.png') center/cover;color:#fff;position:relative;overflow:hidden;isolation:isolate}
.contractor-inspection-feature::after{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-105px;bottom:-115px;z-index:-1}
.contractor-inspection h3{font-size:30px;margin:0 0 24px;color:#fff}
.contractor-inspection-feature>p:not(.kicker){margin:0;color:#d8e5eb;font-size:1.08rem;line-height:1.75}
.contractor-assurance{display:flex;align-items:center;gap:10px;margin-top:34px;padding-top:24px;border-top:1px solid rgba(255,255,255,.18);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.contractor-assurance i{color:var(--orange);font-size:1.15rem}
.contractor-inspection-points{display:grid;grid-template-rows:repeat(2,1fr);background:#fff}
.contractor-inspection-points article{display:grid;grid-template-columns:58px minmax(0,1fr);gap:24px;align-items:start;padding:42px 46px;border-bottom:1px solid var(--line)}
.contractor-inspection-points article:last-child{border-bottom:0}
.contractor-point-icon{width:54px;height:54px;display:grid;place-items:center;background:#071d2d;color:var(--orange)}
.contractor-point-icon i{font-size:1.45rem}
.contractor-inspection-points small{display:block;margin-bottom:7px;color:var(--orange);font-size:.68rem;font-weight:800;letter-spacing:.13em}
.contractor-inspection-points h4{margin:0 0 10px;font:700 1.12rem/1.25 Manrope,Inter,sans-serif;color:var(--navy)}
.contractor-inspection-points p{margin:0;color:var(--muted);font-size:15px;line-height:1.72}
.independence-panel{background-image:linear-gradient(90deg,rgba(7,29,45,.96),rgba(7,29,45,.76)),url('../images/eaibsa-industry-inspection.png');background-size:cover;background-position:center}
.flow-row span{border:1px solid var(--line);border-top:3px solid var(--orange);background:#fff;box-shadow:0 8px 20px rgba(7,29,45,.04)}

/* Contact */
.contact-section{background:var(--paper)}
.contact-layout{grid-template-columns:.96fr 1.04fr;gap:56px;align-items:stretch}
.contact-details{display:flex;min-width:0;flex-direction:column}
.contact-details>.lead{max-width:560px}
.contact-cards{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:16px;margin-top:28px}
.contact-cards article{min-height:132px;padding:20px;background:#fff;border:1px solid var(--line);display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:start}
.contact-icon{width:44px;height:44px;display:grid!important;place-items:center;margin:0!important;background:#fff5ed;border:1px solid #ffd8bd;color:var(--orange);text-transform:none!important;letter-spacing:normal!important}
.contact-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-cards article>div>span{color:var(--orange);font-weight:800}
.contact-cards a{font-size:.94rem;overflow-wrap:break-word}
.contact-cards a[href^="tel:"]{font-size:15px}
.contact-cards a[href^="mailto:"]{font-size:15px}
.contact-cards address,.contact-cards .contact-hours{font-size:15px}
.contact-map{flex:1;min-height:350px;margin-top:22px;background:#071d2d;border-top:5px solid var(--orange);box-shadow:0 18px 42px rgba(7,29,45,.13);display:flex;flex-direction:column;overflow:hidden}
.contact-map-bar{min-height:82px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#fff;background:linear-gradient(110deg,#071d2d,#123b53)}
.contact-map-place{display:flex;align-items:center;gap:13px;min-width:0}
.contact-map-mark{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;color:var(--orange);border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.07)}
.contact-map-mark svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-map-place span:not(.contact-map-mark){display:block;margin-bottom:3px;color:#ff9b4d;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em}
.contact-map-place strong{display:block;font:700 .96rem/1.3 Manrope,sans-serif;white-space:nowrap}
.contact-map-bar>a{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;color:#fff;text-decoration:none;font-size:.72rem;font-weight:800;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:3px}
.contact-map-bar>a i{color:#ff9b4d;font-size:1rem}
.contact-map iframe{display:block;width:100%;height:100%;min-height:265px;flex:1;border:0;filter:grayscale(.18) sepia(.08) saturate(.78) contrast(1.06)}
.enquiry-form{height:100%;padding:44px;background:#fff;border-top:5px solid var(--orange);box-shadow:0 22px 50px rgba(7,29,45,.10)}
.form-heading h2{font-size:2.25rem}
.form-grid input,.form-grid textarea,.form-grid select{background:var(--paper);border-color:#d6dcde}
.download-band{background:#163f57}

/* FAQs */
.faq-section{background:var(--paper)}
.faq-intro{margin-bottom:62px;padding-bottom:55px;border-bottom:1px solid #ced6d9}
.faq-intro .lead{font-size:17px}
.faq-intro>div:last-child p:last-child{margin-bottom:0;font-size:.94rem}
.faq-layout{display:block}
.faq-list{display:grid;gap:14px}
.faq-item{background:#fff;border:1px solid #d3dbde;border-top:4px solid transparent;box-shadow:0 10px 28px rgba(7,29,45,.045);transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}
.faq-item[open]{border-top-color:var(--orange);box-shadow:0 18px 42px rgba(7,29,45,.09);transform:translateY(-2px)}
.faq-item summary{display:grid;grid-template-columns:58px minmax(0,1fr) 46px;gap:20px;align-items:center;min-height:104px;padding:22px 26px;cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-number{width:46px;height:46px;display:grid;place-items:center;background:#fff0e5;color:var(--orange);font:800 .7rem/1 Manrope,sans-serif;letter-spacing:.08em}
.faq-question{font:700 1.22rem/1.35 Manrope,sans-serif;color:var(--navy);letter-spacing:-.02em}
.faq-toggle{width:42px;height:42px;display:grid;place-items:center;background:var(--navy);color:var(--orange);font-size:1.35rem;transition:background .2s ease,color .2s ease}
.faq-item[open] .faq-toggle{background:var(--orange);color:#fff}
.faq-item[open] .faq-toggle i{transform:rotate(45deg)}
.faq-toggle i{transition:transform .25s ease}
.faq-answer{margin:0 26px 0 104px;padding:0 0 29px;border-top:1px solid #e0e5e7}
.faq-answer p{max-width:780px;margin:0;padding-top:22px;color:#53636e;font-size:.96rem;line-height:1.78}

/* Footer */
.site-footer{padding-top:0;font-size:17px}
.logo-panel{background:transparent;padding:0}
.logo-panel img{width:236px}
.footer-lead{padding-bottom:61px}
.footer-lead h2{font-size:clamp(2.15rem,3.6vw,3.8rem)}
.footer-grid{padding:60px 0}
.footer-grid h3{font-size:calc(.8rem + 1px)}
.footer-grid a,.footer-grid address{font-size:calc(.86rem + 1px)}
.footer-contact a,.footer-contact address{display:flex;align-items:flex-start;gap:10px}
.footer-contact i{flex:0 0 18px;margin-top:4px;color:var(--orange);font-size:1.05rem;line-height:1}
.footer-brand p{font-size:15px}
.footer-bottom{font-size:calc(.72rem + 1px)}
.footer-bottom .footer-technology{display:flex;align-items:center;justify-content:flex-end;gap:6px}
.footer-technology a{display:inline-flex;align-items:center;gap:7px;color:#e4edf2;text-decoration:none;font-weight:700;transition:color .2s ease}
.footer-technology a:hover{color:#fff}
.footer-technology img{width:18px;height:18px;border-radius:4px}

.back-to-top{position:fixed;right:28px;bottom:28px;z-index:95;width:48px;height:48px;display:grid;place-items:center;padding:0;overflow:hidden;border:0;border-radius:50%;background:var(--orange);color:#fff;box-shadow:0 14px 34px rgba(0,0,0,.3),0 0 0 1px rgba(255,255,255,.08);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(14px) scale(.92);transition:opacity .25s ease,visibility .25s ease,transform .25s ease,background .2s ease,box-shadow .2s ease}
.back-to-top.visible{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.back-to-top:hover{background:var(--orange-dark);box-shadow:0 16px 38px rgba(0,0,0,.36),0 0 24px rgba(237,111,29,.28)}
.back-to-top:focus-visible{outline:2px solid #fff;outline-offset:3px}
.back-to-top-bolt{position:relative;z-index:1;display:block;width:18px;height:18px}
.back-to-top-progress{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.back-to-top-progress circle{fill:none;stroke-width:1.5}
.back-to-top-track{stroke:rgba(255,255,255,.22)}
.back-to-top-value{stroke:#fff;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .1s linear}

/* Requested heading scale: all H2s are 40px; page heroes and Home slider headings are 50px. */
h2{font-size:40px!important}
.hero-copy h1{font-size:50px!important}
.page-hero h1{font-size:50px!important}

@media(max-width:1050px){
  .primary-nav{gap:22px}
  .service-overview-grid{grid-template-columns:repeat(2,1fr)}
  .service-showcase-grid{grid-template-columns:repeat(2,1fr)}
  .hero-inner{grid-template-columns:1fr}
  .mandate-grid,.pathway-grid{grid-template-columns:1fr}
  .contact-cards{grid-template-columns:1fr}
  .process-line,.deliverable-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .process-line li:not(:last-child)::after,.deliverable-grid article:not(:last-child)::after{display:none}
}

@media(max-width:820px){
  .section{padding:74px 0}
  .story-band{padding-top:0;padding-bottom:0}
  .site-header{position:relative}
  .header-inner{height:108px}
  .primary-nav{top:142px}
  .hero-slider{min-height:0}
  .hero-stage{min-height:680px}
  .hero::before{background:linear-gradient(90deg,rgba(3,16,25,.93),rgba(7,29,45,.67))}
  .hero-inner{padding-top:85px}
  .brand img{height:93px;max-width:334px}
  .hero-copy h1,.page-hero h1{font-size:48px!important}
  .hero-slide .hero-inner{padding-top:76px;padding-bottom:54px}
  .hero-controls{top:18px;right:20px}
  .credential-strip{margin-top:0;margin-bottom:0}
  .page-hero{min-height:320px;background-position:center}
  .page-hero-inner{min-height:320px;padding-top:58px;padding-bottom:52px;grid-template-columns:1fr}
  .page-index{display:none}
  .intro-section{padding-top:74px}
  .accreditation-inner{grid-template-columns:1fr;gap:32px}
  .accreditation-inner>a{grid-column:auto;justify-self:start}
  .split-intro,.story-grid,.commitment-grid,.management-layout,.standards-panel .container,.role-grid,.contact-layout,.independence-panel .container{grid-template-columns:1fr}
  .contractor-inspection-panel{grid-template-columns:1fr}
  .contractor-inspection-feature{min-height:0;padding:44px}
  .about-authority-intro .split-intro{gap:36px}
  .accreditation-profile-intro,.disclaimer-panel{grid-template-columns:1fr}
  .accreditation-profile-intro .kicker{text-align:left}
  .disclaimer-copy{padding-left:0;border-left:0}
  .split-intro>div:last-child{padding-top:0}
  .legacy-intro .split-intro{grid-template-columns:minmax(0,1fr);gap:38px}
  .legacy-intro-heading,.legacy-intro-copy{min-width:0}
  .legacy-intro-heading{padding-right:0;padding-bottom:38px;border-right:0;border-bottom:1px solid #ced5d7}
  .service-group{grid-template-columns:50px 1fr}
  .service-group .check-list{grid-column:2}
  .process-feature{grid-template-columns:1fr;gap:36px}
  .process-image{min-height:320px}
  .service-showcase-grid{grid-template-columns:1fr 1fr}
  .story-copy{border-left:0;border-top:5px solid var(--orange)}
  .service-resources-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .management-heading{grid-template-columns:1fr;align-items:start}
  .standard-seal{max-width:280px}
  .contact-layout{gap:50px}
  .contact-cards{grid-template-columns:1fr 1fr}
  .contact-details,.enquiry-form{height:auto}
  .contact-map{flex:none;height:380px}
}

@media(max-width:560px){
  .utility-email{display:none}
  .utility-contact{margin-left:auto;gap:9px!important}
  .utility-contact>.utility-socials{display:flex!important;gap:5px!important;padding-left:8px}
  .hero-slider{min-height:0}
  .hero-stage{min-height:700px}
  .hero-copy h1,.page-hero h1{font-size:40px!important}
  .hero-copy>p:not(.kicker){font-size:.98rem}
  .hero-image{background-position:62% center}
  .page-hero h1{font-size:2.45rem}
  .page-hero{background-position:62% center}
  .service-overview-grid,.service-showcase-grid{grid-template-columns:1fr}
  .role-card-head{min-height:122px;padding:22px 25px}
  .role-emblem{width:64px;height:64px}
  .role-card-body{padding:29px 25px 33px}
  .contractor-inspection{padding:54px 0}
  .contractor-inspection-feature{padding:34px 26px}
  .contractor-inspection-points article{grid-template-columns:46px minmax(0,1fr);gap:18px;padding:30px 24px}
  .contractor-point-icon{width:46px;height:46px}
  .service-group{display:block}
  .service-group .check-list{margin-top:25px}
  .service-card-media,.service-showcase-grid .showcase-media{height:210px}
  .process-image{min-height:255px}
  .process-line,.deliverable-grid{grid-template-columns:1fr;gap:16px}
  .process-line li,.deliverable-grid article{min-height:0}
  .process-step-head{padding:27px 24px 0}
  .process-step-body{padding:24px 24px 28px}
  .contact-cards{grid-template-columns:1fr}
  .enquiry-form{padding:29px 22px}
  .contact-map{height:auto;min-height:0}
  .contact-map-bar{align-items:flex-start;flex-direction:column}
  .contact-map-place strong{white-space:normal}
  .contact-map iframe{height:280px;min-height:280px;flex:none}
  .faq-intro{margin-bottom:42px;padding-bottom:38px}
  .faq-item summary{grid-template-columns:42px minmax(0,1fr) 38px;gap:13px;min-height:88px;padding:18px 16px}
  .faq-number{width:40px;height:40px}
  .faq-question{font-size:1rem}
  .faq-toggle{width:36px;height:36px}
  .faq-answer{margin:0 16px 0 71px;padding-bottom:23px}
  .faq-answer p{padding-top:18px;font-size:.9rem}
  .cta-band .container{align-items:flex-start;flex-direction:column}
  .story-image{min-height:390px}
  .service-resources-grid{grid-template-columns:1fr}
  .story-copy blockquote{font-size:36px}
  .management-overview,.policy-panel{padding:28px}
  .authority-strip,.accreditation-benefits{grid-template-columns:1fr}
  .authority-strip{margin-top:42px}
  .accreditation-benefits article{min-height:0;padding:29px 25px}
  .accreditation-closing{grid-template-columns:1fr;padding:28px 24px}
  .disclaimer-panel{gap:34px;padding:34px 24px}
  .policy-intro,.policy-grid{grid-template-columns:1fr}
  .policy-grid article{min-height:0}
  .legacy-intro{padding:58px 0}
  .legacy-intro .split-intro{gap:30px}
  .legacy-intro-heading{padding-bottom:30px}
  .legacy-intro-summary{font-size:1.05rem}
  .legacy-intro-copy .lead{font-size:17px;line-height:1.65}
  .accreditation-marks{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:27px}
  .accreditation-marks figure{min-height:108px;padding:10px 8px}
  .accreditation-marks img{max-width:100%;max-height:58px}
  .accreditation-marks figcaption{margin-top:9px;font-size:.55rem;letter-spacing:.08em}
  .hero-controls{top:14px;right:14px;bottom:auto;justify-content:center}
  .back-to-top{right:16px;bottom:16px;width:44px;height:44px}
  .footer-bottom .footer-technology{justify-content:flex-start;margin-top:10px}
}

@media(max-width:340px){
  .accreditation-marks{grid-template-columns:1fr}
  .accreditation-marks figure{min-height:112px}
}

/* Give longer page headings room for one line on desktop. */
@media(min-width:901px){
  .page-hero--wide-title .page-hero-inner{grid-template-columns:minmax(0,1fr) 120px;gap:32px}
  .page-hero--wide-title .page-hero-inner>div:first-child{max-width:none;min-width:0}
  .page-hero--wide-title h1{font-size:clamp(30px,4vw,50px)!important;white-space:nowrap}
}

/* Legal content shares the hero container edge, with readable text measures. */
@media(min-width:901px){
  .page-hero--privacy .page-hero-inner{grid-template-columns:minmax(0,1fr) 120px;gap:32px}
  .page-hero--privacy .page-hero-inner>div:first-child{max-width:none;min-width:0}
  .page-hero--privacy p:not(.kicker){max-width:none;font-size:clamp(14px,1.25vw,16px);white-space:nowrap}
}
.container.legal-content{max-width:var(--container)}
.legal-content article:first-child{padding-top:0}
.legal-content :is(p,ul){max-width:90ch;overflow-wrap:anywhere}
.legal-content p{font-size:15px}
.legal-content ul{margin:0 0 1rem;padding-left:1.5rem;color:var(--muted);line-height:1.75}
.legal-content li{margin-bottom:.45rem}
.legal-content h2{margin:0 0 1rem;font-size:30px;line-height:1.35;color:var(--navy)}
.legal-content h2.legal-subheading{margin:1.75rem 0 .75rem;font-size:30px;line-height:1.4;color:var(--navy)}
.legal-layout{--legal-header-height:160px;display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;align-items:start}
.legal-sidebar{position:sticky;top:calc(var(--legal-header-height) + 24px);max-height:calc(100vh - var(--legal-header-height) - 48px);overflow:auto;border:1px solid var(--line);border-top:3px solid var(--orange);background:#fff}
.legal-contents summary{padding:20px;font-size:15px;font-weight:700;color:var(--navy)}
.legal-contents nav{padding:0 12px 14px}
.legal-contents a{display:block;padding:9px 10px;border-left:2px solid transparent;color:var(--muted);font-size:13px;line-height:1.5;text-decoration:none;overflow-wrap:anywhere}
.legal-contents a:hover,.legal-contents a[aria-current="location"]{color:var(--navy);background:#f3f7f6;border-left-color:var(--orange)}
.legal-contents a:focus-visible,.legal-contents summary:focus-visible{outline:2px solid var(--orange);outline-offset:-2px}
.legal-sections{min-width:0}
.legal-sections article{scroll-margin-top:calc(var(--legal-header-height) + 24px)}
.legal-sections article:focus{outline:none}
.legal-sections article:focus-visible{outline:2px solid var(--orange);outline-offset:8px}
@media(min-width:901px){.legal-contents summary{list-style:none;pointer-events:none}.legal-contents summary::-webkit-details-marker{display:none}}
@media(max-width:900px){
  .legal-layout{grid-template-columns:minmax(0,1fr);gap:32px;--legal-header-height:0px}
  .legal-sidebar{position:static;max-height:none;overflow:visible}
  .legal-contents summary{cursor:pointer}
  .legal-contents nav{max-height:320px;overflow:auto}
  .legal-content h2{font-size:30px}
  .legal-content h2.legal-subheading{font-size:30px}
}

/* Contact details, CRM enquiry and map in reading order. */
.contact-layout--stacked{display:grid;grid-template-columns:minmax(0,1fr);gap:44px}
.contact-layout--stacked .contact-details{margin-bottom:20px}
.contact-layout--stacked .contact-intro-row{display:flex;align-items:center;justify-content:space-between;gap:40px}
.contact-layout--stacked .contact-title-row{display:flex;flex-direction:column;align-items:flex-start;flex:0 0 auto}
.contact-layout--stacked .contact-title-row h2{margin-bottom:20px}
.contact-layout--stacked .contact-intro-row>.lead{max-width:570px;margin:0}
.contact-layout--stacked .contact-cards{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:32px}
.contact-layout--stacked .contact-cards article{grid-template-columns:1fr;gap:16px;min-width:0}
.contact-layout--stacked .contact-cards a{overflow-wrap:anywhere}
.contact-layout--stacked .contact-crm-panel{height:auto;min-width:0;width:100%;max-width:800px;justify-self:center;padding:40px 20px 12px}
.contact-crm-frame{display:block;width:100%;height:1140px;border:0;background:#fff}
.contact-layout--stacked .contact-map{margin-top:0;height:640px;min-height:0}
.contact-layout--stacked .contact-map iframe{height:100%;min-height:0}
@media(max-width:1050px){.contact-layout--stacked .contact-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-layout--stacked .contact-intro-row{align-items:flex-start}.contact-layout--stacked .contact-intro-row>.lead{max-width:50%}}
@media(max-width:560px){.contact-layout--stacked{gap:32px}.contact-layout--stacked .contact-intro-row{flex-direction:column;gap:20px}.contact-layout--stacked .contact-intro-row>.lead{max-width:none}.contact-layout--stacked .contact-cards{grid-template-columns:1fr}.contact-layout--stacked .contact-cards article{grid-template-columns:48px minmax(0,1fr)}.contact-layout--stacked .contact-crm-panel{padding:26px 6px 12px}.contact-layout--stacked .contact-crm-panel .form-heading{padding:0 8px}.contact-layout--stacked .contact-map{height:auto}.contact-layout--stacked .contact-map iframe{height:420px;min-height:420px}}

@container(max-width:620px){.contact-crm-frame{height:1640px}}

/* Bespoke contact pictograms in the EAIBSA navy and orange palette. */
.contact-layout--stacked .contact-icon{width:64px;height:64px;background:transparent;border:0}
.contact-layout--stacked .contact-icon img{display:block;width:64px;height:64px}
.contact-layout--stacked .contact-cards article{border-top:3px solid var(--orange);padding:24px;gap:18px}
.contact-layout--stacked .contact-cards .contact-hours{white-space:pre-line;margin:0}
@media(max-width:560px){.contact-layout--stacked .contact-cards article{grid-template-columns:64px minmax(0,1fr);align-items:center}}

/* Align the local enquiry title with the CRM's centered 760px form. */
.contact-layout--stacked .contact-crm-panel{container-type:inline-size}
.contact-layout--stacked .contact-crm-panel .form-heading{width:100%;max-width:760px;margin-inline:auto;padding-inline:18px;box-sizing:border-box}
@container(max-width:620px){.contact-layout--stacked .contact-crm-panel .form-heading{padding-inline:14px}}

/* The remote form owns its header; crop only that non-interactive region. */
.contact-crm-viewport{--crm-header-crop:70px;overflow:hidden}
.contact-crm-viewport .contact-crm-frame{margin-top:calc(-1 * var(--crm-header-crop))}
@container(max-width:620px){.contact-crm-viewport{--crm-header-crop:66px}}
@container(max-width:359px){.contact-crm-viewport{--crm-header-crop:86px}}
