/* Air Masters public website */
:root { --red: #c81724; --dark: #191b1d; }
html { scroll-padding-top: 105px; }
.wrap { width: min(92%, 1392px); }
.header-inner { min-height: 82px; }
header.scrolled { box-shadow: 0 8px 24px #1113; }
#main-nav > a, #main-nav .nav-service > button { font-size: 14px; font-weight: 650; }
#main-nav > a:hover, #main-nav .nav-service > button:hover { color: #ffd4d6; }
a:focus-visible, button:focus-visible { outline: 3px solid #e43241; outline-offset: 5px; }
.home-hero { min-height: 0; padding: 0; background: #191b1d; }
.home-hero::after { display: none; }
.home-hero-grid { display: grid; grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr); align-items: center; gap: clamp(28px, 5vw, 82px); padding: clamp(45px, 6vw, 92px) 0; }
.home-hero h1 { max-width: 13ch; font-size: clamp(48px, 5.2vw, 82px); line-height: 1.04; font-weight: 650; margin: 0 0 24px; letter-spacing: -.06em; }
.home-hero-copy > p { max-width: 47ch; color: #e0e1e1; font-size: clamp(16px, 1.4vw, 19px); margin: 0 0 27px; }
.home-hero .hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 25px; }
.home-hero .hero-actions .btn { background: #c81724 !important; }
.home-hero .hero-actions .btn:hover { background: #a7101c !important; }
.home-hero-image { position: relative; overflow: hidden; margin: 0; aspect-ratio: 1.22; background: #343a3f; }
.home-hero-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 58%; }
.home-hero-image figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 30px 18px 13px; font-size: 12px; color: #fff; background: linear-gradient(transparent,#101315df); }
.certification-section { padding: 38px 0; background: #f4f4f1; border-block: 1px solid #deded8; }
.certification-grid { display: grid; grid-template-columns: auto 1fr auto; gap: 30px; align-items: center; }
.certification-mark { display: grid; grid-auto-flow: column; place-content: center; background: #fff; border: 1px solid #dddcd5; border-left: 4px solid #c81724; min-width: 103px; min-height: 81px; font-size: 26px; font-weight: 800; }
.certification-mark span { color: #b51420; }
.certification-grid h2 { margin: 3px 0 5px; font-size: clamp(24px,3vw,36px); line-height: 1.12; font-weight: 650; }
.certification-grid p { margin: 0; }
.certification-meta { color: #57595c; font-size: 13px; }
.certification-grid .plain-link { justify-self: start; }
.reference-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.reference-card > span { display: none; }
.reference-card h3 { margin-top: 14px; }
.reference-photo img { height: clamp(210px,26vw,370px); }
.service-card:focus-visible img, .reference-card:focus-visible img { transform: scale(1.04); }
.gallery-item:focus-visible img { transform: scale(1.025); }
@media (hover: hover) and (pointer: fine) {
 .service-card:hover img, .reference-card:hover img { transform: scale(1.045); }
}
@media (prefers-reduced-motion: no-preference) {
 .home-hero-copy { animation: am-enter .6s ease-out both; }
 .home-hero-image { animation: am-enter .75s .08s ease-out both; }
 @keyframes am-enter { from { opacity: 0; translate: 0 12px; } to { opacity: 1; translate: 0 0; } }
}
@media (max-width: 850px) {
 .home-hero-grid { grid-template-columns: 1fr; gap: 28px; padding: 38px 0 28px; }
 .home-hero h1 { font-size: clamp(37px, 7vw, 58px); max-width: 16ch; }
 .home-hero-image { aspect-ratio: 1.55; }
 .certification-grid { grid-template-columns: auto 1fr; gap: 16px; }
 .certification-grid .plain-link { grid-column: 2; }
}
@media (max-width: 700px) {
 .header-inner { min-height: 70px; }
 .reference-grid { grid-template-columns: 1fr; }
 .reference-photo img { height: clamp(240px,65vw,390px); }
 .certification-mark { min-width: 70px; min-height: 65px; font-size: 20px; }
}
@media (prefers-reduced-motion: reduce) {
 .home-hero *, .service-card img, .reference-card img, .gallery-item img { transition: none !important; }
}
#main-nav > .nav-contact:hover { color: #191b1d; }
@media (max-width: 850px) {
 #main-nav { top: 100%; max-height: calc(100dvh - 88px); }
 #main-nav.open .nav-drop { display: none; }
 #main-nav.open .nav-service.open .nav-drop { display: grid; padding: 10px 0 0; }
 #main-nav.open .nav-drop a { color: #242424; }
}

/* Utility bar and main navigation */
.topbar { background: #191b1d; color: #e4e5e5; border-bottom: 0; }
.topbar .wrap { min-height: 42px; }
.topbar .socials a, .topbar a[href^="tel:"] { color: #fff !important; }
.topbar .language-switch { border-color: #6b6d6f; }
.topbar .language-switch a { color: #e4e5e5 !important; border-color: #6b6d6f; min-height: 32px; padding-inline: 10px; }
.topbar .language-switch a[aria-current="true"] { background: #fff !important; color: #a7101c !important; }
header { background: #fff; color: #191b1d; border-bottom: 1px solid #e3e3df; }
.header-inner { min-height: 94px; }
.header-inner .logo { width: clamp(205px, 21vw, 288px); }
#main-nav { gap: clamp(15px, 2vw, 30px); }
#main-nav > a, #main-nav .nav-service > button { color: #202326; }
#main-nav > a:hover, #main-nav .nav-service > button:hover, #main-nav .nav-service > button span { color: #ac1420; }
#main-nav > .nav-contact { background: #c81724 !important; border: 1px solid #c81724; color: #fff !important; white-space: nowrap; }
#main-nav > .nav-contact:hover { background: #a7101c !important; color: #fff !important; }
.menu-toggle, .menu-toggle span { color: #191b1d; }
.menu-toggle i::before, .menu-toggle i::after { background: #191b1d !important; }
@media (max-width: 850px) {
 .header-inner { min-height: 74px; }
 .header-inner .logo { width: 216px; max-width: 65%; }
 #main-nav.open { background: #fff; color: #191b1d; gap: 0; padding-block: 12px; }
 #main-nav.open > a, #main-nav.open .nav-service > button { min-height: 45px; padding-block: 11px; }
 #main-nav.open > a:not(.nav-contact), #main-nav.open .nav-service { border-bottom: 1px solid #ecece7; }
 #main-nav.open > .nav-contact { margin-block: 12px; }
 #main-nav.open .nav-drop { border: 0; box-shadow: none; }
 #main-nav.open .mobile-social .socials a { color: #191b1d; }
}
@media (max-width: 410px) {
 .topbar .socials { gap: 9px; }
 .topbar .language-switch a { padding-inline: 7px; }
}

/* Audience navigation */
.site-header { backdrop-filter: none; }
.site-header .header-inner {
 display: grid;
 grid-template-columns: auto minmax(0,1fr) auto;
 grid-template-areas: "brand audience tools" "nav nav nav";
 gap: 0 26px;
 min-height: 0;
 height: auto;
}
.site-header .logo { grid-area: brand; width: clamp(170px,18vw,248px); max-width: none; }
.audience-switch { grid-area: audience; justify-self: center; display: flex; background: #f0f0ed; border-radius: 32px; padding: 4px; gap: 3px; margin-block: 17px; }
.audience-switch a { display: block; padding: 9px 18px; color: #222426; border-radius: 25px; font-size: 14px; font-weight: 700; line-height: 1.3; }
.audience-switch a:hover { background: #fff; color: #a7101c; }
.audience-switch a[aria-current] { background: #191b1d; color: #fff; }
.header-tools { grid-area: tools; display: flex; align-items: center; gap: 15px; justify-self: end; }
.header-tools > a { color: #333; font-size: 13px; white-space: nowrap; }
.header-tools .language-switch { display: flex; gap: 0; border: 0; }
.header-tools .language-switch a { padding: 7px; color: #434548; font-weight: 700; background: none; }
.header-tools .language-switch a[aria-current] { color: #a7101c; background: #f5eded; }
.site-header #main-nav { grid-area: nav; justify-content: flex-start; border-top: 1px solid #e8e8e4; min-height: 54px; }
.site-header #main-nav > .nav-contact { margin-left: auto; padding: 8px 18px !important; border-radius: 4px; min-width: 0; }
.site-header #main-nav .nav-drop { top: 100%; }
.site-header .menu-toggle { grid-area: menu; }
.home-routes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; max-width: 530px; }
.home-route { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 3px 10px; padding: 15px 16px; min-height: 88px; border: 1px solid #6a6d6f; color: #fff; transition: background .2s, border-color .2s; }
.home-route strong { font-size: clamp(15px,1.5vw,21px); line-height: 1.2; }
.home-route span:not(.route-arrow) { grid-column: 1; color: #e3e3e3; font-size: 13px; line-height: 1.3; }
.home-route .route-arrow { grid-area: 1 / 2 / 3; color: #ff8b91; }
.home-route:hover { background: #2a2b2e; border-color: #ff8b91; }
.segment-hero h1 { max-width: 16ch; font-size: clamp(40px,4.4vw,69px); overflow-wrap: anywhere; }
.segment-hero .kicker { color: #ffb2b6; display: block; margin-bottom: 15px; }
.segment-private { background: #f3f2ee; }
.segment-private h1,.segment-private .hero-actions .plain-link { color: #191b1d; }
.segment-private .home-hero-copy > p { color: #434548; }
.segment-private .kicker { color: #a7111d; }
.segment-service-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.segment-services h2,.segment-projects h2 { font-size: clamp(31px,4vw,54px); line-height: 1.12; margin: 0 0 30px; }
.segment-service { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 6px 12px; padding: 23px; border: 1px solid #deded8; color: #191b1d; transition: border-color .2s, background .2s; }
.segment-service h3 { font-size: clamp(21px,2.2vw,29px); line-height: 1.2; margin: 0; }
.segment-service p { margin: 0; grid-column: 1; color: #56585b; }
.segment-service > span { grid-area: 1 / 2 / 3; align-self: center; color: #a7111d; }
.segment-service:hover { border-color: #c81724; background: #fff8f8; }
.segment-projects,.segment-cert { background: #f3f2ee; }
.segment-cert { padding: 24px 0; border-block: 1px solid #dddcd7; }
.segment-cert .wrap { display:flex; flex-wrap:wrap; gap: 12px 25px; align-items: center; }
.segment-cert strong { font-size: 21px; }
@media (max-width: 850px) {
 .site-header .header-inner { grid-template-columns: minmax(0,1fr) auto auto; grid-template-areas: "brand tools menu" "audience audience audience"; gap: 0 11px; padding-top: 8px; }
 .site-header .logo { width: min(100%,205px); }
 .site-header .header-tools > a { display: none; }
 .site-header .menu-toggle { min-width: auto; }
 .site-header #main-nav { max-height: calc(100dvh - 113px); }
 .site-header #main-nav > .nav-contact { margin-left: 0; }
 .site-header #main-nav .nav-drop { top: auto; }
 .audience-switch { margin: 5px 0 10px; }
 .segment-hero h1 { font-size: clamp(34px,7vw,56px); }
}
@media (max-width: 530px) {
 .home-routes { gap: 8px; }
 .home-route { padding: 10px; }
 .segment-service-grid { grid-template-columns: 1fr; }
 .header-tools .language-switch a { padding: 7px 5px; }
}
@media (prefers-reduced-motion: reduce) {
 .home-route,.segment-service { transition: none; }
}
[hidden] { display: none !important; }
@media (max-width: 360px) {
 .site-header .header-inner { gap: 0 6px; }
 .header-tools .language-switch a { padding-inline: 4px; }
 .site-header .menu-toggle { gap: 5px; }
}
.site-header .header-tools .language-switch a[aria-current="true"] { color: #a7101c !important; }
@media (prefers-reduced-motion: no-preference) {
 .home-hero-copy,.home-hero-image { animation-duration: .38s; animation-delay: 0s; }
 @keyframes am-enter { from { opacity: .83; translate: 0 8px; } to { opacity: 1; translate: 0 0; } }
}

/* Charcoal navigation and an edge-to-edge opening anchored by the Air Masters stripes. */
.site-header {
 background: #17191c;
 color: #fff;
 border-bottom: 0;
}
.site-header .header-inner {
 grid-template-columns: auto minmax(0,1fr) auto;
 grid-template-areas: "brand nav tools" "audience audience audience";
 column-gap: clamp(14px,2vw,30px);
 padding-block: 4px 0;
}
.site-header .logo { width: clamp(162px,17vw,240px); }
.site-header #main-nav {
 justify-content: center;
 border-top: 0;
 min-height: 66px;
 gap: clamp(12px,1.3vw,22px);
}
.site-header #main-nav > a,.site-header #main-nav .nav-service > button {
 color: #f3f3f3;
 font-size: 13px;
 white-space: nowrap;
}
.site-header #main-nav > a:hover,.site-header #main-nav .nav-service > button:hover { color: #ffb1b6; }
.site-header #main-nav .nav-service > button span { color: #fc6974; }
.site-header #main-nav > .nav-contact { margin-left: 0; }
.site-header .header-tools { gap: 12px; }
.site-header .header-tools > a,
.site-header .header-tools .language-switch a { color: #eee; }
.site-header .header-tools .language-switch a[aria-current="true"] { color: #fff !important; background: #383b40; }
.site-header .audience-switch {
 width: 100%; justify-content: center; gap: 8px; margin: 0; padding: 8px 0;
 border-radius: 0; border-top: 1px solid #ffffff2b; background: none;
}
.site-header .audience-switch a {
 text-align: center; min-width: 134px; color: #fff; border-radius: 0;
 padding: 8px 17px; line-height: 1.3; border: 1px solid #ffffff45;
}
.site-header .audience-switch a:hover { background: #34363b; }
.site-header .audience-switch a[aria-current] { background: #ad1520; border-color: #ad1520; }
.site-header .menu-toggle,.site-header .menu-toggle span { color: #fff; }
.site-header .menu-toggle i::before,.site-header .menu-toggle i::after { background: #fff !important; }

.photo-opening .home-hero { --seam: clamp(32px,5.7vw,102px); background: #202227; }
.photo-opening .home-hero-grid {
 width: 100%; max-width: none; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
 gap: 0; padding: 0; align-items: stretch;
}
.photo-opening .home-hero-copy {
 display: flex; flex-direction: column; justify-content: center; position: relative;
 padding: clamp(32px,5vw,84px) clamp(24px,3vw,54px) clamp(38px,5vw,88px) max(5vw,calc((100vw - 1490px)/2));
}
.photo-opening .home-hero h1 { font-size: clamp(37px,4.45vw,77px); max-width: 15ch; text-wrap: balance; }
.photo-opening .home-hero-image { aspect-ratio: 4 / 3; align-self: center; background: #202227; }
.photo-opening .home-hero-image img { height: 100%; object-fit: contain; }
.photo-opening .home-hero-image figcaption { text-align: right; padding-right: 4.5vw; }
.brand-fins {
 display: grid; gap: 5px; width: 69px; margin-bottom: 27px;
 filter: drop-shadow(5px 6px 0 #0d0e10);
}
.brand-fins i {
 height: 7px; background: linear-gradient(95deg,#ee333d,#bb1725);
 clip-path: polygon(0 0,100% 0,92% 100%,0 100%);
}
.brand-fins i:nth-child(2) { width: 88%; }
.brand-fins i:nth-child(3) { width: 76%; }
.brand-fins i:nth-child(4) { width: 64%; }
.photo-opening .home-route { border-color: #ffffff54; }
.photo-opening .home-route:hover { border-color: #fa797f; }
.photo-opening .segment-private h1,.photo-opening .segment-private .hero-actions .plain-link { color: #fff; }
.photo-opening .segment-private .home-hero-copy > p { color: #e0e1e1; }
.photo-opening .segment-private .kicker { color: #ffb2b6; }
@media (min-width: 1001px) {
 .photo-opening .home-hero-copy::after {
  content: ""; position: absolute; inset: 0 0 0 auto; width: var(--seam);
  background: linear-gradient(133deg,#ef3542 5%,#b61321 52%,#690b14 95%);
  clip-path: polygon(100% 0,100% 100%,0 100%);
  transform: translateX(1px); pointer-events: none;
 }
 .photo-opening .home-hero-copy { padding-right: calc(var(--seam) * .85 + 14px); }
}
@media (max-width: 1150px) {
 .site-header .header-tools > a { display: none; }
}
@media (max-width: 1000px) {
 .site-header .header-inner {
  grid-template-columns: minmax(0,1fr) auto auto;
  grid-template-areas: "brand tools menu" "audience audience audience";
  column-gap: 10px;
  padding-top: 4px;
 }
 .site-header .logo { width: min(100%,210px); }
 .site-header .menu-toggle { display: flex; align-items: center; gap: 7px; }
 .site-header #main-nav {
  display: none; position: absolute; left: 0; right: 0; top: 100%;
  padding: 10px 4%; background: #fff; overflow: auto; max-height: calc(100dvh - 107px);
 }
 .site-header #main-nav.open { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
 .site-header #main-nav.open > a,.site-header #main-nav.open .nav-service > button { color: #202326; padding-block: 12px; }
 .site-header #main-nav.open > .nav-contact { margin-top: 6px; }
 .site-header #main-nav .nav-drop { display: none; position: static; visibility: visible; opacity: 1; transform: none; width: 100%; }
 .site-header #main-nav .nav-service.open .nav-drop { display: grid; }
 .photo-opening .home-hero-grid { grid-template-columns: 1fr; }
 .photo-opening .home-hero-copy { padding: 27px 5vw 34px; }
 .photo-opening .home-hero h1 { font-size: clamp(34px,7.5vw,59px); max-width: 19ch; margin-bottom: 15px; }
 .photo-opening .home-hero-copy > p { margin-bottom: 18px; }
 .photo-opening .home-hero-image { width: 100%; }
 .brand-fins { width: 52px; margin-bottom: 18px; gap: 4px; }
 .brand-fins i { height: 5px; }
}

.photo-opening .route-arrow {
 width: 12px; height: 12px; position: relative; font-size: 0;
 border-top: 1.5px solid currentColor; border-right: 1.5px solid currentColor;
}
.photo-opening .route-arrow::after {
 content: ""; position: absolute; right: -1px; top: 0; width: 15px; height: 1.5px;
 background: currentColor; transform: rotate(-45deg); transform-origin: right center;
}

/* Air Masters brand surfaces */
:root {
 --brand-ink: #17191c;
 --brand-red: #c81724;
 --brand-stripes: repeating-linear-gradient(to bottom, currentColor 0 15%, transparent 15% 25%);
}
.site-header { background: var(--brand-ink); border-bottom: 1px solid #ffffff26; }
.site-header .header-inner { padding-block: 0; }
.site-header .audience-switch { padding-block: 6px; }
.site-header .audience-switch a { border-color: transparent; position: relative; }
.site-header .audience-switch a[aria-current] { background: transparent; border-color: transparent; }
.site-header .audience-switch a[aria-current]::after {
 content: ""; position: absolute; bottom: 0; left: 30%; right: 30%; height: 2px; background: #ef3542;
}

.photo-opening .home-hero {
 isolation: isolate;
 background: var(--brand-ink);
}
.photo-opening .home-hero-grid {
 display: flex;
 align-items: end;
 min-height: clamp(555px, 53vw, 790px);
}
.photo-opening .home-hero-image {
 position: absolute;
 inset: 0;
 z-index: -2;
 width: 100%;
 aspect-ratio: auto;
 animation: none;
}
.photo-opening .home-hero-image img {
 object-fit: cover;
 object-position: 51% 60%;
}
.photo-opening .segment-private .home-hero-image img { object-position: center 55%; }
.photo-opening .home-hero-image figcaption {
 z-index: 1;
 left: auto;
 bottom: 17px;
 right: 4vw;
 padding: 4px 8px;
 background: #17191cbd;
 text-align: right;
}
.photo-opening .home-hero::after {
 display: block;
 z-index: -1;
 background: linear-gradient(90deg,#111316ed 0%,#111316b0 32%,#11131613 69%),
             linear-gradient(0deg,#111316b5 0%,transparent 53%);
}
.photo-opening .home-hero-copy {
 width: min(720px,65%);
 padding: 45px 0 clamp(62px,8vw,116px);
 margin-left: max(5vw,calc((100vw - 1490px)/2));
}
.photo-opening .home-hero-copy::after { display: none; }
.photo-opening .home-hero h1 {
 font-size: clamp(40px,5.2vw,78px);
 max-width: 16ch;
 text-wrap: pretty;
 color: #fff;
}
.photo-opening .home-hero-copy > p { color: #fff; }
.photo-opening .home-routes { max-width: 490px; }
.photo-opening .home-route { background: #17191cc7; border-color: #ffffff65; }
.photo-opening .home-route:hover { background: #a9121e; border-color: #f57c83; }
.photo-opening .home-hero::before {
 content: "";
 position: absolute;
 z-index: 0;
 top: 0;
 left: max(5vw,calc((100vw - 1490px)/2));
 width: clamp(86px,12vw,180px);
 height: 5px;
 background: var(--brand-red);
 clip-path: polygon(0 0,100% 0,94% 100%,0 100%);
}

/* The recurring stripes sit behind content and fade into the light background. */
main > :is(.section,.page-heading,.reference-section,.certification-section,.segment-cert,.project-cta) {
 position: relative;
 isolation: isolate;
}
main > :is(.section,.page-heading,.reference-section,.certification-section,.segment-cert,.project-cta)::after {
 content: "";
 position: absolute;
 z-index: -1;
 inset: 0;
 pointer-events: none;
 background: var(--brand-stripes);
 color: #c817240a;
 clip-path: polygon(65% 10%,100% 10%,100% 90%,56% 90%);
 mask-image: linear-gradient(100deg,transparent 55%,#000 97%);
}
main > :is(.section,.page-heading,.reference-section):nth-child(even)::after {
 transform: scaleX(-1);
 color: #17191c08;
}
main > :is(.expertise,.segment-services,.project-overview,.page-heading,.project-cta) { background-color: #fafaf8; }

/* Footer uses the same charcoal, white wordmark and diagonal stripes as the header. */
.site-footer {
 position: relative;
 isolation: isolate;
 overflow: hidden;
 background: var(--brand-ink);
 color: #eeeff0;
 padding-top: clamp(30px,4vw,56px);
}
.site-footer::before {
 content: "";
 position: absolute;
 inset: 0;
 background: var(--brand-stripes);
 color: #ffffff07;
 clip-path: polygon(80% 0,100% 0,100% 100%,65% 100%);
 mask-image: linear-gradient(100deg,transparent 65%,#000);
 z-index: -1;
 pointer-events: none;
}
.site-footer::after {
 content: "";
 position: absolute;
 top: 0;
 left: max(4vw,calc((100vw - 1392px)/2));
 width: clamp(95px,13vw,190px);
 height: 4px;
 background: var(--brand-red);
 clip-path: polygon(0 0,100% 0,94% 100%,0 100%);
}
.site-footer .footer-top { border-color: #ffffff28; margin-bottom: 22px; padding-bottom: 22px; }
.site-footer .footer-logo img { width: clamp(175px,20vw,244px); filter: none; }
.site-footer .footer-logo p,.site-footer .footer-grid p { color: #c1c4c8; }
.site-footer .footer-grid { padding-bottom: 25px; }
.site-footer .footer-grid h3,.site-footer .footer-connect .kicker { color: #fff; }
.site-footer .footer-grid a,.site-footer .footer-connect a,.site-footer .footer-bottom a { color: #f3f3f4; }
.site-footer .footer-grid a:hover,.site-footer .footer-bottom a:hover,.site-footer .footer-connect a:hover { color: #ff9299; }
.site-footer .footer-bottom { border-color: #ffffff32; color: #c1c4c8; padding-block: 16px; }
@media (max-width: 1000px) {
 .photo-opening .home-hero-grid { min-height: clamp(500px,72vw,660px); }
 .photo-opening .home-hero-copy { width: min(680px,84%); padding-bottom: 66px; }
}
@media (max-width: 600px) {
 .photo-opening .home-hero-grid { min-height: 0; display: grid; }
 .photo-opening .home-hero-image {
  position: relative; z-index: 0; inset: auto; grid-row: 1; aspect-ratio: 4 / 3;
 }
 .photo-opening .home-hero-image img { object-fit: contain; }
 .photo-opening .home-hero-image figcaption { bottom: 7px; right: 8px; font-size: 10px; }
 .photo-opening .home-hero::before,.photo-opening .home-hero::after { display: none; }
 .photo-opening .home-hero-copy { width: auto; margin: 0; padding: 24px 5vw 30px; }
 .photo-opening .home-hero h1 { font-size: clamp(32px,8vw,45px); max-width: 18ch; }
 .site-footer .footer-top { gap: 15px; }
 main > :is(.section,.page-heading,.reference-section,.certification-section,.segment-cert,.project-cta)::after {
  clip-path: polygon(60% 0,100% 0,100% 100%,39% 100%);
 }
}
.site-footer .site-credit strong,.site-footer .footer-grid p > span { color: inherit; }

/* Homepage credentials directly after the project photograph. */
.home-credentials {
 position: relative;
 isolation: isolate;
 background: #fff;
 border-bottom: 1px solid #e6e5e1;
}
.home-credentials::after {
 content: "";
 position: absolute;
 inset: 0;
 z-index: -1;
 color: #c8172409;
 background: var(--brand-stripes);
 clip-path: polygon(76% 0,100% 0,100% 100%,69% 100%);
 mask-image: linear-gradient(95deg,transparent 72%,#000);
 pointer-events: none;
}
.home-credentials-grid { display: grid; grid-template-columns: 1fr 1fr; }
.home-credential {
 display: flex;
 align-items: center;
 gap: clamp(16px,2.4vw,36px);
 padding: clamp(20px,2.5vw,36px) 0;
}
.home-credential + .home-credential {
 border-left: 1px solid #e6e5e1;
 padding-left: clamp(16px,3.4vw,52px);
}
.home-credential h2 {
 flex: 0 0 auto;
 color: #a91320;
 font-size: clamp(23px,3vw,44px);
 font-weight: 750;
 letter-spacing: -.055em;
 line-height: 1;
 margin: 0;
}
.home-credential p { margin: 0; color: #303237; font-size: 14px; line-height: 1.45; }
.home-credential .plain-link {
 display: inline-block;
 margin-top: 4px;
 padding-bottom: 1px;
 color: #8f1220;
 font-size: 12px;
}
@media (min-width: 601px) {
 .home-hero:has(+ .home-credentials) .home-hero-grid { min-height: clamp(485px,49vw,640px); }
 .home-hero:has(+ .home-credentials) .home-hero-copy { padding-bottom: clamp(48px,6vw,84px); }
}
@media (max-width: 760px) {
 .home-credential { display: grid; align-content: start; gap: 8px; padding-right: 12px; }
}

/* Official mark extracted from the linked Air Masters VCA certificate. */
.vca-logo { display: block; width: clamp(67px, 8vw, 110px); height: auto; flex: 0 0 auto; }
.home-credential .vca-logo + div h2 {
 color: #24262a;
 font-size: clamp(18px, 2vw, 27px);
 letter-spacing: -.035em;
 margin-bottom: 5px;
}
@media (max-width: 760px) {
 .home-credential .vca-logo { margin-bottom: 2px; }
}

@media (min-width: 920px) {
 .segment-private + .segment-services .segment-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

.maintenance-photo { margin: 0; }
.maintenance-photo figcaption { padding: 8px 0; color: #53565a; font-size: 14px; }
#contact-form { scroll-margin-top: 120px; }
@media (min-width: 920px) {
 .segment-services .maintenance-services { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
