.elementor-kit-1107{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-1107 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================================
   AC SERVICE BAHRAIN — TRUST-FOCUSED WORLD-CLASS CSS
   ========================================================= */

:root{
  --asb-primary:#1D4ED8;         /* Trust blue */
  --asb-primary-dark:#0F3D91;    /* Strong authority blue */
  --asb-secondary:#0F766E;       /* Calm teal */
  --asb-accent:#D97706;          /* Soft premium accent */
  --asb-success:#15803D;         /* Reassurance green */
  --asb-dark:#0F172A;            /* Deep navy */
  --asb-dark-soft:#1E293B;       /* Supporting navy */
  --asb-text:#1E293B;            /* Main readable text */
  --asb-text-light:#475569;      /* Secondary text */
  --asb-muted:#64748B;           /* Muted text */
  --asb-border:rgba(15,23,42,.08);
  --asb-border-strong:rgba(15,23,42,.14);
  --asb-white:#FFFFFF;
  --asb-bg:#F8FAFC;              /* Clean soft background */
  --asb-bg-2:#EFF6FF;            /* Light blue background */
  --asb-bg-3:#F0FDFA;            /* Light teal background */
  --asb-shadow-sm:0 8px 24px rgba(15,23,42,.05);
  --asb-shadow-md:0 16px 40px rgba(15,23,42,.08);
  --asb-shadow-lg:0 24px 60px rgba(15,23,42,.12);
  --asb-radius-sm:14px;
  --asb-radius-md:20px;
  --asb-radius-lg:28px;
  --asb-container:1280px;
  --asb-transition:all .28s ease;
}

/* ---------- GLOBAL ---------- */
html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  padding:0;
  background:linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  color:var(--asb-text);
  font-family:Arial, Helvetica, sans-serif;
  font-size:16px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

img{
  max-width:100%;
  height:auto;
  display:block;
}

a{
  color:var(--asb-primary);
  text-decoration:none;
  transition:var(--asb-transition);
}

a:hover{
  color:var(--asb-primary-dark);
}

p{
  color:var(--asb-text-light);
  margin:0 0 18px;
}

h1,h2,h3,h4,h5,h6{
  margin:0 0 16px;
  line-height:1.15;
  letter-spacing:-0.02em;
  color:var(--asb-dark);
  font-weight:800;
}

h1{ font-size:clamp(34px, 5vw, 60px); }
h2{ font-size:clamp(28px, 4vw, 42px); }
h3{ font-size:clamp(22px, 3vw, 30px); }
h4{ font-size:20px; }

.site,
.site-content,
.content-area,
.container,
.elementor-section.elementor-section-boxed > .elementor-container{
  width:min(100% - 32px, var(--asb-container));
  margin-left:auto;
  margin-right:auto;
}

/* ---------- HEADER IMPROVEMENT ---------- */
.asb-header{
  position:sticky;
  top:0;
  z-index:9999;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(10px);
  box-shadow:0 1px 0 rgba(15,23,42,.05);
}

.asb-topbar{
  background:linear-gradient(90deg, var(--asb-dark) 0%, var(--asb-dark-soft) 100%);
  color:#fff;
}

.asb-topbar a{
  color:#fff;
  opacity:.95;
}

.asb-topbar a:hover{
  opacity:1;
  color:#fff;
}

.asb-menu > li > a{
  color:var(--asb-dark);
  font-weight:700;
}

.asb-menu > li > a:hover{
  color:var(--asb-primary);
  background:#EFF6FF;
}

.sub-menu{
  background:#fff;
  border:1px solid var(--asb-border);
  box-shadow:var(--asb-shadow-md);
}

.sub-menu li a:hover{
  background:#EFF6FF;
  color:var(--asb-primary);
}

/* ---------- HERO ---------- */
main > *:first-child section,
main > *:first-child .elementor-section,
.hero,
.page-header{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at top left, rgba(29,78,216,.10), transparent 26%),
    radial-gradient(circle at top right, rgba(15,118,110,.08), transparent 20%),
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border-radius:0 0 32px 32px;
}

main h1:first-of-type,
.hero h1{
  max-width:900px;
  color:var(--asb-dark);
}

main h1:first-of-type + p,
.hero p{
  max-width:820px;
  font-size:18px;
  color:var(--asb-text-light);
}

/* ---------- SECTION RHYTHM ---------- */
main section,
main .elementor-section:not(.asb-header):not(.asb-footer){
  padding-top:72px;
  padding-bottom:72px;
}

main .elementor-section:nth-of-type(even){
  background:linear-gradient(180deg, rgba(239,246,255,.42), rgba(255,255,255,.96));
}

/* ---------- TRUST BLOCKS / BADGES ---------- */
.badges,
.trust-badges,
.hero-badges,
ul.check-list{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  list-style:none;
  padding:0;
  margin:20px 0 0;
}

