/*
Theme Name: A3 Mechanical Engineering Works
Theme URI: https://example.com/a3-mechanical
Author: A3 Mechanical Engineering Works
Description: Professional, modern, responsive industrial theme for A3 Mechanical Engineering Works - industrial products sourcing, engineering and supply company (Saudi Arabia / India). Bilingual English + Arabic (RTL), Customizer driven, WooCommerce & Polylang/WPML friendly.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: a3mew
Tags: business, industrial, rtl-language-support, translation-ready, custom-logo, custom-colors, two-columns, responsive
*/

/* =========================================================
   1. DESIGN TOKENS
   Admin note: Primary / secondary colours are overridden from
   Appearance > Customize > A3 Theme Options > Colors.
   ========================================================= */
:root{
  --a3-primary:#0B6B3A;
  --a3-primary-dark:#064A2A;
  --a3-accent:#20A464;
  --a3-black:#111111;
  --a3-white:#FFFFFF;
  --a3-gray:#F4F6F5;
  --a3-gray-200:#E3E8E5;
  --a3-gray-400:#9AA5A0;
  --a3-text:#1C2320;
  --a3-muted:#5C6A63;
  --a3-whatsapp:#25D366;

  --a3-font-head:"Barlow Condensed","Oswald","Segoe UI",Arial,"Noto Kufi Arabic",sans-serif;
  --a3-font-body:"Inter","Segoe UI",Arial,"Noto Sans Arabic",sans-serif;

  --a3-fs-hero:clamp(2rem,5vw,3.75rem);
  --a3-fs-h2:clamp(1.5rem,3vw,2.4rem);
  --a3-fs-h3:clamp(1.1rem,2vw,1.4rem);
  --a3-fs-body:1rem;

  --a3-s1:.5rem; --a3-s2:1rem; --a3-s3:1.5rem; --a3-s4:2rem;
  --a3-s5:3rem; --a3-s6:4.5rem; --a3-s7:6rem;

  --a3-radius:14px; --a3-radius-sm:8px;
  --a3-shadow:0 6px 24px rgba(17,17,17,.08);
  --a3-shadow-lg:0 16px 44px rgba(6,74,42,.16);
  --a3-container:1200px;
  --a3-header-gap:1.5rem;          /* Customizer: header spacing */
  --a3-transition:.25s ease;
}
/* Breakpoints used: 480px, 640px, 768px, 992px, 1200px */

