body{margin:0;background:#fff;font-family:'Inter',sans-serif}

@keyframes hfrFadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hfr-fade{animation:hfrFadeUp .8s cubic-bezier(.2,.7,.2,1) both}
@media (prefers-reduced-motion: reduce){
  .hfr-fade{animation:none}
}

.hfr-grid-services{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.hfr-grid-products{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.hfr-grid-industries{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.hfr-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media (max-width:900px){.hfr-steps{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.hfr-steps{grid-template-columns:1fr}}
.hfr-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:900px){.hfr-cards{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.hfr-cards{grid-template-columns:1fr}}
.hfr-gallery-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
@media (max-width:1000px){.hfr-gallery-cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.hfr-gallery-cards{grid-template-columns:1fr}}
.hfr-timeline{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.hfr-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:600px){.hfr-form-grid{grid-template-columns:1fr}}
.hfr-hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:40px;align-items:center}
.hfr-why-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:44px;align-items:center}
.hfr-contact-grid{display:grid;grid-template-columns:0.8fr 1.2fr;gap:56px}
@media (max-width:900px){.hfr-contact-grid{grid-template-columns:1fr}}
.hfr-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px}
@media (max-width:1100px){
  .hfr-grid-services{grid-template-columns:repeat(2,1fr)}
  .hfr-grid-products{grid-template-columns:repeat(3,1fr)}
  .hfr-grid-industries{grid-template-columns:repeat(2,1fr)}
  .hfr-hero-grid{grid-template-columns:1fr}
  .hfr-why-grid{grid-template-columns:1fr}
  .hfr-footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
  .hfr-grid-services{grid-template-columns:1fr}
  .hfr-grid-products{grid-template-columns:repeat(2,1fr)}
  .hfr-grid-industries{grid-template-columns:1fr}
  .hfr-footer-grid{grid-template-columns:1fr}
}

/* Desktop nav / mobile drawer toggle */
.hfr-desktop-nav{display:flex}
.hfr-mobile-toggle{display:none}
@media (max-width:1240px){
  .hfr-desktop-nav{display:none !important}
  .hfr-mobile-toggle{display:flex !important}
}
.hfr-svc:hover .hfr-svc-menu{display:flex !important}
#hfr-mnav{display:none}
#hfr-mnav:checked ~ .hfr-drawer{transform:translateX(0) !important}

/* Floating action buttons: stacked circles on desktop, a bottom bar on mobile */
.hfr-fab-desktop{display:flex}
.hfr-fab-mobile{display:none}
@media (max-width:760px){
  .hfr-fab-desktop{display:none !important}
  .hfr-fab-mobile{display:flex !important}
}

/* Hero slider */
.hfr-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;pointer-events:none}
.hfr-slide.is-active{opacity:1;pointer-events:auto;position:relative}
.hfr-slider-dots{display:flex;gap:8px;margin-top:24px}
.hfr-slider-dot{width:8px;height:8px;border-radius:50%;background:rgba(20,23,26,.18);border:none;cursor:pointer;padding:0;transition:background .2s,width .2s}
.hfr-slider-dot.is-active{background:#b8112f;width:22px;border-radius:4px}

/* Placeholder treatment for content that has no uploaded photo yet */
.hfr-img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f6f4f0,#eae6de);color:#b3aca0;font-family:'Inter',sans-serif;font-size:13px;text-align:center;padding:16px;box-sizing:border-box}
.hfr-img-placeholder i{font-size:22px;display:block;margin-bottom:8px;color:#c9a8ac}

/* AED Finder quiz */
.hfr-finder-option{background:transparent;border:1.5px solid #3a3e43;color:#fff;border-radius:4px;padding:20px 14px;font-family:'Inter',sans-serif;font-size:14.5px;font-weight:600;cursor:pointer;text-align:center;transition:background .15s,border-color .15s}
.hfr-finder-option:hover{border-color:#b8112f}
.hfr-finder-option.is-selected{background:#b8112f;border-color:#b8112f}
.hfr-finder-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.hfr-finder-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.hfr-finder-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media (max-width:700px){
  .hfr-finder-grid-3,.hfr-finder-grid-4{grid-template-columns:repeat(2,1fr)}
}
.hfr-finder-input{background:#14171a;border:1px solid #333;border-radius:3px;padding:14px 16px;color:#fff;font-size:14.5px;font-family:'Inter',sans-serif;width:100%;box-sizing:border-box}
.hfr-finder-input::placeholder{color:#6b7076}
.hfr-finder-step{display:none}
.hfr-finder-step.is-active{display:block}

.hfr-article-body p{margin:0 0 22px}
.hfr-article-body h2{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:26px;margin:40px 0 18px;letter-spacing:-.01em}
.hfr-article-body h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:20px;margin:32px 0 14px}
.hfr-article-body ul,.hfr-article-body ol{margin:0 0 22px;padding-left:22px}
.hfr-article-body li{margin-bottom:8px}
.hfr-article-body a{color:#b8112f}
.hfr-article-body img{max-width:100%;height:auto;border-radius:4px;margin:8px 0}
.hfr-article-body blockquote{border-left:3px solid #b8112f;margin:0 0 22px;padding:4px 0 4px 20px;color:#5c6067;font-style:italic}

.hfr-lightbox{position:fixed;inset:0;z-index:4000;background:rgba(10,12,14,.92);display:none;align-items:center;justify-content:center;padding:30px}
.hfr-lightbox img{max-width:100%;max-height:90vh;border-radius:4px;display:block}

.hfr-brand-marquee{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent)}
.hfr-brand-track{display:flex;align-items:center;gap:64px;width:max-content;animation:hfr-marquee 28s linear infinite}
.hfr-brand-marquee:hover .hfr-brand-track{animation-play-state:paused}
.hfr-brand-track img{height:72px;max-width:200px;object-fit:contain;display:block;flex-shrink:0}
.hfr-brand-track span{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:19px;color:#3d4147;white-space:nowrap;flex-shrink:0}
@keyframes hfr-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){
  .hfr-brand-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}
}
@media (max-width:700px){
  .hfr-brand-track{gap:40px}
  .hfr-brand-track img{height:52px;max-width:140px}
  .hfr-brand-track span{font-size:16px}
}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.hfr-pcard{background:#fff;border-radius:4px;overflow:hidden}
.hfr-pcard-img{display:block;aspect-ratio:1/1}
.hfr-pcard-body{padding:22px}
.hfr-pcard-brand{font-size:12px;color:#8a8f95;margin-bottom:6px}
.hfr-pcard-name{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:15.5px;margin-bottom:8px;color:inherit;text-decoration:none;display:block}
.hfr-pcard-desc{font-size:13px;color:#5c6067;margin-bottom:16px}
.hfr-pcard-link{color:#b8112f;font-weight:600;font-size:13.5px;text-decoration:none}

.hfr-scard{background:#F6F4F0;border-radius:4px;padding:38px 32px}
.hfr-scard-icon{width:48px;height:48px;border-radius:50%;background:rgba(184,17,47,.1);display:flex;align-items:center;justify-content:center;color:#b8112f;font-size:19px;margin-bottom:24px}
.hfr-scard-title{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:19px;margin:0 0 10px}
.hfr-scard-desc{font-size:14.5px;line-height:1.6;color:#5c6067;margin:0 0 18px}
.hfr-scard-link{color:#b8112f;font-weight:600;font-size:14px;text-decoration:none}