/* ============================================================
   Lead Gen X — national-services UI v3 (from client designs)
   Wider modern layout: 1440px container, larger type scale,
   hover/transition system, nav dropdowns, uniform header/footer.
   Palette variables are per-site swappable.
   ============================================================ */
:root{
  --orange:#F35B1E;
  --orange-2:#F26522;
  --orange-dark:#D94F15;
  --dark:#1E2023;      /* header / footer / dark bands */
  --black:#121415;     /* panels, headings, chips */
  --grey-band:#F0F0F0; /* light section bg */
  --body:#63666B;      /* body text */
  --line:#E5E5E5;
  --white:#fff;
  --site-max:1600px;
  --content-max:1360px;
  --font-head:'Manrope',sans-serif;
  --font-body:'Inter',sans-serif;
  --ease:cubic-bezier(.25,.6,.3,1);
}

/* ============================================================
   V4 editorial refinement
   More space, calmer typography and purpose-built landing pages.
   ============================================================ */
:root{
  --font-display:'Barlow Semi Condensed',sans-serif;
  --section-space:128px;
}
.lgx-client-site main p,
.lgx-client-site main li{font-size:16px!important;line-height:1.82}
.section-note,
.page-context,
.hero-note,
.form-context{
  display:block;
  margin:0 0 16px;
  font-family:var(--font-head);
  font-size:16px!important;
  line-height:1.45;
  font-weight:700;
  letter-spacing:0;
  text-transform:none;
  color:var(--orange);
}
.section-note.on-dark{color:#d7dadd}
.section-note.center{text-align:center}
.text-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-family:var(--font-head);
  font-size:15px;
  font-weight:800;
  color:var(--black);
}
.text-link span{color:var(--orange);transition:transform .25s var(--ease)}
.text-link:hover{color:var(--orange)}
.text-link:hover span{transform:translate(3px,-3px)}

/* Header and hero sit in the document flow; no section overlap. */
.home-page .h-topbar-in{height:56px}
.home-page .h-main{
  position:relative!important;
  top:auto!important;
  left:auto;
  right:auto;
  height:124px;
  background:var(--dark);
}
.home-page .h-logo-sq{width:124px;height:124px}
.home-page .h-logo-sq img{width:72px;height:72px}
.home-page .mainnav2{margin-left:40px}
.home-page .mainnav2>li>a{
  padding-left:24px;
  padding-right:24px;
  font-size:14px;
}
.home-page .h-cta-block{padding-left:44px;padding-right:44px}
.home-page .h-burger{width:108px}
.home-page .h-burger i:nth-child(2),
.home-page .h-burger:hover i:nth-child(2){margin-right:39px}

.home-page .hero{min-height:920px}
.home-page .hero-in{
  min-height:920px;
  padding:92px 52px;
  grid-template-columns:minmax(0,1fr) 560px;
  gap:92px;
}
.home-page .hero-copy{max-width:900px}
.home-page .hero-note{
  display:inline-flex;
  width:auto;
  padding:11px 18px;
  margin-bottom:24px;
  color:#fff;
  background:var(--orange);
}
.home-page .hero h1{
  max-width:820px;
  margin-bottom:26px;
  font-family:var(--font-display);
  font-size:clamp(64px,4.6vw,88px);
  line-height:.98;
  font-weight:600;
  letter-spacing:-1.4px;
  text-transform:none;
}
.home-page .hero p:not(.hero-note){max-width:720px;font-size:18px!important;line-height:1.8}
.home-page .hero .shade{background:linear-gradient(90deg,rgba(5,12,16,.78),rgba(5,12,16,.43) 58%,rgba(5,12,16,.17))}

/* A larger, more legible form with real labels. */
.heroform{
  max-width:560px;
  padding:38px 40px 40px;
  border-top-width:6px;
  box-shadow:0 32px 80px rgba(0,0,0,.28);
}
.heroform .lead-panel-head{padding-bottom:22px;margin-bottom:24px}
.heroform .lead-panel-head h3{font-size:32px;line-height:1.16}
.heroform .lead-panel-head p:last-child{font-size:15px!important;line-height:1.6}
.heroform .form-context{margin-bottom:7px;font-size:14px!important}
.heroform .form-grid{gap:14px 16px}
.heroform .form-grid label>span{
  position:static;
  width:auto;
  height:auto;
  overflow:visible;
  clip:auto;
  display:block;
  margin:0 0 7px;
  font-size:14px;
  line-height:1.35;
  font-weight:700;
  color:#34373b;
}
.heroform input,
.heroform textarea,
.heroform select{
  height:54px;
  padding:13px 15px;
  font-size:14px!important;
  border-color:#cfd2d4;
  background:#fff;
}
.heroform textarea{height:92px}
.heroform .form-consent{margin:16px 0;font-size:14px!important}
.heroform .btn .t,
.heroform .btn .sq{min-height:58px}