.badges li,
.trust-badges li,
.hero-badges li,
ul.check-list li{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  background:#fff;
  border:1px solid var(--asb-border);
  border-radius:999px;
  box-shadow:var(--asb-shadow-sm);
  color:var(--asb-dark);
  font-size:14px;
  font-weight:700;
}

/* ---------- CARDS ---------- */
.card,
.service-card,
.area-card,
.brand-card,
.faq-card,
.widget,
article,
.post{
  background:#fff;
  border:1px solid var(--asb-border);
  border-radius:24px;
  box-shadow:var(--asb-shadow-sm);
  transition:var(--asb-transition);
}

.card:hover,
.service-card:hover,
.area-card:hover,
.brand-card:hover,
.faq-card:hover,
article:hover,
.post:hover{
  transform:translateY(-4px);
  box-shadow:var(--asb-shadow-md);
  border-color:rgba(29,78,216,.18);
}

/* ---------- SERVICES ---------- */
.service-grid,
.services-grid,
.asb-services{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:22px;
}

.service-grid > *,
.services-grid > *,
.asb-services > *{
  background:#fff;
  border:1px solid var(--asb-border);
  border-radius:24px;
  padding:28px 24px;
  box-shadow:var(--asb-shadow-sm);
  transition:var(--asb-transition);
}

.service-grid > *:hover,
.services-grid > *:hover,
.asb-services > *:hover{
  transform:translateY(-6px);
  box-shadow:var(--asb-shadow-lg);
  border-color:rgba(29,78,216,.20);
}

.service-grid h3,
.services-grid h3,
.asb-services h3{
  color:var(--asb-dark);
}

.service-grid p,
.services-grid p,
.asb-services p{
  color:var(--asb-text-light);
}

/* ---------- AREAS ---------- */
.area-grid,
.areas-grid,
.asb-areas{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.area-grid a,
.areas-grid a,
.asb-areas a{
  display:inline-flex;
  align-items:center;
  padding:12px 16px;
  background:#fff;
  border:1px solid var(--asb-border);
  border-radius:999px;
  box-shadow:var(--asb-shadow-sm);
  color:var(--asb-dark);
  font-weight:700;
}

.area-grid a:hover,
.areas-grid a:hover,
.asb-areas a:hover{
  background:#EFF6FF;
  color:var(--asb-primary);
  border-color:rgba(29,78,216,.18);
}

/* ---------- BRANDS ---------- */
.brand-grid,
.brands-grid,
.asb-brands{
  display:grid;
  grid-template-columns:repeat(6, minmax(0,1fr));
  gap:14px;
}

.brand-grid > *,
.brands-grid > *,
.asb-brands > *{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:76px;
  padding:14px;
  background:#fff;
  border:1px solid var(--asb-border);
  border-radius:18px;
  box-shadow:var(--asb-shadow-sm);
  color:var(--asb-dark);
  font-weight:800;
  text-align:center;
  transition:var(--asb-transition);
}

.brand-grid > *:hover,
.brands-grid > *:hover,
.asb-brands > *:hover{
  transform:translateY(-3px);
  border-color:rgba(29,78,216,.18);
  color:var(--asb-primary);
  box-shadow:var(--asb-shadow-md);
}

/* ---------- CTA ---------- */
.cta-banner,
.asb-cta,
.service-today,
.urgent-help{
  background:
    radial-gradient(circle at top right, rgba(217,119,6,.18), transparent 22%),
    radial-gradient(circle at bottom left, rgba(29,78,216,.18), transparent 28%),
    linear-gradient(135deg, var(--asb-dark) 0%, var(--asb-dark-soft) 100%);
  color:#fff;
  border-radius:30px;
  padding:34px 28px;
  box-shadow:var(--asb-shadow-lg);
}

.cta-banner h2,
.asb-cta h2,
.service-today h2,
.urgent-help h2{
  color:#fff;
}

.cta-banner p,
.asb-cta p,
.service-today p,
.urgent-help p{
  color:rgba(255,255,255,.84);
}

/* ---------- BUTTONS ---------- */
button,
input[type="submit"],
input[type="button"],
.wp-element-button,
.elementor-button,
a.button,
.wp-block-button__link{
  min-height:48px;
  padding:13px 22px;
  border:none;
  border-radius:999px !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1 !important;
  cursor:pointer;
  transition:var(--asb-transition);
}

.elementor-button,
.wp-element-button,
a.button,
.wp-block-button__link{
  background:linear-gradient(135deg, var(--asb-primary) 0%, var(--asb-primary-dark) 100%) !important;
  color:#fff !important;
  box-shadow:0 12px 30px rgba(29,78,216,.22);
}

.elementor-button:hover,
.wp-element-button:hover,
a.button:hover,
.wp-block-button__link:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 36px rgba(29,78,216,.28);
}

