/* Ares Plumbing & HVAC — black, gold, warm off-white. Archivo headings, Source Sans 3 body. */
@font-face{font-family:"Archivo";src:url(../fonts/archivo-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url(../fonts/source-sans-3-latin-wght-normal.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap}

:root{
  --black:#0C0C0D; --gold:#C9A24C; --gold-ink:#7A5C14; --gold-soft:#E3CD96; --paper:#F7F5F0; --line:#E3DED2; --ink:#1B1B1D; --muted:#5B5A57;
  --head:"Archivo",Arial,Helvetica,sans-serif; --body:"Source Sans 3","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --gutter:max(20px,calc((100% - 1160px)/2));
}
body{font-family:var(--body);font-size:18px;line-height:1.6;color:var(--ink);background:#fff}
h1,h2,h3,h4{font-family:var(--head);color:var(--black);letter-spacing:-.01em;line-height:1.15}
h2{font-size:clamp(1.55rem,2.6vw,2.1rem);font-weight:750;margin:0 0 .6em}
h3{font-size:1.2rem;font-weight:700;margin:1.6em 0 .35em}
a{color:var(--gold-ink);text-underline-offset:3px}
a:hover,a:focus{color:var(--black)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* ---------- Header: white so the black-and-gold logo reads ---------- */
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.site-header .inside-header{padding-top:14px;padding-bottom:14px}
.main-title a,.main-title a:hover{font-family:var(--head);font-weight:800;color:var(--black);letter-spacing:-.02em}
.site-logo img,.site-header .header-image{max-height:58px;width:auto}
.main-navigation,.main-navigation ul ul{background:#fff}
.main-navigation .main-nav ul li a,.main-navigation .menu-toggle,.main-navigation .menu-bar-items{color:var(--black);font-family:var(--head);font-weight:600;font-size:15.5px}
.main-navigation .main-nav ul li a{padding-left:14px;padding-right:14px}
.main-navigation .main-nav ul li:hover>a,.main-navigation .main-nav ul li:focus-within>a,.main-navigation .main-nav ul li[class*="current-menu-"]>a{color:var(--gold-ink);background:transparent}
.main-navigation ul ul{border:1px solid var(--line);border-top:3px solid var(--gold);box-shadow:0 14px 30px rgba(12,12,13,.12);width:270px}
.main-navigation .main-nav ul ul li a{font-family:var(--body);font-weight:500;font-size:16px;line-height:1.3;padding:10px 16px}
.main-navigation .main-nav ul ul li:hover>a{background:var(--paper);color:var(--black)}
body .main-navigation .main-nav ul li.nav-cta>a{background:var(--gold)!important;color:var(--black)!important;font-weight:800;margin-left:10px;padding-left:20px;padding-right:20px;line-height:44px;border-radius:2px;align-self:center}
body .main-navigation .main-nav ul li.nav-cta>a:hover{background:var(--black)!important;color:var(--gold)!important}
.main-navigation .main-nav>ul{align-items:center}
@media(max-width:768px){body .main-navigation .main-nav ul li.nav-cta>a{margin:10px 14px;text-align:center}}

/* ---------- Full-width canvas for pages this theme builds ---------- */
.ares-full #page{max-width:100%!important;padding:0}
.ares-full .site-content{display:block;padding:0!important}
.ares-full .content-area{width:100%;float:none}
.ares-full .site-main{margin:0!important}
.ares-full .inside-article{padding:0!important}
.ares-full .entry-header{display:none}
.ares-full .entry-content{margin-top:0}
.ares-full .entry-content>*{margin-bottom:0}
.site-info,.footer-widgets{display:none}

/* ---------- Buttons (override GeneratePress grey defaults) ---------- */
body a.ares-btn,body .ares-btn,body .entry-content a.ares-btn,body .wp-block-button .wp-block-button__link,body .entry-content .wp-block-button__link,body button.ares-btn,body input[type="submit"].ares-btn{
  display:inline-block;background:var(--gold)!important;color:var(--black)!important;border:2px solid var(--gold)!important;font-family:var(--head);font-weight:800;font-size:17px;line-height:1.2;padding:14px 24px;border-radius:2px;text-decoration:none!important;cursor:pointer}
body a.ares-btn:hover,body a.ares-btn:focus,body .wp-block-button .wp-block-button__link:hover{background:#fff!important;border-color:#fff!important;color:var(--black)!important}
body a.ares-btn.ares-btn--ghost{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.55)!important}
body a.ares-btn.ares-btn--ghost:hover,body a.ares-btn.ares-btn--ghost:focus{background:#fff!important;color:var(--black)!important;border-color:#fff!important}
.ares-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}

/* ---------- Hero ---------- */
.ares-hero{background:linear-gradient(90deg,rgba(12,12,13,.94) 0%,rgba(12,12,13,.82) 55%,rgba(12,12,13,.62) 100%),var(--ares-hero,none) center/cover no-repeat,var(--black);color:#fff;border-bottom:4px solid var(--gold)}
.ares-hero__in{padding:clamp(36px,6vw,70px) var(--gutter)}
.ares-hero--home .ares-hero__in{padding-top:clamp(56px,9vw,120px);padding-bottom:clamp(40px,6vw,72px)}
.ares-hero h1{color:#fff;font-weight:800;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.06;letter-spacing:-.025em;max-width:19ch;margin:0}
.ares-hero--home h1{font-size:clamp(2.3rem,6vw,4.4rem);max-width:15ch}
.ares-hero__sub{font-size:clamp(1.05rem,1.6vw,1.3rem);color:#E9E4D6;max-width:46ch;margin:16px 0 0}
.ares-crumbs{font-size:15px;color:var(--gold-soft);margin-bottom:18px}
.ares-crumbs a{color:var(--gold-soft);text-decoration:none}
.ares-crumbs a:hover{color:#fff;text-decoration:underline}
.ares-crumbs i{margin:0 8px;opacity:.5;font-style:normal}
.ares-crumbs span{color:#fff}
.ares-hero__facts{list-style:none;margin:44px 0 0;padding:18px 0 0;border-top:1px solid rgba(201,162,76,.45);display:flex;flex-wrap:wrap;gap:8px 0;font-family:var(--head);font-weight:600;font-size:15.5px;color:#fff}
.ares-hero__facts li{padding:0 20px;border-left:2px solid var(--gold)}
.ares-hero__facts li:first-child{padding-left:14px}

/* ---------- Gold financing strip ---------- */
.ares-strip{background:var(--gold);color:var(--black);padding:13px var(--gutter)}
.ares-strip p{margin:0;font-size:17px}
.ares-strip strong{font-family:var(--head);font-weight:800}
.ares-strip a{color:var(--black);font-weight:700;margin-left:6px}

/* ---------- Sections ---------- */
.ares-section{padding:clamp(40px,6vw,76px) var(--gutter)}
.ares-section.ares-alt{background:var(--paper)}
.ares-section>:where(p,ul,ol,h2,h3,dl){max-width:46rem}
.ares-section>:first-child{margin-top:0}
.ares-section>:last-child{margin-bottom:0}
.ares-section>p{margin:0 0 1em}
.ares-section>ul{margin:0 0 1.2em 1.2em}
.ares-section>ul li{margin-bottom:.35em}
.ares-section>ul li::marker{color:var(--gold)}
.ares-section:first-child>p:first-child{font-size:1.18rem;line-height:1.55;color:var(--black)}
.ares-section.ares-dark{background:var(--black);color:#E9E4D6}
.ares-dark h2,.ares-dark h3{color:#fff}
.ares-dark h2{border-left:4px solid var(--gold);padding-left:14px}
.ares-dark a{color:var(--gold)}
.ares-dark a:hover{color:#fff}
.ares-cols>ul{columns:2;column-gap:40px;max-width:none}
@media(max-width:600px){.ares-cols>ul{columns:1}}

/* ---------- Card grids ---------- */
.ares-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin:8px 0 22px}
.ares-grid--4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.ares-card{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--black);padding:20px;border-radius:2px;color:var(--ink);text-decoration:none;margin:0}
a.ares-card:hover,a.ares-card:focus{border-top-color:var(--gold);color:var(--ink);box-shadow:0 10px 24px rgba(12,12,13,.09)}
.ares-card strong{font-family:var(--head);font-weight:700;font-size:1.1rem;line-height:1.25;color:var(--black)}
.ares-card span{font-size:16px;line-height:1.45;color:var(--muted)}
.ares-card em{font-style:normal;font-size:15px;color:var(--gold-ink);font-weight:600}
.ares-dark .ares-card{background:#161617;border-color:#2A2A2C;border-top-color:var(--gold)}
.ares-dark .ares-card strong{color:#fff}
.ares-dark .ares-card span{color:#C9C4B6}

/* ---------- FAQ ---------- */
.ares-faq h3{margin:0;padding:18px 0 6px;border-top:1px solid var(--line);font-size:1.15rem}
.ares-faq h2+h3{margin-top:10px}
.ares-faq p{margin:0 0 18px}

/* ---------- Pricing table ---------- */
.ares-table{overflow-x:auto;max-width:54rem}
.ares-table table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);margin:0}
.ares-table th{background:var(--black);color:#fff;font-family:var(--head);text-align:left;padding:12px 16px;font-size:15px}
.ares-table td{padding:12px 16px;border-top:1px solid var(--line);vertical-align:top}
.ares-table td:last-child{font-weight:600;color:var(--black)}

/* ---------- CTA band ---------- */
.ares-cta{background:var(--black);color:#E9E4D6;padding:clamp(40px,6vw,72px) var(--gutter);border-top:4px solid var(--gold)}
.ares-cta h2{color:#fff;margin:0 0 8px}
.ares-cta p{margin:0;max-width:44rem}
.ares-tel-inline{font-weight:700;white-space:nowrap}

/* ---------- Quote form ---------- */
.ares-form{max-width:46rem;margin-top:22px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);padding:8px}
.ares-form iframe{width:100%;min-height:640px;border:0}
.ares-form--empty{padding:22px}
.ares-form--empty p{margin:0 0 8px}

/* ---------- Projects + reviews ---------- */
.ares-feed h2{margin-bottom:14px}
.ares-project img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:-20px -20px 8px;max-width:calc(100% + 40px);width:calc(100% + 40px)}
.ares-review blockquote{margin:0;padding:0;border:0;font-size:17px;font-style:normal;color:var(--ink)}
.ares-review blockquote p{margin:0 0 .6em}
.ares-review figcaption{font-family:var(--head);font-weight:600;font-size:15px;color:var(--black)}
.ares-stars{color:var(--gold);font-size:19px;letter-spacing:2px}
.ares-stars span{color:#D8D3C6}
.ares-ba{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-bottom:26px}
.ares-ba figure{margin:0;position:relative}
.ares-ba img{width:100%;height:auto;display:block}
.ares-ba figcaption{position:absolute;left:0;bottom:0;background:var(--black);color:var(--gold);font-family:var(--head);font-weight:700;font-size:14px;padding:6px 12px}
.ares-facts{display:flex;flex-wrap:wrap;gap:10px 40px;margin:0 0 24px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:none}
.ares-facts dt{font-size:14px;color:var(--muted)}
.ares-facts dd{margin:0;font-family:var(--head);font-weight:700;color:var(--black)}
.ares-prose{max-width:46rem}
.ares-quote{max-width:46rem;margin:26px 0;padding:6px 0 6px 20px;border-left:4px solid var(--gold);font-size:1.2rem}
.ares-quote cite{display:block;font-size:15px;color:var(--muted);font-style:normal;margin-top:6px}
.ares-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.ares-filter a{padding:7px 14px;border:1px solid var(--line);border-radius:2px;text-decoration:none;color:var(--ink);font-size:15.5px;background:#fff}
.ares-filter a[aria-current],.ares-filter a:hover{background:var(--black);border-color:var(--black);color:var(--gold)}

/* ---------- Footer ---------- */
.ares-footer{background:var(--black);color:#C9C4B6;font-size:16px}
.ares-footer__in{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:34px;padding:clamp(40px,6vw,68px) var(--gutter) 30px}
.ares-footer h2{font-size:15px;font-weight:700;color:var(--gold);margin:0 0 12px;letter-spacing:.01em}
.ares-footer ul{list-style:none;margin:0;padding:0}
.ares-footer li{margin-bottom:7px;line-height:1.35}
.ares-footer a{color:#E9E4D6;text-decoration:none}
.ares-footer a:hover,.ares-footer a:focus{color:var(--gold);text-decoration:underline}
.ares-footer__name{font-family:var(--head);font-weight:800;font-size:1.3rem;color:#fff;margin:0 0 8px}
.ares-footer__brand p{margin:0 0 12px}
.ares-footer__tel{font-family:var(--head);font-weight:800;font-size:1.35rem;color:var(--gold)!important}
.ares-footer__legal{border-top:1px solid #2A2A2C;padding:18px var(--gutter) 22px;font-size:14px;color:#9A968B}
.ares-footer__legal p{margin:0}
@media(max-width:1000px){.ares-footer__in{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ares-footer__in{grid-template-columns:1fr}}

/* ---------- Sticky mobile Call / Quote bar ---------- */
.ares-mbar{display:none}
@media(max-width:768px){
  .ares-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:9999;box-shadow:0 -6px 18px rgba(12,12,13,.25);padding-bottom:env(safe-area-inset-bottom,0)}
  .ares-mbar a{flex:1;text-align:center;font-family:var(--head);font-weight:800;font-size:17px;padding:15px 8px;text-decoration:none}
  .ares-mbar__call{background:var(--black);color:#fff!important}
  .ares-mbar__quote{background:var(--gold);color:var(--black)!important}
  body{padding-bottom:56px}
  .ares-hero__facts li{padding:0 12px}
}
@media(prefers-reduced-motion:no-preference){.ares-card,.ares-btn{transition:border-color .15s,box-shadow .15s,background-color .15s,color .15s}}

/* ---------- Sitewide offer: top bar, strip, band, hero ---------- */
.ares-topbar{background:var(--black);color:#fff;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 20px;padding:8px var(--gutter);font-size:15.5px;line-height:1.3}
.ares-topbar a{color:#fff;text-decoration:none}
.ares-topbar a:hover,.ares-topbar a:focus{color:var(--gold)}
.ares-topbar strong{font-family:var(--head);font-weight:800;color:var(--gold);font-size:16.5px;margin-right:8px}
.ares-topbar span{color:#C9C4B6}
.ares-topbar__tel{font-family:var(--head);font-weight:700;white-space:nowrap}
.ares-strip__promo{margin-left:0!important;text-decoration:none}
.ares-strip i{display:inline-block;width:2px;height:1em;background:var(--black);opacity:.45;margin:0 14px;vertical-align:-2px}
.ares-hero__offer{margin:22px 0 0;font-size:17px}
.ares-hero__offer a{display:inline-block;color:#fff;text-decoration:none;border:1px solid var(--gold);border-left-width:5px;padding:9px 16px;border-radius:2px}
.ares-hero__offer a:hover,.ares-hero__offer a:focus{background:var(--gold);color:var(--black)}
.ares-hero__offer strong{font-family:var(--head);font-weight:800;color:var(--gold);font-size:1.15em;margin-right:6px}
.ares-hero__offer a:hover strong,.ares-hero__offer a:focus strong{color:var(--black)}
.ares-hero__offer+.ares-btns{margin-top:18px}
.ares-promo{display:flex;flex-wrap:wrap;align-items:center;gap:18px 48px;background:var(--black);color:#E9E4D6;padding:clamp(28px,4vw,44px) var(--gutter);border-top:4px solid var(--gold);border-bottom:4px solid var(--gold)}
.ares-promo__price{margin:0;font-family:var(--head);font-weight:800;color:#fff;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1;letter-spacing:-.02em;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.ares-promo__price b{color:var(--gold);font-size:clamp(3.6rem,9vw,6.2rem);font-weight:900;letter-spacing:-.04em}
.ares-promo__body p{margin:0;max-width:34rem}
.ares-promo .ares-btns{margin-top:14px}
.ares-footer__promo a{font-family:var(--head);font-weight:800;color:var(--gold)!important;font-size:1.1rem}
.ares-footer__promo small{color:#9A968B}
@media(max-width:768px){.ares-topbar{justify-content:center;text-align:center}.ares-topbar__tel{display:none}.ares-strip i{display:block;width:0;height:4px;margin:0}}
