/* DOS R8.7 — approved photographic language, common rhythm and legible reading. */
:root{--ink:#102c3d;--blue:#13637d;--muted:#596873;--line:#dde4e7;--soft:#f4f7f8;--max:1240px}
.r87-home .client{border:0;border-radius:0;background:transparent;box-shadow:none;width:180px;height:104px;padding:12px 18px}
.r87-home .client img{width:auto!important;height:auto!important;max-width:144px!important;max-height:78px!important;object-fit:contain;flex:initial!important}
.r87-home .clients-section{border-color:#edf1f3}
.r87-home .logo-window:focus-visible{outline:2px solid var(--blue);outline-offset:-3px}
.r87-climate-links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:22px}
.r87-climate-links a{font-size:14px;line-height:1.7;color:var(--blue);text-decoration:underline;text-underline-offset:5px;padding-block:6px}
.r87-home .footer{padding-bottom:36px}
.r87-internal{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;overflow-x:clip}
.r87-internal .wrap{width:min(calc(100% - 80px),1240px);margin-inline:auto}
.r87-internal .site-head{position:absolute;top:0;width:100%;background:transparent;border:0;z-index:40}
.r87-internal .site-head .nav{height:96px;background:transparent;max-width:1240px;display:flex;justify-content:space-between;align-items:center}
.r87-internal .site-head .brand img{width:145px;height:65px;object-fit:contain;filter:brightness(0) invert(1)}
.r87-internal .site-head nav{display:flex;align-items:center;gap:34px;color:#fff;font-size:14px}
.r87-internal .site-head .nav-contact{color:#fff;border-color:#ffffff80}
.r87-internal .menu-toggle{color:#fff;background:transparent;border:1px solid #ffffff70;border-radius:4px;padding:10px 12px;min-height:44px}
.r87-hero{position:relative;isolation:isolate;min-height:470px;padding:156px 0 70px;display:flex;align-items:end;overflow:hidden;background:#102c3d}
.r87-hero figure,.r87-shade{position:absolute;inset:0;z-index:-1;margin:0}
.r87-hero figure img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.r87-hero img[data-image-key="residential-oneway"]{object-position:center 16%}
.r87-hero img[data-image-key="residential-linear"]{object-position:center 12%}
.r87-hero img[data-image-key="commercial-cassettes"]{object-position:center 22%}
.r87-shade{background:linear-gradient(90deg,rgba(7,24,36,.92) 0%,rgba(7,24,36,.72) 55%,rgba(7,24,36,.3) 100%)}
.r87-hero-copy{position:relative;color:#fff}
.r87-hero-copy h1{max-width:1000px;font-size:clamp(34px,4.1vw,59px);font-weight:500;line-height:1.13;letter-spacing:-.035em;margin:0;color:#fff;text-wrap:balance}
.r87-hero-copy .eyebrow{color:#c7dfe9;font-size:12px;margin-bottom:20px}
.r87-hero-copy p{max-width:750px;color:#e3edf2;font-size:18px;line-height:1.65;margin:22px 0 0}
.r87-crumbs{display:flex;gap:12px;flex-wrap:wrap;padding-block:26px;font-size:14px;color:var(--muted)}
.r87-crumbs a:hover{color:var(--blue)}
.r87-internal .breadcrumbs,.r87-internal .b-int-breadcrumbs{padding-block:26px;font-size:14px}
.r87-internal .footer{padding-bottom:34px;border-top:1px solid var(--line)}
.r87-internal .footer-grid{grid-template-columns:1.2fr 1fr 1fr;gap:60px}
.r87-internal .footer h3{color:var(--ink);font-size:16px;margin-bottom:18px;letter-spacing:0}
.r87-internal .footer a{font-size:14px;line-height:2.2}
.r87-internal .footer p{font-size:14px}
.r87-internal .legal{font-size:12px}
.r87-library{padding-block:40px 90px}
.r87-library-nav{display:flex;flex-wrap:wrap;gap:14px 30px;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:46px}
.r87-library-nav a{font-size:16px;line-height:1.5;padding-block:9px;color:var(--muted)}
.r87-library-nav a[aria-current],.r87-library-nav a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:9px}
.r87-library-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:36px}
.r87-library-heading h2{font-size:clamp(28px,3vw,40px);font-weight:500}
.r87-library-heading>span{color:var(--muted);font-size:14px;white-space:nowrap}
.r87-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 30px}
.r87-card{min-width:0;display:flex;flex-direction:column;background:transparent;border:0}
.r87-card-photo{display:block;aspect-ratio:1.6;overflow:hidden;border-radius:4px;background:#e7eef1;margin-bottom:26px}
.r87-card-photo img{width:100%;height:100%;object-fit:cover}
.r87-card>div{display:flex;flex:1;flex-direction:column;align-items:start}
.r87-card .eyebrow{font-size:12px;margin-bottom:15px;line-height:1.5}
.r87-card h2{font-size:25px;line-height:1.3;font-weight:500;letter-spacing:-.025em;margin:0 0 16px}
.r87-card p{font-size:16px;line-height:1.65;margin-bottom:18px}
.r87-card .text-link{margin-top:auto}
.r87-article-meta{display:flex;gap:24px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:0 0 25px;margin-top:4px;font-size:14px;color:var(--muted)}
.r87-reading{display:grid;grid-template-columns:minmax(0,820px) minmax(230px,1fr);gap:70px;padding-block:50px 100px}
.r87-prose{min-width:0}
.r87-prose p,.r87-prose li{font-size:18px;line-height:1.85;color:#425965}
.r87-prose p{margin:0 0 23px}
.r87-prose h2{font-size:30px;line-height:1.25;letter-spacing:-.025em;font-weight:550;margin:44px 0 22px}
.r87-prose h2:first-child{margin-top:0}
.r87-prose h3{font-size:23px;line-height:1.35;margin:30px 0 18px}
.r87-prose ul{padding-left:24px;margin-bottom:26px}
.r87-prose li{margin-bottom:12px}
.r87-prose a{text-decoration:underline;text-underline-offset:4px;color:var(--blue);overflow-wrap:anywhere}
.r87-prose strong{color:var(--ink)}
.r87-table-wrap{overflow-x:auto;margin:30px 0}
.r87-prose table{border-collapse:collapse;width:100%;font-size:16px;line-height:1.6;text-align:left}
.r87-prose th,.r87-prose td{padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:top;min-width:150px}
.r87-prose th{background:var(--soft);color:var(--ink);font-weight:600}
.r87-prose blockquote{border-left:3px solid var(--blue);background:var(--soft);padding:22px 26px;margin:30px 0;font-size:18px;line-height:1.7}
.r87-related{align-self:start;border-top:2px solid var(--blue);padding-top:24px}
.r87-related h2{font-size:22px;margin:0 0 18px}
.r87-related>a:not(.button){display:block;font-size:16px;line-height:1.6;border-bottom:1px solid var(--line);padding:18px 0}
.r87-related .button{margin-top:28px;width:100%;font-size:14px}
.r87-references{border-top:1px solid var(--line);margin-top:45px;padding-top:8px}
.r87-references li{font-size:16px}
.r87-image-credit figcaption{font-size:12px;line-height:1.6;color:var(--muted);padding-block:20px}
.r87-explanatory{margin:32px 0}
.r87-explanatory img{width:100%;height:auto}
.r87-explanatory figcaption{font-size:14px;line-height:1.6;margin-top:16px}
.r87-service-details{display:grid;grid-template-columns:minmax(0,850px) 1fr;gap:65px;padding-block:55px 50px}
.r87-service-details h2{font-size:clamp(28px,3vw,42px);max-width:740px;margin-bottom:25px;font-weight:500}
.r87-service-details p{font-size:18px;line-height:1.8}
.r87-service-columns{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin:40px 0}
.r87-service-columns h3{font-size:22px;margin-bottom:22px}
.r87-service-columns ul{padding-left:20px;color:var(--muted);font-size:16px;line-height:1.8}
.r87-service-columns li{margin:12px 0}
.r87-service-applications{border-top:2px solid var(--blue);padding-top:24px}
.r87-service-applications h3{font-size:21px;margin-bottom:22px}
.r87-service-applications a{display:block;font-size:16px;line-height:1.6;padding:16px 0;border-bottom:1px solid var(--line)}
.r87-internal .b-int-content-grid,.r87-internal .b-int-specialties-list,.r87-internal .b-editorial-about-body{padding-block:65px}
.r87-internal .section{padding-block:65px}
.r87-internal .contact-grid{gap:65px}
.r87-internal h2,.r87-internal h3{color:var(--ink)}
.r87-internal .contact-section h2,.r87-internal .dark h2{color:#fff}
.r87-internal input,.r87-internal select,.r87-internal textarea{font-size:16px}
.r87-internal .publication-article{padding-block:40px 80px}
.r87-internal .b-int-specialty-copy>p{font-size:18px}
.r87-home a:focus-visible,.r87-internal a:focus-visible,.r87-internal button:focus-visible{outline:3px solid #2695bd;outline-offset:5px}
@media(max-width:1100px){.r87-internal .site-head nav{gap:22px}.r87-reading{gap:40px}.r87-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.r87-service-details{gap:40px}.r87-internal .footer-grid{gap:35px}}
@media(max-width:760px){
 .r87-internal .wrap{width:calc(100% - 40px)}
 .r87-internal .site-head .nav{height:82px}
 .r87-internal .site-head .brand img{width:126px;height:62px}
 .r87-internal .menu-toggle{display:block}
 .r87-internal .site-head nav{display:none;position:absolute;top:76px;left:20px;right:20px;flex-direction:column;align-items:stretch;gap:0;padding:15px 22px;background:#102c3d;border:1px solid #304b5b;border-radius:4px}
 .r87-internal .site-head nav.open{display:flex}
 .r87-internal .site-head nav a{padding-block:15px;min-height:48px}
 .r87-hero{padding:125px 0 50px;min-height:400px}
 .r87-hero-copy h1{font-size:34px;line-height:1.16}
 .r87-hero-copy p{font-size:17px}
 .r87-shade{background:linear-gradient(90deg,rgba(7,24,36,.9),rgba(7,24,36,.62))}
 .r87-reading{grid-template-columns:1fr;gap:45px;padding:35px 0 60px}
 .r87-prose p,.r87-prose li{font-size:17px;line-height:1.8}
 .r87-prose h2{font-size:27px}
 .r87-article-meta{gap:10px}
 .r87-card-grid{grid-template-columns:1fr;gap:40px}
 .r87-library{padding-block:25px 55px}
 .r87-library-heading{align-items:start;flex-direction:column;gap:12px}
 .r87-library-nav{gap:4px 22px;margin-bottom:30px}
 .r87-service-details{grid-template-columns:1fr;gap:35px;padding-block:35px}
 .r87-service-columns{grid-template-columns:1fr;gap:20px}
 .r87-internal .footer-grid{grid-template-columns:1fr;gap:30px}
 .r87-internal .legal{flex-direction:column}
 .r87-home .r87-climate-links{gap:6px 20px}
 .r87-home .client{width:152px;height:92px;padding:12px}
 .r87-home .client img{max-width:128px!important;max-height:70px!important}
 .r87-internal .contact-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.r87-card[hidden]{display:none}
.r87-search{display:grid;gap:12px;margin-bottom:38px;max-width:600px}
.r87-search label{font-size:15px;font-weight:600}
.r87-search input{border:1px solid #bfcdd4;border-radius:4px;padding:15px 18px;background:#fff;color:var(--ink);width:100%}
.r87-search p{font-size:13px;color:var(--muted);margin:0}
.r87-equipment img{max-height:580px;object-fit:contain;background:#fff}
.r87-home .clients-section{background:#fff}
/* Preserve the same typography and navigation treatment on legacy pages. */
.r87-internal h1,.r87-internal h2,.r87-internal h3,.r87-internal .b-service-intro-grid p{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important}
.r87-internal .site-head nav a{font-weight:500}
.r87-internal .site-head .nav-contact{border:1px solid #ffffff80;border-radius:3px;padding:12px 16px;text-decoration:none}
.r87-internal .b-int-specialty-chapter{width:min(calc(100% - 80px),1240px);margin-inline:auto}
.r87-internal .b-int-specialty-copy h2{font-size:42px;font-weight:500;line-height:1.15;letter-spacing:-.025em}
img[data-image-key="residential-oneway"]{object-position:center 16%}
img[data-image-key="residential-linear"]{object-position:center 12%}
.r87-hero img[data-image-key="pool_air_distribution"]{object-position:center 78%}
@media(max-width:760px){.r87-internal .b-int-specialty-chapter{width:calc(100% - 40px)}.r87-internal .b-int-specialty-copy h2{font-size:34px}}

.r87-hero img[data-image-key^="editorial-medical"],.r87-hero img[data-image-key="editorial-gas-alarm"]{object-fit:contain;object-position:right center}


/* Common footer contrast, including status and utility pages. */
.r87-internal .footer{background:#fff!important;color:var(--ink)}
.r87-internal .footer p,.r87-internal .footer a{color:#596873}

/* Legal links share a compact row; leave room below for the fixed WhatsApp button. */
.r87-home .footer,.r87-internal .footer{padding-bottom:96px!important}
.footer .legal{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;font-size:12px;line-height:1.6}
.footer .legal>span{min-width:0;margin:0}
.footer .footer-legal-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 18px;margin-left:auto}
.footer .legal a{display:inline-flex;align-items:center;min-height:32px;padding:6px 0;margin:0;font-size:inherit!important;line-height:inherit;color:inherit;white-space:nowrap}
.footer .legal a:hover{color:var(--blue)}
@media(max-width:760px){
 .r87-home .footer,.r87-internal .footer{padding-bottom:76px!important}
 .footer .legal{flex-direction:column;align-items:flex-start}
 .footer .footer-legal-links{margin-left:0}
}

/* Photograph framing follows the subject in each distinct article image. */
.r87-hero img[data-image-key="commissioning-clinic-balometer"],.r87-card-photo img[data-image-key="commissioning-clinic-balometer"]{object-position:50% 42%}
.r87-hero img[data-image-key="endoscopy-real-procedure-high"],.r87-card-photo img[data-image-key="endoscopy-real-procedure-high"]{object-position:50% 45%}
.r87-hero img[data-image-key="hospital-cooling-plant"],.r87-card-photo img[data-image-key="hospital-cooling-plant"]{object-position:50% 48%}
.r87-hero img[data-image-key="hospital-pressure-monitor"],.r87-card-photo img[data-image-key="hospital-pressure-monitor"]{object-position:50% 58%}
.r87-hero img[data-image-key="isolation-room"],.r87-card-photo img[data-image-key="isolation-room"]{object-position:50% 25%}
.r87-hero img[data-image-key="operating-room"],.r87-card-photo img[data-image-key="operating-room"]{object-position:50% 48%}
.r87-hero img[data-image-key="outpatient-room"],.r87-card-photo img[data-image-key="outpatient-room"]{object-position:50% 48%}
.r87-hero img[data-image-key="pmoc-filter-maintenance"],.r87-card-photo img[data-image-key="pmoc-filter-maintenance"]{object-position:50% 56%}
.r87-hero img[data-image-key="r88-gas-installation-check"],.r87-card-photo img[data-image-key="r88-gas-installation-check"]{object-position:50% 42%}
.r87-hero img[data-image-key="r88-medical-gas-hospital-outlets"],.r87-card-photo img[data-image-key="r88-medical-gas-hospital-outlets"]{object-position:50% 42%}
.r87-hero img[data-image-key="r88-medical-oxygen-instruments"],.r87-card-photo img[data-image-key="r88-medical-oxygen-instruments"]{object-position:50% 42%}
.r87-hero img[data-image-key="r88-structural-steel-frame"],.r87-card-photo img[data-image-key="r88-structural-steel-frame"]{object-position:50% 42%}
@media(min-width:1000px){.r87-hero img[data-image-key="hospital-pressure-monitor"]{width:60%;margin-left:auto;object-position:50% 58%}}
