html{scroll-padding-top:40px}body{font-family:Montserrat,Arial,sans-serif}.sec-hero{padding:55px 0 65px;background:radial-gradient(ellipse at 80% 40%,#d0d3d5,#d7dadc 68%);border-bottom:1px solid #ffffff15}.sec-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:center;margin-top:55px}.sec-hero h1{font-size:clamp(42px,5vw,76px);letter-spacing:-.055em;margin:0 0 28px;line-height:1.08}.sec-hero em,.sec-section em,.sec-video em,.sec-cta em{font-style:normal;color:#a33b06}.sec-lead{color:#35444e;line-height:1.9;max-width:590px;font-size:15px}.sec-hero-art{position:relative}.sec-hero-art>svg{display:block;width:100%;filter:drop-shadow(0 0 40px #ef621615)}.sec-art-caption{display:block;text-align:center;font-size:8.5px;color:#35444e;letter-spacing:.2em}.sec-section{padding:85px 0 100px}.sec-section-head{max-width:760px;margin-bottom:45px}.sec-section h2,.sec-video h2,.sec-cta h2{font-size:clamp(32px,3.5vw,50px);letter-spacing:-.045em;margin:0 0 25px}.sec-section-head p,.sec-video p,.sec-cta p{font-size:14px;line-height:1.9;color:#35444e}.sec-product-grid,.sec-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.sec-photo{margin:0}.sec-photo img{width:100%;display:block;border:1px solid #41545e}.sec-photo figcaption{font-size:8.5px;letter-spacing:.11em;color:#35444e;margin-top:13px}.sec-system img{aspect-ratio:1.35;object-fit:cover;object-position:75% center}.sec-keypad img{height:340px;object-fit:contain;background:white}.sec-detail-grid{margin-top:65px;grid-template-columns:.7fr 1.3fr}.sec-detail-grid h3,.sec-product-grid h3{font-size:28px;letter-spacing:-.035em;margin:0 0 22px}.sec-source{display:inline-block;color:#a33b06;font-size:11.5px;margin-top:15px;text-decoration:underline;text-underline-offset:4px}.sec-video{padding:90px 0;background:radial-gradient(ellipse at 75% 50%,#d1d4d6,#d6d9db 70%);border-block:1px solid #3b4c5660}.sec-video-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center}.sec-certification{padding:35px;border:1px solid #ff9b6580;background:#d5d8daaa}.sec-certification>span{font-size:9.5px;letter-spacing:.15em;color:#a33b06}.sec-certification svg{display:block;width:100px;height:100px;fill:none;stroke:var(--pgf-orange);stroke-width:2;margin:25px 0}.sec-certification h3{font-size:30px;line-height:1.35;letter-spacing:-.03em;margin:0 0 20px}.sec-certification p{font-size:12.5px;margin:0}.sec-app img{aspect-ratio:.92;object-fit:cover;object-position:55% center}.mob-copy .sec-fine{font-size:10.5px;color:#35444e;margin-top:25px}.sec-cta{padding:80px 0;border-top:1px solid #344650;background:#d6d9db}.sec-cta a{display:inline-block;color:#35444e;background:#ef6216;padding:16px 24px;font-size:12.5px;font-weight:700;margin-top:15px}.sec-cta .sec-credits{font-size:9.5px;color:#35444e;margin-top:50px}.mob-domain>svg{max-width:100%}@media(max-width:900px){.sec-hero-grid{grid-template-columns:1.25fr .8fr;gap:2%}.sec-video-grid{gap:5%}.sec-certification{padding:25px}.sec-certification h3{font-size:26px}.sec-product-grid,.sec-detail-grid{gap:5%}}@media(max-width:760px){.sec-hero{padding:35px 0 45px}.sec-hero-grid,.sec-product-grid,.sec-detail-grid,.sec-video-grid{grid-template-columns:1fr;gap:35px}.sec-hero-grid{margin-top:40px}.sec-hero-art{max-width:340px;width:100%;margin:auto}.sec-hero h1{font-size:45px}.sec-section,.sec-video{padding:60px 0}.sec-system img{aspect-ratio:1.55}.sec-keypad img{height:300px}.sec-app img{aspect-ratio:1.1}.sec-detail-grid{margin-top:45px}.sec-cta{padding:60px 0}.sec-certification h3{font-size:28px}}

.sec-domains { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sec-domains .mob-domain { min-height: 0; gap: 18px; }
.sec-domains .mob-domain > svg { width: clamp(82px, 10vw, 134px); height: auto; }
.sec-service-art {
  display: block;
  width: min(100%, 440px);
  margin: auto;
  fill: none;
  stroke: var(--ink, #a3bbc5);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.sec-service-art .accent { stroke: var(--pgf-orange); }
.sec-video-services {
  list-style: none;
  padding: 0;
  margin: 25px 0;
  color: #c2d0d8;
  font-size: 12.5px;
  line-height: 1.8;
}
.sec-video-services li { padding: 12px 0; border-top: 1px solid #54708055; }
@media (max-width: 900px) {
  .sec-domains { grid-template-columns: 1fr; }
}
