/* ============================================================
   Accurate Appliance Repair — global stylesheet
   Tokens and type scale taken verbatim from the original site's
   Elementor global kit (.elementor-kit-7) + Astra theme.
   ============================================================ */

/* ---------- self-hosted fonts ---------- */
@font-face{font-family:'Raleway';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/raleway-400.woff2') format('woff2')}
@font-face{font-family:'Raleway';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/raleway-600.woff2') format('woff2')}
@font-face{font-family:'Raleway';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/raleway-700.woff2') format('woff2')}
@font-face{font-family:'Lato';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/lato-400-italic.woff2') format('woff2')}
@font-face{font-family:'Lato';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/lato-400.woff2') format('woff2')}
@font-face{font-family:'Lato';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/lato-700.woff2') format('woff2')}
@font-face{font-family:'Lato';font-style:normal;font-weight:900;font-display:swap;src:url('/fonts/lato-900.woff2') format('woff2')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/opensans-400.woff2') format('woff2')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/opensans-600.woff2') format('woff2')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/opensans-700.woff2') format('woff2')}
@font-face{font-family:'League Gothic';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/leaguegothic-400.woff2') format('woff2')}

/* ---------- reset / base ---------- */
html{line-height:1.15;-webkit-text-size-adjust:100%;box-sizing:border-box}
*,*::before,*::after{box-sizing:inherit}
body{margin:0}
img,svg,video,iframe{max-width:100%;height:auto;vertical-align:middle;border:0}
button,input,select,textarea{font-family:inherit;font-size:100%;line-height:inherit;margin:0}
fieldset{border:0;margin:0;padding:0}
textarea{resize:vertical}
a{color:var(--aar-red);font-weight:500;text-decoration:none}
a:hover,a:focus{color:var(--aar-red);text-decoration:underline}
::selection{background:var(--aar-navy);color:#fff}

/* ---------- design tokens (from .elementor-kit-7) ---------- */
:root{
  --aar-navy:#121A7C;          /* e-global-color-primary */
  --aar-navy-bright:#054192;   /* hero "Welcome To" blue */
  --aar-red:#B30505;           /* e-global-color-secondary */
  --aar-ink:#0D1359;           /* e-global-color-accent (buttons) */
  --aar-text:#333333;          /* e-global-color-text */
  --aar-white:#FFFFFF;         /* e-global-color-1f493f8d */
  --aar-black:#000000;         /* e-global-color-1c2c287e */
  --aar-offwhite:#F8F8F8;      /* e-global-color-20ba0138 */
  --aar-link:#0274be;          /* Astra global link / nav active */
  --aar-footer:#222222;
  --aar-display:"Raleway",sans-serif;
  --aar-gothic:"League Gothic",sans-serif;
  --aar-text-font:"Lato",sans-serif;
  --aar-body:"Open Sans",sans-serif;
  --container:1140px;
}

html{font-size:16px}
body{
  font-family:var(--aar-body);
  font-size:16px;
  line-height:1.8;
  color:var(--aar-text);
  background:var(--aar-white);
}

/* kit heading scale */
h1,h2{font-family:var(--aar-display);font-size:34px;line-height:1.4;color:var(--aar-navy);font-weight:400;margin:0 0 .6em}
h3{font-family:var(--aar-display);font-size:25px;line-height:1.45;color:var(--aar-navy);font-weight:400;margin:0 0 .6em}
h4{font-family:var(--aar-display);font-size:21px;line-height:1.5;color:var(--aar-navy);font-weight:400;margin:0 0 .6em}
h5{font-family:var(--aar-display);font-size:19px;line-height:1.55;color:var(--aar-navy);font-weight:400;margin:0 0 .6em}
h6{font-family:var(--aar-display);font-size:17px;line-height:1.5;color:var(--aar-navy);font-weight:400;margin:0 0 .6em}
p{margin:0 0 1.2em}
ul,ol{margin:0 0 1.2em;padding-left:1.4em}

/* ---------- layout helpers ---------- */
.container{max-width:var(--container);margin:0 auto;padding:0 20px}
.section{padding:48px 0}
.section--tight{padding:32px 0}
.section--red{background:var(--aar-red)}
.section--navy{background:var(--aar-navy)}
.section--off{background:var(--aar-offwhite)}
.text-center{text-align:center}
.section--red h2,.section--navy h2{color:var(--aar-white)}
.section--red h3,.section--navy h3{color:var(--aar-white)}

/* ---------- buttons (kit button style) ---------- */
.btn{
  display:inline-block;background:var(--aar-ink);color:var(--aar-white);
  padding:14px 34px;font-size:16px;line-height:1.2;text-decoration:none;
  border:0;cursor:pointer;transition:background-color .2s ease;
  font-family:var(--aar-body);font-weight:400;
}
.btn:hover,.btn:focus{background:var(--aar-red);color:var(--aar-white);text-decoration:none}
.btn--sm{padding:10px 22px;font-size:15px}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:999;background:var(--aar-white);box-shadow:0 2px 10px rgba(0,0,0,.08)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1400px;margin:0 auto;padding:14px 24px}
.brand{display:flex;align-items:center;gap:18px;text-decoration:none}
.brand__logo{width:250px;height:80px;object-fit:contain;display:block}
.brand__title{font-family:var(--aar-display);font-size:30px;line-height:1.2;color:var(--aar-red);font-weight:500}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px}
.main-nav a{display:block;padding:10px 14px;color:var(--aar-text);font-size:16px;text-decoration:none}
.main-nav a:hover{color:var(--aar-red);text-decoration:none}
.main-nav a.nav-active{color:var(--aar-link)}
.menu-toggle{display:none;background:none;border:0;cursor:pointer;padding:10px}
.menu-toggle span{display:block;width:24px;height:2px;background:var(--aar-text);margin:5px 0;transition:transform .2s,opacity .2s}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;border-top:1px solid #eee;background:var(--aar-white)}
.mobile-menu.open{display:block}
.mobile-menu ul{list-style:none;margin:0;padding:8px 0}
.mobile-menu a{display:block;padding:12px 24px;color:var(--aar-text);font-size:16px;border-bottom:1px solid #f2f2f2;text-decoration:none}
.mobile-menu a:hover,.mobile-menu a.nav-active{color:var(--aar-link);background:var(--aar-offwhite)}

/* sticky shrink */
.site-header.is-stuck .header-inner{padding-top:6px;padding-bottom:6px}
.site-header.is-stuck .brand__logo{width:200px;height:64px}
.site-header.is-stuck .brand__title{font-size:24px}

/* ---------- footer ---------- */
.site-footer{background:var(--aar-footer);color:var(--aar-white);text-align:center;padding:18px 20px;font-size:15px;line-height:1.5}
.site-footer a{color:var(--aar-white)}

/* ---------- home hero ---------- */
.home-hero{display:grid;grid-template-columns:1fr 1fr;min-height:440px;background:url('/images/managed/hero-home.webp') center/cover no-repeat}
.home-hero__panel{background:var(--aar-white);border-left:9px solid var(--aar-ink);box-shadow:0 0 2px rgba(0,0,0,.5);padding:40px 7%;display:flex;flex-direction:column;justify-content:center}
.home-hero__mobile-img{display:none}
.home-hero__divider{width:25%;min-width:80px;height:1px;background:var(--aar-black);margin:0 auto 18px}
.hero-eyebrow{font-family:var(--aar-display);font-size:44px;line-height:1.3;font-weight:600;color:var(--aar-navy-bright);text-align:center;margin:0 0 4px}
.hero-title{font-family:var(--aar-display);font-size:44px;line-height:1.3;color:var(--aar-red);text-align:center;margin:0 0 14px}
.hero-cta{display:block;text-align:center;font-family:var(--aar-gothic);font-size:67px;line-height:1.3;text-transform:uppercase;letter-spacing:2.5px;color:var(--aar-text);text-decoration:none}
.hero-cta:hover{color:var(--aar-red)}

/* ---------- COVID announcement bar ---------- */
.covid-bar{background:var(--aar-navy);box-shadow:0 0 2px rgba(0,0,0,.5);padding:14px 20px}
.covid-bar__title{margin:0;font-family:var(--aar-text-font);font-size:1.6rem;line-height:1.3;font-weight:400;text-transform:uppercase;letter-spacing:2.5px;color:var(--aar-white);text-align:center}

/* ---------- who we are ---------- */
.who-grid{display:grid;grid-template-columns:5fr 6fr;gap:40px;align-items:start}
.who-left h2{text-align:center}
.who-left p{font-family:var(--aar-text-font);font-size:19px;line-height:1.7;color:var(--aar-navy)}
.who-left .bbb-seal{background:#f3f3f3;padding:1em .5em .5em;border-radius:1em;text-align:center;margin:20px auto;max-width:440px}
.who-left .bbb-seal img{display:inline-block;vertical-align:middle;max-width:190px}
.who-left .btn-row{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0}
.who-left .photo{display:block;margin:18px auto;max-width:340px}
.who-right p{font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8}

/* ---------- excellence / certification cards ---------- */
.excellence h2{text-align:center}
.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px}
.cert-card{background:var(--aar-white);margin:0;padding:32px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:230px}
.cert-card img{max-width:100%;height:auto}

/* ---------- brands cta ---------- */
.brands-cta{text-align:center}
.brands-cta h2{margin-bottom:18px}

/* ---------- inner page hero ---------- */
.page-hero{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:25vh;background:var(--aar-navy) center/cover no-repeat}
.page-hero::before{content:"";position:absolute;inset:0;background:rgba(18,26,124,.74)}
.page-hero__title{position:relative;display:flex;align-items:center;justify-content:center;padding:30px 34px;border-right:10px solid var(--aar-red)}
.page-hero__title h1{margin:0;color:var(--aar-white);font-size:34px;line-height:1.4;font-weight:400}
.page-hero__cta{position:relative;background:var(--aar-white);display:flex;align-items:center;justify-content:center;padding:30px 24px}
.page-hero__cta a{font-family:var(--aar-gothic);font-size:48px;line-height:1.3;text-transform:uppercase;letter-spacing:7.9px;color:var(--aar-ink);text-decoration:none}
.page-hero__cta a:hover{color:var(--aar-red)}

/* ---------- services: appliance categories ---------- */
.red-band h2,.red-band p{color:var(--aar-white)}
.red-band .lede{text-align:center;max-width:900px;margin:0 auto 1.4em}
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:28px}
.cat-card{background:var(--aar-white);padding:26px 20px}
.cat-card h3{text-align:center;font-family:var(--aar-text-font);font-size:1.15rem;font-weight:400;text-transform:uppercase;letter-spacing:2px;color:var(--aar-navy);margin-bottom:14px}
.cat-card ul{list-style:none;margin:0;padding:0}
.cat-card li{display:flex;align-items:flex-start;gap:10px;font-family:var(--aar-text-font);font-size:1.3rem;line-height:1.5;padding:5px 0;color:var(--aar-text)}
.cat-card li svg{flex:0 0 auto;width:18px;height:18px;margin-top:6px;fill:var(--aar-red)}
.cat-card li:hover{color:var(--aar-red)}

/* ---------- FAQ accordion ---------- */
.faq h2,.tips-title{color:var(--aar-white);text-align:center}
.tips-title{color:var(--aar-navy-bright);text-align:left;margin:34px 0 18px}
.accordion{max-width:960px;margin:0 auto;border:1px solid rgba(255,255,255,.25)}
.acc-item+.acc-item{border-top:1px solid rgba(255,255,255,.25)}
.acc-trigger{display:flex;align-items:center;gap:14px;width:100%;background:var(--aar-red);color:var(--aar-white);border:0;padding:16px 20px;font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8;text-align:left;cursor:pointer}
.acc-trigger:hover{background:#c20c0c}
.acc-trigger .acc-icon{flex:0 0 auto;width:16px;height:16px;position:relative}
.acc-trigger .acc-icon::before,.acc-trigger .acc-icon::after{content:"";position:absolute;background:var(--aar-white);left:0;top:7px;width:16px;height:2px;transition:transform .2s}
.acc-trigger .acc-icon::after{transform:rotate(90deg)}
.acc-item.open .acc-trigger .acc-icon::after{transform:rotate(0)}
.acc-panel{display:none;background:var(--aar-white);padding:18px 22px;font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8}
.acc-item.open .acc-panel{display:block}

/* ---------- tips tabs ---------- */
.tabs{display:grid;grid-template-columns:33% 67%;background:var(--aar-white);max-width:1080px;margin:0 auto;min-height:420px}
.tabs__nav{border-right:1px solid #e5e5e5;padding:18px 0}
.tab-btn{display:block;width:100%;text-align:left;background:none;border:0;cursor:pointer;padding:10px 20px;font-family:var(--aar-text-font);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:-.3px;line-height:1.3;color:var(--aar-red)}
.tab-btn:hover{background:var(--aar-offwhite)}
.tab-btn.active{background:var(--aar-red);color:var(--aar-white)}
.tabs__body{padding:28px 32px}
.tab-panel{display:none}
.tab-panel.active{display:block}
.tab-panel img{display:block;max-width:280px;width:100%;height:auto;margin:0 auto 20px}
.tab-panel p{font-family:var(--aar-text-font);font-size:1.05rem;line-height:1.8;text-align:center;max-width:520px;margin:0 auto}

/* ---------- smart appliances / cyber ---------- */
.cyber-grid{display:grid;grid-template-columns:43% 57%;gap:0;align-items:start}
.cyber-card{background:var(--aar-white);border:1px solid #e5e5e5;padding:5%}
.cyber-card img{display:block;margin:0 auto 24px;max-width:420px}
.cyber-card h3{font-family:var(--aar-text-font);font-size:1.05rem;color:var(--aar-text);text-align:center;margin:0}
.cyber-copy h3{color:var(--aar-navy);text-align:center;font-size:25px}
.cyber-copy p{font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8}

/* ---------- contact ---------- */
.connect h2{text-align:center;margin-bottom:26px}
.connect-grid{display:grid;grid-template-columns:1fr;gap:20px;max-width:760px;margin:0 auto;text-align:center}
.social-row{display:flex;justify-content:center;gap:14px;margin-bottom:8px}
.social-row a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--aar-navy);color:#fff;transition:background-color .2s}
.social-row a:hover{background:var(--aar-red)}
.social-row svg{width:20px;height:20px;fill:currentColor}
.contact-list{list-style:none;margin:0;padding:0}
.contact-list li{display:flex;align-items:flex-start;justify-content:center;gap:12px;font-family:var(--aar-text-font);font-size:1.2rem;line-height:1.8;padding:6px 0;color:var(--aar-text)}
.contact-list li svg{flex:0 0 auto;width:20px;height:20px;margin-top:8px;fill:var(--aar-navy)}
.contact-list a{color:var(--aar-text);text-decoration:none;font-weight:400}
.contact-list a:hover{color:var(--aar-red);text-decoration:underline}
.map-wrap{background:var(--aar-ink);padding:0}
.map-wrap iframe{display:block;width:100%;height:50vh;min-height:320px;border:0}
.careers{padding:56px 0}
.careers h2{margin-bottom:20px}
.careers p{font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8;max-width:860px}
.careers ul{list-style:disc;padding-left:2em;max-width:860px}
.careers li{font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8}

/* ---------- brands page ---------- */
.brands-intro{background:var(--aar-offwhite);padding:26px 20px;border-bottom:1px solid #e8e8e8}
.brands-intro p{margin:0;font-family:var(--aar-text-font);font-size:1.3rem;line-height:1.6;font-weight:400;text-transform:uppercase;letter-spacing:2.5px;color:var(--aar-red);text-align:center}
.brands-split{display:grid;grid-template-columns:31% 69%;gap:32px;align-items:start;padding:40px 0}
.brands-split img{display:block;max-width:150px}
.brands-split p{font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8;margin-bottom:1.4em}
.brand-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;padding:34px 20px;background:var(--aar-offwhite)}
.brand-tiles img{display:block;width:100%;height:auto;background:var(--aar-white);padding:14px}
.warranty-split{display:grid;grid-template-columns:49% 51%;gap:0;align-items:stretch}
.warranty-split .warranty-copy{padding:56px 48px;font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8}
.warranty-split .warranty-copy p{color:var(--aar-white)}
.warranty-thanks{margin-top:28px;font-family:var(--aar-gothic);font-size:1.9rem;line-height:1.5;text-transform:uppercase;letter-spacing:2.5px;text-align:center;color:var(--aar-white)}
.warranty-split .warranty-photo{background:var(--aar-white);display:flex;align-items:center;justify-content:center;padding:40px}
.warranty-split .warranty-photo img{max-width:100%}
.brands-we-repair{text-align:center}

/* ---------- schedule / appointment form ---------- */
.appoint{padding:48px 0}
.appoint h1{font-size:34px;margin-bottom:8px}
.appoint h2{font-size:30px;margin-bottom:26px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:1060px}
.form-field{display:flex;flex-direction:column;gap:6px}
.form-field--full{grid-column:1 / -1}
.form-field label{font-family:var(--aar-body);font-size:15px;color:var(--aar-text)}
.form-field label .req{color:var(--aar-red)}
.form-field input,.form-field select,.form-field textarea{
  font-family:var(--aar-body);font-size:16px;color:var(--aar-text);
  background:var(--aar-white);border:1px solid #c8c8c8;border-radius:2px;
  padding:12px 14px;line-height:1.4;width:100%;
}
.form-field input::placeholder,.form-field textarea::placeholder{color:#9a9a9a}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:0;border-color:var(--aar-navy);box-shadow:0 0 0 2px rgba(18,26,124,.15)}
.form-field textarea{min-height:220px}
.form-submit-row{grid-column:1 / -1;margin-top:8px}

/* ---------- CMS-generated Message Section forms ---------- */
.MessageSection_Container,.cms_MessageSection{max-width:1060px;margin:0 auto}
.MessageSection_Container h1,.MessageSection_Container h2,.Message_Description1 h1{font-family:var(--aar-display);font-size:30px;color:var(--aar-navy);margin:0 0 24px;font-weight:400}
.MessageSection_Container form,.cms_MessageSection form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.MessageSection_Container .MessageForm_InputItem,.cms_MessageSection .MessageForm_InputItem,.MessageSection_Container fieldset,.cms_MessageSection fieldset{border:0;margin:0 0 4px;padding:0;display:block;min-width:0}
.MessageSection_Container .MessageForm_InputItem label,.cms_MessageSection .MessageForm_InputItem label{display:inline;font-weight:400}
.MessageSection_Container .MessageForm_InputItem .formFieldRequiredMarker{display:inline}
.MessageSection_Container .MessageForm_InputItem br,.cms_MessageSection .MessageForm_InputItem br{display:none}
.MessageSection_Container .MessageForm_InputItem input,.MessageSection_Container .MessageForm_InputItem select,.MessageSection_Container .MessageForm_InputItem textarea,
.cms_MessageSection .MessageForm_InputItem input,.cms_MessageSection .MessageForm_InputItem select,.cms_MessageSection .MessageForm_InputItem textarea{display:block;width:100%;margin-top:6px}
.MessageSection_Container select,.cms_MessageSection select,
.MessageSection_Container textarea,.cms_MessageSection textarea{grid-column:1 / -1}
.MessageSection_Container label,.cms_MessageSection label,.MessageSection_Container legend,.cms_MessageSection legend{font-family:var(--aar-body);font-size:15px;color:var(--aar-text);padding:0}
.MessageSection_Container input[type="text"],.MessageSection_Container input[type="email"],.MessageSection_Container input[type="tel"],
.MessageSection_Container input[type="url"],.MessageSection_Container input[type="date"],.MessageSection_Container select,.MessageSection_Container textarea,.cms_MessageSection input,.cms_MessageSection select,.cms_MessageSection textarea{
  font-family:var(--aar-body);font-size:16px;color:var(--aar-text);
  background:var(--aar-white);border:1px solid #c8c8c8;border-radius:2px;padding:12px 14px;line-height:1.4;width:100%;
}
.MessageSection_Container input::placeholder,.MessageSection_Container textarea::placeholder,.cms_MessageSection input::placeholder,.cms_MessageSection textarea::placeholder{color:#9a9a9a}
.MessageSection_Container input:focus,.MessageSection_Container select:focus,.MessageSection_Container textarea:focus,
.cms_MessageSection input:focus,.cms_MessageSection select:focus,.cms_MessageSection textarea:focus{outline:0;border-color:var(--aar-navy);box-shadow:0 0 0 2px rgba(18,26,124,.15)}
.MessageSection_Container textarea,.cms_MessageSection textarea{min-height:220px}
.MessageSection_Container .MessageForm_SubmitItem,.cms_MessageSection .MessageForm_SubmitItem,.MessageForm_Buttons{grid-column:1 / -1}
.MessageSection_Container button[type="submit"],.cms_MessageSection button[type="submit"],
.MessageSection_Container input[type="submit"],.cms_MessageSection input[type="submit"]{
  display:inline-block;background:var(--aar-ink);color:var(--aar-white);border:0;border-radius:2px;
  padding:14px 34px;font-size:16px;font-family:var(--aar-body);cursor:pointer;transition:background-color .2s;width:auto;
}
.MessageSection_Container button[type="submit"]:hover,.cms_MessageSection button[type="submit"]:hover,
.MessageSection_Container input[type="submit"]:hover,.cms_MessageSection input[type="submit"]:hover{background:var(--aar-red);color:var(--aar-white)}
.MessageSection_Container .formFieldRequiredMarker,.cms_MessageSection .formFieldRequiredMarker,.MessageSection_Container .MessageForm_RequiredMark,.cms_MessageSection .MessageForm_RequiredMark{color:var(--aar-red);font-weight:400}
/* field order to mirror the original form: Name (full row), Email | Phone, Service (full), Message (full) */
.MessageSection_Container form .MessageForm_NameItem,.cms_MessageSection form .MessageForm_NameItem{grid-column:1 / -1}
.MessageSection_Container form .MessageForm_EmailItem,.cms_MessageSection form .MessageForm_EmailItem{order:1}
.MessageSection_Container form .MessageForm_TelephoneItem,.cms_MessageSection form .MessageForm_TelephoneItem{order:2}
.MessageSection_Container form .MessageForm_CustomField1Item,.cms_MessageSection form .MessageForm_CustomField1Item{order:3;grid-column:1 / -1}
.MessageSection_Container form .MessageForm_MessageTextItem,.cms_MessageSection form .MessageForm_MessageTextItem{order:4;grid-column:1 / -1}
.MessageSection_Container form .MessageForm_Buttons,.cms_MessageSection form .MessageForm_Buttons,.MessageSection_Container form .MessageForm_StatusMsg,.cms_MessageSection form .MessageForm_StatusMsg{order:5}
.MessageSection_Container .Message_Description2,.cms_MessageSection .Message_Description2{grid-column:1 / -1;font-family:var(--aar-text-font);font-size:1rem}

/* ---------- CMS region chrome ---------- */
.cms_region{margin:0 auto}
.cms_region > .container{max-width:var(--container)}

/* ---------- search page ---------- */
.search-hero{padding:36px 0 20px;text-align:center}
.search-hero h1{font-size:34px;margin-bottom:10px}
.search-hero p{font-family:var(--aar-text-font);color:var(--aar-text)}
.search-wrap{max-width:760px;margin:0 auto;padding:0 20px 56px}
.search-wrap form{display:flex;gap:10px}
.search-wrap input[type="search"],.search-wrap input[type="text"]{flex:1;font-size:16px;padding:12px 14px;border:1px solid #c8c8c8;border-radius:2px}
.search-wrap input:focus{outline:0;border-color:var(--aar-navy);box-shadow:0 0 0 2px rgba(18,26,124,.15)}
.search-results{list-style:none;margin:26px 0 0;padding:0}
.search-results li{border-bottom:1px solid #e8e8e8;padding:14px 0}
.search-results a{color:var(--aar-navy);font-weight:600;font-size:17px}
.search-results a:hover{color:var(--aar-red)}
.search-results p{margin:.3em 0 0;font-size:15px;color:var(--aar-text)}
.search-count{font-family:var(--aar-text-font);color:var(--aar-text);margin:20px 0 0}

/* ---------- back to top ---------- */
.to-top{position:fixed;right:18px;bottom:18px;z-index:998;width:44px;height:44px;border-radius:50%;border:0;background:var(--aar-ink);color:#fff;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.3);opacity:0;pointer-events:none;transition:opacity .25s,background-color .2s}
.to-top.show{opacity:1;pointer-events:auto}
.to-top:hover{background:var(--aar-red)}
.to-top svg{width:18px;height:18px;fill:currentColor;margin:auto;display:block}

/* ---------- CMS search core (page 1) ---------- */
.cms_Search form{display:flex;gap:10px;margin:0 0 20px}
.cms_Search input[type="text"],.cms_Search input[type="search"],.cms_Search select{flex:1;font-size:16px;padding:12px 14px;border:1px solid #c8c8c8;border-radius:2px}
.cms_Search input:focus,.cms_Search select:focus{outline:0;border-color:var(--aar-navy)}
.cms_Search button{background:var(--aar-ink);color:#fff;border:0;border-radius:2px;padding:12px 26px;font-size:16px;cursor:pointer}
.cms_Search button:hover{background:var(--aar-red)}
.cms_Search ul,.cms_Search ol{list-style:none;margin:0;padding:0}
.cms_Search ul li,.cms_Search ol li{border-bottom:1px solid #e8e8e8;padding:14px 0}
.cms_Search ul li a,.cms_Search ol li a{color:var(--aar-navy);font-weight:600;font-size:17px}
.cms_Search ul li a:hover,.cms_Search ol li a:hover{color:var(--aar-red);text-decoration:none}
.cms_Search ul li p,.cms_Search ol li p{margin:.3em 0 0;font-size:15px}

/* ---------- 404 ---------- */
.cms-404-text{text-align:center;padding:5em 0}

/* ---------- print ---------- */
@media print{
  *,*::before,*::after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}
  a,a:visited{text-decoration:underline}
  a[href]:after{content:" (" attr(href) ")"}
  a[href^="#"]:after{content:""}
  img{max-width:100%!important}
}

/* ================= responsive ================= */
@media (max-width:1024px){
  html{font-size:15px}
  h1,h2{font-size:27px;line-height:1.3}
  h3{font-size:22px;line-height:1.35}
  h4{font-size:19px}
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .cyber-grid{grid-template-columns:1fr}
  .warranty-split{grid-template-columns:1fr}
  .warranty-split .warranty-copy{padding:40px 32px}
}
@media (max-width:767px){
  html{font-size:14px}
  h1,h2{font-size:25px}
  h3{font-size:21px}
  h4{font-size:19px}
  .main-nav{display:none}
  .menu-toggle{display:block}
  .brand__title{display:none}
  .brand__logo{width:200px;height:64px}
  .header-inner{padding:10px 16px}
  .home-hero{grid-template-columns:1fr;min-height:0}
  .home-hero__panel{border-left:0;border-top:9px solid var(--aar-ink);padding:18px 20px}
  .home-hero__mobile-img{display:block;height:200px;background:url('/images/managed/kitchen-hero-mobile.webp') center/cover no-repeat}
  .hero-eyebrow,.hero-title{font-size:30px}
  .hero-cta{font-size:24px;letter-spacing:1.5px;margin-top:10px}
  .covid-bar__title{font-size:1.3rem;letter-spacing:1.5px}
  .who-grid{grid-template-columns:1fr;gap:28px}
  .cert-grid{grid-template-columns:1fr;gap:18px}
  .page-hero{grid-template-columns:1fr}
  .page-hero__title{border-right:0;border-bottom:10px solid var(--aar-red);padding:22px 16px}
  .page-hero__cta{padding:22px 16px}
  .page-hero__cta a{font-size:22px;letter-spacing:2.5px}
  .cat-grid{grid-template-columns:1fr}
  .tabs{grid-template-columns:1fr}
  .tabs__nav{border-right:0;border-bottom:1px solid #e5e5e5;display:flex;flex-wrap:wrap;padding:0}
  .tab-btn{width:auto;border:1px solid #e5e5e5;border-top:0;padding:10px 12px}
  .tab-btn.active{border-color:var(--aar-red);border-bottom-color:var(--aar-red)}
  .cyber-card{margin:0 16px}
  .brands-split{grid-template-columns:1fr}
  .brands-split img{margin:0 auto}
  .brand-tiles{grid-template-columns:repeat(2,1fr)}
  .form-grid,.MessageSection_Container form,.cms_MessageSection form{grid-template-columns:1fr}
  .btn{padding:12px 24px}
}
@media (max-width:480px){
  .brand-tiles{grid-template-columns:1fr}
  .who-left .btn-row{flex-direction:column;align-items:stretch}
  .who-left .btn-row .btn{width:100%}
}
/* ---------- supplemental shared components ---------- */
.bbb-seal .bbb-a-plus{display:inline-block;background:var(--aar-ink);color:var(--aar-white);padding:2px 9px;margin-right:10px;font-weight:700;font-size:15px;line-height:1.4}
.bbb-seal .bbb-accred{color:var(--aar-red);font-weight:700}
.bbb-seal .bbb-note{display:block;font-size:14px;color:var(--aar-text);margin-top:2px}
.bbb-seal a{color:var(--aar-text);font-weight:400;text-decoration:none}
.bbb-seal a:hover{color:var(--aar-red);text-decoration:underline}
.cert-caption{margin:14px 0 0;text-align:center;color:var(--aar-text);font-size:16px;font-family:var(--aar-text-font)}
.red-heading{color:var(--aar-red)}
.clients{position:relative;background:url('/images/managed/bg-clients.webp') center/cover no-repeat fixed}
.clients::before{content:"";position:absolute;inset:0;background:rgba(179,5,5,.88)}
.clients .container{position:relative}
.clients h2{color:var(--aar-white)}
.clients-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}
.clients-photo{margin:0}
.clients-photo img{display:block;width:100%;height:auto}
.clients-photo figcaption{background:var(--aar-white);padding:12px 14px;font-size:14px;color:var(--aar-text);text-align:center;font-family:var(--aar-text-font)}
.clients-copy p{color:var(--aar-white);font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8}
.clients-copy a{color:var(--aar-white);text-decoration:underline;font-weight:400}
.clients-copy a:hover{color:var(--aar-white)}
.warranty-note{color:var(--aar-navy);font-family:var(--aar-text-font);font-size:1.1rem;line-height:1.8}
@media (max-width:767px){
  .clients-grid{grid-template-columns:1fr;gap:24px}
  .clients{background-attachment:scroll}
  .warranty-split .warranty-copy{padding:36px 24px}
  .warranty-split .warranty-photo{padding:24px}
}