/*
Theme Name: AB Electrical Clean
Theme URI: https://ab-electrical.uk/
Author: AB Electrical
Description: Lightweight, licence-free WordPress theme built specifically for AB Electrical. Uses normal WordPress Pages, menus, Customizer settings and standard SEO plugin metadata.
Version: 1.0.6
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: ab-electrical-clean
*/

:root{
  --ab-orange:#ef7b35;
  --ab-blue:#59b9dc;
  --ab-red:#e44235;
  --ab-ink:#202329;
  --ab-charcoal:#2e3035;
  --ab-muted:#6d7178;
  --ab-soft:#f5f5f2;
  --ab-line:#e8e8e6;
  --ab-white:#fff;
  --ab-wrap:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ab-ink);background:#fff;font-family:Arial,Helvetica,sans-serif;line-height:1.55}
img{max-width:100%;height:auto}
a{color:inherit}
.ab-wrap{width:min(calc(100% - 48px),var(--ab-wrap));margin:0 auto}

/* Header */
.ab-site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);border-bottom:1px solid var(--ab-line);backdrop-filter:blur(12px)}
.ab-header-inner{min-height:126px;display:flex;align-items:center;justify-content:space-between;gap:34px}
.ab-brand{display:flex;align-items:center;text-decoration:none;flex:0 1 auto}
.ab-logo,.custom-logo{display:block;width:315px;max-width:40vw;height:auto!important;max-height:none!important;object-fit:contain}
.ab-nav ul{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}
.ab-nav a{text-decoration:none;font-size:14px;font-weight:800;color:var(--ab-ink)}
.ab-nav a:hover{color:var(--ab-orange)}
.ab-nav .menu-item:last-child a{display:inline-flex;padding:12px 18px;border-radius:7px;background:var(--ab-charcoal);color:#fff}

/* WordPress page baseline */
.ab-page-content>.wp-block-group{margin-block-start:0;margin-block-end:0}
.ab-page-content h1,.ab-page-content h2,.ab-page-content h3,.ab-page-content p{margin-top:0}
.ab-page-content h1,.ab-page-content h2,.ab-page-content h3{line-height:1.04}
.ab-page-content h2{font-size:clamp(38px,5vw,62px);letter-spacing:-2px}
.ab-page-content .wp-block-image{margin:0}
.ab-page-content .wp-block-columns{margin-bottom:0}
.ab-section{padding:92px 0}
.ab-section-inner{width:min(calc(100% - 48px),var(--ab-wrap));margin:0 auto}
.ab-kicker{display:inline-block;margin-bottom:15px;font-size:11px;font-weight:900;letter-spacing:2.1px;text-transform:uppercase;color:var(--ab-orange)}
.ab-kicker-light{color:#fff}

/* Hero */
.ab-hero{min-height:680px;padding:0!important;position:relative;display:flex;align-items:stretch;background:#17191d;color:#fff}
.ab-hero .wp-block-cover__background{background:linear-gradient(90deg,rgba(14,15,18,.94) 0%,rgba(14,15,18,.72) 43%,rgba(14,15,18,.20) 76%,rgba(14,15,18,.08) 100%)!important;opacity:1!important}
.ab-hero .wp-block-cover__image-background{object-position:center 58%}
.ab-hero>.wp-block-cover__inner-container{width:100%;display:flex;align-items:center}
.ab-hero-inner{width:min(calc(100% - 48px),var(--ab-wrap));margin:0 auto;display:grid;grid-template-columns:1fr 280px;gap:50px;align-items:center;min-height:680px}
.ab-hero-copy{max-width:730px;align-self:center}
.ab-hero h1{font-size:clamp(54px,7vw,88px);letter-spacing:-3px;margin:0;color:#fff}
.ab-hero .ab-lead{font-size:19px;max-width:700px;color:#e4e4e4;margin:24px 0 0}
.ab-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.ab-btn .wp-block-button__link,.ab-btn-primary .wp-block-button__link{background:var(--ab-orange);color:#fff;border-radius:7px;padding:14px 20px;font-weight:900;text-decoration:none}
.ab-btn-ghost .wp-block-button__link{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.55);color:#fff;border-radius:7px;padding:13px 20px;font-weight:900}
.ab-hero-caption{align-self:end;margin-bottom:38px;padding:15px 17px;border-left:3px solid var(--ab-blue);background:rgba(16,18,22,.72);backdrop-filter:blur(7px)}
.ab-hero-caption p{margin:0;color:#fff}
.ab-hero-caption .ab-caption-label{text-transform:uppercase;font-size:9px;letter-spacing:1.8px;color:#ccc;margin-bottom:4px}
.ab-hero-caption strong{font-size:14px}

/* Service strip */
.ab-strip{background:var(--ab-charcoal);color:#fff;padding:18px 24px;text-align:center;font-size:12px;font-weight:800;letter-spacing:.4px}
.ab-strip .ab-dot{color:var(--ab-orange);padding:0 13px}

/* Headings */
.ab-heading-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}
.ab-heading-grid>div>p:last-child,.ab-heading-grid>.wp-block-group>p:last-child{color:var(--ab-muted);font-size:17px}
.ab-section p{color:var(--ab-muted);font-size:17px}

/* Services */
.ab-services-grid{margin-top:48px!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:1px!important;background:#fff;border:1px solid var(--ab-line)}
.ab-services-grid>.wp-block-column,.ab-services-grid>.wp-block-group{margin:0!important;background:#fff;padding:30px;min-height:225px;box-shadow:0 0 0 1px var(--ab-line)}
.ab-service-number{font-size:11px!important;font-weight:900;color:var(--ab-orange)!important;margin-bottom:36px!important}
.ab-services-grid h3{font-size:21px;margin-bottom:10px}
.ab-services-grid p{font-size:16px;margin-bottom:0}
.ab-standards{margin-top:26px;padding:22px 26px;border:1px solid var(--ab-line);border-radius:10px;background:var(--ab-soft)}
.ab-standards p{margin:0;font-size:15px}

/* Work */
.ab-work{background:var(--ab-soft)}
.ab-gallery{margin-top:42px!important;display:grid!important;grid-template-columns:1.35fr .65fr .65fr!important;grid-template-rows:290px 290px;gap:14px!important}
.ab-gallery>.wp-block-image{position:relative;overflow:hidden;background:#222;height:100%;margin:0!important}
.ab-gallery>.wp-block-image:first-child{grid-row:1/3}
.ab-gallery img{width:100%;height:100%;object-fit:cover}
.ab-gallery figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:42px 20px 18px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.84));font-size:13px;text-align:left}

/* Heritage */
.ab-heritage{background:var(--ab-charcoal);color:#fff}
.ab-heritage h2,.ab-heritage p{color:#fff}
.ab-heritage p{color:#d4d5d7}
.ab-heritage-grid{display:grid!important;grid-template-columns:.85fr 1.15fr!important;gap:70px!important;align-items:center}
.ab-heritage-images{display:grid!important;grid-template-columns:1.2fr .8fr!important;gap:14px!important;align-items:center}
.ab-heritage-images .wp-block-image:first-child img{height:560px;object-fit:cover}
.ab-heritage-images .wp-block-image:last-child img{aspect-ratio:3/4;object-fit:cover}

/* Unusual jobs */
.ab-smart-grid{display:grid!important;grid-template-columns:1.2fr 1fr 1fr!important;gap:14px!important;margin-top:45px!important}
.ab-smart-grid .wp-block-image{height:410px;position:relative;overflow:hidden;background:#222}
.ab-smart-grid img{width:100%;height:100%;object-fit:cover}
.ab-smart-grid figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:42px 20px 18px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.84));font-size:13px;text-align:left}

/* Across the job */
.ab-more{background:var(--ab-soft)}
.ab-more-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:12px!important;margin-top:40px!important}
.ab-more-grid .wp-block-image{height:330px;overflow:hidden}
.ab-more-grid img{width:100%;height:100%;object-fit:cover}

/* About */
.ab-about-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:75px!important}

/* Contact */
.ab-contact{padding:80px 0;background:linear-gradient(120deg,var(--ab-orange),#df5d37);color:#fff}
.ab-contact h2,.ab-contact p{color:#fff}
.ab-contact-grid{display:grid!important;grid-template-columns:1fr .8fr!important;gap:70px!important;align-items:center}
.ab-contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.ab-contact-actions .wp-block-button__link{background:#fff;color:var(--ab-orange);border-radius:7px;padding:14px 20px;font-weight:900}
.ab-contact-box{background:#fff;color:var(--ab-ink);padding:18px 28px;border-radius:14px;box-shadow:0 22px 60px rgba(80,28,10,.2)}
.ab-contact-box p{margin:0;padding:14px 0;border-bottom:1px solid var(--ab-line);font-size:14px;color:var(--ab-ink)}
.ab-contact-box p:last-child{border-bottom:0}
.ab-contact-box a{font-weight:700;text-decoration:none}

/* Footer */
.ab-footer{background:#17191d;color:#aaa;padding:27px 0;font-size:12px}
.ab-footer-inner{display:flex;justify-content:space-between;gap:18px}
.ab-footer a{color:#fff;text-decoration:none}

/* Normal pages */
.ab-normal-page{width:min(calc(100% - 48px),900px);margin:0 auto;padding:70px 0}
.ab-normal-page h1{font-size:clamp(38px,6vw,62px)}

@media(max-width:900px){
  .ab-header-inner{min-height:112px}.ab-logo,.custom-logo{width:265px;max-width:58vw}
  .ab-nav ul{gap:16px}.ab-nav .menu-item:not(:last-child){display:none}
  .ab-hero,.ab-hero-inner{min-height:620px}.ab-hero-inner{grid-template-columns:1fr}.ab-hero-caption{display:none}
  .ab-heading-grid,.ab-heritage-grid,.ab-about-grid,.ab-contact-grid{grid-template-columns:1fr!important;gap:30px!important}
  .ab-services-grid{grid-template-columns:repeat(2,1fr)!important}
  .ab-gallery{grid-template-columns:1fr 1fr!important;grid-template-rows:300px 300px 300px}.ab-gallery>.wp-block-image:first-child{grid-column:1/3;grid-row:auto}
  .ab-smart-grid{grid-template-columns:1fr!important}.ab-smart-grid .wp-block-image{height:350px}
  .ab-more-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:560px){
  .ab-wrap,.ab-section-inner,.ab-hero-inner,.ab-normal-page{width:min(calc(100% - 28px),var(--ab-wrap))}
  .ab-header-inner{min-height:100px}.ab-logo,.custom-logo{width:225px;max-width:65vw}.ab-nav .menu-item:last-child a{padding:9px 11px;font-size:12px}
  .ab-hero,.ab-hero-inner{min-height:590px}.ab-hero h1{font-size:49px;letter-spacing:-1.6px}.ab-hero .ab-lead{font-size:17px}
  .ab-section{padding:66px 0}.ab-section h2{letter-spacing:-1.2px}
  .ab-services-grid{grid-template-columns:1fr!important}.ab-services-grid>.wp-block-column,.ab-services-grid>.wp-block-group{min-height:0}
  .ab-gallery{grid-template-columns:1fr!important;grid-template-rows:none}.ab-gallery>.wp-block-image,.ab-gallery>.wp-block-image:first-child{grid-column:auto;height:300px}
  .ab-heritage-images{grid-template-columns:1fr!important}.ab-heritage-images .wp-block-image:first-child img{height:430px}
  .ab-more-grid{grid-template-columns:1fr 1fr!important}.ab-more-grid .wp-block-image{height:230px}
  .ab-contact-box p{display:block}
  .ab-footer-inner{flex-direction:column}
}

/* ============================================================
   v1.0.2 visual-parity layer
   Matches the current live AB Electrical front page while
   keeping the homepage as normal editable WordPress blocks.
   ============================================================ */
@font-face{font-family:'AB Roboto';src:url('assets/fonts/Roboto-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'AB Roboto';src:url('assets/fonts/Roboto-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'AB Roboto';src:url('assets/fonts/Roboto-Bold.woff2') format('woff2');font-weight:700 900;font-style:normal;font-display:swap}

body.home{font-family:Arial,Helvetica,sans-serif;color:#202329;line-height:1.55}
body.home .ab-wrap,body.home .ab-section-inner,body.home .ab-hero-inner{width:min(1180px,calc(100% - 44px));margin-left:auto;margin-right:auto}

/* Header: same proportions as the live v2.7 header */
body.home .ab-site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);border-bottom:1px solid #e8e8e6;backdrop-filter:blur(12px)}
body.home .ab-header-inner{min-height:84px;gap:25px}
body.home .ab-logo,body.home .custom-logo{width:300px;max-width:38vw;height:auto!important}
body.home .ab-nav ul{gap:22px}
body.home .ab-nav a{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:800;color:#202329!important}
body.home .ab-nav .menu-item:last-child a{padding:11px 17px;border-radius:7px;background:#2e3035!important;color:#fff!important}

/* Typography inherited by the old Electrician theme */
body.home .ab-page-content h1,body.home .ab-page-content h2{font-family:'AB Roboto',Arial,sans-serif!important;font-weight:500}
body.home .ab-page-content h3{font-family:'AB Roboto',Arial,sans-serif!important;font-weight:500;color:#f47629!important}
body.home .ab-page-content h1,body.home .ab-page-content h2,body.home .ab-page-content h3,body.home .ab-page-content p{margin-block-start:0}

/* Hero */
body.home .ab-hero,body.home .ab-hero-inner{min-height:680px}
body.home .ab-hero-inner{display:flex!important;align-items:center;justify-content:space-between;gap:50px}
body.home .ab-hero-copy{max-width:710px;color:#fff}
body.home .ab-hero h1{font-size:clamp(52px,7vw,88px);line-height:1.01;letter-spacing:-2.3px;color:#fff!important;text-shadow:0 2px 20px rgba(0,0,0,.28);margin:0}
body.home .ab-hero .ab-lead{font-size:19px;max-width:680px;color:#e3e3e3;margin:24px 0 0}
body.home .ab-kicker{margin-bottom:15px;font-size:11px;font-weight:900;letter-spacing:2.2px}
body.home .ab-actions{margin-top:30px}
body.home .ab-hero-caption{align-self:flex-end;max-width:270px;margin-bottom:38px;padding:15px 17px;background:rgba(16,18,22,.66)}
body.home .ab-strip{min-height:58px;margin:0!important;padding:18px 22px;background:#2e3035;color:#fff;font-size:12px;font-weight:800;letter-spacing:.5px}

/* Main sections */
body.home .ab-section{padding:92px 0}
body.home .ab-section h2,body.home .ab-contact h2{font-size:clamp(38px,5vw,62px);line-height:1.01;letter-spacing:-2.3px;margin:0}
body.home .ab-heading-grid{grid-template-columns:1.25fr .75fr!important;gap:70px!important;align-items:end}
body.home .ab-heading-grid>div>p:last-child,body.home .ab-heading-grid>.wp-block-group>p:last-child{font-size:17px;color:#6d7178;margin:0}

/* Services: reproduce live theme's inherited orange Roboto h3s */
body.home .ab-services-grid{margin-top:48px!important;grid-template-columns:repeat(3,1fr)!important;gap:1px!important;border:1px solid #e8e8e6;background:#fff}
body.home .ab-services-grid>.wp-block-column,body.home .ab-services-grid>.wp-block-group{padding:30px;min-height:225px;box-shadow:0 0 0 1px #e8e8e6}
body.home .ab-service-number{font-family:Arial,Helvetica,sans-serif!important;font-size:11px!important;font-weight:900!important;color:#ef7b35!important;margin-bottom:38px!important}
body.home .ab-services-grid h3{font-size:21px!important;line-height:1.15!important;margin:0 0 10px!important;color:#f47629!important}
body.home .ab-services-grid p{font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55;color:#6d7178;margin:0}

/* Gallery / heritage / other grids */
body.home .ab-gallery{grid-template-columns:1.35fr .65fr .65fr!important;grid-template-rows:290px 290px!important;gap:14px!important}
body.home .ab-heritage-grid{grid-template-columns:.85fr 1.15fr!important;gap:70px!important}
body.home .ab-smart-grid{grid-template-columns:1.2fr 1fr 1fr!important;gap:14px!important}
body.home .ab-about-grid{grid-template-columns:1fr 1fr!important;gap:75px!important}

/* Contact: same structure, proportions and button colours as live */
body.home .ab-contact{padding:80px 0;background:linear-gradient(120deg,#ef7b35,#df5d37);color:#fff}
body.home .ab-contact-grid{display:grid!important;grid-template-columns:1fr .8fr!important;gap:70px!important;align-items:center}
body.home .ab-contact h2{font-size:clamp(34px,4vw,50px);color:#fff!important}
body.home .ab-contact-grid>div:first-child>p{max-width:650px;color:#fff;font-size:17px}
body.home .ab-contact-actions{gap:12px;margin-top:26px}
body.home .ab-contact-actions .wp-block-button__link{display:inline-flex;align-items:center;gap:9px;background:#fff!important;border:1px solid #fff;border-radius:7px;padding:14px 20px;font-weight:900;text-decoration:none!important}
body.home .ab-contact-actions .ab-btn-whatsapp .wp-block-button__link{color:#1f6f47!important}
body.home .ab-contact-actions .ab-btn-light .wp-block-button__link{color:#ef7b35!important}
body.home .ab-contact-actions .ab-btn-whatsapp .wp-block-button__link:after{content:'☎';display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;border:2px solid currentColor;border-radius:50%;font-size:11px;line-height:1}
body.home .ab-contact-actions .ab-btn-light .wp-block-button__link:after{content:'✉';font-size:18px;line-height:1}
body.home .ab-contact-box{background:#fff;color:#202329;padding:18px 28px;border-radius:14px;box-shadow:0 22px 60px rgba(80,28,10,.2)}
body.home .ab-contact-box p{display:grid!important;grid-template-columns:120px 1fr!important;gap:10px!important;align-items:center;margin:0!important;padding:14px 0!important;border-bottom:1px solid #e8e8e6;font-family:Arial,Helvetica,sans-serif;font-size:14px!important;line-height:1.55;color:#202329!important}
body.home .ab-contact-box p:last-child{border-bottom:0}
body.home .ab-contact-box p br{display:none}
body.home .ab-contact-box strong{font-weight:700;color:#202329}
body.home .ab-contact-box a,body.home .ab-contact-box span{font-weight:700;color:#202329!important;text-decoration:none!important}
body.home .ab-contact-box p:nth-child(1) a:after{content:'▯';margin-left:6px;color:#ef7b35;font-size:17px}
body.home .ab-contact-box p:nth-child(2) a:after{content:'✉';margin-left:6px;color:#ef7b35;font-size:15px}
body.home .ab-contact-box p:nth-child(3) span:after{content:'⊙';margin-left:6px;color:#ef7b35;font-size:17px}
body.home .ab-contact-box p:nth-child(4) a:after{content:'f';display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;margin-left:6px;border-radius:50%;background:#1877f2;color:#fff!important;font-family:Arial,sans-serif;font-size:14px;font-weight:900}

body.home .ab-footer{padding:27px 0;background:#17191d;color:#aaa}
body.home .ab-footer-inner{font-size:12px}

@media(max-width:900px){
  body.home .ab-logo,body.home .custom-logo{width:250px;max-width:55vw}
  body.home .ab-nav .menu-item:not(:last-child){display:none}
  body.home .ab-hero,body.home .ab-hero-inner{min-height:620px}
  body.home .ab-hero-caption{display:none}
  body.home .ab-heading-grid,body.home .ab-heritage-grid,body.home .ab-about-grid,body.home .ab-contact-grid{grid-template-columns:1fr!important;gap:30px!important}
  body.home .ab-services-grid{grid-template-columns:repeat(2,1fr)!important}
  body.home .ab-gallery{grid-template-columns:1fr 1fr!important;grid-template-rows:300px 300px 300px!important}
  body.home .ab-gallery>.wp-block-image:first-child{grid-column:1/3;grid-row:auto}
  body.home .ab-smart-grid{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  body.home .ab-wrap,body.home .ab-section-inner,body.home .ab-hero-inner{width:min(1180px,calc(100% - 28px))}
  body.home .ab-header-inner{min-height:70px}
  body.home .ab-logo,body.home .custom-logo{width:205px;max-width:64vw}
  body.home .ab-hero,body.home .ab-hero-inner{min-height:590px}
  body.home .ab-hero h1{font-size:49px;letter-spacing:-1.5px}
  body.home .ab-hero .ab-lead{font-size:17px}
  body.home .ab-section{padding:66px 0}
  body.home .ab-services-grid{grid-template-columns:1fr!important}
  body.home .ab-contact-box p{display:block!important}
}



/* ============================================================
   v1.0.3 final visual-parity fixes from side-by-side review
   ============================================================ */

/* The live site's small section labels are orange.
   Keep the hero/contact labels white. */
body.home .ab-page-content .ab-kicker{
  color:#ef7b35!important;
}
body.home .ab-page-content .ab-kicker.ab-kicker-light{
  color:#fff!important;
}

/* Keep the orange separator dots in the service strip. */
body.home .ab-strip .ab-dot{
  color:#ef7b35!important;
  display:inline-block;
  padding:0 13px;
}

/* Match the subtle live-site image movement in Recent Work. */
body.home .ab-gallery img{
  transition:transform .35s ease;
}
body.home .ab-gallery figure:hover img{
  transform:scale(1.025);
}

/* When logged into WordPress, don't let the sticky site header
   slide underneath the black admin toolbar. */
body.admin-bar.home .ab-site-header{
  top:32px;
}
@media (max-width:782px){
  body.admin-bar.home .ab-site-header{
    top:46px;
  }
}


/* ============================================================
   v1.0.4 consolidated parity pass
   - exact softer live-site background palette
   - BS 7671 standards box
   - original contact icons, blue Facebook retained
   - sticky header corrected under WordPress admin bar
   ============================================================ */

/* Exact live-site soft backgrounds rather than the brighter new grey. */
body.home .ab-work,
body.home .ab-more,
body.home .ab-standards {
  background:#f5f5f2!important;
}
body.home .ab-services-grid {
  border-color:#e8e8e6!important;
}
body.home .ab-services-grid>.wp-block-group {
  box-shadow:0 0 0 1px #e8e8e6!important;
}
body.home .ab-services-grid h3 {
  color:#ef7b35!important;
}

/* Full BS 7671 compliance panel. */
body.home .ab-standards {
  margin-top:26px!important;
  padding:22px 26px!important;
  border:1px solid #e8e8e6!important;
  border-radius:10px!important;
}
body.home .ab-standards-row {
  display:flex!important;
  align-items:flex-start!important;
  gap:16px!important;
}
body.home .ab-standards-icon {
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  margin:0!important;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#ef7b35!important;
  color:#fff!important;
  font-size:20px!important;
  font-weight:900!important;
  line-height:1!important;
}
body.home .ab-standards-copy,
body.home .ab-standards-copy p {
  margin:0!important;
}
body.home .ab-standards-title {
  margin-bottom:3px!important;
  color:#202329!important;
  font-size:17px!important;
}
body.home .ab-standards-text {
  color:#6d7178!important;
  font-size:15px!important;
}

/* Contact-card rows are standard editable Gutenberg groups. */
body.home .ab-contact-box .ab-contact-row {
  display:grid!important;
  grid-template-columns:120px 1fr!important;
  gap:10px!important;
  align-items:center!important;
  margin:0!important;
  padding:14px 0!important;
  border-bottom:1px solid #e8e8e6!important;
}
body.home .ab-contact-box .ab-contact-row:last-child {
  border-bottom:0!important;
}
body.home .ab-contact-box .ab-contact-row p {
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  color:#202329!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:14px!important;
  line-height:1.55!important;
}
body.home .ab-contact-label {
  font-weight:700!important;
}
body.home .ab-contact-value {
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  font-weight:700!important;
}
body.home .ab-contact-value a,
body.home .ab-contact-value span {
  color:#202329!important;
  text-decoration:none!important;
  font-weight:700!important;
}
body.home .ab-contact-value:after {
  content:"";
  display:inline-block;
  width:17px;
  height:17px;
  margin-left:6px;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  flex:0 0 17px;
}
body.home .ab-contact-phone .ab-contact-value:after {background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHJlY3QgeD0iNyIgeT0iMiIgd2lkdGg9IjEwIiBoZWlnaHQ9IjIwIiByeD0iMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZWY3YjM1IiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNMTAgNWg0TTExIDE5aDIiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2VmN2IzNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=")}
body.home .ab-contact-email .ab-contact-value:after {background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHJlY3QgeD0iMyIgeT0iNSIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE0IiByeD0iMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZWY3YjM1IiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNNCA3bDggNiA4LTYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2VmN2IzNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=")}
body.home .ab-contact-area .ab-contact-value:after {background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iOSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZWY3YjM1IiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNMTUuNSA4LjVsLTIuMiA0LjgtNC44IDIuMiAyLjItNC44IDQuOC0yLjJ6IiBmaWxsPSJub25lIiBzdHJva2U9IiNlZjdiMzUiIHN0cm9rZS13aWR0aD0iMS44IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+")}
body.home .ab-contact-facebook .ab-contact-value:after {
  content:"f";
  width:19px;
  height:19px;
  margin-left:6px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#1877f2;
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:14px;
  font-weight:900;
  line-height:19px;
}

/* Use the live-site phone/email/WhatsApp icon treatment on the buttons.
   Facebook intentionally keeps the newer blue icon above. */
body.home .ab-contact-actions .ab-btn-whatsapp .wp-block-button__link:after,
body.home .ab-contact-actions .ab-btn-light .wp-block-button__link:after {
  content:""!important;
  display:inline-block!important;
  width:20px!important;
  height:20px!important;
  border:0!important;
  border-radius:0!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  flex:0 0 20px!important;
}
body.home .ab-contact-actions .ab-btn-whatsapp .wp-block-button__link:after {
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZD0iTTEyIDNhOC41IDguNSAwIDAgMC03LjMgMTIuODVMMy41IDIwLjVsNC44LTEuMkE4LjUgOC41IDAgMSAwIDEyIDN6IiBmaWxsPSJub25lIiBzdHJva2U9IiMxZjZmNDciIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjxwYXRoIGQ9Ik05IDguM2MuNC0uMi43IDAgLjkuNGwuNyAxLjVjLjEuMy4xLjUtLjEuN2wtLjcuOGMuNyAxLjQgMS43IDIuNCAzLjIgMy4xbC44LS44Yy4yLS4yLjUtLjIuNy0uMWwxLjUuN2MuNC4yLjUuNS40LjktLjMuOC0xLjEgMS40LTIgMS41LTEuNC4xLTMuNC0uNy01LjItMi41LTEuOC0xLjgtMi42LTMuOC0yLjUtNS4yLjEtLjkuNy0xLjcgMS41LTJ6IiBmaWxsPSJub25lIiBzdHJva2U9IiMxZjZmNDciIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=")!important;
}
body.home .ab-contact-actions .ab-btn-light .wp-block-button__link:after {
  width:18px!important;
  height:18px!important;
  flex-basis:18px!important;
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHJlY3QgeD0iMyIgeT0iNSIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE0IiByeD0iMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZWY3YjM1IiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNNCA3bDggNiA4LTYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2VmN2IzNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=")!important;
}

/* Header must remain fully visible while scrolling, including when logged in. */
body.home .ab-site-header {
  position:sticky!important;
  top:0;
  z-index:1000!important;
}
body.admin-bar.home .ab-site-header {
  top:32px!important;
}
@media (max-width:782px) {
  body.admin-bar.home .ab-site-header {
    top:46px!important;
  }
}
@media(max-width:560px) {
  body.home .ab-contact-box .ab-contact-row {
    grid-template-columns:1fr!important;
    gap:2px!important;
  }
}


/* v1.0.5 — BS 7671 panel exact placement/style */
body.home .ab-standards{
  max-width:1180px!important;
  margin:26px auto 0!important;
  padding:22px 26px!important;
  border:1px solid #e2e2df!important;
  border-radius:10px!important;
  background:#f5f5f2!important;
  box-sizing:border-box!important;
}
body.home .ab-standards-row{
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
}
body.home .ab-standards-icon{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#ef7b35!important;
  color:#fff!important;
  font-size:21px!important;
  font-weight:800!important;
  line-height:1!important;
}
body.home .ab-standards-copy p{
  margin:0!important;
}
body.home .ab-standards-copy p:first-child{
  margin-bottom:4px!important;
  color:#202329!important;
  font-size:17px!important;
  font-weight:700!important;
}
body.home .ab-standards-copy p:last-child{
  color:#6d7178!important;
  font-size:15px!important;
  line-height:1.45!important;
}


/* ============================================================
   v1.0.6 — restore the preferred contact icons
   ============================================================ */

/* Remove the older generic link pseudo-icons so they cannot
   overlap or replace the intended row icons. */
body.home .ab-contact-box p a:after{
  content:none!important;
  display:none!important;
}

/* Contact card row icons — match the old live-site treatment. */
body.home .ab-contact-box .ab-contact-value:after{
  content:""!important;
  display:inline-block!important;
  width:17px!important;
  height:17px!important;
  margin-left:6px!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  flex:0 0 17px!important;
}

body.home .ab-contact-phone .ab-contact-value:after{
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHJlY3QgeD0iNyIgeT0iMiIgd2lkdGg9IjEwIiBoZWlnaHQ9IjIwIiByeD0iMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZWY3YjM1IiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNMTAgNWg0TTExIDE5aDIiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2VmN2IzNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=")!important;
}
body.home .ab-contact-email .ab-contact-value:after{
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHJlY3QgeD0iMyIgeT0iNSIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE0IiByeD0iMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZWY3YjM1IiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNNCA3bDggNiA4LTYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2VmN2IzNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=")!important;
}
body.home .ab-contact-area .ab-contact-value:after{
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iOSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZWY3YjM1IiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNMTUuNSA4LjVsLTIuMiA0LjgtNC44IDIuMiAyLjItNC44IDQuOC0yLjJ6IiBmaWxsPSJub25lIiBzdHJva2U9IiNlZjdiMzUiIHN0cm9rZS13aWR0aD0iMS44IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+")!important;
}

/* Keep the newer blue Facebook icon that was preferred. */
body.home .ab-contact-facebook .ab-contact-value:after{
  content:"f"!important;
  width:19px!important;
  height:19px!important;
  margin-left:6px!important;
  border-radius:50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#1877f2!important;
  background-image:none!important;
  color:#fff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:19px!important;
}

/* WhatsApp button — restore the old live-site circular icon style. */
body.home .ab-contact-actions .ab-btn-whatsapp .wp-block-button__link:after{
  content:"☎"!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:20px!important;
  height:20px!important;
  margin-left:0!important;
  border:2px solid #1f6f47!important;
  border-radius:50%!important;
  background:none!important;
  color:#1f6f47!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1!important;
  transform:rotate(-18deg);
}

/* Email button — keep the orange envelope icon. */
body.home .ab-contact-actions .ab-btn-light .wp-block-button__link:after{
  content:""!important;
  display:inline-block!important;
  width:18px!important;
  height:18px!important;
  border:0!important;
  border-radius:0!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHJlY3QgeD0iMyIgeT0iNSIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE0IiByeD0iMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZWY3YjM1IiBzdHJva2Utd2lkdGg9IjIiLz48cGF0aCBkPSJNNCA3bDggNiA4LTYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2VmN2IzNSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=")!important;
}
