/* Aztenix v2.18.4 — homepage only. The quote, checkout and maintenance styles are untouched. */
.az-home {
  --az-home-ink: #17251f;
  --az-home-muted: #526159;
  --az-home-brand: #28785f;
  --az-home-brand-dark: #1c5a49;
  --az-home-mint: #a4dfc2;
  --az-home-line: #e2eae4;
  color: var(--az-home-ink);
  background: #fff;
  font-family: 'DM Sans', system-ui, sans-serif;
  font-size: 16px;
  line-height: 1.58;
  overflow: clip;
}
.az-home *, .az-home *::before, .az-home *::after { box-sizing: border-box; }
.az-home a { color: inherit; }
.az-home img { display: block; max-width: 100%; }
.az-home svg { display: inline-block; width: 20px; height: 20px; flex: 0 0 auto; }
.az-home h1, .az-home h2, .az-home h3 { margin: 0; font-family: Manrope, 'DM Sans', sans-serif; font-weight: 800; letter-spacing: -.055em; }
.az-home p { margin: 0; }
.az-home-container { width: min(1280px, calc(100% - 64px)); margin-inline: auto; }
.az-home__icon-library { position: absolute; width: 0 !important; height: 0 !important; overflow: hidden; }
.az-home :is(a, button):focus-visible { outline: 3px solid #31a381; outline-offset: 4px; }
@media (min-width: 721px) {
  body.home .site-header { background: rgba(255,255,255,.96); border-bottom-color: #edf0eb; }
  body.home .site-header .header-inner { max-width: 1280px; }
}

/* A shared, large-tap-target CTA. */
.az-home-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 18px;
  min-height: 59px; padding: 16px 25px; border-radius: 9px;
  font-size: 14px; line-height: 1.2; font-weight: 800; letter-spacing: -.012em;
  white-space: nowrap; text-decoration: none; transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.az-home-button svg { width: 20px; height: 20px; transition: transform .2s ease; }
.az-home-button:hover svg { transform: translateX(3px); }
.az-home-button--primary { color: #fff !important; background: var(--az-home-brand); box-shadow: 0 10px 20px rgba(30,108,76,.11); }
.az-home-button--primary:hover { color: #fff !important; background: var(--az-home-brand-dark); transform: translateY(-2px); box-shadow: 0 16px 32px rgba(30,108,76,.18); }
.az-home-button--mint { color: #11382b !important; background: #addec3; }
.az-home-button--mint:hover { color: #11382b !important; background: #c1ebd1; transform: translateY(-2px); }
.az-home-kicker { display: flex; align-items: center; gap: 12px; color: var(--az-home-brand); font-size: 11px; font-weight: 800; letter-spacing: .19em; line-height: 1.4; text-transform: uppercase; }
.az-home-kicker::before { content: ''; display: block; flex: 0 0 25px; height: 2px; background: currentColor; }
.az-home-kicker--light { color: #a9e6c5; }
.az-home-text-link { display: inline-flex; align-items: center; gap: 11px; width: max-content; max-width: 100%; padding: 8px 0; border-bottom: 1.5px solid #42866b; font-size: 14px; line-height: 1.4; font-weight: 800; color: #266a52 !important; }
.az-home-text-link:hover { color: #174c3d !important; border-bottom-color: #174c3d; }
.az-home-text-link svg { width: 17px; height: 17px; }

/* 01 / Hero */
.az-home-hero { position: relative; padding: clamp(48px, 5.8vw, 84px) 0 47px; background: radial-gradient(ellipse at 74% 19%, #e9f2e9 0%, rgba(233,242,233,0) 45%), linear-gradient(118deg,#f9faf7 0%,#f3f6ef 100%); }
.az-home-hero__grid { display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(0, 1fr); align-items: center; gap: clamp(36px,5.4vw,88px); }
.az-home-hero__copy { position: relative; z-index: 1; padding: 14px 0 26px; }
.az-home-eyebrow { display: flex; align-items: center; gap: 12px; margin-bottom: 27px; color: #336f59; font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.az-home-eyebrow__line { display: inline-flex; flex: 0 0 35px; height: 2px; background: #56967b; }
.az-home-hero h1 { font-size: clamp(56px, 5.7vw, 82px); line-height: 1.065; color: #162720; }
.az-home-hero h1 span { color: var(--az-home-brand); }
.az-home-hero__intro { max-width: 558px; margin-top: 27px !important; color: #59665e; font-size: clamp(16px,1.35vw,18px); font-weight: 450; line-height: 1.8; }
.az-home-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; margin-top: 35px; }
.az-home-hero__phone { display: flex; flex-direction: column; gap: 3px; font-size: 13px; line-height: 1.35; }
.az-home-hero__phone span { color: #77847b; font-size: 12px; }
.az-home-hero__phone strong { font-weight: 800; color: #253a2f; }
.az-home-hero__phone:hover strong { color: var(--az-home-brand); }
.az-home-hero__trust { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; max-width: 670px; margin-top: 54px; padding-top: 21px; border-top: 1px solid #dce7db; }
.az-home-hero__trust > span { display: inline-flex; align-items: center; gap: 7px; color: #47594d; font-size: 11px; font-weight: 700; white-space: nowrap; }
.az-home-hero__trust svg { width: 16px; height: 16px; color: #398264; }
.az-home-hero__visual { min-width: 0; position: relative; padding: 12px 12px 0 0; }
.az-home-hero__image-frame { position: relative; z-index: 1; overflow: hidden; min-height: 530px; aspect-ratio: 1.02/1; border-radius: 21px; isolation: isolate; box-shadow: 0 28px 52px rgba(22,42,31,.14); }
.az-home-hero__image-frame > img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: 57% center; }
.az-home-hero__image-overlay { position: absolute; inset: 48% 0 0; background: linear-gradient(0deg,rgba(12,29,20,.62) 0%,transparent 92%); }
.az-home-hero__image-label { position: absolute; z-index: 1; bottom: 27px; left: 31px; display: flex; align-items: center; gap: 14px; color: #f0faf4; font-size: 12px; line-height: 1.5; letter-spacing: .01em; }
.az-home-hero__image-label strong { color: #fff; font-family: Manrope,'DM Sans',sans-serif; font-size: 16px; letter-spacing: -.03em; }
.az-home-hero__image-label-icon { display: grid; place-items: center; width: 49px; height: 49px; border: 1px solid rgba(255,255,255,.53); border-radius: 50%; background: rgba(255,255,255,.08); font-size: 23px; }
.az-home-hero__image-accent { position: absolute; top: -7px; right: -6px; width: 44%; height: 42%; border: 1.5px solid #bad9be; border-radius: 25px; transform: translate(10px,-10px); }
.az-home-hero__scroll { display: flex; align-items: center; justify-content: center; gap: 18px; width: max-content; margin: 40px auto 0; color: #637569 !important; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.az-home-hero__scroll:hover { color: #2c7459 !important; }
.az-home-hero__scroll-arrow { font-size: 21px; line-height: 1; }

/* 02 / Services */
.az-home-services { padding: clamp(78px,8vw,124px) 0 clamp(83px,9vw,136px); background: #fff; scroll-margin-top: 75px; }
.az-home-section-heading { margin-bottom: 42px; }
.az-home-section-heading h2,.az-home-projects__intro h2 { margin-top: 19px; font-size: clamp(34px,3.45vw,51px); line-height: 1.17; }
.az-home-section-heading h2 span { color: #8c9b90; }
.az-home-section-heading__copy { max-width: 650px; margin-top: 20px; color: #5b6961; font-size: 15px; line-height: 1.8; }
.az-home-service-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 19px; }
.az-home-service { display: flex; flex-direction: column; overflow: hidden; min-height: 505px; border: 1px solid #e6eae5; border-radius: 16px; background: #fff; box-shadow: 0 8px 30px rgba(12,45,29,.034); text-decoration: none; transition: transform .24s ease,box-shadow .24s ease,border-color .24s ease; }
.az-home-service:hover { color: inherit !important; border-color: #c5dccc; transform: translateY(-6px); box-shadow: 0 21px 48px rgba(23,45,31,.095); }
.az-home-service__image { overflow: hidden; height: 225px; background: #e9efe9; }
.az-home-service__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.az-home-service:hover .az-home-service__image img { transform: scale(1.035); }
.az-home-service--ev .az-home-service__image { background: #17211f; }
.az-home-service--ev .az-home-service__image img { object-fit: contain; object-position: center center; }
.az-home-service--panel .az-home-service__image { background: #e1eae1; }
.az-home-service--service .az-home-service__image { background: #ebe6dd; }
.az-home-service__body { display: flex; flex: 1; flex-direction: column; padding: 29px 28px 25px; }
.az-home-service__eyebrow { color: #3e8a69; font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.az-home-service h3 { margin-top: 10px; font-size: clamp(21px,1.65vw,24px); line-height: 1.26; letter-spacing: -.043em; }
.az-home-service__body > p { margin: 12px 0 24px; color: #69736d; font-size: 13px; line-height: 1.8; }
.az-home-service__footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 18px; border-top: 1px solid #e6eae5; }
.az-home-service__footer strong { color: #286b52; font-size: 12px; font-weight: 800; }
.az-home-service__arrow { display: grid; place-items: center; width: 39px; height: 39px; border-radius: 50%; color: #24634c; background: #edf5ee; transition: background .2s ease,color .2s ease; }
.az-home-service__arrow svg { width: 19px; height: 19px; }
.az-home-service:hover .az-home-service__arrow { color: #fff; background: #28785f; }
.az-home-services__fallback { display: flex; gap: 20px; align-items: center; justify-content: space-between; padding: 38px; border: 1px solid #dee8df; border-radius: 16px; background: #f7faf7; }

/* 03 / Instant Quote */
.az-home-quote { position: relative; isolation: isolate; overflow: hidden; padding: clamp(89px,10vw,150px) 0; background: #13251e; color: #fff; scroll-margin-top: 72px; }
.az-home-quote::before { content: ''; position: absolute; z-index: -1; inset: 0; background: radial-gradient(ellipse at -7% -14%, rgba(87,168,126,.18),transparent 52%),radial-gradient(ellipse at 104% 100%, rgba(78,137,117,.14),transparent 47%); }
.az-home-quote::after { content: ''; position: absolute; right: -200px; top: -170px; z-index: -1; width: 660px; height: 660px; border: 1px solid rgba(167,223,188,.055); border-radius: 50%; box-shadow: 0 0 0 90px rgba(167,223,188,.02),0 0 0 180px rgba(167,223,188,.013); }
.az-home-quote__grid { display: grid; grid-template-columns: minmax(0,1.02fr) minmax(0,.98fr); align-items: center; gap: clamp(54px,7vw,113px); }
.az-home-quote__copy h2 { margin-top: 25px; color: #fff; font-size: clamp(44px,4.8vw,69px); line-height: 1.15; letter-spacing: -.056em; }
.az-home-quote__copy h2 em { color: #a6dbbd; font-style: normal; }
.az-home-quote__copy > p:not(.az-home-kicker) { max-width: 495px; margin: 26px 0 32px; color: #b7c7ba; font-size: 16px; line-height: 1.85; }
.az-home-quote__copy > small { display: block; max-width: 430px; margin-top: 22px; color: #9ab19f; font-size: 10px; line-height: 1.7; }
.az-home-quote__steps { position: relative; padding: 14px 36px 18px; border: 1px solid rgba(181,221,193,.18); border-radius: 18px; background: linear-gradient(145deg,rgba(255,255,255,.074),rgba(255,255,255,.028)); box-shadow: 0 35px 70px rgba(0,0,0,.08); backdrop-filter: blur(10px); }
.az-home-quote__step { display: grid; grid-template-columns: 52px minmax(0,1fr) 20px; align-items: start; gap: 19px; padding: 35px 0; border-bottom: 1px solid rgba(227,243,231,.14); }
.az-home-quote__number { color: #83bf9b; font-family: Manrope,sans-serif; font-size: 26px; font-weight: 800; line-height: 1.25; letter-spacing: -.05em; }
.az-home-quote__step h3 { color: #f9fcf9; font-size: 18px; letter-spacing: -.04em; line-height: 1.32; }
.az-home-quote__step p { margin-top: 8px; color: #a8bcae; font-size: 12px; line-height: 1.75; }
.az-home-quote__step-icon { color: #81c29b; font-size: 22px; line-height: 1.3; }
.az-home-quote__steps-note { display: flex; align-items: center; gap: 12px; padding: 23px 0 10px; color: #b2ceb8; font-size: 11px; font-weight: 700; letter-spacing: .02em; }
.az-home-quote__steps-note-icon { color: #a5e2bd; font-size: 20px; }

/* 04 / Inspiration photography. This does not claim the photographs are completed Aztenix jobs. */
.az-home-projects { padding: clamp(77px,9vw,131px) 0; background: #f7f8f4; scroll-margin-top: 72px; }
.az-home-projects__intro { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 34px; }
.az-home-projects__intro h2 { max-width: 660px; }
.az-home-projects__intro > p { max-width: 350px; margin-bottom: 3px; color: #5f6c60; font-size: 14px; line-height: 1.85; }
.az-home-projects__gallery { display: grid; grid-template-columns: 1.48fr 1fr; gap: 19px; }
.az-home-projects__image { position: relative; overflow: hidden; height: 345px; border-radius: 15px; background: #262e2b; isolation: isolate; }
.az-home-projects__image img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .55s ease; }
.az-home-projects__image:hover img { transform: scale(1.035); }
.az-home-projects__image::after { content: ''; position: absolute; inset: 52% 0 0; background: linear-gradient(0deg,rgba(12,21,16,.66),transparent); }
.az-home-projects__image > span { position: absolute; z-index: 1; left: 30px; bottom: 24px; color: #fff; font-family: Manrope,sans-serif; font-size: 18px; font-weight: 800; letter-spacing: -.04em; }
.az-home-projects__image--wide img { object-position: center 58%; }

/* 05 / About */
.az-home-about { padding: clamp(86px,10vw,151px) 0; background: #fff; }
.az-home-about__grid { display: grid; grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr); align-items: center; gap: clamp(52px,9vw,132px); }
.az-home-about__portrait { position: relative; isolation: isolate; align-self: stretch; display: flex; justify-content: center; align-items: end; aspect-ratio: 1 / 1; min-height: 540px; overflow: hidden; border-radius: 20px; background: linear-gradient(155deg,#f1f5ed,#e5efe6 75%); }
.az-home-about__portrait-backdrop { position: absolute; z-index: -1; width: 125%; height: 80%; left: -2%; bottom: -15%; border-radius: 50%; background: rgba(189,214,191,.34); }
.az-home-about__portrait > img { width: 100%; height: 100%; object-fit: contain; object-position: center bottom; }
.az-home-about__portrait-label { position: absolute; right: 20px; bottom: 23px; z-index: 1; padding: 13px 17px; border-radius: 8px; color: #1c4532; background: rgba(255,255,255,.91); box-shadow: 0 12px 36px rgba(24,44,24,.065); font-size: 12px; font-weight: 800; }
.az-home-about__copy h2 { margin: 22px 0 26px; font-size: clamp(43px,4.15vw,62px); line-height: 1.15; }
.az-home-about__copy h2 span { color: var(--az-home-brand); }
.az-home-about__copy > p:not(.az-home-kicker) { max-width: 550px; margin-bottom: 16px; color: #647168; font-size: 15px; line-height: 1.85; }
.az-home-about__copy .az-home-text-link { margin-top: 16px; }
.az-home-about__license { margin-top: 31px; padding-top: 23px; border-top: 1px solid #e1e9e1; color: #7d8c7c; font-size: 11px; font-weight: 700; }
.az-home-about__license span { margin: 0 7px; }

/* 06 / Final CTA */
.az-home-final { padding: 10px 0 clamp(90px,9vw,130px); background: #fff; }
.az-home-final__panel { position: relative; overflow: hidden; padding: clamp(55px,7.5vw,104px) 30px; border: 1px solid #d9e9dc; border-radius: 22px; background: radial-gradient(ellipse at 105% -15%,#d7ebd8,transparent 43%),linear-gradient(135deg,#f1f7f0,#e9f3e8); text-align: center; }
.az-home-final__panel::before,.az-home-final__panel::after { content: ''; position: absolute; pointer-events: none; width: 280px; height: 280px; border: 1px solid rgba(92,164,107,.17); border-radius: 50%; }
.az-home-final__panel::before { top: -188px; left: -160px; }
.az-home-final__panel::after { right: -140px; bottom: -202px; }
.az-home-final__spark { display: grid; place-items: center; width: 42px; height: 42px; margin: 0 auto 19px; border-radius: 12px; background: #dbebd9; color: #2b7b58; font-size: 22px; }
.az-home-final__panel > .az-home-kicker { justify-content: center; }
.az-home-final__panel > .az-home-kicker::before { display: none; }
.az-home-final h2 { margin-top: 12px; font-size: clamp(39px,4.5vw,65px); line-height: 1.15; }
.az-home-final__panel > p:not(.az-home-kicker) { margin: 15px auto 0; max-width: 510px; color: #5a6b5d; font-size: 15px; line-height: 1.8; }
.az-home-final__actions { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 25px; margin-top: 32px; }
.az-home-final__call { color: #4c6954 !important; font-size: 12px; }
.az-home-final__call strong { margin-left: 5px; color: #173d2d; font-weight: 800; }
.az-home-final__call:hover strong { color: var(--az-home-brand); }

@media (max-width: 1100px) {
  .az-home-hero h1 { font-size: clamp(53px,5.8vw,70px); }
  .az-home-hero__image-frame { min-height: 450px; }
  .az-home-hero__trust { gap: 12px; margin-top: 35px; }
  .az-home-service__body { padding: 25px 22px 22px; }
  .az-home-service h3 { font-size: 21px; }
  .az-home-service__image { height: 205px; }
  .az-home-service { min-height: 470px; }
  .az-home-about__portrait { min-height: 460px; }
  .az-home-about__portrait > img { width: 100%; height: 100%; }
}
@media (max-width: 860px) {
  .az-home-hero__grid { grid-template-columns: 1.04fr .96fr; gap: 27px; }
  .az-home-hero h1 { font-size: clamp(41px,6vw,56px); }
  .az-home-hero__intro { font-size: 15px; line-height: 1.75; margin-top: 18px !important; }
  .az-home-hero__trust { margin-top: 29px; }
  .az-home-hero__image-frame { min-height: 410px; }
  .az-home-service-grid { gap: 11px; }
  .az-home-service__image { height: 165px; }
  .az-home-service h3 { font-size: 18px; }
  .az-home-service__body { padding: 20px 16px; }
  .az-home-service__body > p { font-size: 12px; }
  .az-home-quote__grid { gap: 28px; }
  .az-home-quote__steps { padding: 12px 22px; }
  .az-home-quote__step { grid-template-columns: 42px minmax(0,1fr); gap: 10px; }
  .az-home-quote__step-icon { display: none; }
  .az-home-about__grid { gap: 40px; }
}
@media (max-width: 720px) {
  .az-home-container { width: min(100% - 36px,620px); }
  .az-home-hero { padding: 46px 0 28px; }
  .az-home-hero__grid { grid-template-columns: 1fr; gap: 27px; }
  .az-home-hero__copy { padding: 0; }
  .az-home-eyebrow { gap: 9px; margin-bottom: 20px; font-size: 9px; }
  .az-home-eyebrow__line { flex-basis: 26px; }
  .az-home-hero h1 { font-size: clamp(44px,10.6vw,66px); }
  .az-home-hero__intro { margin-top: 20px !important; font-size: 15px; }
  .az-home-hero__actions { margin-top: 26px; gap: 15px; }
  .az-home-hero__trust { gap: 10px 14px; margin-top: 25px; padding-top: 18px; }
  .az-home-hero__trust > span { font-size: 10px; }
  .az-home-hero__visual { padding: 0 8px 0 0; }
  .az-home-hero__image-frame { min-height: 0; aspect-ratio: 1.18/1; border-radius: 15px; }
  .az-home-hero__image-label { bottom: 18px; left: 18px; gap: 10px; }
  .az-home-hero__image-label-icon { width: 37px; height: 37px; font-size: 18px; }
  .az-home-hero__image-label strong { font-size: 13px; }
  .az-home-hero__image-accent { display: none; }
  .az-home-hero__scroll { margin-top: 27px; }
  .az-home-services { padding: 67px 0 77px; }
  .az-home-section-heading { margin-bottom: 27px; }
  .az-home-section-heading h2,.az-home-projects__intro h2 { font-size: clamp(32px,7.5vw,45px); }
  .az-home-section-heading__copy { margin-top: 16px; }
  .az-home-service-grid { grid-template-columns: 1fr; gap: 16px; }
  .az-home-service { min-height: 0; }
  .az-home-service__image { height: auto; aspect-ratio: 1.7/1; }
  .az-home-service__body { padding: 26px; }
  .az-home-service h3 { font-size: 22px; }
  .az-home-service__body > p { font-size: 13px; margin-bottom: 21px; }
  .az-home-services__fallback { flex-direction: column; align-items: start; }
  .az-home-quote { padding: 77px 0; }
  .az-home-quote__grid { grid-template-columns: 1fr; gap: 41px; }
  .az-home-quote__copy h2 { font-size: clamp(42px,9.7vw,60px); }
  .az-home-quote__copy > p:not(.az-home-kicker) { margin: 21px 0 24px; }
  .az-home-quote__steps { padding: 6px 22px 14px; }
  .az-home-quote__step { padding: 25px 0; }
  .az-home-projects { padding: 74px 0 79px; }
  .az-home-projects__intro { flex-direction: column; align-items: start; gap: 20px; margin-bottom: 26px; }
  .az-home-projects__gallery { grid-template-columns: 1fr; gap: 13px; }
  .az-home-projects__image { height: auto; aspect-ratio: 1.5/1; }
  .az-home-projects__image > span { left: 19px; bottom: 18px; font-size: 16px; }
  .az-home-about { padding: 75px 0; }
  .az-home-about__grid { grid-template-columns: 1fr; gap: 38px; }
  .az-home-about__portrait { min-height: 0; max-height: none; aspect-ratio: 1 / 1; }
  .az-home-about__portrait > img { width: 100%; max-width: none; height: 100%; }
  .az-home-about__copy h2 { font-size: clamp(43px,10vw,59px); }
  .az-home-final { padding-bottom: 78px; }
  .az-home-final__panel { padding: 60px 24px; border-radius: 15px; }
}
@media (max-width: 420px) {
  .az-home-hero__actions { align-items: start; }
  .az-home-hero__actions .az-home-button { width: 100%; }
  .az-home-hero__phone { flex-direction: row; align-items: baseline; gap: 9px; }
  .az-home-hero__trust { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .az-home-hero__trust > span { white-space: normal; }
  .az-home-service__body { padding: 24px 22px; }
  .az-home-quote__copy .az-home-button,.az-home-final__actions .az-home-button { width: 100%; }
  .az-home-final__actions { flex-direction: column; gap: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .az-home :is(.az-home-button,.az-home-button svg,.az-home-service,.az-home-service__image img,.az-home-projects__image img,.az-home-service__arrow) { transition: none !important; }
}

/* Browse the complete editorial Services directory. */
.az-home-services__all{display:inline-flex;align-items:center;gap:11px;margin-top:30px;color:#276b52;font-size:13px;font-weight:800;text-decoration:none}
.az-home-services__all:hover{color:#174b39}
.az-home-services__all span{font-size:20px}