.asb-btn-outline,
.btn-outline{
  background:#fff !important;
  color:var(--asb-secondary) !important;
  border:1.5px solid rgba(15,118,110,.22) !important;
  box-shadow:none !important;
}

.asb-btn-outline:hover,
.btn-outline:hover{
  background:#F0FDFA !important;
  border-color:rgba(15,118,110,.34) !important;
}

/* ---------- FORMS ---------- */
input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
select,
textarea{
  width:100%;
  min-height:54px;
  padding:14px 16px;
  background:#fff;
  color:var(--asb-text);
  border:1px solid var(--asb-border-strong);
  border-radius:16px;
  transition:var(--asb-transition);
}

textarea{
  min-height:140px;
  resize:vertical;
}

input:focus,
select:focus,
textarea:focus{
  outline:none;
  border-color:rgba(29,78,216,.45);
  box-shadow:0 0 0 4px rgba(29,78,216,.10);
}

/* ---------- FAQ ---------- */
details,
.faq-item,
.faq-card{
  background:#fff;
  border:1px solid var(--asb-border);
  border-radius:22px;
  padding:20px 22px;
  box-shadow:var(--asb-shadow-sm);
}

details summary{
  list-style:none;
  cursor:pointer;
  font-weight:800;
  color:var(--asb-dark);
  position:relative;
  padding-right:28px;
}

details summary::-webkit-details-marker{
  display:none;
}

details summary::after{
  content:"+";
  position:absolute;
  right:0;
  top:0;
  color:var(--asb-primary);
  font-size:24px;
  line-height:1;
}

details[open] summary::after{
  content:"–";
}

/* ---------- TABLES ---------- */
table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  background:#fff;
  border:1px solid var(--asb-border);
  border-radius:18px;
  overflow:hidden;
  box-shadow:var(--asb-shadow-sm);
}

th, td{
  padding:14px 16px;
  border-bottom:1px solid var(--asb-border);
  text-align:left;
}

th{
  background:#EFF6FF;
  color:var(--asb-dark);
  font-weight:800;
}

tr:last-child td{
  border-bottom:none;
}

/* ---------- FOOTER ---------- */
.asb-footer{
  background:linear-gradient(180deg, var(--asb-dark) 0%, #111827 100%);
  color:#E2E8F0;
}

.asb-footer h4{
  color:#fff;
}

.asb-footer p,
.asb-footer a{
  color:#CBD5E1;
}

.asb-footer a:hover{
  color:#fff;
}

.asb-footer-btn-primary{
  background:linear-gradient(135deg, var(--asb-primary) 0%, var(--asb-primary-dark) 100%);
  color:#fff !important;
}

.asb-footer-btn-outline{
  background:transparent;
  color:#fff !important;
  border:1.5px solid rgba(255,255,255,.22);
}

/* ---------- IMAGE POLISH ---------- */
img,
figure img,
.wp-block-image img,
.elementor-widget-image img{
  border-radius:20px;
}

.hero img,
.featured-image img,
.service-card img{
  box-shadow:var(--asb-shadow-md);
}

/* ---------- BREADCRUMBS ---------- */
.rank-math-breadcrumb,
nav[aria-label="Breadcrumb"]{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  width:fit-content;
  padding:12px 16px;
  background:#fff;
  border:1px solid var(--asb-border);
  border-radius:999px;
  box-shadow:var(--asb-shadow-sm);
  font-size:14px;
}

/* ---------- MOBILE ---------- */
@media (max-width: 1024px){
  .service-grid,
  .services-grid,
  .asb-services{
    grid-template-columns:1fr;
  }

  .brand-grid,
  .brands-grid,
  .asb-brands{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }

  .site,
  .site-content,
  .content-area,
  .container,
  .elementor-section.elementor-section-boxed > .elementor-container{
    width:min(100% - 24px, var(--asb-container));
  }
}

@media (max-width: 767px){
  body{
    font-size:15px;
  }

  .brand-grid,
  .brands-grid,
  .asb-brands{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .cta-banner,
  .asb-cta,
  .service-today,
  .urgent-help{
    padding:24px 18px;
    border-radius:24px;
  }

  .site,
  .site-content,
  .content-area,
  .container,
  .elementor-section.elementor-section-boxed > .elementor-container{
    width:min(100% - 18px, var(--asb-container));
  }
}

/* ---------- EXTRA TRUST POLISH ---------- */
::selection{
  background:rgba(29,78,216,.14);
  color:var(--asb-dark);
}

body::-webkit-scrollbar{
  width:10px;
}

body::-webkit-scrollbar-track{
  background:#E2E8F0;
}

body::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg, var(--asb-primary), var(--asb-primary-dark));
  border-radius:999px;
}/* End custom CSS */