/* One consistent full-width rhythm across the home page. */
.home-page .svcband{
  margin-top:0;
  background:var(--grey-band);
}
.home-page .svcband-grid{
  min-height:650px;
  max-width:var(--site-max);
  grid-template-columns:minmax(0,1fr) 390px 390px;
}
.home-page .svc-left{padding:76px 58px 72px 40px}
.home-page .svc-left-head{margin-bottom:48px}
.home-page .svc-left-head h2{font-size:42px;line-height:1.18}
.home-page .svc-card .imw{height:260px}
.home-page .svc-card h3{font-size:25px}
.home-page .svc-card p,
.home-page .aboutpanel>p,
.home-page .whypanel>p,
.home-page .checks li{font-size:16px!important}
.home-page .aboutpanel{padding:72px 44px}
.home-page .aboutpanel h2{font-size:34px}
.home-page .whypanel{padding:70px 42px}
.home-page .projband,
.home-page .buildband{margin-top:0}
.home-page .projband .copy{padding-top:132px;padding-bottom:132px}
.home-page .projband .copy p,
.home-page .proj-card p,
.home-page .proj-card li,
.home-page .gcard>p,
.home-page .stat-dark p{font-size:16px!important}
.home-page .protest{padding:var(--section-space) 0}
.home-page .gcard{padding-top:78px;padding-bottom:78px}
.home-page .stat-orange{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:16px;
  padding:54px;
}
.home-page .stat-orange strong{
  font-family:var(--font-display);
  font-size:38px;
  line-height:1.05;
  color:#fff;
}
.home-page .stat-orange span{
  font-size:16px;
  line-height:1.65;
  color:rgba(255,255,255,.88);
}
.home-page .lgx-buildband-copy{padding-top:100px;padding-bottom:100px}
.home-page .sec{padding:var(--section-space) 0}
.home-page .sec-head-c{margin-bottom:72px}
.home-page .sec-head-c h2,
.home-page .sec-head-l h2{font-size:48px;line-height:1.16}
.home-page .proc-grid{
  gap:0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.home-page .proccard{
  min-height:260px;
  padding:48px 40px;
  background:#fff;
  border:0;
  border-right:1px solid var(--line);
}
.home-page .proccard:last-child{border-right:0}
.home-page .proccard h3{margin-top:0;font-size:25px}
.home-page .proccard p{font-size:16px!important}
.home-page .lgx-method-steps li{padding:17px 0;border-top:1px solid var(--line)}
.home-page .lgx-method-steps li::before{display:none}
.home-page .lgx-method-steps b{font-size:16px}
.home-page .lgx-method-steps span{font-size:15px;line-height:1.65}
.home-page .lgx-advice-image::after{display:none}
.home-page .offercard .pad{padding:30px}

/* Inner header and conversion hero. */
.inner-page .hdr-top{min-height:140px;padding-top:30px;padding-bottom:30px}
.inner-page .hdr-logo img{height:82px;max-width:390px}
.inner-page .hdr-nav-row{min-height:90px}
.inner-page .mainnav>li>a{padding-top:31px;padding-bottom:31px}
.inner-page .phero-inner{min-height:880px}
.inner-page .phero-copy{
  width:55%;
  padding-top:112px;
  padding-bottom:104px;
  padding-right:76px;
}
.inner-page .phero-copy h1{
  max-width:780px;
  font-family:var(--font-display);
  font-size:clamp(62px,4.6vw,88px);
  line-height:1;
  font-weight:600;
  letter-spacing:-1px;
}
.inner-page .phero-copy>p:not(.page-context){font-size:18px!important;line-height:1.75}
.inner-page .page-context{margin-bottom:20px;color:rgba(255,255,255,.9)}
.inner-page .phero-img.lgx-phero-form{
  width:45%;
  padding:60px 60px 60px 100px;
}
.inner-page .lgx-phero-form .heroform{max-width:560px}
.inner-page .crumbs{margin-top:14px}
.lgx-page-jump strong,
.lgx-page-jump a{padding-top:23px;padding-bottom:23px;font-size:15px}

/* Service landing page. */
.lgx-service-overview{padding:var(--section-space) 0;background:#fff}
.lgx-service-overview-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:92px;
  align-items:center;
}
.lgx-overview-copy h2{
  max-width:650px;
  margin-bottom:28px;
  font-size:50px;
  line-height:1.15;
}
.lgx-overview-copy>p{max-width:700px;font-size:18px!important}
.lgx-plain-points{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;margin-top:36px;border-top:1px solid var(--line)}
.lgx-plain-points p{position:relative;margin:0;padding:18px 0 18px 22px;border-bottom:1px solid var(--line);font-weight:600;color:var(--black)}
.lgx-plain-points p::before{content:"";position:absolute;left:0;top:27px;width:8px;height:8px;border-radius:50%;background:var(--orange)}
.lgx-overview-image{
  min-height:580px;
  position:relative;
  background-image:linear-gradient(0deg,rgba(5,12,16,.68),rgba(5,12,16,.06) 58%),var(--page-image,var(--hero-image));
  background-size:cover;
  background-position:center;
}
.lgx-overview-image>div{position:absolute;left:42px;right:42px;bottom:40px;color:#fff}
.lgx-overview-image span{display:block;margin-bottom:8px;font-size:15px;font-weight:700}
.lgx-overview-image strong{display:block;max-width:540px;font-family:var(--font-display);font-size:38px;line-height:1.08}

.lgx-service-detail{padding:var(--section-space) 0;background:#f8f8f7}
.lgx-service-content-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) 430px;
  gap:96px;
  align-items:start;
}
.service-article{max-width:920px}
.service-article>p:first-child{
  margin-bottom:26px;
  font-size:20px!important;
  line-height:1.75;
  color:var(--black);
}
.service-article h2{margin:64px 0 22px;font-size:42px;line-height:1.17}
.service-article h2:first-child{margin-top:0}
.service-article h3{font-size:27px}
.service-article p,
.service-article li{font-size:17px!important;line-height:1.85}
.service-article ul{list-style:none;padding:0}
.service-article li{position:relative;padding:10px 0 10px 28px;border-bottom:1px solid #ddd}
.service-article li::before{content:"";position:absolute;left:0;top:22px;width:9px;height:9px;border-radius:50%;background:var(--orange)}
.service-article .nx-callout,
.service-article .dr-scope-panel{
  margin:38px 0 52px;
  padding:42px;
  color:#d9dde0;
  background:var(--dark);
  border-left:6px solid var(--orange);
}
.service-article .nx-callout h2,
.service-article .nx-callout h3,
.service-article .nx-callout .nx-callout-title,
.service-article .dr-scope-panel h3{margin-top:0;color:#fff;font-size:27px!important;line-height:1.25;font-weight:700}
.service-article .nx-callout li,
.service-article .dr-scope-panel li{border-color:rgba(255,255,255,.14)}
.service-article .nx-steps,
.service-article .dr-assessment-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin:34px 0 58px;
}
.service-article .nx-step,
.service-article .dr-assessment-grid>div{
  min-height:190px;
  padding:32px;
  background:#fff;
  border-top:5px solid var(--orange);
  box-shadow:0 12px 30px rgba(18,24,28,.08);
}
.service-article .nx-step>b,
.service-article .nx-step>span,
.service-article .dr-assessment-grid>div>span{display:none}
.service-article .nx-step h3,
.service-article .dr-assessment-grid h3{margin:0 0 12px;font-size:25px}
.service-article .nx-step p,
.service-article .dr-assessment-grid p{margin:0;font-size:16px!important}
.service-article .faq,
.service-article .dr-faqs{margin-top:34px}
.service-article .faq details,
.service-article .dr-faqs details{
  margin:0 0 14px;
  padding:0 28px;
  background:#fff;
  border:1px solid #d9dcde;
  box-shadow:0 8px 24px rgba(18,24,28,.05);
}
.service-article .faq summary,
.service-article .dr-faqs summary{
  position:relative;
  padding:25px 48px 25px 0;
  cursor:pointer;
  list-style:none;
  font-family:var(--font-head);
  font-size:18px;
  font-weight:700;
  color:var(--black);
}
.service-article .faq summary::-webkit-details-marker,
.service-article .dr-faqs summary::-webkit-details-marker{display:none}
.service-article .faq summary::after,
.service-article .dr-faqs summary::after{
  content:"+";
  position:absolute;
  top:17px;
  right:0;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  color:#fff;
  background:var(--black);
}
.service-article .faq details[open] summary::after,
.service-article .dr-faqs details[open] summary::after{content:"−";background:var(--orange)}
.service-article .faq details>p,
.service-article .dr-faqs details>p{padding:0 48px 24px 0}
.service-article .legal-note{padding:22px 26px;background:#ecefee;border-left:4px solid var(--orange)}

.lgx-service-aside{position:sticky;top:24px;background:#fff;box-shadow:0 18px 48px rgba(18,24,28,.1)}
.lgx-aside-image{min-height:300px;background-image:var(--page-image,var(--hero-image));background-size:cover;background-position:center}
.lgx-aside-copy{padding:38px}
.lgx-aside-copy h2{margin-bottom:16px;font-size:32px}
.lgx-aside-copy ul{margin:24px 0 28px;border-top:1px solid var(--line)}
.lgx-aside-copy li{position:relative;padding:14px 0 14px 22px;border-bottom:1px solid var(--line);font-size:15px!important}
.lgx-aside-copy li::before{content:"";position:absolute;left:0;top:24px;width:7px;height:7px;border-radius:50%;background:var(--orange)}

.lgx-mid-cta{
  position:relative;
  background-image:linear-gradient(90deg,rgba(5,12,16,.9),rgba(5,12,16,.55)),var(--page-image,var(--hero-image));
  background-size:cover;
  background-position:center;
}
.lgx-mid-cta .container{min-height:360px;display:flex;align-items:center;justify-content:space-between;gap:60px}
.lgx-mid-cta p{margin-bottom:10px;color:#fff}
.lgx-mid-cta h2{max-width:850px;font-family:var(--font-display);font-size:56px;line-height:1.05;color:#fff}

.lgx-related-refined{padding:var(--section-space) 0;background:var(--grey-band)}
.lgx-section-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:60px;
  margin-bottom:58px;
}
.lgx-section-heading h2{font-size:48px;line-height:1.14}
.lgx-section-heading>p{max-width:600px;margin:0}
.lgx-related-refined .lgx-related-grid{grid-template-columns:repeat(4,1fr)}
.lgx-related-refined .offercard{background:#fff;box-shadow:0 12px 32px rgba(18,24,28,.06)}
.lgx-related-refined .lgx-advice-image{display:block;height:250px}
.lgx-related-refined .lgx-advice-image::after{display:none}
.lgx-related-refined .offercard .pad{padding:30px}
.lgx-related-refined .offercard h3{font-size:23px}
.lgx-context-links{padding:110px 0;background:#fff}
.lgx-context-links-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}
.lgx-context-links h2{margin-bottom:20px;font-size:44px}
.lgx-context-links nav{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.lgx-context-links nav a,
.lgx-contact-service-links a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:22px 6px;
  border-bottom:1px solid var(--line);
  font-family:var(--font-head);
  font-size:17px;
  font-weight:700;
  color:var(--black);
}
.lgx-context-links nav a:nth-child(odd){margin-right:26px}
.lgx-context-links nav a:hover,
.lgx-contact-service-links a:hover{padding-left:14px;color:var(--orange)}
.lgx-context-links nav b,
.lgx-contact-service-links b{color:var(--orange)}

.lgx-page-enquiry{padding:120px 0}
.lgx-enquiry-layout{grid-template-columns:1fr 560px;gap:110px}
.lgx-enquiry-layout h2{font-family:var(--font-display);font-size:58px;line-height:1.05}

/* About. */
.lgx-about-story,
.lgx-about-principles,
.lgx-uk-coverage,
.lgx-about-team{padding:var(--section-space) 0}
.lgx-about-story-grid,
.lgx-about-team-grid,
.lgx-enquiry-guide-grid,
.lgx-office-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:100px;
  align-items:center;
}
.lgx-about-image,
.lgx-team-image,
.lgx-contact-image{
  min-height:650px;
  position:relative;
  background-image:var(--page-image,var(--hero-image));
  background-size:cover;
  background-position:center;
}
.lgx-about-image span{position:absolute;left:0;bottom:0;padding:22px 30px;background:var(--orange);color:#fff;font-weight:800}
.lgx-about-story h2,
.lgx-about-team h2,
.lgx-enquiry-guide h2,
.lgx-office-section h2{margin-bottom:28px;font-size:50px;line-height:1.15}
.lgx-history-facts{margin-top:38px;border-top:1px solid var(--line)}
.lgx-history-facts p{display:grid;grid-template-columns:94px 1fr;gap:24px;margin:0;padding:20px 0;border-bottom:1px solid var(--line)}
.lgx-history-facts strong{font-family:var(--font-display);font-size:28px;color:var(--orange)}
.lgx-history-facts span{align-self:center;color:var(--black)}
.lgx-about-principles{background:var(--dark)}
.lgx-about-principles .lgx-section-heading h2,
.lgx-about-principles .lgx-section-heading>p{color:#fff}
.lgx-principle-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.16)}
.lgx-principle-grid article{padding:48px 48px 20px 0;border-right:1px solid rgba(255,255,255,.16)}
.lgx-principle-grid article+article{padding-left:48px}
.lgx-principle-grid article:last-child{border-right:0}
.lgx-principle-grid h3{margin-bottom:18px;font-size:28px;color:#fff}
.lgx-principle-grid p{color:#b9c0c4}

.lgx-uk-coverage{background:#f5f5f3}
.lgx-coverage-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}
.lgx-coverage-grid h2{margin-bottom:28px;font-size:50px}
.lgx-text-list{margin:30px 0;border-top:1px solid var(--line)}
.lgx-text-list li{position:relative;padding:16px 0 16px 25px;border-bottom:1px solid var(--line);color:var(--black)}
.lgx-text-list li::before{content:"";position:absolute;left:0;top:27px;width:8px;height:8px;border-radius:50%;background:var(--orange)}
.lgx-map-note{font-size:14px!important;color:#74787c}
.lgx-uk-map{
  min-height:720px;
  position:relative;
  overflow:hidden;
  color:var(--dark);
  background:linear-gradient(135deg,#fff,#e6e9e9);
  border:1px solid #d8dcdd;
}
.lgx-uk-map::before{content:"UK ENQUIRY COVERAGE";position:absolute;right:-20px;bottom:22px;font-family:var(--font-display);font-size:72px;font-weight:700;color:rgba(12,30,40,.05);white-space:nowrap}
.lgx-uk-map svg{position:absolute;left:50%;top:50%;width:61%;height:82%;transform:translate(-50%,-50%);opacity:.11}
.map-pin{position:absolute;display:flex;flex-direction:column;align-items:center;transform:translate(-50%,-50%);text-align:center;z-index:2}
.map-pin i,
.lgx-office-pin i{position:relative;width:16px;height:16px;border:4px solid #fff;border-radius:50%;background:var(--orange);box-shadow:0 0 0 1px var(--orange)}
.map-pin i::after,
.lgx-office-pin i::after{
  content:"";
  position:absolute;
  inset:-12px;
  border:2px solid var(--orange);
  border-radius:50%;
  animation:lgx-pulse 2.2s infinite;
}
.map-pin b{margin-top:10px;padding:6px 9px;background:var(--dark);color:#fff;font-size:12px}
.map-pin small{padding:4px 8px;background:#fff;font-size:11px;box-shadow:0 6px 15px rgba(0,0,0,.12)}
.map-pin:not(.office) small{display:none}
@keyframes lgx-pulse{0%{transform:scale(.45);opacity:1}100%{transform:scale(1.45);opacity:0}}
.lgx-about-team{background:#fff}
.lgx-about-team .btn{margin-top:22px}

/* Contact. */
.lgx-contact-options,
.lgx-enquiry-guide,
.lgx-office-section,
.lgx-contact-services{padding:var(--section-space) 0}
.lgx-contact-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.lgx-contact-card-grid>a,
.lgx-contact-card-grid>div{
  min-height:245px;
  display:flex;
  flex-direction:column;
  padding:34px;
  background:#fff;
  border:1px solid var(--line);
  border-top:5px solid var(--orange);
  box-shadow:0 14px 34px rgba(18,24,28,.06);
}
.lgx-contact-card-grid>a:hover{transform:translateY(-6px);box-shadow:0 22px 45px rgba(18,24,28,.12)}
.lgx-contact-card-grid span{margin-bottom:28px;font-size:15px;font-weight:700;color:var(--orange)}
.lgx-contact-card-grid strong{font-family:var(--font-head);font-size:21px;line-height:1.4;color:var(--black);overflow-wrap:anywhere}
.lgx-contact-card-grid small{margin-top:auto;padding-top:24px;font-size:14px;color:var(--body)}
.lgx-enquiry-guide{background:var(--grey-band)}
.lgx-contact-image{min-height:620px}
.lgx-office-section{background:#fff}
.lgx-office-section address{margin:24px 0;font-style:normal;font-size:18px;line-height:1.8;color:var(--black)}
.lgx-office-map{
  min-height:560px;
  position:relative;
  overflow:hidden;
  background-color:#dadddf;
  background-image:linear-gradient(25deg,transparent 0 37%,rgba(255,255,255,.9) 37% 40%,transparent 40% 64%,rgba(255,255,255,.75) 64% 67%,transparent 67%),linear-gradient(112deg,transparent 0 19%,rgba(80,87,92,.18) 19% 22%,transparent 22% 47%,rgba(80,87,92,.2) 47% 50%,transparent 50% 76%,rgba(80,87,92,.18) 76% 79%,transparent 79%);
}
.lgx-office-pin{position:absolute;left:57%;top:48%;display:flex;flex-direction:column;align-items:center}
.lgx-office-pin b{margin-top:16px;padding:10px 14px 2px;background:#fff;font-size:16px;color:var(--black)}
.lgx-office-pin small{padding:2px 14px 10px;background:#fff;font-size:13px}
.lgx-contact-services{background:var(--dark)}
.lgx-contact-services h2{color:#fff}
.lgx-contact-services .section-note{color:#d7dadd}
.lgx-contact-services .text-link{color:#fff}
.lgx-contact-service-links{display:grid;grid-template-columns:repeat(3,1fr);gap:0 34px}
.lgx-contact-service-links a{color:#fff;border-color:rgba(255,255,255,.18)}

@media (max-width:1450px){
  .home-page .h-main{height:112px}
  .home-page .h-logo-sq{width:112px;height:112px}
  .home-page .mainnav2{margin-left:20px}
  .home-page .mainnav2>li>a{padding-left:14px;padding-right:14px;font-size:12px}
  .home-page .h-cta-block{padding-left:24px;padding-right:24px}
  .home-page .h-burger{width:88px}
  .home-page .h-burger i:nth-child(2),
  .home-page .h-burger:hover i:nth-child(2){margin-right:29px}
  .home-page .hero-in{grid-template-columns:minmax(0,1fr) 520px;gap:50px}
  .home-page .svcband-grid{grid-template-columns:minmax(0,1fr) 350px 350px}
  .inner-page .mainnav>li>a{padding-left:14px;padding-right:14px}
}

@media (max-width:1100px){
  :root{--section-space:96px}
  .home-page .h-main{height:96px}
  .home-page .h-logo-sq{width:96px;height:96px}
  .home-page .h-logo-sq img{width:60px;height:60px}
  .home-page .hero,
  .home-page .hero-in{min-height:0}
  .home-page .hero-in{padding:88px 32px;gap:58px}
  .home-page .hero h1{font-size:70px}
  .home-page .svcband-grid{grid-template-columns:1fr 1fr}
  .home-page .svc-left{grid-column:1/-1}
  .inner-page .hdr-top{min-height:118px}
  .inner-page .hdr-logo img{height:68px}
  .inner-page .phero-inner{display:block;min-height:0}
  .inner-page .phero-copy{width:100%;padding:84px 32px}
  .inner-page .phero-img.lgx-phero-form{
    position:relative!important;
    inset:auto!important;
    width:100%;
    height:auto!important;
    min-height:0;
    padding:64px 32px;
    clip-path:none;
  }
  .inner-page .lgx-phero-form .heroform{max-width:700px;margin:0 auto}
  .lgx-service-overview-grid,
  .lgx-service-content-shell,
  .lgx-about-story-grid,
  .lgx-about-team-grid,
  .lgx-coverage-grid,
  .lgx-enquiry-guide-grid,
  .lgx-office-grid{grid-template-columns:1fr;gap:58px}
  .lgx-service-aside{position:relative;top:auto;display:grid;grid-template-columns:1fr 1fr}
  .lgx-related-refined .lgx-related-grid{grid-template-columns:1fr 1fr}
  .lgx-context-links-grid{grid-template-columns:1fr;gap:48px}
  .lgx-principle-grid{grid-template-columns:1fr}
  .lgx-principle-grid article,
  .lgx-principle-grid article+article{padding:36px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}
  .lgx-contact-card-grid{grid-template-columns:1fr 1fr}
  .lgx-contact-service-links{grid-template-columns:1fr}
  .lgx-enquiry-layout{grid-template-columns:1fr;gap:58px}
}

@media (max-width:760px){
  :root{--section-space:78px}
  .lgx-client-site main p,
  .lgx-client-site main li{font-size:16px!important}
  .home-page .h-topbar-in{height:48px}
  .home-page .h-main{height:88px}
  .home-page .h-logo-sq{width:88px;height:88px}
  .home-page .h-logo-sq img{width:56px;height:56px}
  .home-page .h-burger{width:72px}
  .home-page .hero-in{padding:72px 20px}
  .home-page .hero h1{font-size:54px;line-height:1}
  .home-page .hero p:not(.hero-note){font-size:17px!important}
  .home-page .hero-note{font-size:14px!important}
  .heroform{padding:30px 22px}
  .heroform .lead-panel-head h3{font-size:28px}
  .heroform .form-grid{grid-template-columns:1fr}
  .heroform .form-grid .wide{grid-column:auto}
  .heroform input,
  .heroform textarea,
  .heroform select{font-size:16px!important}
  .home-page .svcband-grid{display:block}
  .home-page .svc-left{padding:72px 20px}
  .home-page .svc-left-head h2{font-size:34px}
  .home-page .aboutpanel,
  .home-page .whypanel{padding:58px 24px}
  .home-page .projband .copy{padding:78px 22px}
  .home-page .protest{padding:78px 0}
  .home-page .gcard{padding:46px 24px}
  .home-page .proc-grid{display:block}
  .home-page .proccard{min-height:0;padding:34px 8px;border-right:0;border-bottom:1px solid var(--line)}
  .home-page .stat-orange{padding:42px 24px}
  .inner-page .hdr-top{min-height:104px;padding:20px}
  .inner-page .hdr-logo img{height:62px;max-width:250px}
  .inner-page .phero-copy{padding:68px 20px}
  .inner-page .phero-copy h1{font-size:52px}
  .inner-page .phero-copy>p:not(.page-context){font-size:17px!important}
  .inner-page .phero-img.lgx-phero-form{padding:52px 20px}
  .lgx-page-jump .container{padding:0}
  .lgx-service-overview,
  .lgx-service-detail,
  .lgx-related-refined,
  .lgx-about-story,
  .lgx-about-principles,
  .lgx-uk-coverage,
  .lgx-about-team,
  .lgx-contact-options,
  .lgx-enquiry-guide,
  .lgx-office-section,
  .lgx-contact-services{padding:78px 0}
  .lgx-overview-copy h2,
  .lgx-about-story h2,
  .lgx-about-team h2,
  .lgx-enquiry-guide h2,
  .lgx-office-section h2,
  .lgx-coverage-grid h2,
  .lgx-section-heading h2{font-size:38px}
  .lgx-overview-image,
  .lgx-about-image,
  .lgx-team-image,
  .lgx-contact-image{min-height:420px}
  .lgx-plain-points{grid-template-columns:1fr}
  .service-article h2{font-size:34px}
  .service-article p,
  .service-article li{font-size:16px!important}
  .service-article .nx-callout,
  .service-article .dr-scope-panel{padding:28px 22px}
  .service-article .nx-steps,
  .service-article .dr-assessment-grid{grid-template-columns:1fr}
  .lgx-service-aside{display:block}
  .lgx-mid-cta .container{min-height:440px;display:block;padding-top:78px;padding-bottom:78px}
  .lgx-mid-cta h2{margin-bottom:34px;font-size:44px}
  .lgx-section-heading{display:block;margin-bottom:42px}
  .lgx-section-heading .text-link{margin-top:22px}
  .lgx-related-refined .lgx-related-grid{grid-template-columns:1fr}
  .lgx-context-links nav{grid-template-columns:1fr}
  .lgx-context-links nav a:nth-child(odd){margin-right:0}
  .lgx-enquiry-layout h2{font-size:45px}
  .lgx-history-facts p{grid-template-columns:74px 1fr}
  .lgx-uk-map{min-height:580px}
  .map-pin b{font-size:10px}
  .lgx-contact-card-grid{grid-template-columns:1fr}
  .lgx-contact-card-grid>a,
  .lgx-contact-card-grid>div{min-height:210px}
  .lgx-office-map{min-height:430px}
}

@media (prefers-reduced-motion:reduce){
  .map-pin i::after,
  .lgx-office-pin i::after{animation:none}
}
@layer legacy{
*{margin:0;padding:0;box-sizing:border-box}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--body);font-size:16px;line-height:1.8;background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit;transition:color .25s var(--ease),background .25s var(--ease),border-color .25s var(--ease)}
ul{list-style:none}
h1,h2,h3,h4,h5{font-family:var(--font-head);color:var(--black);font-weight:700;line-height:1.22}
.container{max-width:var(--site-max);margin:0 auto;padding:0 40px}
.narrow{max-width:var(--content-max);margin:0 auto;padding:0 40px}

/* ---------- labels / eyebrows ---------- */
.label{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-head);font-size:14px;font-weight:700;letter-spacing:3.5px;text-transform:uppercase;color:var(--body)}
.label::before{content:"";width:9px;height:9px;background:var(--orange)}
.label.label-after::after{content:"";width:9px;height:9px;background:var(--orange)}
.label.on-dark{color:#c9cbcd}
.label.on-orange{color:#fff}
.label.on-orange::before{background:#fff}
.label.center{justify-content:center}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:stretch;font-family:var(--font-head);font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;line-height:1;cursor:pointer;border:none}
.btn .t{display:flex;align-items:center;padding:0 30px;height:58px;white-space:nowrap;transition:background .3s var(--ease),color .3s var(--ease)}
.btn .sq{display:flex;align-items:center;justify-content:center;width:58px;height:58px;flex:none;transition:background .3s var(--ease)}
.btn .sq svg{width:16px;height:16px;transition:transform .3s var(--ease)}
.btn:hover .sq svg{transform:translate(3px,-3px)}
.btn-orange .t{background:var(--orange);color:#fff}
.btn-orange .sq{background:var(--black);color:#fff}
.btn-orange:hover .t{background:var(--orange-dark)}
.btn-orange.bordered{border:1px solid #fff}
.btn-white .t{background:#fff;color:var(--black)}
.btn-white .sq{background:var(--black);color:#fff}
.btn-white:hover .t{background:var(--black);color:#fff}
.btn-white:hover .sq{background:var(--orange)}
.btn-white.bordered{border:1px solid var(--black)}
.btn-sm .t{height:50px;padding:0 22px;font-size:13px}
.btn-sm .sq{width:50px;height:50px}

/* square icon buttons (carousels) */
.sqbtn{width:50px;height:50px;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer;transition:background .3s var(--ease)}
.sqbtn:hover{background:var(--orange)}
.sqbtn svg{width:17px;height:17px}
.sqbtn.light{background:#fff;color:var(--black);border:1px solid var(--line)}

/* view-more text link */
.vmore{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-head);font-size:13.5px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--black)}
.vmore svg{width:13px;height:13px;transition:transform .3s var(--ease)}
.vmore:hover{color:var(--orange)}
.vmore:hover svg{transform:translate(2px,-2px)}
.vmore.on-dark{color:#fff}
.vmore.on-dark:hover{color:var(--orange)}
.vmore .arr-orange{color:var(--orange);display:inline-flex}

/* ============================================================
   HEADER (uniform, all pages)
   ============================================================ */
.topwrap{background:var(--dark);position:relative;z-index:100}
.hdr-top{display:flex;align-items:center;justify-content:space-between;padding:30px 0 24px}
.hdr-logo img{height:54px;width:auto}
.hdr-contacts{display:flex;align-items:center;gap:64px}
.hc{display:flex;align-items:center;gap:16px}
.hc .ic{width:52px;height:52px;background:var(--orange);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;flex:none}
.hc .ic svg{width:21px;height:21px}
.hc .tx small{display:block;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:#9a9da1;line-height:1.5}
.hc .tx b{display:block;font-family:var(--font-head);font-size:16px;font-weight:700;color:#fff;line-height:1.5}
.hdr-lang{display:flex;align-items:center;gap:12px;color:#9a9da1;font-size:13px}
.hdr-lang b{display:block;color:#fff;font-weight:600;font-size:14px}
.hdr-nav-row{display:flex;align-items:center;justify-content:space-between}
.mainnav{display:flex}
.mainnav>li{position:relative}
.mainnav>li>a{display:flex;align-items:center;gap:8px;padding:26px 30px 30px;font-family:var(--font-head);font-size:16px;font-weight:600;color:#fff;border-top:1px solid rgba(255,255,255,.12)}
.mainnav>li:first-child>a{padding-left:0}
.mainnav>li>a .car{width:10px;height:10px;opacity:.6;transition:transform .25s var(--ease)}
.mainnav>li:hover>a{color:var(--orange)}
.mainnav>li:hover>a .car{transform:rotate(180deg)}
.mainnav>li.active>a{color:var(--orange);border-top:2px solid var(--orange);padding-top:25px}
/* dropdowns */
.sub{position:absolute;top:100%;left:0;min-width:280px;background:#fff;box-shadow:0 30px 60px rgba(0,0,0,.18);padding:12px 0;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .28s var(--ease),transform .28s var(--ease),visibility .28s;z-index:200}
.mainnav>li:hover>.sub{opacity:1;visibility:visible;transform:translateY(0)}
.sub li a{display:block;padding:12px 28px;font-family:var(--font-head);font-size:15px;font-weight:600;color:#3a3d42;border-left:3px solid transparent;transition:all .22s var(--ease)}
.sub li a:hover{color:var(--orange);border-left-color:var(--orange);background:#faf8f6;padding-left:34px}
.hdr-right{display:flex;align-items:center;gap:30px}
.hdr-search{color:#fff;display:flex;cursor:pointer;transition:color .25s}
.hdr-search:hover{color:var(--orange)}
.hdr-search svg{width:21px;height:21px}
.hdr-cta{border:1px solid #fff}

/* ============================================================
   PAGE HERO (orange split band) — bigger
   ============================================================ */
.phero{position:relative;background:var(--orange-2);overflow:hidden}
.phero-inner{position:relative;display:flex;min-height:460px}
.phero-copy{width:62%;padding:88px 0 72px calc((100% - 1376px)/2);position:relative;z-index:2}
.phero-copy .label{color:#fff;margin-bottom:18px}
.phero-copy .label::before{display:none}
.phero-copy h1{font-size:62px;font-weight:700;color:#fff;margin-bottom:20px}
.phero-copy p{max-width:600px;color:rgba(255,255,255,.92);font-size:16px;line-height:1.9;margin-bottom:42px}
.crumbs{display:inline-flex;align-items:center;gap:14px;background:var(--black);padding:15px 26px;font-family:var(--font-head);font-size:12.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#fff}
.crumbs .dot{width:6px;height:6px;background:var(--orange)}
.crumbs a{color:#c9cbcd}
.crumbs a:hover{color:var(--orange)}
.phero-art{position:absolute;left:41%;bottom:-16px;width:660px;opacity:.8;z-index:1;pointer-events:none}
.phero-img{position:absolute;right:0;top:0;bottom:0;width:37.5%;z-index:2}
.phero-img img{width:100%;height:100%;object-fit:cover;clip-path:polygon(7% 0,100% 0,100% 100%,0 100%)}

/* ============================================================
   FOOTER (uniform, all pages)
   ============================================================ */
.footer{position:relative;background:var(--dark);color:#9a9da1;overflow:hidden}
.footer .bgimg{position:absolute;right:0;top:0;height:100%;width:36%;object-fit:cover;opacity:.5;-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%);mask-image:linear-gradient(90deg,transparent,#000 40%)}
.footer-in{position:relative;z-index:2;max-width:var(--site-max);margin:0 auto;padding:0 40px}
.f-cta{padding:130px 0 80px}
.ghost{font-family:var(--font-head);font-size:88px;font-weight:800;line-height:1.1;background:linear-gradient(90deg,rgba(255,255,255,.5),rgba(255,255,255,.02) 62%);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:26px}
.f-cta p{max-width:640px;font-size:16px;line-height:1.9;margin-bottom:44px}
.f-cta .btns{display:flex;gap:22px}
.f-menu{display:flex;gap:40px;padding:30px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.f-menu a{font-family:var(--font-head);font-size:13.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#fff;padding-bottom:30px;margin-bottom:-31px;white-space:nowrap;border-bottom:2px solid transparent}
.f-menu a:hover{color:var(--orange)}
.f-menu a.on{color:#fff;border-bottom-color:var(--orange)}
.f-cols{display:grid;grid-template-columns:1.1fr 1fr 1.1fr;gap:70px;padding:64px 0 72px}
.f-logo img{height:50px;margin-bottom:40px}
.f-social{display:flex;gap:12px}
.f-social a{width:46px;height:46px;border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;color:#9a9da1}
.f-social a:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.f-social svg{width:16px;height:16px}
.f-h{font-family:var(--font-head);font-size:21px;font-weight:700;color:#fff;margin-bottom:28px}
.f-addr li{display:flex;gap:14px;font-size:15px;margin-bottom:18px;line-height:1.7}
.f-addr .oi{color:var(--orange);flex:none;padding-top:4px}
.f-addr .oi svg{width:16px;height:16px}
.f-news p{font-size:15px;line-height:1.85;margin-bottom:24px}
.nl-form{display:flex;background:#fff;border:2px solid #fff;padding:5px;transition:border-color .3s}
.nl-form:focus-within{border-color:var(--orange)}
.nl-form input{flex:1;border:none;outline:none;padding:0 16px;font-size:14px;font-family:var(--font-body);color:#333;min-width:0}
.nl-form button{width:46px;height:46px;background:var(--black);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .3s}
.nl-form button:hover{background:var(--orange)}
.nl-form button svg{width:14px;height:14px}
.f-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);padding:26px 0 32px;font-size:13.5px}
.f-bottom .links{display:flex;gap:34px}
.f-bottom a{color:#9a9da1}
.f-bottom a:hover{color:var(--orange)}
.totop{position:absolute;right:40px;bottom:36px;width:46px;height:46px;border:1px solid var(--orange);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--orange);z-index:3;transition:all .3s}
.totop:hover{background:var(--orange);color:#fff}
.totop svg{width:16px;height:16px}

/* ============================================================
   HOME header variant (full-width, per original design)
   ============================================================ */
.h-topbar{background:var(--black);border-bottom:1px solid rgba(255,255,255,.08)}
.h-topbar-in{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 36px}
.h-topbar .items{display:flex;gap:46px;margin:0 auto}
.h-topbar .it{display:flex;align-items:center;gap:10px;font-size:13.5px;color:#c9cbcd}
.h-topbar .it svg{width:15px;height:15px;color:#fff}
.h-topbar .soc{display:flex;gap:24px;align-items:center}
.h-topbar .soc a{color:#9a9da1;display:flex}
.h-topbar .soc a:hover{color:var(--orange)}
.h-topbar .soc svg{width:14px;height:14px}
.h-main{background:var(--dark);display:flex;align-items:stretch;height:100px;position:relative;z-index:100}
.h-logo-sq{width:100px;height:100px;background:var(--orange);display:flex;align-items:center;justify-content:center;flex:none}
.h-logo-sq img{width:54px;height:54px;object-fit:contain}
.mainnav2{display:flex;align-items:stretch;margin-left:60px}
.mainnav2>li{position:relative;display:flex}
.mainnav2>li>a{display:flex;align-items:center;gap:9px;padding:0 26px;font-family:var(--font-head);font-size:14px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#fff}
.mainnav2>li>a .car{width:10px;height:10px;opacity:.6;transition:transform .25s var(--ease)}
.mainnav2>li:hover>a{color:var(--orange)}
.mainnav2>li:hover>a .car{transform:rotate(180deg)}
.mainnav2>li.active>a{color:var(--orange)}
.mainnav2>li:hover>.sub{opacity:1;visibility:visible;transform:translateY(0)}
.h-main .sp{flex:1}
.h-main .srch{display:flex;align-items:center;padding:0 36px;color:#fff;cursor:pointer;transition:color .25s}
.h-main .srch:hover{color:var(--orange)}
.h-main .srch svg{width:21px;height:21px}
.h-cta-block{background:var(--orange);display:flex;align-items:center;padding:0 42px;font-family:var(--font-head);font-size:14px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#fff;transition:background .3s var(--ease)}
.h-cta-block:hover{background:var(--orange-dark)}
.h-burger{width:100px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;flex:none;cursor:pointer}
.h-burger i{display:block;width:30px;height:2px;background:var(--black);transition:all .3s var(--ease)}
.h-burger i:nth-child(2){width:20px;align-self:flex-end;margin-right:35px}
.h-burger:hover i:nth-child(2){width:30px;margin-right:35px}

/* ============================================================
   HOME footer variant (map + contacts + main menu, per original design)
   ============================================================ */
.hfooter{background:var(--dark);color:#9a9da1;position:relative}
.hfooter-in{max-width:var(--site-max);margin:0 auto;padding:84px 40px 0}
.hfooter .map{display:block;width:100%;height:300px;border:0;margin-bottom:64px}
.location-map{position:relative;overflow:hidden;background-color:#d8dadd;background-image:linear-gradient(24deg,transparent 0 36%,rgba(255,255,255,.82) 36% 38%,transparent 38% 62%,rgba(255,255,255,.68) 62% 64%,transparent 64%),linear-gradient(112deg,transparent 0 18%,rgba(102,108,114,.22) 18% 20%,transparent 20% 47%,rgba(102,108,114,.22) 47% 49%,transparent 49% 76%,rgba(102,108,114,.18) 76% 78%,transparent 78%),repeating-linear-gradient(0deg,transparent 0 44px,rgba(70,76,82,.1) 44px 46px)}
.location-map::before,.location-map::after{content:"";position:absolute;background:var(--orange);opacity:.95}
.location-map::before{width:22px;height:22px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);left:64%;top:47%}
.location-map::after{width:8px;height:8px;border-radius:50%;background:#fff;left:calc(64% + 7px);top:calc(47% + 7px)}
.location-map-card{position:absolute;left:36px;top:36px;width:min(390px,calc(100% - 72px));background:#fff;padding:28px 32px;box-shadow:0 22px 55px rgba(0,0,0,.18);z-index:2}
.location-map-card span{display:block;font-family:var(--font-head);font-size:11px;font-weight:800;letter-spacing:2.2px;text-transform:uppercase;color:var(--orange);margin-bottom:5px}
.location-map-card strong{display:block;font-family:var(--font-head);font-size:32px;line-height:1.1;color:var(--black);margin-bottom:10px}
.location-map-card p{font-size:14px!important;line-height:1.65;margin-bottom:12px;color:var(--body)}
.location-map-card a{font-family:var(--font-head);font-size:12px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--black)}
.location-map-card a:hover{color:var(--orange)}
.hf-contacts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.12)}
.hf-contacts .hc .tx small{color:#9a9da1}
.hf-cols{display:grid;grid-template-columns:1.1fr 1.2fr 1.1fr;gap:70px;padding:60px 0 70px}
.menu2col{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}
.menu2col a{display:flex;align-items:center;gap:10px;font-size:15px;color:#c9cbcd;margin-bottom:16px}
.menu2col a::before{content:"›";color:var(--orange);font-weight:700}
.menu2col a:hover{color:var(--orange)}

/* ============================================================
   HOME hero slider
   ============================================================ */
.hero{position:relative;min-height:680px;background:#333 center/cover no-repeat}
.hero .shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.5),rgba(0,0,0,.18) 60%,rgba(0,0,0,0))}
.hero-in{position:relative;z-index:2;max-width:1500px;margin:0 auto;padding:84px 60px 84px 130px;display:flex;align-items:center;gap:70px}
.hero-copy{flex:1;max-width:840px}
.hero .chip{display:inline-block;background:var(--orange);color:#fff;font-family:var(--font-head);font-size:13.5px;font-weight:700;letter-spacing:3.5px;text-transform:uppercase;padding:12px 24px;margin-bottom:30px}
.hero h1{color:#fff;font-size:46px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;line-height:1.3;margin-bottom:20px}
.hero p{color:rgba(255,255,255,.9);font-size:15.5px;max-width:600px;line-height:1.9;margin-bottom:36px}
.hero .btns{display:flex;gap:24px}
.hero-arrows{position:absolute;right:70px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:2px;z-index:3}

/* ---------- HOME services band ---------- */
.svcband{background:var(--grey-band)}
.svcband-grid{display:grid;grid-template-columns:1fr 345px 345px;max-width:1440px;margin:0 auto}
.svc-left{padding:60px 56px 56px 32px}
.svc-left-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:44px}
.svc-left-head .arrows{display:flex;gap:10px}
.svc-cards{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.svc-card{transition:transform .35s var(--ease)}
.svc-card:hover{transform:translateY(-6px)}
.svc-card .imw{overflow:hidden;margin-bottom:26px}
.svc-card .imw img{width:100%;height:220px;object-fit:cover;transition:transform .6s var(--ease)}
.svc-card:hover .imw img{transform:scale(1.06)}
.svc-card h3{font-size:23px;margin-bottom:14px}
.svc-card p{font-size:15px;line-height:1.85;margin-bottom:22px}
.aboutpanel{background:var(--orange-2);position:relative;padding:52px 44px;overflow:hidden}
.aboutpanel .label{color:#fff;margin-bottom:24px}
.aboutpanel .label::before{background:#fff}
.aboutpanel h2{color:#fff;font-size:28px;line-height:1.4;margin-bottom:30px}
.aboutpanel .sqbtn{position:relative;z-index:2}
.aboutpanel .ph{position:absolute;right:0;bottom:0;width:64%;z-index:1}
.whypanel{background:var(--black);padding:48px 38px}
.whypanel .label{margin-bottom:22px}
.whypanel>p{font-size:14.5px;color:#9a9da1;line-height:1.85;margin-bottom:28px}
.checks li{display:flex;align-items:center;gap:13px;font-family:var(--font-head);font-size:14.5px;font-weight:600;color:#fff;margin-bottom:17px}
.checks .ck{flex:none}
.checks.on-light li{color:var(--black)}
.ck{width:21px;height:21px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.ck svg{width:10px;height:10px}

/* ---------- HOME projects band ---------- */
.projband{background:var(--dark);position:relative;overflow:hidden}
.projband .wf-l{position:absolute;left:0;bottom:0;width:420px;opacity:.5}
.projband-grid{position:relative;display:grid;grid-template-columns:42% 1fr;gap:0;max-width:1440px;margin:0 auto;z-index:2}
.projband .copy{padding:120px 60px 120px 32px}
.projband .copy .label{margin-bottom:24px}
.projband .copy h2{color:#fff;font-size:44px;line-height:1.28;margin-bottom:26px}
.projband .copy p{font-size:15px;color:#9a9da1;line-height:1.9;max-width:500px;margin-bottom:44px}
.proj-visual{position:relative;min-height:640px}
.proj-visual .ph{position:absolute;right:0;top:0;bottom:0;width:62%;object-fit:cover;height:100%}
.proj-card{position:absolute;left:0;top:90px;width:54%;background:#fff;padding:42px 42px 38px;z-index:2;box-shadow:0 30px 70px rgba(0,0,0,.25)}
.proj-card small{display:block;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#9a9da1;margin-bottom:12px;font-weight:600}
.proj-card h3{font-size:26px;margin-bottom:14px}
.proj-card p{font-size:14.5px;line-height:1.85;margin-bottom:20px}
.proj-card ul{margin-bottom:10px}
.proj-card li{font-size:14.5px;margin-bottom:8px;padding-left:18px;position:relative}
.proj-card li::before{content:"";position:absolute;left:0;top:11px;width:7px;height:7px;background:var(--orange)}
.proj-card li b{color:var(--black)}
.proj-card .sqbtn{position:absolute;right:32px;bottom:36px}

/* ---------- HOME professionals / testimonials ---------- */
.protest{padding:80px 0}
.protest-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.gcard{background:var(--grey-band);padding:56px 58px;position:relative}
.gcard .label{margin-bottom:20px}
.gcard .ghost-l{font-family:var(--font-head);font-size:50px;font-weight:800;background:linear-gradient(90deg,rgba(18,20,21,.5),rgba(18,20,21,.05) 70%);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:18px}
.gcard>p{font-size:15px;line-height:1.9;margin-bottom:32px;max-width:520px}
.gcard .corner{position:absolute;right:58px;top:150px}
.gcard .photo{margin:0 -58px -56px;padding-top:8px;overflow:hidden}
.gcard .photo img{width:100%;transition:transform .6s var(--ease)}
.gcard:hover .photo img{transform:scale(1.04)}
.tcard h2{font-size:40px;margin-bottom:16px}
.stars{display:flex;gap:5px;color:var(--orange);margin-bottom:28px}
.stars svg{width:17px;height:17px}
.tcard h4{font-size:19px;margin-bottom:14px}
.tcard .quote{font-size:15px;line-height:1.9;margin-bottom:32px}
.tcard hr{border:none;border-top:1px solid #d9d9d9;margin-bottom:32px}
.t-author{display:flex;align-items:center;gap:18px}
.t-author img{width:72px;height:72px;object-fit:cover;border:3px solid #fff}
.t-author b{display:block;font-family:var(--font-head);font-size:17px;color:var(--black)}
.t-author small{font-size:13.5px}
.t-author .arrows{margin-left:auto;display:flex;gap:10px}
.bigquote{position:absolute;right:52px;top:52px;color:var(--orange);display:flex;gap:7px}
.bigquote i{display:block;width:30px;height:64px;background:var(--orange);transform:skewX(-14deg)}

/* ---------- HOME stats band ---------- */
.statband{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;max-width:1440px;margin:0 auto;min-height:470px}
.statband .cell{position:relative;overflow:hidden}
.statband .cell img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.statband .cell:hover img{transform:scale(1.05)}
.stat-orange{background:var(--orange-2);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;position:relative;overflow:hidden}
.stat-orange::before{content:"N";position:absolute;font-family:var(--font-head);font-weight:800;font-size:320px;color:rgba(255,255,255,.07);top:-70px;left:-20px;line-height:1}
.stat-orange b{font-family:var(--font-head);font-size:72px;font-weight:800;line-height:1}
.stat-orange span{font-family:var(--font-head);font-size:15px;font-weight:700;letter-spacing:3.5px;text-transform:uppercase;margin-top:18px}
.stat-dark{background:var(--black);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:40px}
.stat-dark .dicon{color:#9a9da1;margin-bottom:22px}
.stat-dark .dicon svg{width:52px;height:52px}
.stat-dark h3{color:#fff;font-size:33px;margin-bottom:14px}
.stat-dark p{font-size:14px;color:#9a9da1;line-height:1.85;max-width:260px;margin-bottom:28px}
.stat-dark .sqbtn{background:var(--orange)}
.stat-dark .sqbtn:hover{background:var(--orange-dark)}

/* ---------- WE BUILD band + clients ---------- */
.buildband{height:460px;background:center/cover no-repeat;position:relative}
.clients{background:#fff;padding:60px 0}
.clients img{margin:0 auto;max-width:1280px;width:92%}

/* ============================================================
   SECTIONS (shared)
   ============================================================ */
.sec{padding:110px 0}
.sec-grey{background:var(--grey-band)}
.sec-head-c{text-align:center;max-width:1080px;margin:0 auto 64px}
.sec-head-c h2{font-size:42px;margin-bottom:22px}
.sec-head-c p{font-size:16px;line-height:1.9}

/* ---------- SERVICES page ---------- */
.valgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px}
.valcard{background:#fff;border:1px solid var(--line);padding:48px 50px 44px;position:relative;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.valcard:hover{transform:translateY(-6px);box-shadow:0 30px 60px rgba(0,0,0,.1)}
.valcard h3{display:flex;align-items:center;gap:14px;font-size:24px;margin-bottom:18px}
.valcard h3::before{content:"";width:9px;height:9px;background:var(--orange)}
.valcard p{font-size:15px;line-height:1.85;margin-bottom:44px}
.valcard .icbox{position:absolute;right:44px;bottom:34px;width:68px;height:68px;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:center;transition:background .3s var(--ease)}
.valcard:hover .icbox{background:var(--orange)}
.valcard .icbox.or{background:var(--orange)}
.valcard .icbox svg{width:34px;height:34px}
.widephoto img{width:100%;height:420px;object-fit:cover}
.offer-cards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;max-width:1280px;margin:0 auto;padding:0 32px}
.offercard{background:#fff;border:1px solid var(--line);overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.offercard:hover{transform:translateY(-6px);box-shadow:0 30px 60px rgba(0,0,0,.12)}
.offercard>img{width:100%;height:260px;object-fit:cover;transition:transform .6s var(--ease)}
.offercard:hover>img{transform:scale(1.06)}
.offercard .pad{padding:30px 34px 34px}
.offercard h3{font-size:21px;margin-bottom:12px}
.offercard p{font-size:14.5px;line-height:1.8;margin-bottom:22px}
.projgal{background:var(--dark);position:relative;overflow:hidden}
.projgal .wf{position:absolute;right:0;top:40px;width:380px;opacity:.55;z-index:1}
.projgal-grid{display:grid;grid-template-columns:25% 25% 1fr;position:relative;z-index:2}
.projgal-grid img{width:100%;height:100%;object-fit:cover;min-height:560px}
.projgal .copy{padding:120px 70px}
.projgal .copy h2{color:#fff;font-size:42px;line-height:1.32;margin:22px 0 24px}
.projgal .copy p{font-size:15px;color:#9a9da1;max-width:560px;line-height:1.9;margin-bottom:44px}
.proc-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:32px;margin-top:60px}
.proccard{background:#fff;border:1px solid var(--line);text-align:center;padding:52px 36px 46px;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.proccard:hover{transform:translateY(-6px);box-shadow:0 30px 60px rgba(0,0,0,.1)}
.proccard b{font-family:var(--font-head);font-size:42px;font-weight:800;color:var(--orange);display:block;margin-bottom:18px}
.proccard h3{font-size:20px;margin-bottom:16px}
.proccard p{font-size:14px;line-height:1.85}

/* ============================================================
   SERVICE DETAIL
   ============================================================ */
.detail-grid{display:grid;grid-template-columns:1fr 380px;gap:56px;align-items:start}
.dgal{position:relative;margin-bottom:44px;overflow:hidden}
.dgal img{width:100%}
.dmain h2{font-size:38px;margin-bottom:22px}
.dmain h3{font-size:24px;margin:38px 0 16px}
.dmain p{font-size:15.5px;line-height:1.9;margin-bottom:20px}
.blist{display:grid;grid-template-columns:1fr 1fr;gap:12px 40px;margin:22px 0 10px}
.blist li{position:relative;padding-left:22px;font-family:var(--font-head);font-size:15.5px;font-weight:600;color:var(--black)}
.blist li::before{content:"";position:absolute;left:0;top:10px;width:8px;height:8px;background:var(--orange)}
.cklist{display:grid;grid-template-columns:1fr 1fr;gap:16px 40px;margin:22px 0 12px}
.cklist li{display:flex;align-items:center;gap:12px;font-family:var(--font-head);font-size:15.5px;font-weight:600;color:var(--black)}
.tabs{margin:28px 0 12px}
.tabbar{display:flex}
.tabbar span{flex:1;text-align:center;padding:19px 12px;font-family:var(--font-head);font-size:13.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;background:var(--grey-band);color:var(--black);border:1px solid var(--line);border-bottom:none;cursor:pointer;transition:background .25s}
.tabbar span:hover{background:#e6e6e6}
.tabbar span.on{background:#fff}
.tabpanel{border:1px solid var(--line);padding:32px 38px}
.tabpanel p{margin-bottom:20px}
.tabpanel .sol li{position:relative;padding-left:22px;font-size:15px;color:var(--black);font-weight:600;font-family:var(--font-head);margin-bottom:12px}
.tabpanel .sol li::before{content:"";position:absolute;left:0;top:10px;width:7px;height:7px;background:var(--orange)}
.hrline{border:none;border-top:1px solid var(--line);margin:44px 0}
.steps{display:flex;align-items:center;gap:18px;margin:30px 0 36px;flex-wrap:wrap}
.steps span{background:var(--black);color:#fff;font-family:var(--font-head);font-size:14.5px;font-weight:700;padding:16px 28px;transition:background .3s}
.steps span:hover{background:var(--orange)}
.steps svg{width:18px;height:18px;color:var(--black)}
.dvideo{position:relative;margin-bottom:26px;overflow:hidden}
.dvideo img{width:100%}
.dvideo .play{position:absolute;inset:0;margin:auto;width:64px;height:64px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .3s,color .3s}
.dvideo .play:hover{background:var(--orange)}
.dvideo .play:hover svg{color:#fff}
.dvideo .play svg{width:19px;height:19px;color:var(--black);transition:color .3s}
/* FAQ */
.faq{margin-top:32px}
.faq-item{margin-bottom:14px}
.faq-q{display:flex;align-items:center;justify-content:space-between;background:var(--dark);color:#fff;font-family:var(--font-head);font-size:16.5px;font-weight:600;padding:18px 20px 18px 26px;cursor:pointer;transition:background .3s}
.faq-q:hover{background:#2a2d31}
.faq-q .pm{width:34px;height:34px;background:#121415;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;flex:none}
.faq-item.open .faq-q{background:var(--orange) repeating-linear-gradient(-55deg,rgba(255,255,255,.09) 0 3px,transparent 3px 14px)}
.faq-a{border:1px solid var(--line);border-top:none;padding:28px 30px;font-size:15px;line-height:1.9;display:none}
.faq-item.open .faq-a{display:block}
/* sidebar */
.widget{margin-bottom:32px}
.w-head{background:var(--dark) repeating-linear-gradient(-55deg,rgba(255,255,255,.05) 0 4px,transparent 4px 16px);color:#fff;font-family:var(--font-head);font-size:15.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:18px 24px}
.w-list{border:1px solid var(--line);border-top:none}
.w-list li a{display:block;padding:16px 24px;font-size:15px;color:#4a4d50;border-bottom:1px solid var(--line)}
.w-list li a:hover{color:var(--orange);padding-left:30px}
.w-list li:last-child a{border-bottom:none}
.w-body{border:1px solid var(--line);border-top:none;padding:26px 24px}
.w-why li{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.w-why li:last-child{margin-bottom:0}
.w-why .oi{width:50px;height:50px;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.w-why .oi svg{width:22px;height:22px}
.w-why b{font-family:var(--font-head);font-size:15.5px;font-weight:700;color:var(--black)}
.w-body>p{font-size:14px;line-height:1.85;margin-bottom:20px}
.w-btn{display:flex;align-items:stretch;width:100%;margin-bottom:12px;border:none;cursor:pointer}
.w-btn .t{flex:1;display:flex;align-items:center;background:var(--orange);color:#fff;font-family:var(--font-head);font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:0 18px;height:50px;transition:background .3s}
.w-btn:hover .t{background:var(--orange-dark)}
.w-btn .sq{width:50px;height:50px;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:center}
.w-btn .sq svg{width:15px;height:15px}
.scard{background:#26282C;text-align:center;padding:44px 32px 0;color:#9a9da1}
.scard img{width:60px;margin:0 auto 22px}
.scard b{display:block;font-family:var(--font-head);font-size:15px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;margin-bottom:16px}
.scard .tel{font-family:var(--font-head);font-size:28px;font-weight:800;color:#fff;margin-bottom:14px}
.scard p{font-size:14px;line-height:1.75;margin-bottom:5px}
.scard .strip{display:block;background:var(--orange);color:#fff;font-family:var(--font-head);font-size:13.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:17px;margin:30px -32px 0;transition:background .3s}
.scard .strip:hover{background:var(--orange-dark)}

/* ============================================================
   ABOUT page
   ============================================================ */
.quoteband{background:var(--black);position:relative;overflow:hidden;max-width:1440px;margin:0 auto}
.quoteband-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:80px;padding:84px 90px 78px;position:relative;z-index:2}
.qb .tick{width:50px;border-top:2px solid #4a4d50;margin-bottom:28px;display:block}
.qb p{color:#fff;font-family:var(--font-head);font-size:19px;font-weight:600;line-height:1.65;margin-bottom:26px}
.qb small{font-size:14px;color:#9a9da1}
.quoteband .mark{position:absolute;right:-30px;bottom:-40px;width:230px;opacity:.9}
.videoband{max-width:1440px;margin:0 auto;position:relative;overflow:hidden}
.videoband img{width:100%;height:520px;object-fit:cover}
.videoband .play{position:absolute;inset:0;margin:auto;width:64px;height:64px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .3s}
.videoband .play:hover{background:var(--orange)}
.videoband .play:hover svg{color:#fff}
.videoband .play svg{width:19px;height:19px;transition:color .3s}
.counters{display:flex;justify-content:center;gap:110px;padding:84px 0 0}
.counter{display:flex;align-items:center;gap:20px}
.counter b{font-family:var(--font-head);font-size:64px;font-weight:800;color:var(--orange)}
.counter span{font-family:var(--font-head);font-size:15.5px;font-weight:700;color:var(--black);line-height:1.5}
.commit{display:grid;grid-template-columns:1.4fr 1fr;gap:90px;align-items:start;padding:90px 0 110px;border-top:1px solid var(--line);margin-top:72px;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:32px;padding-right:32px}
.commit h2{font-size:42px;line-height:1.3;margin-bottom:26px}
.commit p{font-size:15px;line-height:1.9;margin-bottom:18px}
.alist li{display:flex;gap:14px;font-family:var(--font-head);font-size:15.5px;font-weight:700;color:var(--black);margin-bottom:14px;align-items:center}
.alist .ok{color:var(--orange);flex:none;display:flex}
.alist .ok svg{width:19px;height:19px}
.commit .im img{width:100%}
.ceoquote{background:var(--black);border-left:5px solid var(--orange);color:#fff;padding:46px 56px 26px;position:relative;max-width:1216px;margin:0 auto}
.ceoquote p{font-family:var(--font-head);font-size:18px;font-weight:600;line-height:1.85;margin-bottom:26px}
.ceoquote small{display:block;text-align:right;color:#c9cbcd;font-size:14px;margin-bottom:22px}
.ruler{height:12px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.22) 0 1px,transparent 1px 7px);opacity:.55}
.sustain{display:grid;grid-template-columns:1fr 1.15fr;gap:90px;align-items:start;max-width:1280px;margin:0 auto;padding:110px 32px}
.sustain .im{position:relative;z-index:2}
.sustain .im::before{content:"";position:absolute;left:-999px;right:60%;top:34%;bottom:-14%;background:var(--orange);z-index:-1}
.acc-item{border-bottom:1px solid var(--line);padding:26px 0}
.acc-item h3{display:flex;align-items:center;gap:14px;font-size:26px;cursor:pointer;transition:color .25s}
.acc-item h3:hover{color:var(--orange)}
.acc-item h3::before{content:"";width:9px;height:9px;background:var(--orange)}
.acc-item .body{padding-top:20px}
.acc-item .body p{font-size:15px;line-height:1.9;margin-bottom:18px}
.acc-item .b li{display:flex;align-items:center;gap:12px;font-family:var(--font-head);font-size:15px;font-weight:700;color:var(--black);margin-bottom:12px}
.darkwhy{background:var(--black);color:#9a9da1;padding:110px 0 0}
.darkwhy-head{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:64px}
.darkwhy-head h2{color:#fff;font-size:44px;line-height:1.3;margin-top:20px}
.darkwhy-head p{font-size:15px;line-height:1.9}
.dw-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:56px;padding-bottom:60px;border-bottom:1px solid rgba(255,255,255,.12)}
.dw .ic{color:var(--orange);margin-bottom:24px}
.dw .ic svg{width:52px;height:52px}
.dw h3{color:#fff;font-size:21px;margin-bottom:14px}
.dw p{font-size:14px;line-height:1.85}
.dw-cta{display:flex;align-items:center;justify-content:space-between;padding:44px 0 56px;gap:40px}
.dw-cta p{color:#fff;font-size:18px;font-family:var(--font-head);font-weight:600}
.history{display:grid;grid-template-columns:1fr 1fr;background:var(--grey-band)}
.history .im{position:relative;overflow:hidden}
.history .im img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.history .badge{position:absolute;left:38%;top:28%;background:var(--orange);color:#fff;text-align:center;padding:32px 38px}
.history .badge b{font-family:var(--font-head);font-size:54px;font-weight:800;display:block;line-height:1}
.history .badge span{font-family:var(--font-head);font-size:12.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;display:block;margin-top:12px}
.history .copy{padding:110px 90px;align-self:center}
.history .copy h2{font-size:44px;line-height:1.3;margin:20px 0 22px}
.history .copy p{font-size:15px;line-height:1.9;margin-bottom:38px;max-width:540px}
.team{padding:110px 0 90px;text-align:center}
.team-grid{display:flex;justify-content:center;gap:32px;margin-top:60px;position:relative}
.tm{width:340px;text-align:left;position:relative;transition:transform .35s var(--ease)}
.tm:hover{transform:translateY(-6px)}
.tm .imw{position:relative;overflow:hidden}
.tm .imw img{width:100%;height:370px;object-fit:cover;filter:grayscale(1);transition:filter .4s,transform .6s var(--ease)}
.tm:hover .imw img{filter:grayscale(0);transform:scale(1.04)}
.tm .sh{position:absolute;right:0;bottom:0;width:46px;height:46px;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;transition:background .3s}
.tm .sh:hover{background:var(--black)}
.tm .sh svg{width:16px;height:16px}
.tm b{display:block;font-family:var(--font-head);font-size:18px;color:var(--black);margin-top:20px}
.tm small{font-size:14px;color:var(--body)}
.readyband{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:1.15fr 1fr;background:var(--orange-2);position:relative;overflow:hidden}
.readyband .copy{padding:80px 90px;position:relative;z-index:2;color:#fff;background:
  repeating-linear-gradient(0deg,rgba(255,255,255,.10) 0 1px,transparent 1px 40px),
  repeating-linear-gradient(90deg,rgba(255,255,255,.10) 0 1px,transparent 1px 40px)}
.readyband h2{color:#fff;font-size:42px;line-height:1.3;margin-bottom:20px}
.readyband p{font-size:15px;color:rgba(255,255,255,.92);line-height:1.9;max-width:500px;margin-bottom:38px}
.readyband .im{position:relative}
.readyband .im img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);clip-path:polygon(14% 0,100% 0,100% 100%,0 100%)}
.wherework{max-width:1280px;margin:0 auto;padding:110px 32px 80px;display:grid;grid-template-columns:1.5fr 1fr;gap:80px}
.wherework h2{font-size:44px;line-height:1.3;margin:18px 0 20px}
.wherework .intro{font-size:15px;line-height:1.9;margin-bottom:44px}
.locs{display:grid;grid-template-columns:1fr 1fr;gap:44px 50px}
.loc h3{font-size:22px;margin-bottom:12px}
.loc p{font-size:14.5px;line-height:1.95}
.photostrip{display:grid;grid-template-columns:1fr}
.photostrip img{width:100%}

/* ============================================================
   BLOG
   ============================================================ */
.subband{background:var(--dark);display:flex;align-items:center;gap:28px;padding:32px 38px;margin-bottom:72px}
.subband .oi{width:66px;height:66px;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.subband .oi svg{width:30px;height:30px}
.subband h3{color:#fff;font-size:28px;margin-bottom:5px}
.subband p{color:#9a9da1;font-size:14px}
.subband .nl-form{margin-left:auto;width:400px}
.post{margin-bottom:28px}
.post .im{position:relative;margin-bottom:36px}
.post .im img{width:100%;height:560px;object-fit:cover}
.datebadge{position:absolute;right:18px;bottom:-16px;text-align:center;width:88px;z-index:2}
.datebadge b{display:block;background:var(--orange);color:#fff;font-family:var(--font-head);font-size:30px;font-weight:800;padding:12px 0}
.datebadge span{display:block;background:var(--black);color:#fff;font-size:12.5px;padding:6px 0}
.post-grid{display:grid;grid-template-columns:1fr 360px;gap:40px}
.post h2{font-size:34px;line-height:1.32;margin-bottom:14px}
.post h2 a:hover{color:var(--orange)}
.post .ex{font-size:15.5px;line-height:1.85;margin-bottom:28px}
.metacard{background:var(--dark);color:#c9cbcd;padding:28px 30px;position:relative;align-self:start}
.metacard li{display:flex;gap:10px;font-size:14px;margin-bottom:12px;align-items:center}
.metacard li:last-child{margin-bottom:0}
.metacard svg{width:14px;height:14px;color:var(--orange)}
.metacard b{color:#fff;font-weight:600}
.metacard .av{position:absolute;right:24px;top:-28px;width:56px;height:56px;border-radius:50%;border:3px solid #fff;object-fit:cover}
.sharepost{display:flex;align-items:center;gap:16px;justify-content:flex-end}
.sharepost small{font-family:var(--font-head);font-size:12.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--black)}
.sharepost a{width:44px;height:44px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--black)}
.sharepost a:hover{background:var(--orange);border-color:var(--orange);color:#fff}
.sharepost svg{width:15px;height:15px}
.post-divider{position:relative;border:none;border-top:1px solid var(--line);margin:44px 0 52px}
.post-divider::before,.post-divider::after{content:"";position:absolute;top:-4px;width:8px;height:8px;background:var(--orange)}
.post-divider::before{left:0}
.post-divider::after{right:0}
.pager{display:flex;gap:10px;justify-content:center;padding:20px 0 36px}
.pager a{width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:var(--black);color:#fff;font-family:var(--font-head);font-size:16px;font-weight:700;transition:background .3s}
.pager a:hover{background:var(--orange)}
.pager a.on{background:var(--orange)}

/* ============================================================
   BLOG SINGLE
   ============================================================ */
.smeta{display:flex;align-items:center;gap:30px;font-size:14.5px;margin-bottom:30px}
.smeta img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.smeta span{display:flex;align-items:center;gap:9px}
.smeta svg{width:15px;height:15px;color:var(--orange)}
.sbody h2{font-size:28px;margin:32px 0 14px}
.sbody p{font-size:15.5px;line-height:1.9;margin-bottom:20px}
.sbody .blist{grid-template-columns:1fr}
.squote{background:var(--black);border-left:5px solid var(--orange);color:#fff;padding:38px 42px 20px;margin:32px 0;position:relative}
.squote p{font-family:var(--font-head);font-size:17px;font-weight:600;line-height:1.85;color:#fff;margin-bottom:20px}
.squote small{color:#c9cbcd;font-size:14px;display:block;margin-bottom:18px}
.squote .qm{position:absolute;right:32px;bottom:48px;color:var(--orange);display:flex;gap:5px}
.squote .qm i{display:block;width:14px;height:30px;background:var(--orange);transform:skewX(-14deg)}
.imgrow{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:10px 0 26px}
.tagshare{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:32px 0 44px}
.tagshare .tg{font-size:14.5px;color:var(--black)}
.tagshare .tg b{font-family:var(--font-head);font-size:13px;letter-spacing:2px;text-transform:uppercase}
.tagshare .sh{display:flex;align-items:center;gap:14px;font-family:var(--font-head);font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--black)}
.tagshare .sh a{width:40px;height:40px;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center}
.tagshare .sh a:hover{background:var(--black)}
.tagshare .sh svg{width:15px;height:15px}
.comments h2{font-size:32px;margin-bottom:32px}
.comment{display:flex;gap:22px;border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:28px}
.comment img{width:72px;height:72px;object-fit:cover;flex:none}
.comment .cb{flex:1}
.comment b{font-family:var(--font-head);font-size:17px;color:var(--black)}
.comment small{display:block;font-size:13px;margin:5px 0 14px}
.comment p{font-size:15px;line-height:1.85}
.reply{background:var(--orange);color:#fff;font-size:12.5px;font-weight:700;padding:8px 15px;display:inline-flex;align-items:center;gap:7px;float:right;transition:background .3s}
.reply:hover{background:var(--black)}
.cform h2{font-size:32px;margin-bottom:12px}
.cform>p{font-size:14.5px;margin-bottom:28px}
.cform .row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}
.cform input[type=text],.cform input[type=email],.cform textarea,.fform input,.fform select,.fform textarea{width:100%;border:1px solid #d9d9d9;padding:17px 20px;font-family:var(--font-body);font-size:14.5px;color:#333;outline:none;background:#fff;transition:border-color .3s}
.cform input:focus,.cform textarea:focus,.fform input:focus,.fform select:focus,.fform textarea:focus{border-color:var(--orange)}
.cform textarea{height:180px;resize:vertical;margin-bottom:22px}
.cbx{display:flex;align-items:center;gap:12px;font-size:14.5px;margin-bottom:28px}
.cbx input{accent-color:var(--orange);width:17px;height:17px}
/* sidebar widgets shared with detail page */
.w-search{display:flex;border:1px solid var(--line);border-top:none;padding:20px;gap:0}
.w-search input{flex:1;border:1px solid #d9d9d9;padding:14px 15px;font-size:14px;outline:none;min-width:0;transition:border-color .3s}
.w-search input:focus{border-color:var(--orange)}
.w-search button{width:50px;background:var(--black);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .3s}
.w-search button:hover{background:var(--orange)}
.w-search svg{width:16px;height:16px}
.tags{display:flex;flex-wrap:wrap;gap:10px}
.tags a{background:var(--grey-band);color:#4a4d50;font-size:13px;padding:10px 15px}
.tags a:hover{background:var(--orange);color:#fff}
.ecard{border:1px solid var(--line)}
.ecard .ph{position:relative;overflow:hidden}
.ecard .ph img{width:100%;height:290px;object-fit:cover}
.ecard .cap{background:var(--black);color:#fff;padding:18px 22px;position:relative}
.ecard .cap small{display:block;font-size:12px;color:#9a9da1;margin-bottom:3px}
.ecard .cap b{font-family:var(--font-head);font-size:17px}
.ecard .cap .sh{position:absolute;right:0;top:-46px;width:46px;height:46px;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;transition:background .3s}
.ecard .cap .sh:hover{background:var(--black)}
.ecard .cap .sh svg{width:16px;height:16px}
.ecard .tx{padding:22px;font-size:14px;line-height:1.85}

/* ============================================================
   CONTACT
   ============================================================ */
.cmap{max-width:1440px;margin:72px auto 0;padding:0 32px}
.cmap img,.cmap iframe{display:block;width:100%;height:440px;object-fit:cover;border:0;filter:grayscale(1) contrast(1.1)}
.getintouch{max-width:1440px;margin:0 auto;padding:100px 32px 110px;display:grid;grid-template-columns:1fr 1.15fr;gap:110px}
.getintouch .label{margin-bottom:18px}
.getintouch h2{font-size:44px;margin-bottom:20px}
.getintouch>div>p{font-size:15px;line-height:1.9;max-width:440px;margin-bottom:56px}
.gt-call small{display:block;font-size:14px;margin-bottom:10px}
.gt-call .tel{font-family:var(--font-head);font-size:34px;font-weight:800;color:var(--black);margin-bottom:44px}
.gt-cols{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.gt-cols small{display:block;font-size:14px;margin-bottom:8px}
.gt-cols b{font-family:var(--font-head);font-size:17px;color:var(--black)}
.fform{background:#fff;border-top:4px solid var(--orange);box-shadow:0 24px 70px rgba(0,0,0,.1);padding:56px 52px}
.fform .row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}
.fform textarea{height:180px;resize:vertical}
.fform .foot{display:flex;align-items:center;justify-content:space-between;margin-top:28px;gap:24px}
.fform .cbx{margin:0}
.locations{padding:0 0 110px}
.locations h2{text-align:center;font-size:44px;margin-bottom:12px}
.locations .sub{text-align:center;font-size:15px;margin-bottom:60px}
.loc-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px}
.loccard{transition:transform .35s var(--ease)}
.loccard:hover{transform:translateY(-6px)}
.loccard .imw{overflow:hidden;margin-bottom:26px}
.loccard .imw img{width:100%;height:260px;object-fit:cover;transition:transform .6s var(--ease)}
.loccard:hover .imw img{transform:scale(1.06)}
.loccard h3{font-size:27px;margin-bottom:10px}
.loccard .role{font-size:12.5px;letter-spacing:2px;text-transform:uppercase;color:#9a9da1;font-weight:600;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}
.loccard ul{margin-bottom:28px}
.loccard li{position:relative;padding-left:19px;font-size:14.5px;margin-bottom:9px}
.loccard li::before{content:"";position:absolute;left:0;top:10px;width:7px;height:7px;background:var(--orange)}
.loccard li b{color:var(--black)}
.inner-menu-toggle{display:none}

/* ============================================================
   HOME 02 fidelity pass
   Keeps the supplied theme language and geometry. This is an
   intentional recreation of the reference, not a new design layer.
   ============================================================ */
.heroform{
  width:460px;
  flex:none;
  background:#fff;
  border-top:4px solid var(--orange);
  box-shadow:0 28px 70px rgba(0,0,0,.34);
  padding:36px 36px 38px;
}
.heroform-head{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line)}
.heroform .label{margin-bottom:8px;font-size:14px;letter-spacing:2.7px}
.heroform h3{font-size:30px;margin-bottom:8px}
.heroform .form-intro{font-size:14px;line-height:1.65;margin:0;color:#72757a}
.heroform-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.heroform input,.heroform textarea,.heroform select{
  width:100%;
  border:1px solid #d7d7d7;
  padding:14px 16px;
  font-family:var(--font-body);
  font-size:14px;
  color:#333;
  margin-bottom:12px;
  outline:none;
  background:#fff;
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease);
}
.heroform select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#555 50%),linear-gradient(135deg,#555 50%,transparent 50%);background-position:calc(100% - 19px) 50%,calc(100% - 14px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.heroform input:focus,.heroform textarea:focus,.heroform select:focus{
  border-color:var(--orange);
  box-shadow:0 0 0 2px rgba(243,91,30,.12);
}
.heroform textarea{height:92px;resize:vertical}
.heroform-consent{display:flex;align-items:flex-start;gap:10px;margin:2px 0 18px;color:#73767b;font-size:14px;line-height:1.45}
.heroform-consent input{width:17px;height:17px;flex:none;margin:2px 0 0;accent-color:var(--orange)}
.heroform .btn{width:100%}
.heroform .btn .t{flex:1;justify-content:center}
.mainnav>li:focus-within>.sub,.mainnav2>li:focus-within>.sub{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

@media (min-width:1281px){
  /* Inner-page proportions measured against the six supplied exports. */
  .inner-page .phero-inner{min-height:350px}
  .inner-page .phero-copy{padding-top:55px;padding-bottom:50px}
  .inner-page .phero-copy h1{font-size:48px;margin-bottom:12px}
  .inner-page .phero-copy p{font-size:14px;line-height:1.75;margin-bottom:26px}
  .inner-page .phero-art{width:510px}
  .inner-page .sec{padding:74px 0}
  .inner-page .sec-head-c{margin-bottom:42px}
  .inner-page .sec-head-c h2{font-size:34px;margin-bottom:14px}
  .inner-page .sec-head-c p{font-size:14px;line-height:1.75}

  .inner-page .valgrid{gap:26px}
  .inner-page .valcard{padding:34px 36px 32px}
  .inner-page .valcard h3{font-size:20px;margin-bottom:12px}
  .inner-page .valcard p{font-size:13.5px;line-height:1.7;margin-bottom:32px}
  .inner-page .valcard .icbox{right:30px;bottom:26px;width:54px;height:54px}
  .inner-page .valcard .icbox svg{width:28px;height:28px}
  .inner-page .widephoto img{height:330px}
  .inner-page .offer-cards{gap:26px}
  .inner-page .offercard>img{height:190px}
  .inner-page .offercard .pad{padding:22px 25px 25px}
  .inner-page .offercard h3{font-size:18px;margin-bottom:8px}
  .inner-page .offercard p{font-size:13px;line-height:1.68;margin-bottom:16px}
  .inner-page .projgal-grid img{min-height:390px}
  .inner-page .projgal .copy{padding:72px 54px}
  .inner-page .projgal .copy h2{font-size:34px;margin:16px 0 17px}
  .inner-page .projgal .copy p{font-size:13.5px;line-height:1.75;margin-bottom:28px}
  .inner-page .proc-grid{gap:24px;margin-top:40px}
  .inner-page .proccard{padding:34px 26px 30px}
  .inner-page .proccard b{font-size:34px;margin-bottom:10px}
  .inner-page .proccard h3{font-size:16px;margin-bottom:10px}
  .inner-page .proccard p{font-size:12.5px;line-height:1.7}

  .inner-page .detail-grid{grid-template-columns:minmax(0,1fr) 340px;gap:46px}
  .inner-page .dgal{margin-bottom:30px}
  .inner-page .dgal img{max-height:440px;object-fit:cover}
  .inner-page .dmain h2{font-size:32px;margin-bottom:16px}
  .inner-page .dmain h3{font-size:21px;margin:28px 0 12px}
  .inner-page .dmain p{font-size:14px;line-height:1.75;margin-bottom:15px}
  .inner-page .tabbar span{padding:14px 10px;font-size:12px}
  .inner-page .tabpanel{padding:24px 28px}
  .inner-page .hrline{margin:30px 0}
  .inner-page .steps{margin:22px 0 26px}
  .inner-page .steps span{padding:13px 21px;font-size:12.5px}
  .inner-page .faq{margin-top:24px}
  .inner-page .faq-q{font-size:14px;padding:14px 16px 14px 20px}
  .inner-page .faq-a{padding:20px 24px;font-size:13.5px;line-height:1.75}
  .inner-page .widget{margin-bottom:24px}
  .inner-page .w-head{padding:14px 20px;font-size:13.5px}
  .inner-page .w-list li a{padding:12px 20px;font-size:13.5px}
  .inner-page .w-body{padding:20px}
  .inner-page .w-why li{margin-bottom:14px}
  .inner-page .w-why .oi{width:42px;height:42px}
  .inner-page .w-why b{font-size:13.5px}
  .inner-page .scard{padding:32px 24px 0}
  .inner-page .scard .tel{font-size:23px}

  .inner-page .quoteband-grid{gap:54px;padding:58px 66px 54px}
  .inner-page .qb .tick{margin-bottom:18px}
  .inner-page .qb p{font-size:16px;line-height:1.55;margin-bottom:18px}
  .inner-page .videoband img{height:380px}
  .inner-page .counters{gap:82px;padding:56px 0 0}
  .inner-page .counter b{font-size:50px}
  .inner-page .counter span{font-size:13px}
  .inner-page .commit{gap:64px;padding-top:62px;padding-bottom:74px;margin-top:50px}
  .inner-page .commit h2{font-size:34px;margin-bottom:18px}
  .inner-page .commit p{font-size:13.5px;line-height:1.75;margin-bottom:14px}
  .inner-page .ceoquote{padding:32px 42px 18px}
  .inner-page .ceoquote p{font-size:15px;line-height:1.7;margin-bottom:18px}
  .inner-page .sustain{gap:64px;padding-top:74px;padding-bottom:74px}
  .inner-page .acc-item{padding:18px 0}
  .inner-page .acc-item h3{font-size:21px}
  .inner-page .acc-item .body{padding-top:14px}
  .inner-page .acc-item .body p{font-size:13.5px;line-height:1.75}
  .inner-page .darkwhy{padding-top:74px}
  .inner-page .darkwhy-head{gap:60px;margin-bottom:44px}
  .inner-page .darkwhy-head h2{font-size:36px;margin-top:14px}
  .inner-page .darkwhy-head p{font-size:13.5px;line-height:1.75}
  .inner-page .dw-grid{gap:38px;padding-bottom:42px}
  .inner-page .dw .ic{margin-bottom:16px}
  .inner-page .dw h3{font-size:18px;margin-bottom:9px}
  .inner-page .dw p{font-size:12.5px;line-height:1.7}
  .inner-page .dw-cta{padding:30px 0 38px}
  .inner-page .history .copy{padding:72px 66px}
  .inner-page .history .copy h2{font-size:36px;margin:14px 0 16px}
  .inner-page .history .copy p{font-size:13.5px;line-height:1.75;margin-bottom:26px}
  .inner-page .team{padding:74px 0 60px}
  .inner-page .team-grid{margin-top:40px}
  .inner-page .tm{width:300px}
  .inner-page .tm .imw img{height:310px}
  .inner-page .readyband .copy{padding:58px 66px}
  .inner-page .readyband h2{font-size:35px;margin-bottom:14px}
  .inner-page .readyband p{font-size:13.5px;line-height:1.75;margin-bottom:26px}
  .inner-page .wherework{padding-top:74px;padding-bottom:58px;gap:58px}
  .inner-page .wherework h2{font-size:36px;margin:14px 0 15px}
  .inner-page .wherework .intro{font-size:13.5px;line-height:1.75;margin-bottom:30px}
  .inner-page .locs{gap:30px 38px}
  .inner-page .loc h3{font-size:19px}
  .inner-page .loc p{font-size:13px;line-height:1.75}

  .inner-page .subband{padding:24px 28px;margin-bottom:50px}
  .inner-page .subband .oi{width:54px;height:54px}
  .inner-page .subband h3{font-size:23px}
  .inner-page .post{margin-bottom:20px}
  .inner-page .post .im{margin-bottom:26px}
  .inner-page .post .im img{height:390px}
  .inner-page .post-grid{grid-template-columns:minmax(0,1fr) 330px;gap:34px}
  .inner-page .post h2{font-size:29px;margin-bottom:10px}
  .inner-page .post .ex{font-size:14px;line-height:1.75;margin-bottom:20px}
  .inner-page .metacard{padding:22px 24px}
  .inner-page .post-divider{margin:32px 0 38px}
  .inner-page .pager{padding:12px 0 24px}

  .inner-page .smeta{gap:22px;margin-bottom:22px}
  .inner-page .sbody h2{font-size:24px;margin:24px 0 10px}
  .inner-page .sbody p{font-size:14px;line-height:1.75;margin-bottom:15px}
  .inner-page .squote{padding:28px 32px 14px;margin:24px 0}
  .inner-page .imgrow{gap:24px;margin-bottom:20px}
  .inner-page .tagshare{margin:24px 0 32px}
  .inner-page .comments h2,.inner-page .cform h2{font-size:27px}
  .inner-page .comment{padding-bottom:20px;margin-bottom:20px}
  .inner-page .cform textarea{height:140px}
  .inner-page .ecard .ph img{height:230px}

  .inner-page .cmap{margin-top:50px}
  .inner-page .cmap img{height:320px}
  .inner-page .getintouch{padding-top:72px;padding-bottom:78px;gap:76px}
  .inner-page .getintouch h2{font-size:36px;margin-bottom:14px}
  .inner-page .getintouch>div>p{font-size:13.5px;line-height:1.75;margin-bottom:38px}
  .inner-page .gt-call .tel{font-size:28px;margin-bottom:30px}
  .inner-page .fform{padding:40px 38px}
  .inner-page .fform .row{gap:18px;margin-bottom:18px}
  .inner-page .fform textarea{height:130px}
  .inner-page .fform .foot{margin-top:20px}
  .inner-page .locations{padding-bottom:76px}
  .inner-page .locations h2{font-size:36px}
  .inner-page .locations .sub{margin-bottom:42px}
  .inner-page .loccard .imw img{height:210px}
  .inner-page .loccard h3{font-size:22px}
  .inner-page .loccard ul{margin-bottom:20px}
  .inner-page .loccard li{font-size:13px}

  .inner-page .f-cta{padding:78px 0 48px}
  .inner-page .ghost{font-size:62px;margin-bottom:18px}
  .inner-page .f-cta p{font-size:13.5px;line-height:1.75;margin-bottom:30px}
  .inner-page .f-menu{padding:22px 0}
  .inner-page .f-menu a{font-size:11.5px;padding-bottom:22px;margin-bottom:-23px}
  .inner-page .f-cols{gap:52px;padding:42px 0 48px}
  .inner-page .f-logo img{height:42px;margin-bottom:26px}
  .inner-page .f-h{font-size:17px;margin-bottom:20px}
  .inner-page .f-addr li,.inner-page .f-news p{font-size:12.5px}
  .inner-page .f-bottom{padding:18px 0 24px;font-size:11px}

  .detail-page .sec{padding-top:56px;padding-bottom:56px}
  .detail-page .dgal img{height:360px}
  .detail-page .dmain h3{margin-top:22px}
  .detail-page .dmain p{font-size:13px;line-height:1.64;margin-bottom:12px}
  .detail-page .blist{gap:8px 30px;margin:16px 0 8px}
  .detail-page .blist li,.detail-page .cklist li{font-size:13px}
  .detail-page .cklist{gap:10px 30px;margin:16px 0 8px}
  .detail-page .tabs{margin-top:20px}
  .detail-page .tabpanel{padding:20px 24px}
  .detail-page .tabpanel .sol li{font-size:13px;margin-bottom:8px}
  .detail-page .steps{gap:12px;margin:18px 0 22px}
  .detail-page .dvideo{margin-bottom:18px}
  .detail-page .faq-item{margin-bottom:10px}

  .about-page .commit{
    gap:56px;
    padding-top:50px;
    padding-bottom:50px;
    margin-top:40px;
  }
  .about-page .commit .im img{height:420px;object-fit:cover}
  .about-page .sustain{padding-top:55px;padding-bottom:55px}
  .about-page .sustain .im img{height:440px;object-fit:cover}
  .about-page .history{height:400px;max-width:1440px;margin-left:auto;margin-right:auto}
  .about-page .history .copy{padding:44px 58px}
  .about-page .history .badge{top:24%;padding:24px 30px}
  .about-page .history .badge b{font-size:44px}
  .about-page .team{padding-top:62px;padding-bottom:50px}
  .about-page .team-grid{margin-top:32px}
  .about-page .tm .imw img{height:285px}

  .blog-page .sec{padding-top:62px;padding-bottom:62px}

  .single-page .sec{padding-top:56px;padding-bottom:56px}
  .single-page .sbody h2{margin-top:19px}
  .single-page .sbody p{font-size:13.5px;line-height:1.68;margin-bottom:12px}
  .single-page .squote{padding:24px 28px 12px;margin:20px 0}
  .single-page .tagshare{margin:20px 0 26px}
  .single-page .comment{gap:18px;padding-bottom:16px;margin-bottom:16px}
  .single-page .comment p{font-size:13.5px;line-height:1.7}
  .single-page .cform .row{margin-bottom:18px}
  .single-page .cform textarea{height:120px;margin-bottom:16px}

  .home-page .h-topbar-in{height:44px}
  .home-page .h-main{
    position:absolute;
    top:44px;
    left:0;
    right:0;
    z-index:100;
    height:82px;
    background:rgba(18,20,21,.88);
  }
  .home-page .h-logo-sq{width:82px;height:82px}
  .home-page .h-logo-sq img{width:45px;height:45px}
  .home-page .mainnav2{margin-left:44px}
  .home-page .mainnav2>li>a{padding:0 22px;font-size:12.5px;letter-spacing:1.25px}
  .home-page .h-main .srch{padding:0 28px}
  .home-page .h-cta-block{padding:0 34px;font-size:12.5px}
  .home-page .h-burger{width:82px}
  .home-page .h-burger i:nth-child(2){margin-right:26px}
  .home-page .h-burger:hover i:nth-child(2){margin-right:26px}

  .home-page .hero{
    min-height:664px;
    margin-top:0;
  }
  .home-page .hero .shade{
    background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.24) 58%,rgba(0,0,0,.05));
  }
  .home-page .hero-in{
    min-height:664px;
    max-width:1500px;
    padding:132px 54px 48px 76px;
    gap:42px;
  }
  .home-page .hero-copy{max-width:850px}
  .home-page .hero .chip{
    font-size:12px;
    letter-spacing:3px;
    padding:10px 20px;
    margin-bottom:22px;
  }
  .home-page .hero h1{font-size:46px;line-height:1.22;margin-bottom:16px;white-space:nowrap}
  .home-page .hero p{font-size:15px;line-height:1.75;max-width:610px;margin-bottom:28px}
  .home-page .hero .btns{gap:18px}
  .home-page .hero .btn .t{height:52px;padding:0 25px}
  .home-page .hero .btn .sq{width:52px;height:52px}

  .home-page .svcband{
    background:linear-gradient(to bottom,transparent 0 76px,#fff 76px);
    position:relative;
    z-index:5;
    margin-top:-76px;
  }
  .home-page .svcband-grid{
    position:relative;
    z-index:5;
    grid-template-columns:minmax(0,1fr) 340px 340px;
    max-width:1440px;
    min-height:450px;
    margin-top:0;
    background:var(--grey-band);
  }
  .home-page .svc-left{padding:34px 40px 30px 32px}
  .home-page .svc-left-head{margin-bottom:24px}
  .home-page .svc-cards{gap:38px}
  .home-page .svc-card .imw{margin-bottom:18px}
  .home-page .svc-card .imw img{height:160px}
  .home-page .svc-card h3{font-size:19px;margin-bottom:9px}
  .home-page .svc-card p{font-size:13.5px;line-height:1.72;margin-bottom:16px}
  .home-page .aboutpanel{padding:34px 32px}
  .home-page .aboutpanel .label{margin-bottom:18px}
  .home-page .aboutpanel h2{font-size:27px;line-height:1.32;margin-bottom:22px}
  .home-page .whypanel{padding:32px 28px}
  .home-page .whypanel .label{margin-bottom:16px}
  .home-page .whypanel>p{font-size:13px;line-height:1.7;margin-bottom:18px}
  .home-page .checks li{font-size:12.5px;gap:9px;margin-bottom:10px}
  .home-page .ck{width:18px;height:18px}

  .home-page .projband{margin-top:38px;background:#fff}
  .home-page .projband-grid{background:var(--dark)}
  .home-page .projband .wf-l{left:max(0px,calc((100% - 1440px)/2))}
  .home-page .projband .copy{padding:84px 52px 80px 32px}
  .home-page .projband .copy h2{font-size:38px;margin-bottom:20px}
  .home-page .projband .copy p{font-size:13.5px;line-height:1.78;margin-bottom:30px}
  .home-page .proj-visual{min-height:520px}
  .home-page .proj-card{top:88px;width:55%;padding:32px 34px 30px}
  .home-page .proj-card h3{font-size:22px;margin-bottom:10px}
  .home-page .proj-card p,.home-page .proj-card li{font-size:13px}
  .home-page .proj-card .sqbtn{right:24px;bottom:26px}

  .home-page .protest{padding:54px 0}
  .home-page .protest-grid{gap:38px}
  .home-page .gcard{padding:42px 44px}
  .home-page .gcard .ghost-l{font-size:43px;margin-bottom:12px}
  .home-page .gcard>p{font-size:13.5px;line-height:1.78;margin-bottom:24px}
  .home-page .gcard .corner{right:44px;top:112px}
  .home-page .gcard .photo{margin:0 -44px -42px}
  .home-page .tcard h2{font-size:34px;margin-bottom:12px}
  .home-page .stars{margin-bottom:18px}
  .home-page .tcard h4{font-size:16px;margin-bottom:10px}
  .home-page .tcard .quote{font-size:13px;line-height:1.72;margin-bottom:20px}
  .home-page .tcard hr{margin-bottom:20px}
  .home-page .t-author img{width:58px;height:58px}
  .home-page .t-author b{font-size:15px}
  .home-page .t-author small{font-size:11.5px}
  .home-page .bigquote{right:40px;top:38px}
  .home-page .bigquote i{width:24px;height:52px}

  .home-page .statband{min-height:410px}
  .home-page .stat-orange b{font-size:64px}
  .home-page .stat-orange span{font-size:13px}
  .home-page .stat-dark h3{font-size:27px}
  .home-page .stat-dark p{font-size:12.5px}
  .home-page .buildband{height:405px;max-width:1440px;margin:38px auto 0}
  .home-page .clients{padding:45px 0}

  .home-page .hfooter-in{max-width:1060px;padding:56px 32px 0}
  .home-page .hfooter .map{height:190px;object-fit:cover;margin-bottom:34px}
  .home-page .hf-contacts{gap:28px;padding-bottom:34px}
  .home-page .hf-contacts .hc{gap:12px}
  .home-page .hf-contacts .hc .ic{width:42px;height:42px;border-radius:0}
  .home-page .hf-contacts .hc .tx b{font-size:13px}
  .home-page .hf-cols{gap:50px;padding:38px 0 42px}
  .home-page .f-logo img{height:42px;margin-bottom:26px}
  .home-page .f-h{font-size:17px;margin-bottom:20px}
  .home-page .menu2col a{font-size:12.5px;margin-bottom:11px}
  .home-page .f-news p{font-size:12.5px;line-height:1.7}
  .home-page .f-bottom{padding:18px 0 24px;font-size:11px}
}

/* ============================================================
   Responsive behaviour using the same visual system
   ============================================================ */
@media (max-width:1280px){
  .phero-copy{padding-left:32px}
  .hero h1{font-size:46px}
  .svcband-grid{grid-template-columns:1fr 320px 320px}
  .mainnav2{margin-left:24px}
  .mainnav2>li>a{padding:0 16px;font-size:12px}
  .h-cta-block{padding:0 24px}
}

@media (max-width:1100px){
  .h-topbar .items .it:nth-child(3),.h-topbar .soc{display:none}
  .h-topbar .items{margin:0;gap:28px}
  .h-main{height:82px}
  .h-logo-sq{width:82px;height:82px}
  .mainnav2{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    margin:0;
    padding:10px 24px 20px;
    background:var(--dark);
    box-shadow:0 20px 45px rgba(0,0,0,.28);
  }
  .h-main.menu-open .mainnav2{display:block}
  .mainnav2>li{display:block}
  .mainnav2>li>a{min-height:48px;padding:0;border-bottom:1px solid rgba(255,255,255,.1)}
  .mainnav2 .sub{
    position:static;
    display:none;
    opacity:1;
    visibility:visible;
    transform:none;
    box-shadow:none;
    min-width:0;
    background:#191b1d;
  }
  .mainnav2>li:focus-within>.sub{display:block}
  .mainnav2>li.open>.sub{display:block}
  .mainnav2 .sub li a{color:#fff;background:transparent}
  .h-main .sp{display:block}
  .h-burger{width:82px}
  .hero-in{padding:70px 40px;gap:36px}
  .heroform{width:360px}
  .svcband-grid{grid-template-columns:1fr 300px}
  .whypanel{grid-column:1/-1}
  .projband-grid{grid-template-columns:1fr 1.2fr}
  .hf-contacts{grid-template-columns:1fr}
}

@media (max-width:760px){
  .h-topbar-in{height:42px;padding:0 18px}
  .h-topbar .items .it:nth-child(2){display:none}
  .h-main{height:72px}
  .h-logo-sq{width:72px;height:72px}
  .h-logo-sq img{width:42px;height:42px}
  .h-main .srch,.h-cta-block{display:none}
  .h-burger{width:72px}
  .hero{min-height:auto}
  .hero-in{display:block;padding:54px 22px}
  .hero-copy{max-width:none;margin-bottom:34px}
  .hero h1{font-size:36px;line-height:1.18}
  .home-page .hero h1{white-space:normal}
  .hero p{font-size:14px}
  .hero .btns{flex-wrap:wrap;gap:12px}
  .heroform{width:100%;padding:26px 22px}
  .svcband-grid{display:block}
  .svc-left{padding:44px 22px}
  .svc-cards{grid-template-columns:1fr;gap:34px}
  .svc-card .imw img{height:240px}
  .aboutpanel,.whypanel{min-height:420px}
  .projband{margin-top:28px}
  .projband-grid{display:block}
  .projband .copy{padding:64px 22px}
  .projband .copy h2{font-size:34px}
  .proj-visual{min-height:540px}
  .proj-card{left:22px;top:42px;width:calc(100% - 44px);padding:28px}
  .proj-visual .ph{width:100%}
  .protest{padding:38px 0}
  .container{padding:0 18px}
  .protest-grid{grid-template-columns:1fr;gap:24px}
  .gcard{padding:38px 28px}
  .gcard .photo{margin:0 -28px -38px}
  .statband{grid-template-columns:1fr 1fr}
  .statband .cell,.stat-orange,.stat-dark{min-height:300px}
  .buildband{height:300px}
  .clients{padding:34px 0}
  .hfooter-in{padding:48px 20px 0}
  .hfooter .map{height:180px;object-fit:cover;margin-bottom:36px}
  .hf-cols{grid-template-columns:1fr;gap:34px;padding:42px 0}
  .f-bottom{display:block;line-height:1.7}
  .f-bottom .links{margin-top:12px;gap:18px;flex-wrap:wrap}
  .totop{right:18px;bottom:18px}
}

@media (max-width:1100px){
  .inner-page{overflow-x:hidden}
  .inner-page .hdr-top{padding:20px 0}
  .inner-page .hdr-logo img{height:46px}
  .inner-page .hdr-contacts,.inner-page .hdr-lang{display:none}
  .inner-page .hdr-nav-row{min-height:70px;position:relative}
  .inner-menu-toggle{
    display:flex;
    width:48px;
    height:48px;
    border:1px solid rgba(255,255,255,.18);
    background:transparent;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    cursor:pointer;
  }
  .inner-menu-toggle i{width:23px;height:2px;background:#fff;display:block}
  .inner-page .mainnav{
    display:none;
    position:absolute;
    top:100%;
    left:20px;
    right:20px;
    z-index:300;
    background:var(--dark);
    box-shadow:0 22px 48px rgba(0,0,0,.3);
    padding:10px 20px 18px;
  }
  .inner-page .topwrap.menu-open .mainnav{display:block}
  .inner-page .mainnav>li>a,.inner-page .mainnav>li:first-child>a{
    min-height:48px;
    padding:0;
    border-top:none;
    border-bottom:1px solid rgba(255,255,255,.1);
  }
  .inner-page .mainnav>li.active>a{padding-top:0}
  .inner-page .mainnav .sub{
    position:static;
    display:none;
    min-width:0;
    opacity:1;
    visibility:visible;
    transform:none;
    box-shadow:none;
    background:#181a1c;
  }
  .inner-page .mainnav>li.open>.sub{display:block}
  .inner-page .mainnav .sub li a{color:#fff;background:transparent}
  .inner-page .hdr-right{margin-left:auto}
  .inner-page .phero-copy{padding-left:32px}
  .inner-page .valgrid,.inner-page .offer-cards{grid-template-columns:1fr 1fr}
  .inner-page .proc-grid{grid-template-columns:1fr 1fr}
  .inner-page .detail-grid{grid-template-columns:1fr}
  .inner-page .dside{display:grid;grid-template-columns:1fr 1fr;gap:24px}
  .inner-page .quoteband-grid{gap:28px;padding-left:38px;padding-right:38px}
  .inner-page .commit,.inner-page .sustain{gap:44px}
  .inner-page .dw-grid{grid-template-columns:1fr 1fr}
  .inner-page .history .copy{padding-left:40px;padding-right:40px}
  .inner-page .team-grid{flex-wrap:wrap}
  .inner-page .wherework{grid-template-columns:1fr;gap:34px}
  .inner-page .post-grid{grid-template-columns:1fr}
  .inner-page .metacard{max-width:420px}
  .inner-page .getintouch{gap:48px}
  .inner-page .loc-grid{grid-template-columns:1fr 1fr}
  .inner-page .f-menu{flex-wrap:wrap}
}

@media (max-width:760px){
  .inner-page .container,.inner-page .narrow{padding-left:20px;padding-right:20px}
  .inner-page .hdr-top{padding:16px 0}
  .inner-page .hdr-logo img{height:40px}
  .inner-page .hdr-nav-row{min-height:62px}
  .inner-page .hdr-cta{display:none}
  .inner-page .hdr-right{gap:0}
  .inner-page .mainnav{left:0;right:0}
  .inner-page .phero-inner{display:block;min-height:0}
  .inner-page .phero-copy{
    width:100%;
    padding:46px 20px 42px;
  }
  .inner-page .phero-copy h1{font-size:38px}
  .inner-page .phero-copy p{font-size:14px}
  .inner-page .phero-art{left:20%;width:420px}
  .inner-page .phero-img{position:relative;width:100%;height:220px}
  .inner-page .phero-img img{clip-path:none}
  .inner-page .sec{padding:58px 0}
  .inner-page .sec-head-c{margin-bottom:34px}
  .inner-page .sec-head-c h2{font-size:30px}
  .inner-page .valgrid,.inner-page .offer-cards,.inner-page .proc-grid{grid-template-columns:1fr}
  .inner-page .valcard{padding:34px 28px}
  .inner-page .widephoto img{height:220px}
  .inner-page .offer-cards{padding:0 20px}
  .inner-page .offercard>img{height:230px}
  .inner-page .projgal-grid{grid-template-columns:1fr}
  .inner-page .projgal-grid img{min-height:260px;height:260px}
  .inner-page .projgal .copy{padding:54px 24px}
  .inner-page .proc-grid{margin-top:32px}
  .inner-page .dside{display:block}
  .inner-page .dmain,.inner-page aside{min-width:0}
  .inner-page .smeta{flex-wrap:wrap}
  .inner-page .dgal img,.detail-page .dgal img{height:260px}
  .inner-page .blist,.inner-page .cklist{grid-template-columns:1fr}
  .inner-page .tabbar{display:block}
  .inner-page .steps{align-items:flex-start}
  .inner-page .steps svg{display:none}
  .inner-page .quoteband-grid{grid-template-columns:1fr;gap:34px;padding:44px 28px}
  .inner-page .videoband img{height:260px}
  .inner-page .counters{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:42px 20px 0}
  .inner-page .counter{gap:10px}
  .inner-page .counter b{font-size:40px}
  .inner-page .commit,.inner-page .sustain{grid-template-columns:1fr;padding-left:20px;padding-right:20px}
  .about-page .commit .im img,.about-page .sustain .im img{height:300px}
  .inner-page .darkwhy{padding-top:56px}
  .inner-page .darkwhy-head{grid-template-columns:1fr;gap:20px}
  .inner-page .dw-grid{grid-template-columns:1fr;gap:32px}
  .inner-page .dw-cta{display:block}
  .inner-page .dw-cta .btn{margin-top:20px}
  .about-page .history{height:auto;grid-template-columns:1fr}
  .inner-page .history .im{height:300px}
  .inner-page .history .copy{padding:54px 24px}
  .inner-page .team{padding-left:20px;padding-right:20px}
  .inner-page .tm{width:100%;max-width:340px}
  .inner-page .readyband{grid-template-columns:1fr}
  .inner-page .readyband .copy{padding:52px 26px}
  .inner-page .readyband .im{height:260px}
  .inner-page .wherework{padding:58px 20px 48px}
  .inner-page .locs{grid-template-columns:1fr}
  .inner-page .clients{padding:38px 0}
  .inner-page .subband{display:block;margin-bottom:38px}
  .inner-page .subband .oi{margin-bottom:16px}
  .inner-page .subband .nl-form{width:100%;margin-top:18px}
  .inner-page .post .im img{height:260px}
  .inner-page .post h2{font-size:25px}
  .inner-page .metacard{max-width:none}
  .inner-page .sharepost{justify-content:flex-start;margin-top:16px}
  .inner-page .imgrow{grid-template-columns:1fr}
  .inner-page .tagshare{display:block}
  .inner-page .tagshare .sh{margin-top:18px}
  .inner-page .comment{align-items:flex-start}
  .inner-page .comment img{width:54px;height:54px}
  .inner-page .cform .row{grid-template-columns:1fr}
  .inner-page .cmap{padding:0 20px;margin-top:34px}
  .inner-page .cmap img{height:230px}
  .inner-page .getintouch{grid-template-columns:1fr;padding:56px 20px;gap:38px}
  .inner-page .gt-cols{grid-template-columns:1fr;gap:24px}
  .inner-page .gt-cols b{overflow-wrap:anywhere}
  .inner-page .fform{padding:34px 22px}
  .inner-page .fform .row{grid-template-columns:1fr}
  .inner-page .fform .foot{display:block}
  .inner-page .fform .foot .btn{margin-top:20px}
  .inner-page .locations{padding:0 20px 58px}
  .inner-page .loc-grid{grid-template-columns:1fr;gap:38px}
  .inner-page .f-cta{padding:64px 0 42px}
  .inner-page .ghost{font-size:46px}
  .inner-page .f-cta .btns{flex-wrap:wrap}
  .inner-page .f-menu{gap:18px 24px}
  .inner-page .f-menu a{margin-bottom:0;padding-bottom:8px}
  .inner-page .f-cols{grid-template-columns:1fr;gap:36px}
  .inner-page .f-bottom{display:block}
  .inner-page .f-bottom .links{margin-top:12px;flex-wrap:wrap}
}

/* ============================================================
   V4 presentation polish
   Larger readable type, a single wide desktop frame and more
   generous proportions without changing the supplied theme.
   ============================================================ */
body p{font-size:15px!important}
body li{font-size:14px!important}
body small{font-size:14px!important}
body input,body textarea,body select{font-size:15px!important}
body .vmore,body .f-menu a,body .f-bottom,body .role{font-size:14px!important}

.hdr-contacts{gap:72px}
.hdr-top{padding:34px 0 30px}
.hdr-logo img{height:62px}
.hc .tx small{font-size:14px!important}
.hc .tx b{font-size:17px}
.phero-copy{padding-left:max(40px,calc((100% - 1520px)/2))}

@media (min-width:1281px){
  /* Inner pages: restore the scale and air lost in the compact pass. */
  .inner-page .phero-inner{min-height:440px}
  .inner-page .phero-copy{padding-top:84px;padding-bottom:72px}
  .inner-page .phero-copy h1{font-size:58px;margin-bottom:18px}
  .inner-page .phero-copy p{font-size:16px!important;line-height:1.85;margin-bottom:34px}
  .inner-page .phero-art{width:640px}
  .inner-page .sec{padding:108px 0}
  .inner-page .sec-head-c{margin-bottom:60px}
  .inner-page .sec-head-c h2{font-size:42px;margin-bottom:20px}
  .inner-page .sec-head-c p{font-size:16px!important;line-height:1.85}
  .inner-page .valgrid,.inner-page .offer-cards{gap:34px}
  .inner-page .valcard{padding:46px 48px 42px}
  .inner-page .valcard h3{font-size:24px;margin-bottom:16px}
  .inner-page .valcard p{font-size:15px!important;line-height:1.82;margin-bottom:42px}
  .inner-page .widephoto img{height:420px}
  .inner-page .offercard>img{height:240px}
  .inner-page .offercard .pad{padding:30px 32px 34px}
  .inner-page .offercard h3{font-size:22px;margin-bottom:12px}
  .inner-page .offercard p{font-size:15px!important;line-height:1.78;margin-bottom:22px}
  .inner-page .projgal-grid img{min-height:470px}
  .inner-page .projgal .copy{padding:92px 68px}
  .inner-page .projgal .copy h2{font-size:40px;margin:20px 0 22px}
  .inner-page .projgal .copy p{font-size:15px!important;line-height:1.82;margin-bottom:36px}
  .inner-page .proc-grid{gap:30px;margin-top:54px}
  .inner-page .proccard{padding:42px 34px 38px}
  .inner-page .proccard b{font-size:40px;margin-bottom:14px}
  .inner-page .proccard h3{font-size:19px;margin-bottom:12px}
  .inner-page .proccard p{font-size:15px!important;line-height:1.78}

  .inner-page .detail-grid{grid-template-columns:minmax(0,1fr) 380px;gap:64px}
  .inner-page .dmain h2{font-size:38px}
  .inner-page .dmain h3{font-size:25px;margin:34px 0 15px}
  .inner-page .dmain p,.detail-page .dmain p{font-size:15px!important;line-height:1.8;margin-bottom:18px}
  .inner-page .faq-a,.inner-page .tabpanel .sol li,.detail-page .blist li,.detail-page .cklist li{font-size:14px!important}
  .inner-page .w-body p,.inner-page .w-list li a,.inner-page .w-why b{font-size:14px!important}
  .inner-page .widget{margin-bottom:30px}

  .inner-page .quoteband-grid{gap:66px;padding:72px 78px 68px}
  .inner-page .commit,.inner-page .sustain{gap:84px;padding-top:90px;padding-bottom:90px}
  .inner-page .commit h2{font-size:42px}
  .inner-page .commit p,.inner-page .acc-item .body p,.inner-page .darkwhy-head p,.inner-page .dw p,.inner-page .history .copy p,.inner-page .wherework .intro,.inner-page .loc p,.inner-page .readyband p{font-size:15px!important;line-height:1.82}
  .inner-page .darkwhy{padding-top:96px}
  .inner-page .darkwhy-head{margin-bottom:58px}
  .inner-page .darkwhy-head h2{font-size:42px}
  .inner-page .dw-grid{gap:54px;padding-bottom:60px}
  .inner-page .history{max-width:var(--site-max)}
  .inner-page .history .copy{padding:90px 82px}
  .inner-page .history .copy h2{font-size:42px}
  .inner-page .team{padding:96px 0 86px}
  .inner-page .readyband .copy{padding:78px 82px}
  .inner-page .wherework{padding-top:96px;padding-bottom:82px}

  .inner-page .post .ex,.inner-page .sbody p,.single-page .sbody p,.single-page .comment p{font-size:15px!important;line-height:1.82}
  .inner-page .post h2{font-size:34px}
  .inner-page .post .im img{height:440px}
  .inner-page .post-divider{margin:44px 0 50px}
  .inner-page .comments h2,.inner-page .cform h2{font-size:32px}

  .inner-page .cmap{max-width:var(--site-max);margin-top:72px}
  .inner-page .cmap img{height:390px}
  .inner-page .getintouch{max-width:var(--site-max);padding-top:96px;padding-bottom:104px;gap:100px}
  .inner-page .getintouch h2{font-size:44px;margin-bottom:18px}
  .inner-page .getintouch>div>p{font-size:15px!important;line-height:1.85;margin-bottom:48px}
  .inner-page .fform{padding:50px 48px}
  .inner-page .fform textarea{height:160px}
  .inner-page .locations{padding-bottom:104px}
  .inner-page .locations h2{font-size:42px}
  .inner-page .locations .sub{font-size:15px!important;margin-bottom:56px}
  .inner-page .loccard .imw img{height:250px}
  .inner-page .loccard h3{font-size:26px}
  .inner-page .loccard li{font-size:14px!important;line-height:1.65;margin-bottom:11px}

  .inner-page .f-cta{padding:112px 0 70px}
  .inner-page .ghost{font-size:82px;margin-bottom:24px}
  .inner-page .f-cta p{font-size:16px!important;line-height:1.85;margin-bottom:40px}
  .inner-page .f-menu{padding:28px 0}
  .inner-page .f-menu a{padding-bottom:28px;margin-bottom:-29px}
  .inner-page .f-cols{gap:72px;padding:60px 0 66px}
  .inner-page .f-logo img{height:50px;margin-bottom:34px}
  .inner-page .f-h{font-size:20px;margin-bottom:26px}
  .inner-page .f-addr li,.inner-page .f-news p{font-size:15px!important;line-height:1.75}
  .inner-page .f-bottom{padding:24px 0 30px}

  /* Home: one 1600px frame for every principal section. */
  .home-page .h-topbar-in{height:52px;padding:0 44px}
  .home-page .h-topbar .items{gap:56px}
  .home-page .h-topbar .it{font-size:14px}
  .home-page .h-main{top:52px;height:104px}
  .home-page .h-logo-sq{width:104px;height:104px}
  .home-page .h-logo-sq img{width:57px;height:57px}
  .home-page .mainnav2{margin-left:58px}
  .home-page .mainnav2>li>a{padding:0 27px;font-size:14px;letter-spacing:1.5px}
  .home-page .h-main .srch{padding:0 36px}
  .home-page .h-cta-block{padding:0 46px;font-size:14px}
  .home-page .h-burger{width:104px}
  .home-page .h-burger i:nth-child(2),.home-page .h-burger:hover i:nth-child(2){margin-right:37px}

  .home-page .hero{min-height:820px}
  .home-page .hero .shade{background:linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.34) 56%,rgba(0,0,0,.12))}
  .home-page .hero-in{min-height:820px;max-width:var(--site-max);padding:190px 56px 72px;gap:78px}
  .home-page .hero-copy{max-width:900px}
  .home-page .hero .chip{font-size:14px;padding:12px 24px;margin-bottom:28px}
  .home-page .hero h1{font-size:58px;line-height:1.18;margin-bottom:24px}
  .home-page .hero p{font-size:17px!important;line-height:1.82;max-width:690px;margin-bottom:38px}
  .home-page .hero .btn .t{height:58px;padding:0 30px}
  .home-page .hero .btn .sq{width:58px;height:58px}

  .home-page .svcband{background:linear-gradient(to bottom,transparent 0 96px,#fff 96px);margin-top:-96px}
  .home-page .svcband-grid{grid-template-columns:minmax(0,1fr) 380px 380px;max-width:var(--site-max);min-height:570px}
  .home-page .svc-left{padding:54px 54px 50px 40px}
  .home-page .svc-left-head{margin-bottom:36px}
  .home-page .svc-cards{gap:48px}
  .home-page .svc-card .imw{margin-bottom:24px}
  .home-page .svc-card .imw img{height:220px}
  .home-page .svc-card h3{font-size:23px;margin-bottom:12px}
  .home-page .svc-card p{font-size:15px!important;line-height:1.8;margin-bottom:22px}
  .home-page .aboutpanel{padding:50px 42px}
  .home-page .aboutpanel h2{font-size:31px;line-height:1.35;margin-bottom:30px}
  .home-page .whypanel{padding:48px 38px}
  .home-page .whypanel>p{font-size:15px!important;line-height:1.78;margin-bottom:26px}
  .home-page .checks li{font-size:14px!important;gap:12px;margin-bottom:15px}
  .home-page .ck{width:20px;height:20px}

  .home-page .projband{margin-top:76px}
  .home-page .projband-grid{max-width:var(--site-max)}
  .home-page .projband .wf-l{left:max(0px,calc((100% - var(--site-max))/2))}
  .home-page .projband .copy{padding:112px 68px 108px 40px}
  .home-page .projband .copy h2{font-size:44px;margin-bottom:26px}
  .home-page .projband .copy p{font-size:15px!important;line-height:1.85;margin-bottom:38px}
  .home-page .proj-visual{min-height:650px}
  .home-page .proj-card{top:104px;width:57%;padding:42px 44px 40px}
  .home-page .proj-card h3{font-size:27px;margin-bottom:14px}
  .home-page .proj-card p,.home-page .proj-card li{font-size:14px!important;line-height:1.7}
  .home-page .proj-card .sqbtn{right:30px;bottom:32px}

  .home-page .protest{padding:96px 0}
  .home-page .protest .container{max-width:var(--site-max)}
  .home-page .protest-grid{gap:52px}
  .home-page .gcard{padding:56px 58px}
  .home-page .gcard .ghost-l{font-size:52px;margin-bottom:18px}
  .home-page .gcard>p,.home-page .tcard .quote{font-size:15px!important;line-height:1.85}
  .home-page .gcard .corner{right:58px;top:138px}
  .home-page .gcard .photo{margin:0 -58px -56px}
  .home-page .tcard h2{font-size:41px}
  .home-page .tcard h4{font-size:19px}
  .home-page .t-author b{font-size:17px}
  .home-page .t-author small{font-size:14px!important}

  .home-page .statband{max-width:var(--site-max);min-height:500px}
  .home-page .stat-orange b{font-size:76px}
  .home-page .stat-orange span{font-size:14px}
  .home-page .stat-dark h3{font-size:34px}
  .home-page .stat-dark p{font-size:15px!important;line-height:1.8}
  .home-page .buildband{height:500px;max-width:var(--site-max);margin:76px auto 0}
  .home-page .clients{padding:62px 0}
  .home-page .clients img{max-width:var(--site-max)}

  .home-page .hfooter-in{max-width:var(--site-max);padding:82px 40px 0}
  .home-page .hfooter .map{height:260px;margin-bottom:54px}
  .home-page .hf-contacts{gap:54px;padding-bottom:52px}
  .home-page .hf-contacts .hc{gap:16px}
  .home-page .hf-contacts .hc .ic{width:52px;height:52px}
  .home-page .hf-contacts .hc .tx b{font-size:15px}
  .home-page .hf-cols{gap:80px;padding:58px 0 64px}
  .home-page .f-logo img{height:50px;margin-bottom:34px}
  .home-page .f-h{font-size:20px;margin-bottom:26px}
  .home-page .menu2col a,.home-page .f-news p{font-size:15px!important;line-height:1.75}
  .home-page .f-bottom{padding:24px 0 30px;font-size:14px!important}
}

@media (max-width:1280px){
  .container,.narrow{padding-left:28px;padding-right:28px}
  .heroform{width:390px;padding:30px}
  .heroform-grid{grid-template-columns:1fr}
  .hero-in{padding-top:96px;padding-bottom:70px}
}

@media (min-width:1281px) and (max-width:1599px){
  .home-page .hero-in{padding-left:40px;padding-right:40px;gap:40px}
  .home-page .hero h1{font-size:50px;white-space:normal}
  .home-page .heroform{width:420px;padding:32px}
  .home-page .heroform-grid{grid-template-columns:1fr}
  .home-page .svcband-grid{grid-template-columns:minmax(0,1fr) 350px 350px}
}

@media (max-width:760px){
  .container,.narrow{padding-left:20px;padding-right:20px}
  .home-page .hero-in{padding:70px 20px 52px}
  .home-page .hero h1{font-size:40px;line-height:1.15}
  .home-page .hero p{font-size:15px!important}
  .heroform{padding:30px 24px;width:100%}
  .heroform h3{font-size:27px}
  .heroform-grid{grid-template-columns:1fr}
  .home-page .svc-left{padding-top:58px;padding-bottom:58px}
  .home-page .projband{margin-top:48px}
  .home-page .protest{padding:58px 0}
  .home-page .buildband{margin-top:48px}
  .home-page .hfooter-in{padding-top:58px}
}

/* ============================================================
   WordPress production adaptation
   The supplied Lead Gen X geometry remains the visual source.
   ============================================================ */
.skip-link{position:fixed;left:18px;top:-80px;z-index:9999;background:#fff;color:var(--black);padding:12px 18px;font-weight:800}
.skip-link:focus{top:18px}
.website-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.mobile-actions{display:none}
.lgx-client-site{font-size:16px}
.lgx-client-site p,.lgx-client-site li,.lgx-client-site input,.lgx-client-site select,.lgx-client-site textarea{font-size:max(14px,1rem)}
.home-page .h-main{top:auto!important}
.h-top-note{font-family:var(--font-head);font-size:13px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#9a9da1}
.h-quick-call{display:flex;flex-direction:column;justify-content:center;padding:0 30px;border-left:1px solid rgba(255,255,255,.12);color:#fff;white-space:nowrap}
.h-quick-call small{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#9a9da1}
.h-quick-call b{font-family:var(--font-head);font-size:16px}
.h-quick-call:hover{color:var(--orange)}
.h-burger{border:0}
.hdr-logo img{width:auto;max-width:360px;height:68px}
.hdr-top{min-height:116px}
.hdr-contacts{gap:36px}
.hdr-nav-row{min-height:82px;border-top:1px solid rgba(255,255,255,.1)}
.mainnav>li>a{padding-left:22px;padding-right:22px}
.mainnav2>li>a{padding-left:22px;padding-right:22px}

.lgx-home-hero{background-image:var(--page-image,var(--hero-image));background-position:center}
.home-page .hero{min-height:800px}
.home-page .hero-in{min-height:800px;max-width:var(--site-max);padding:82px 40px;grid-template-columns:minmax(0,1fr) 520px;display:grid;gap:72px}
.home-page .hero-copy{max-width:900px}
.home-page .hero h1{font-size:clamp(48px,3.5vw,72px);line-height:1.08;letter-spacing:-1px;max-width:980px;white-space:normal}
.home-page .hero p{font-size:18px!important;line-height:1.8;max-width:760px}
.heroform{width:100%;max-width:520px;padding:34px 36px 36px}
.heroform .eyebrow{font-family:var(--font-head);font-size:12px!important;font-weight:800;letter-spacing:2.6px;text-transform:uppercase;color:var(--orange);margin:0 0 6px}
.heroform .lead-panel-head{padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.heroform .lead-panel-head h3{font-size:30px;line-height:1.2;margin:0 0 8px}
.heroform .lead-panel-head p:last-child{font-size:14px!important;line-height:1.55;margin:0;color:#65686d}
.heroform .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.heroform .form-grid label{display:block;min-width:0}
.heroform .form-grid label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.heroform .form-grid .wide{grid-column:1/-1}
.heroform input,.heroform textarea,.heroform select{margin:0;height:50px;font-size:14px!important;border:1px solid #d7d7d7;padding:12px 14px}
.heroform textarea{height:72px}
.heroform .form-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px!important;line-height:1.45;color:#65686d;margin:14px 0}
.heroform .form-consent input{width:17px;height:17px;min-width:17px;margin-top:2px;padding:0;accent-color:var(--orange)}
.heroform-submit{width:100%}
.heroform-submit .t{flex:1;justify-content:center}
.form-notice{padding:12px 14px;margin-bottom:14px;font-size:14px;font-weight:700}
.form-notice.success{background:#e8f6ed;color:#175f32}.form-notice.error{background:#fff0ec;color:#8d2c14}

.home-page .svcband{background:linear-gradient(to bottom,transparent 0 96px,var(--grey-band) 96px);margin-top:-96px;position:relative;z-index:3}
.home-page .svcband-grid,.home-page .projband-grid,.home-page .statband,.home-page .buildband{max-width:var(--site-max)}
.svc-left-head>div{max-width:720px}
.svc-left-head h2{font-size:34px;margin-top:12px}
.lgx-service-image,.lgx-panel-image,.lgx-method-image,.lgx-stat-image,.lgx-advice-image{background-image:var(--page-image,var(--hero-image));background-position:center;background-size:cover}
.svc-card .imw{display:block;height:230px}
.aboutpanel>p{position:relative;z-index:2;color:rgba(255,255,255,.92);font-size:15px!important;line-height:1.75;margin:0 0 26px}
.aboutpanel .ph{width:66%;height:210px;opacity:.35;mix-blend-mode:multiply;background-position:center}
.aboutpanel .sqbtn{margin-top:12px}
.whypanel>p{font-size:15px!important}
.checks li{align-items:flex-start;font-size:14px!important;line-height:1.55}
.ck{font-size:12px;font-weight:900;margin-top:1px}

.projband{margin-top:76px}
.lgx-method-image{background-position:center;min-height:700px}
.lgx-method-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.18),rgba(0,0,0,.03))}
.proj-card{width:64%;top:70px;padding:40px;max-height:570px;overflow:auto}
.lgx-method-steps{margin:20px 0 0}
.lgx-method-steps li{display:block;padding:12px 0 12px 18px;border-top:1px solid var(--line)}
.lgx-method-steps li::before{top:20px}
.lgx-method-steps b,.lgx-method-steps span{display:block}
.lgx-method-steps b{font-family:var(--font-head);font-size:14px;color:var(--black);margin-bottom:3px}
.lgx-method-steps span{font-size:14px;line-height:1.55}

.gcard h2{font-size:38px;margin:14px 0 18px}
.gcard>p{max-width:none;font-size:16px!important}
.lgx-link-list{border-top:1px solid #d8d8d8}
.lgx-link-list li{border-bottom:1px solid #d8d8d8}
.lgx-link-list a{display:flex;align-items:center;justify-content:space-between;padding:14px 0;font-family:var(--font-head);font-size:15px;font-weight:700;color:var(--black)}
.lgx-link-list a span{color:var(--orange)}
.lgx-link-list a:hover{color:var(--orange);padding-left:8px}
.lgx-link-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:28px}
.statband .cell{background-color:#333}
.lgx-stat-image-alt{background-position:72% center;filter:saturate(.75)}
.stat-dark .dicon{font-family:var(--font-head);font-size:42px;line-height:1}
.stat-dark p{font-size:15px!important}
.lgx-buildband{background-image:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.2)),var(--page-image,var(--hero-image));display:flex;align-items:center}
.lgx-buildband-copy{width:100%;max-width:var(--site-max);margin:0 auto;padding:60px}
.lgx-buildband-copy h2{color:#fff;font-size:clamp(40px,4vw,68px);line-height:1.15;max-width:980px;margin-top:18px}
.lgx-buildband-text{color:#fff;font-size:17px;line-height:1.7;max-width:760px;margin-top:22px}
.lgx-process{background:#fff}
.lgx-process .sec-head-c h2,.lgx-advice .sec-head-c h2{margin-top:16px}
.lgx-advice{background:var(--grey-band)}
.lgx-advice .offer-cards{max-width:var(--site-max);grid-template-columns:repeat(4,1fr)}
.lgx-advice-image{height:210px;position:relative}
.lgx-advice-image::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 56%,var(--orange-2) 56%)}
.lgx-faq{background:#fff}
.lgx-faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}
.sec-head-l h2{font-size:46px;margin:18px 0}
.sec-head-l p{font-size:16px!important;line-height:1.85}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list details:first-child{border-top:1px solid var(--line)}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:24px 0;font-family:var(--font-head);font-size:17px;font-weight:700;color:var(--black);list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--black);color:#fff;font-size:22px;transition:transform .25s,background .25s}
.faq-list details[open] summary span{transform:rotate(45deg);background:var(--orange)}
.faq-list details p{padding:0 58px 24px 0;font-size:15px!important;line-height:1.8}

.footer-company-line{font-size:14px!important;line-height:1.8}
.f-logo>p{font-size:14px!important;line-height:1.8;max-width:420px}
.hf-contacts .ic{font-family:Arial,sans-serif;font-size:22px;font-weight:700}

/* Inner-page conversion: supplied split hero plus a real enquiry form. */
.inner-page .phero-inner{min-height:650px}
.inner-page .phero-copy{width:56%;padding:90px 48px 80px max(40px,calc((100% - var(--site-max))/2 + 40px));display:flex;flex-direction:column;justify-content:center}
.inner-page .phero-copy h1{font-size:clamp(46px,4vw,68px);line-height:1.08}
.inner-page .phero-copy p{font-size:17px!important;line-height:1.8;max-width:720px}
.inner-page .phero-img.lgx-phero-form{width:44%;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%);background-image:linear-gradient(rgba(0,0,0,.48),rgba(0,0,0,.48)),var(--page-image,var(--hero-image));background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;padding:42px 48px 42px 80px}
.inner-page .lgx-phero-form .heroform{max-width:500px;clip-path:none}
.lgx-page-jump{background:var(--black);color:#fff}
.lgx-page-jump .container{display:flex;align-items:center;gap:0;overflow-x:auto}
.lgx-page-jump strong,.lgx-page-jump a{padding:20px 24px;white-space:nowrap;font-family:var(--font-head);font-size:14px}
.lgx-page-jump strong{background:var(--orange)}
.lgx-page-jump a{border-right:1px solid rgba(255,255,255,.12)}
.lgx-page-jump a:hover{background:rgba(255,255,255,.08);color:var(--brand-bright)}
.lgx-content-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:80px;align-items:start}
.article-content{min-width:0}
.article-content>*:first-child{margin-top:0}
.article-content h2{font-size:38px;margin:42px 0 18px}
.article-content h3{font-size:26px;margin:34px 0 14px}
.article-content h4{font-size:20px;margin:28px 0 12px}
.article-content p,.article-content li{font-size:16px!important;line-height:1.9}
.article-content p{margin-bottom:20px}
.article-content ul,.article-content ol{margin:20px 0 26px;padding-left:24px}
.article-content ul{list-style:square}
.article-content ol{list-style:decimal}
.article-content li{margin-bottom:10px;padding-left:6px}
.article-content a{color:var(--orange);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.lgx-sidebar{background:var(--grey-band);border-top:5px solid var(--orange);padding:40px;position:sticky;top:24px}
.lgx-side-title{font-family:var(--font-head);font-size:12px;font-weight:800;letter-spacing:2.4px;text-transform:uppercase;color:var(--orange);margin-bottom:12px}
.lgx-sidebar h2{font-size:30px;margin-bottom:14px}
.lgx-sidebar p,.lgx-sidebar li{font-size:14px!important;line-height:1.75}
.lgx-sidebar ul{margin:22px 0 28px}
.lgx-sidebar li{padding:12px 0 12px 20px;border-top:1px solid #d8d8d8;position:relative}
.lgx-sidebar li::before{content:"";position:absolute;left:0;top:21px;width:7px;height:7px;background:var(--orange)}
.lgx-related{background:var(--grey-band)}
.lgx-related-grid{max-width:var(--site-max)}
.lgx-related-grid .offercard{background:#fff}
.lgx-page-enquiry{background:var(--dark);padding:100px 0}
.lgx-enquiry-layout{display:grid;grid-template-columns:1fr 520px;gap:90px;align-items:center}
.lgx-enquiry-layout h2{color:#fff;font-size:48px;line-height:1.2;margin:20px 0}
.lgx-enquiry-layout>div>p{font-size:17px!important;line-height:1.8;color:#b8babd;max-width:620px}

@media (max-width:1450px){
  .mainnav2{margin-left:24px}
  .mainnav2>li>a{padding-left:14px;padding-right:14px;font-size:12px}
  .h-quick-call{display:none}
  .h-cta-block{padding-left:28px;padding-right:28px}
  .mainnav>li>a{padding-left:14px;padding-right:14px;font-size:14px}
  .hdr-right{gap:12px}
  .home-page .svcband-grid{grid-template-columns:minmax(0,1fr) 340px 340px}
}

@media (max-width:1100px){
  .h-top-note{display:none}
  .home-page .hero-in{display:flex;flex-direction:column;align-items:stretch;padding-top:70px}
  .home-page .hero-copy,.home-page .heroform{max-width:760px}
  .home-page .hero{min-height:0}
  .home-page .svcband{margin-top:0;background:var(--grey-band)}
  .home-page .svcband-grid{grid-template-columns:1fr 1fr}
  .home-page .svc-left{grid-column:1/-1}
  .hdr-contacts .hc:first-child{display:none}
  .inner-page .phero-inner{display:block}
  .inner-page .phero-copy{width:100%;padding:70px 32px}
  .inner-page .phero-img.lgx-phero-form{position:relative;width:100%;min-height:0;clip-path:none;padding:50px 28px}
  .inner-page .lgx-phero-form .heroform{max-width:700px}
  .lgx-content-layout{grid-template-columns:1fr;gap:50px}
  .lgx-sidebar{position:relative;top:auto}
  .lgx-enquiry-layout{grid-template-columns:1fr;gap:50px}
  .lgx-advice .offer-cards{grid-template-columns:1fr 1fr}
  .lgx-faq-grid{grid-template-columns:1fr;gap:50px}
}

@media (max-width:760px){
  .lgx-client-site{padding-bottom:58px}
  .mobile-actions{position:fixed;left:0;right:0;bottom:0;z-index:999;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 -8px 24px rgba(0,0,0,.18)}
  .mobile-actions a{padding:17px 12px;text-align:center;background:var(--black);color:#fff;font-family:var(--font-head);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:1px}
  .mobile-actions a:last-child{background:var(--orange)}
  .h-topbar-in{padding:0 14px}
  .h-topbar .items{width:100%;justify-content:center;gap:18px}
  .h-topbar .it{font-size:12px}
  .h-topbar .it:last-child{display:none}
  .h-main{height:82px}
  .h-logo-sq{width:82px;height:82px}
  .h-logo-sq img{width:52px;height:52px}
  .h-cta-block{margin-left:auto;padding:0 18px;font-size:11px}
  .h-burger{width:76px}
  .home-page .hero-in{padding:62px 20px}
  .home-page .hero h1{font-size:40px}
  .home-page .hero p{font-size:16px!important}
  .hero .btns{display:grid;grid-template-columns:1fr;gap:12px}
  .btn{max-width:100%}
  .btn .t{height:auto;min-height:58px;white-space:normal;line-height:1.35;text-align:center;justify-content:center;padding:14px 16px}
  .btn .sq{min-height:58px}
  .heroform{padding:28px 22px}
  .heroform .form-grid{grid-template-columns:1fr}
  .heroform .form-grid .wide{grid-column:auto}
  .home-page .svcband-grid{display:block}
  .svc-left{padding-left:20px;padding-right:20px}
  .svc-left-head h2{font-size:28px}
  .svc-cards{grid-template-columns:1fr;gap:40px}
  .aboutpanel,.whypanel{min-height:450px}
  .projband-grid{display:block}
  .projband .copy{padding:72px 22px}
  .projband .copy h2{font-size:36px}
  .lgx-method-image{min-height:680px}
  .proj-card{left:20px;right:20px;width:auto;top:50px;padding:28px}
  .protest-grid{grid-template-columns:1fr}
  .gcard{padding:38px 24px}
  .gcard h2{font-size:30px}
  .lgx-link-grid{grid-template-columns:1fr}
  .statband{grid-template-columns:1fr}
  .statband .cell,.stat-orange,.stat-dark{min-height:300px}
  .lgx-buildband-copy{padding:32px 22px}
  .lgx-buildband-copy h2{font-size:36px}
  .proc-grid{grid-template-columns:1fr}
  .lgx-advice .offer-cards{grid-template-columns:1fr;padding:0}
  .sec{padding:74px 0}
  .sec-head-c h2,.sec-head-l h2{font-size:34px}
  .hf-contacts,.hf-cols,.f-cols{grid-template-columns:1fr}
  .hf-contacts .hc{width:auto;min-width:0}
  .hf-contacts .hc .tx{min-width:0}
  .hf-contacts .hc .tx b{overflow-wrap:anywhere}
  .f-menu{gap:18px;overflow-x:auto}
  .ghost{font-size:48px}
  .f-cta .btns{display:grid}
  .inner-page .phero-copy{padding:58px 20px}
  .inner-page .phero-copy h1{font-size:40px}
  .inner-page .phero-copy p{font-size:16px!important}
  .inner-page .phero-img.lgx-phero-form{padding:38px 20px}
  .lgx-page-jump .container{padding:0}
  .lgx-page-jump strong,.lgx-page-jump a{padding:17px 18px}
  .lgx-content-layout{gap:40px}
  .article-content h2{font-size:30px}
  .article-content h3{font-size:23px}
  .lgx-sidebar{padding:30px 24px}
  .lgx-page-enquiry{padding:72px 0}
  .lgx-enquiry-layout h2{font-size:36px}
}
}

/* ============================================================
   Mobile header conversion controls
   Compact phone, email, quote and menu actions on every template.
   ============================================================ */
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.mobile-header-actions,.hdr-logo-mobile{display:none}

@media (max-width:760px){
  .home-page .h-topbar{display:none}
  .home-page .h-main{height:76px!important}
  .home-page .h-logo-sq{width:76px;height:76px}
  .home-page .h-logo-sq img{width:48px;height:48px}
  .h-main .sp{display:block;flex:1}

  .mobile-header-actions{
    display:flex;
    align-items:stretch;
    align-self:stretch;
    height:100%;
    margin-left:auto;
    flex:none;
  }
  .mobile-header-icon{
    display:flex;
    width:44px;
    min-width:44px;
    align-items:center;
    justify-content:center;
    color:#fff;
    border-left:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.04);
  }
  .mobile-header-icon svg{width:20px;height:20px}
  .mobile-header-icon:hover{color:#fff;background:rgba(255,255,255,.12)}
  .mobile-header-quote{
    display:flex;
    width:104px;
    min-width:104px;
    align-items:center;
    justify-content:center;
    padding:0 10px;
    background:var(--orange);
    color:#fff;
    font-family:var(--font-head);
    font-size:11px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.7px;
    text-align:center;
    text-transform:uppercase;
  }
  .mobile-header-quote:hover{color:#fff;background:var(--orange-dark)}
  .mobile-header-icon:focus-visible,
  .mobile-header-quote:focus-visible,
  .h-burger:focus-visible,
  .inner-menu-toggle:focus-visible{outline:3px solid #fff;outline-offset:-4px}

  .home-page .h-burger{
    width:62px!important;
    height:76px;
  }
  .home-page .h-burger i:nth-child(2),
  .home-page .h-burger:hover i:nth-child(2){margin-right:20px}

  .inner-page .hdr-top.container{
    width:100%;
    max-width:none;
    min-height:76px;
    height:76px;
    padding:0!important;
    flex-wrap:nowrap;
  }
  .inner-page .hdr-logo{display:none}
  .inner-page .hdr-logo-mobile{
    display:flex;
    width:76px;
    min-width:76px;
    height:76px;
    align-items:center;
    justify-content:center;
    background:var(--orange);
  }
  .inner-page .hdr-logo-mobile img{width:48px;height:48px;object-fit:contain}
  .inner-page .hdr-contacts{display:none}
  .inner-page .inner-menu-toggle{
    display:flex;
    width:62px;
    min-width:62px;
    height:76px;
    border:0;
    background:#fff;
  }
  .inner-page .inner-menu-toggle i{width:25px;background:var(--black)}
  .inner-page .hdr-nav-row{
    min-height:0;
    height:0;
    border:0;
    padding:0;
  }
  .inner-page .hdr-right{display:none}
  .inner-page .mainnav{top:0}
  .inner-page .mainnav>li>a,
  .inner-page .mainnav>li:first-child>a{
    min-height:52px!important;
    padding:0 14px!important;
  }
}

@media (max-width:340px){
  .home-page .h-main,
  .inner-page .hdr-top.container{height:68px!important;min-height:68px}
  .home-page .h-logo-sq,
  .inner-page .hdr-logo-mobile{width:68px;min-width:68px;height:68px}
  .home-page .h-logo-sq img,
  .inner-page .hdr-logo-mobile img{width:43px;height:43px}
  .mobile-header-icon{width:40px;min-width:40px}
  .mobile-header-icon svg{width:18px;height:18px}
  .mobile-header-quote{width:78px;min-width:78px;padding:0 6px;font-size:9.5px;letter-spacing:.3px}
  .home-page .h-burger,
  .inner-page .inner-menu-toggle{width:58px!important;min-width:58px;height:68px}
}