/* 2. BASE / RESET */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--a3-font-body);font-size:var(--a3-fs-body);line-height:1.65;color:var(--a3-text);background:var(--a3-white)}
img{max-width:100%;height:auto;display:block}
a{color:var(--a3-primary);text-decoration:none;transition:color var(--a3-transition)}
a:hover{color:var(--a3-accent)}
h1,h2,h3,h4,h5{font-family:var(--a3-font-head);line-height:1.15;margin:0 0 var(--a3-s2);color:var(--a3-black);letter-spacing:.01em}
h1{font-size:var(--a3-fs-hero)}h2{font-size:var(--a3-fs-h2)}h3{font-size:var(--a3-fs-h3)}
p{margin:0 0 var(--a3-s2)}
ul{margin:0 0 var(--a3-s2);padding-inline-start:1.15rem}
:focus-visible{outline:3px solid var(--a3-accent);outline-offset:2px;border-radius:4px}
.a3-skip{position:absolute;inset-inline-start:-9999px;top:0;background:var(--a3-black);color:#fff;padding:.75rem 1rem;z-index:1000}
.a3-skip:focus{inset-inline-start:0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

.a3-container{width:100%;max-width:var(--a3-container);margin-inline:auto;padding-inline:1.25rem}
.a3-section{padding-block:var(--a3-s6)}
.a3-section--gray{background:var(--a3-gray)}
.a3-section--pattern{background:
  linear-gradient(0deg,rgba(244,246,245,.94),rgba(244,246,245,.94)),
  repeating-linear-gradient(45deg,var(--a3-gray-200) 0 1px,transparent 1px 14px)}
.a3-eyebrow{display:inline-block;font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:.75rem;color:var(--a3-primary);margin-bottom:.5rem}
.a3-section__head{max-width:760px;margin-bottom:var(--a3-s4)}
.a3-lead{font-size:1.075rem;color:var(--a3-muted)}
.a3-center{text-align:center;margin-inline:auto}

/* 3. BUTTONS */
.a3-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.85rem 1.6rem;border-radius:var(--a3-radius-sm);font-weight:700;font-size:.95rem;
  border:2px solid transparent;cursor:pointer;transition:all var(--a3-transition);text-align:center}
.a3-btn--primary{background:var(--a3-primary);color:#fff}
.a3-btn--primary:hover{background:var(--a3-primary-dark);color:#fff;transform:translateY(-2px);box-shadow:var(--a3-shadow-lg)}
.a3-btn--accent{background:var(--a3-accent);color:#08301c}
.a3-btn--accent:hover{background:#189155;color:#fff;transform:translateY(-2px)}
.a3-btn--ghost{border-color:currentColor;color:var(--a3-primary);background:transparent}
.a3-btn--ghost:hover{background:var(--a3-primary);color:#fff}
.a3-btn--light{background:#fff;color:var(--a3-primary-dark)}
.a3-btn--light:hover{background:var(--a3-gray)}
.a3-btn--outline-light{border-color:#fff;color:#fff}
.a3-btn--outline-light:hover{background:#fff;color:var(--a3-primary-dark)}
.a3-btn--sm{padding:.55rem 1rem;font-size:.85rem}
.a3-btn--block{width:100%}

/* 4. HEADER — logo and company name on one line, logo first */
.a3-header{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.97);
  backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--a3-gray-200)}
.a3-header__topbar{background:var(--a3-primary-dark);color:#dff0e6;font-size:.8rem}
.a3-header__topbar .a3-container{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;align-items:center;justify-content:space-between;padding-block:.45rem}
.a3-header__topbar a{color:#dff0e6}
.a3-header__topbar a:hover{color:#fff}
.a3-header__inner{display:flex;align-items:center;justify-content:space-between;
  gap:var(--a3-header-gap);padding-block:var(--a3-header-gap)}
.a3-header--align-center .a3-header__inner{justify-content:center;flex-wrap:wrap;text-align:center}
.a3-header--align-right .a3-header__inner{flex-direction:row-reverse}

.a3-brand{display:flex;align-items:center;gap:.75rem;flex-wrap:nowrap;min-width:0}
.a3-brand__logo{flex:0 0 auto;display:block}
.a3-brand__logo img{width:var(--a3-logo-w,56px);height:var(--a3-logo-h,56px);object-fit:contain}
.a3-brand__text{min-width:0}
.a3-brand__name{font-family:var(--a3-font-head);font-size:1.2rem;font-weight:700;color:var(--a3-black);line-height:1.1;margin:0;display:block}
.a3-brand__tagline{display:block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--a3-primary);font-weight:600}
.a3-header__actions{display:flex;align-items:center;gap:.75rem}

.a3-nav ul{list-style:none;display:flex;align-items:center;gap:1.15rem;margin:0;padding:0}
.a3-nav a{color:var(--a3-black);font-weight:600;font-size:.92rem;padding:.35rem 0;position:relative;display:inline-block}
.a3-nav a::after{content:"";position:absolute;inset-inline-start:0;bottom:0;height:2px;width:0;background:var(--a3-primary);transition:width var(--a3-transition)}
.a3-nav a:hover::after,.a3-nav .current-menu-item>a::after{width:100%}
.a3-nav .current-menu-item>a{color:var(--a3-primary)}
.a3-nav li{position:relative}
.a3-nav ul ul{position:absolute;flex-direction:column;align-items:stretch;gap:0;background:#fff;
  box-shadow:var(--a3-shadow);border-radius:var(--a3-radius-sm);padding:.5rem 0;min-width:220px;display:none;z-index:10}
.a3-nav li:hover>ul,.a3-nav li:focus-within>ul{display:flex}
.a3-nav ul ul a{display:block;padding:.5rem 1rem}

.a3-lang{display:inline-flex;border:1px solid var(--a3-gray-200);border-radius:999px;overflow:hidden;background:#fff}
.a3-lang a{padding:.35rem .8rem;font-size:.82rem;font-weight:700;color:var(--a3-muted)}
.a3-lang a.is-active{background:var(--a3-primary);color:#fff}

.a3-burger{display:none;width:46px;height:44px;border:1px solid var(--a3-gray-200);background:#fff;
  border-radius:var(--a3-radius-sm);align-items:center;justify-content:center;cursor:pointer}
.a3-burger span,.a3-burger span::before,.a3-burger span::after{display:block;width:22px;height:2px;background:var(--a3-black);position:relative;transition:var(--a3-transition)}
.a3-burger span::before,.a3-burger span::after{content:"";position:absolute;inset-inline-start:0}
.a3-burger span::before{top:-7px}.a3-burger span::after{top:7px}
.a3-burger[aria-expanded="true"] span{background:transparent}
.a3-burger[aria-expanded="true"] span::before{transform:translateY(7px) rotate(45deg)}
.a3-burger[aria-expanded="true"] span::after{transform:translateY(-7px) rotate(-45deg)}

.a3-btn--quote-mobile{display:none}
@media (max-width:991px){
  .a3-nav--desktop{display:none}
  .a3-burger{display:inline-flex}
  .a3-btn--quote-desktop{display:none}
  .a3-btn--quote-mobile{display:inline-flex}
  .a3-mobile-panel{display:none;border-top:1px solid var(--a3-gray-200);padding-block:var(--a3-s2)}
  .a3-mobile-panel.is-open{display:block}
  .a3-mobile-panel .a3-nav ul{flex-direction:column;align-items:stretch;gap:0}
  .a3-mobile-panel .a3-nav li{border-bottom:1px solid var(--a3-gray-200)}
  .a3-mobile-panel .a3-nav a{display:block;padding:.85rem .25rem}
  .a3-mobile-panel .a3-nav ul ul{position:static;display:flex;box-shadow:none;padding-inline-start:1rem}
  .a3-mobile-panel__foot{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:var(--a3-s2)}
}
@media (min-width:992px){.a3-mobile-panel{display:none!important}}
@media (max-width:600px){
  .a3-brand__logo img{width:min(var(--a3-logo-w,56px),42px);height:min(var(--a3-logo-h,56px),42px)}
  .a3-brand__name{font-size:.95rem}
  .a3-brand__tagline{display:none}
  .a3-header__inner{gap:.5rem}
  .a3-lang{display:none}
  .a3-mobile-panel .a3-lang{display:inline-flex}
}

/* 5. HERO */
.a3-hero{position:relative;display:flex;align-items:center;min-height:clamp(460px,72vh,720px);
  background:var(--a3-black) center/cover no-repeat;color:#fff;overflow:hidden}
.a3-hero::before{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(6,74,42,.92) 0%,rgba(17,17,17,.78) 55%,rgba(17,17,17,.55) 100%)}
.a3-hero::after{content:"";position:absolute;inset:0;opacity:.18;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.5) 0 1px,transparent 1px 60px)}
.a3-hero .a3-container{position:relative;z-index:2}
.a3-hero__inner{padding-block:var(--a3-s6);max-width:820px}
.a3-hero h1{color:#fff;margin-bottom:var(--a3-s2)}
.a3-hero p{font-size:1.1rem;color:#e6efe9;max-width:640px}
.a3-hero__cta{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:var(--a3-s3)}
.a3-hero__strip{border-top:1px solid rgba(255,255,255,.18);padding-block:1rem;font-size:.85rem;color:#cfe3d7}

/* 6. CARDS / GRIDS */
.a3-grid{display:grid;gap:var(--a3-s3)}
.a3-grid--2{grid-template-columns:repeat(2,1fr)}
.a3-grid--3{grid-template-columns:repeat(3,1fr)}
.a3-grid--4{grid-template-columns:repeat(4,1fr)}
@media (max-width:991px){.a3-grid--4{grid-template-columns:repeat(2,1fr)}.a3-grid--3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.a3-grid--2,.a3-grid--3,.a3-grid--4{grid-template-columns:1fr}}

.a3-card{background:#fff;border:1px solid var(--a3-gray-200);border-radius:var(--a3-radius);
  padding:var(--a3-s3);box-shadow:var(--a3-shadow);display:flex;flex-direction:column;gap:.6rem;
  transition:transform var(--a3-transition),box-shadow var(--a3-transition),border-color var(--a3-transition)}
.a3-card:hover{transform:translateY(-4px);box-shadow:var(--a3-shadow-lg);border-color:var(--a3-accent)}
.a3-card__icon{width:52px;height:52px;border-radius:12px;display:grid;place-items:center;
  background:color-mix(in srgb,var(--a3-primary) 12%,#fff);color:var(--a3-primary)}
.a3-card__icon svg{width:26px;height:26px}
.a3-card h3{margin:0}
.a3-card p{color:var(--a3-muted);margin:0;font-size:.94rem}
.a3-card__link{margin-top:auto;padding-top:.6rem;font-weight:700;font-size:.9rem;display:inline-flex;gap:.35rem;align-items:center}
.a3-card__media{margin:calc(var(--a3-s3) * -1) calc(var(--a3-s3) * -1) 0;border-radius:var(--a3-radius) var(--a3-radius) 0 0;overflow:hidden;aspect-ratio:16/9;background:var(--a3-gray)}
.a3-card__media img{width:100%;height:100%;object-fit:cover}

.a3-list-check{list-style:none;padding:0;margin:0;display:grid;gap:.55rem}
.a3-list-check li{position:relative;padding-inline-start:1.65rem;color:var(--a3-muted)}
.a3-list-check li::before{content:"";position:absolute;inset-inline-start:0;top:.55em;width:.6rem;height:.6rem;border-radius:2px;background:var(--a3-accent)}

/* 7. LOCATIONS / MAPS */
.a3-location{background:#fff;border:1px solid var(--a3-gray-200);border-radius:var(--a3-radius);overflow:hidden;box-shadow:var(--a3-shadow)}
.a3-location__body{padding:var(--a3-s3)}
.a3-location__flag{font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--a3-primary)}
.a3-location__meta{font-size:.9rem;color:var(--a3-muted);margin:0}
.a3-map{aspect-ratio:16/10;background:var(--a3-gray) repeating-linear-gradient(45deg,var(--a3-gray-200) 0 1px,transparent 1px 16px);
  display:grid;place-items:center;color:var(--a3-muted);font-size:.85rem;text-align:center;padding:1rem}
.a3-map iframe{width:100%;height:100%;border:0;display:block}

/* 8. CTA BAND */
.a3-cta{background:linear-gradient(120deg,var(--a3-primary) 0%,var(--a3-primary-dark) 100%);color:#fff;position:relative;overflow:hidden}
.a3-cta::after{content:"";position:absolute;inset:0;opacity:.15;background:repeating-linear-gradient(-45deg,rgba(255,255,255,.6) 0 1px,transparent 1px 22px)}
.a3-cta .a3-container{position:relative;z-index:2;text-align:center;padding-block:var(--a3-s6)}
.a3-cta h2{color:#fff;max-width:820px;margin-inline:auto}
.a3-cta__buttons{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center;margin-top:var(--a3-s3)}

/* 9. PAGE HEADER + CONTENT */
.a3-pagehead{background:var(--a3-primary-dark);color:#fff;padding-block:var(--a3-s5);position:relative;overflow:hidden}
.a3-pagehead::after{content:"";position:absolute;inset:0;opacity:.12;background:repeating-linear-gradient(90deg,rgba(255,255,255,.6) 0 1px,transparent 1px 40px)}
.a3-pagehead .a3-container{position:relative;z-index:2}
.a3-pagehead h1{color:#fff;margin:0}
.a3-pagehead p{color:#cfe3d7;margin:.5rem 0 0;max-width:760px}
.a3-breadcrumb{font-size:.8rem;color:#a9cbb8;margin-bottom:.5rem}
.a3-breadcrumb a{color:#cfe3d7}
.a3-prose{max-width:820px}
.a3-prose h2{margin-top:var(--a3-s4)}

.a3-catblock{background:#fff;border:1px solid var(--a3-gray-200);border-radius:var(--a3-radius);padding:var(--a3-s4);box-shadow:var(--a3-shadow);margin-bottom:var(--a3-s3);scroll-margin-top:120px}
.a3-catblock__head{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:var(--a3-s2)}
.a3-chips{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0}
.a3-chips li{background:var(--a3-gray);border:1px solid var(--a3-gray-200);border-radius:999px;padding:.4rem .85rem;font-size:.85rem;color:var(--a3-text)}
.a3-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:var(--a3-s4)}
.a3-filter{border:1px solid var(--a3-gray-200);background:#fff;border-radius:999px;padding:.5rem 1rem;font-size:.87rem;font-weight:600;cursor:pointer;transition:var(--a3-transition)}
.a3-filter.is-active,.a3-filter:hover{background:var(--a3-primary);color:#fff;border-color:var(--a3-primary)}

.a3-steps{counter-reset:step;display:grid;gap:var(--a3-s2)}
.a3-step{display:flex;gap:1rem;background:#fff;border:1px solid var(--a3-gray-200);border-radius:var(--a3-radius);padding:var(--a3-s3)}
.a3-step::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--a3-font-head);font-size:1.4rem;color:var(--a3-accent);font-weight:700;flex:0 0 auto}

/* 10. FORMS */
.a3-form{background:#fff;border:1px solid var(--a3-gray-200);border-radius:var(--a3-radius);padding:var(--a3-s4);box-shadow:var(--a3-shadow);position:relative}
.a3-form__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--a3-s2)}
.a3-field--full{grid-column:1/-1}
@media (max-width:768px){.a3-form__grid{grid-template-columns:1fr}.a3-form{padding:var(--a3-s3)}}
.a3-field label{display:block;font-weight:600;font-size:.88rem;margin-bottom:.35rem}
.a3-field .req{color:#b3261e}
.a3-field input,.a3-field select,.a3-field textarea{width:100%;padding:.75rem .9rem;border:1px solid var(--a3-gray-200);border-radius:var(--a3-radius-sm);font:inherit;color:var(--a3-text);background:#fff;transition:border-color var(--a3-transition),box-shadow var(--a3-transition)}
.a3-field input:focus,.a3-field select:focus,.a3-field textarea:focus{border-color:var(--a3-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--a3-accent) 30%,transparent);outline:none}
.a3-field textarea{min-height:130px;resize:vertical}
.a3-field .a3-hint{font-size:.78rem;color:var(--a3-muted);margin-top:.25rem}
.a3-field--check{display:flex;gap:.6rem;align-items:flex-start}
.a3-field--check input{width:auto;margin-top:.25rem}
.a3-error{color:#b3261e;font-size:.82rem;margin-top:.25rem}
.a3-notice{border-radius:var(--a3-radius-sm);padding:1rem 1.15rem;margin-bottom:var(--a3-s3);font-weight:600}
.a3-notice--ok{background:#e7f6ed;border:1px solid var(--a3-accent);color:var(--a3-primary-dark)}
.a3-notice--err{background:#fdeceb;border:1px solid #e6a29d;color:#8c1d18}
.a3-form__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:var(--a3-s3)}
.a3-honeypot{position:absolute;left:-9999px}

/* 11. FOOTER */
.a3-footer{background:var(--a3-black);color:#c7d1cb;padding-block:var(--a3-s5) var(--a3-s3);font-size:.92rem}
.a3-footer h3{color:#fff;font-size:1rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:var(--a3-s2)}
.a3-footer a{color:#c7d1cb}
.a3-footer a:hover{color:var(--a3-accent)}
.a3-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}
.a3-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.3fr;gap:var(--a3-s4)}
@media (max-width:991px){.a3-footer__grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.a3-footer__grid{grid-template-columns:1fr}}
.a3-footer__brand{display:flex;align-items:center;gap:.75rem;margin-bottom:var(--a3-s2)}
.a3-footer__brand img{width:var(--a3-logo-w,56px);height:auto}
.a3-footer__brand strong{color:#fff;font-family:var(--a3-font-head);font-size:1.1rem}
.a3-footer__bottom{border-top:1px solid #262b28;margin-top:var(--a3-s4);padding-top:var(--a3-s2);display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:center;justify-content:space-between;font-size:.85rem}
.a3-footer__legal{display:flex;flex-wrap:wrap;gap:1rem}
.a3-footer .a3-lang{background:transparent;border-color:#333;display:inline-flex}
.a3-footer .a3-lang a{color:#c7d1cb}
.a3-footer .a3-lang a.is-active{background:var(--a3-primary);color:#fff}

/* 12. FLOATING WHATSAPP BUTTON */
.a3-wa{position:fixed;bottom:22px;inset-inline-end:22px;z-index:950;display:inline-flex;align-items:center;gap:.55rem;
  background:var(--a3-whatsapp);color:#04381d;border-radius:999px;padding:.8rem 1rem;font-weight:700;
  box-shadow:0 10px 26px rgba(37,211,102,.4);transition:transform var(--a3-transition),box-shadow var(--a3-transition)}
.a3-wa:hover{transform:translateY(-3px) scale(1.03);color:#04381d;box-shadow:0 14px 32px rgba(37,211,102,.55)}
.a3-wa svg{width:26px;height:26px;fill:#04381d}
.a3-wa__label{font-size:.9rem}
@media (max-width:768px){.a3-wa{bottom:16px;inset-inline-end:16px;padding:.8rem}.a3-wa__label{display:none}}

/* 13. MOTION / UTILITIES */
.a3-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.a3-reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .a3-reveal{opacity:1;transform:none}
}
.a3-hide{display:none!important}
.a3-mt3{margin-top:var(--a3-s3)}
.a3-split{display:grid;grid-template-columns:1.15fr .85fr;gap:var(--a3-s4);align-items:start}
@media (max-width:900px){.a3-split{grid-template-columns:1fr}}

/* ==========================================================================
   Additional components: sections, cards, lists, forms, footer, utilities
   ========================================================================== */

.a3-section--muted { background: var(--a3-surface, #f5f7f6); }
.a3-section--dark {
	background: linear-gradient(140deg, var(--a3-primary-dark), var(--a3-primary));
	color: #fff;
}
.a3-section--dark h2,
.a3-section--dark h3 { color: #fff; }

.a3-eyebrow--light { color: rgba(255, 255, 255, .82); }

.a3-h3 { font-family: var(--a3-font-head, inherit); font-size: clamp(1.15rem, 2.4vw, 1.45rem); line-height: 1.3; margin: 0 0 .5rem; }
.a3-mt3 { margin-top: 1rem; }
.a3-mt4 { margin-top: 2rem; }

.a3-hero__text { max-width: 46rem; font-size: clamp(1rem, 2vw, 1.15rem); color: rgba(255, 255, 255, .9); }
.a3-hero__buttons { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }

.a3-link { font-weight: 600; color: var(--a3-primary); text-decoration: none; border-bottom: 2px solid transparent; }
.a3-link:hover, .a3-link:focus-visible { border-bottom-color: currentColor; }

.a3-card--plain { background: #fff; }
.a3-card__more { display: inline-block; margin-top: .85rem; font-weight: 600; color: var(--a3-primary); font-size: .92rem; }
.a3-card__media img { width: 100%; height: 180px; object-fit: cover; border-radius: .6rem; margin-bottom: .9rem; }

.a3-checklist,
.a3-itemlist,
.a3-contact-list,
.a3-results { list-style: none; margin: 0; padding: 0; }
.a3-checklist li,
.a3-itemlist li,
.a3-contact-list li { display: flex; align-items: flex-start; gap: .6rem; padding: .45rem 0; }
.a3-itemlist { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: .1rem 1.25rem; margin: 1rem 0; }
.a3-ico { width: 20px; height: 20px; flex: 0 0 20px; color: var(--a3-primary); margin-top: .15rem; }
.a3-section--dark .a3-ico { color: #fff; }

.a3-why { display: flex; align-items: flex-start; gap: .7rem; padding: 1rem 1.1rem; border-radius: .7rem; background: rgba(255, 255, 255, .09); font-weight: 600; }
.a3-why--light { background: var(--a3-surface, #f5f7f6); color: var(--a3-ink, inherit); }

.a3-filters { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2rem; }
.a3-chip {
	border: 1px solid var(--a3-line, #dfe5e2); background: #fff; color: inherit;
	border-radius: 999px; padding: .5rem 1rem; font: inherit; font-size: .9rem; font-weight: 600; cursor: pointer;
	transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.a3-chip:hover { border-color: var(--a3-primary); color: var(--a3-primary); }
.a3-chip.is-active { background: var(--a3-primary); border-color: var(--a3-primary); color: #fff; }
.a3-hide { display: none !important; }

.a3-catblock { padding: 1.75rem 0; border-top: 1px solid var(--a3-line, #dfe5e2); }
.a3-catblock__head { display: flex; gap: 1rem; align-items: flex-start; }

.a3-stack { display: grid; gap: 1.25rem; }
.a3-service { display: flex; gap: 1.1rem; align-items: flex-start; background: #fff; border: 1px solid var(--a3-line, #dfe5e2); border-radius: .9rem; padding: 1.5rem; }
.a3-service__body { flex: 1 1 auto; }

.a3-split--form { align-items: start; }
.a3-panel { background: #fff; border: 1px solid var(--a3-line, #dfe5e2); border-radius: .9rem; padding: clamp(1.25rem, 3vw, 2rem); box-shadow: var(--a3-shadow, 0 12px 30px rgba(6, 74, 42, .08)); }

/* Forms */
.a3-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.a3-field--full { grid-column: 1 / -1; }
.a3-field label { display: block; font-weight: 600; font-size: .9rem; margin-bottom: .35rem; }
.a3-field input, .a3-field select, .a3-field textarea {
	width: 100%; padding: .7rem .85rem; font: inherit; color: inherit; background: #fff;
	border: 1px solid var(--a3-line, #dfe5e2); border-radius: .55rem;
}
.a3-field input:focus, .a3-field select:focus, .a3-field textarea:focus {
	outline: 3px solid color-mix(in srgb, var(--a3-primary) 35%, transparent); outline-offset: 1px; border-color: var(--a3-primary);
}
.a3-field--check { display: flex; align-items: flex-start; gap: .6rem; }
.a3-field--check input { width: auto; margin-top: .25rem; }
.a3-field--check label { margin: 0; font-weight: 400; }
.a3-field .req { color: #b3261e; }
.a3-hint { font-size: .82rem; color: var(--a3-muted, #5c6b64); margin: .35rem 0 0; }
.a3-error { color: #b3261e; font-size: .85rem; margin: .35rem 0 0; }
.a3-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.a3-form__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.a3-notice { padding: .9rem 1.1rem; border-radius: .6rem; margin-bottom: 1.25rem; font-weight: 600; }
.a3-notice--ok { background: #e7f5ec; color: #0b6b3a; border: 1px solid #b9e2c9; }
.a3-notice--err { background: #fdecea; color: #b3261e; border: 1px solid #f5c6c2; }

.a3-searchform { display: flex; gap: .5rem; margin-bottom: 1.5rem; }
.a3-searchform input { flex: 1 1 auto; padding: .7rem .85rem; border: 1px solid var(--a3-line, #dfe5e2); border-radius: .55rem; font: inherit; }

.a3-results li { padding: 1rem 0; border-bottom: 1px solid var(--a3-line, #dfe5e2); }
.a3-pagination { margin-top: 2rem; }
.a3-pagination .page-numbers { display: inline-block; padding: .45rem .8rem; border: 1px solid var(--a3-line, #dfe5e2); border-radius: .45rem; margin-inline-end: .35rem; text-decoration: none; }
.a3-pagination .page-numbers.current { background: var(--a3-primary); color: #fff; border-color: var(--a3-primary); }

.a3-comments { margin-top: 2.5rem; }
.a3-commentlist { list-style: none; padding: 0; }
.a3-commentlist .children { list-style: none; padding-inline-start: 1.25rem; }

.a3-menu { display: flex; gap: 1.25rem; list-style: none; margin: 0; padding: 0; align-items: center; }
.a3-menu a { text-decoration: none; font-weight: 600; color: inherit; }
.a3-menu a:hover { color: var(--a3-primary); }

.a3-footer__widget { margin-bottom: 1.5rem; }

@media (max-width: 720px) {
	.a3-form__grid { grid-template-columns: 1fr; }
	.a3-service { flex-direction: column; }
	.a3-menu { flex-direction: column; align-items: flex-start; gap: .25rem; }
}

.a3-featured { width: 100%; height: auto; border-radius: .8rem; margin-bottom: 1.5rem; }
