/* =====================================================================
   refresh.css — design layer for ariston.agent-site.com (loaded last)
   Same stack: Bootstrap 5 + iLanding main.css + modern.css. This file only
   overrides. Visual world: the site's own identity — its red (#C91430) for every
   accent and action, navy for the footer/tables/dark blocks, white paper,
   Cairo everywhere. Structure and typography from the v2 redesign.
   ===================================================================== */
:root{
  /* template hooks (iLanding / modern.css read these) — the site's own red identity */
  --accent-color:#C91430; --heading-color:#1F2D3D; --default-color:#3A4856;
  --nav-color:#1F2D3D; --nav-hover-color:#C91430; --nav-dropdown-hover-color:#C91430; --nav-dropdown-color:#1F2D3D;
  --m-accent:#C91430; --m-accent-deep:#9E0E25; --m-accent-rgb:201,20,48; --m-accent-soft:#ff8a98; --m-wa:#15803D; --m-lift:0px;
  --m-shadow-card:0 10px 30px -18px rgba(31,45,61,.28); --m-shadow-card-hover:0 10px 30px -18px rgba(31,45,61,.28);
  --m-shadow-img:0 24px 44px -24px rgba(31,45,61,.35); --m-shadow-media:0 24px 44px -24px rgba(31,45,61,.35);
  --m-shadow-btn:0 10px 22px -12px rgba(201,20,48,.45); --m-shadow-btn-hover:0 10px 22px -12px rgba(201,20,48,.45);
  --m-shadow-icon:none; --m-shadow-cta:0 30px 60px -30px rgba(31,51,70,.6);
  --m-tint-1:#FDF3F5; --m-tint-2:#FAE6EA; --m-border:#E8EDF2;
  --m-grad-deep:linear-gradient(135deg,#C91430,#9E0E25); --m-grad-soft:#1F3346; --m-grad-line:#C91430;
  /* design tokens */
  --rf-ink:#1F2D3D; --rf-ink-2:#3A4856; --rf-muted:#5E6C83; --rf-line:#E8EDF2; --rf-line-2:#CBD4E1;
  --rf-bg:#FFFFFF; --rf-bg-2:#F7F9FB; --rf-navy:#1F3346; --rf-navy-2:#2D465E;
  --rf-red:#C91430; --rf-red-deep:#9E0E25; --rf-red-soft:#FDF3F5; --rf-red-line:#F3C9D0;
  --rf-wa:#15803D; --rf-wa-deep:#166534; --rf-wa-soft:#E7F6EC;
  --rf-radius:12px; --rf-radius-lg:18px;
  --rf-shadow:0 10px 30px -18px rgba(31,45,61,.28);
  --rf-ease:cubic-bezier(.2,.7,.2,1);
  /* aliases kept so older rules keep working */
  --rf-blue:#C91430; --rf-blue-deep:#9E0E25; --rf-blue-soft:#FDF3F5;
  --rf-amber:#C91430; --rf-amber-light:#9E0E25; --rf-amber-soft:#FDF3F5; --rf-tint:#FDF3F5;
}

/* ---------- base typography & browser surfaces ---------- */
html{scroll-padding-top:92px;scrollbar-color:#B8C3D3 var(--rf-bg-2)}
body{color:var(--rf-ink-2);font-size:1.0625rem;line-height:1.9;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:var(--rf-bg)}
h1,h2,h3,h4,h5{color:var(--rf-ink);letter-spacing:0;text-wrap:balance}
h1{font-weight:800;line-height:1.22}
h2{font-weight:800;line-height:1.3}
h3,h4{font-weight:700}
p,li,dd,td{text-wrap:pretty}
img{max-width:100%;height:auto}
a{color:var(--rf-red);text-underline-offset:.18em;text-decoration-thickness:.08em}
a:hover{color:var(--rf-red-deep)}
::selection{background:var(--rf-red);color:#fff}
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:var(--rf-bg-2)}
::-webkit-scrollbar-thumb{background:#B8C3D3;border-radius:8px;border:3px solid var(--rf-bg-2)}
:focus-visible{outline:3px solid var(--rf-navy);outline-offset:3px;border-radius:4px}
input,select,textarea,button{accent-color:var(--rf-red);caret-color:var(--rf-red);font-family:inherit}
.phone,.hx-num,[dir="ltr"].num{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums;letter-spacing:.01em}
.section{padding:64px 0}
@media(max-width:767px){.section{padding:44px 0}}
.light-background{--background-color:var(--rf-bg-2);background:var(--rf-bg-2)}
.container{max-width:1180px}
.section-title{text-align:start;padding-bottom:24px;margin:0}
.section-title h2{font-size:clamp(1.55rem,1.15rem+1.3vw,2.05rem);font-weight:800;color:var(--rf-ink);margin:0 0 .5rem;padding:0;text-align:start}
.section-title h2::after,.section-title h2::before{display:none}
.section-title p{color:var(--rf-muted);margin:0;max-width:62ch;font-size:1.02rem}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* the kicker/eyebrow is not part of this design (the heading speaks for itself) */
.rf-eyebrow,.m-badge,.hero .company-badge,.about .about-meta{display:none!important}

/* ---------- header ---------- */
.header{background:rgba(255,255,255,.96);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--rf-line);padding:0;--background-color:transparent}
.header .header-container{border-radius:0;padding:10px 0;box-shadow:none;border:0;background:transparent}
.scrolled .header{box-shadow:0 10px 30px -22px rgba(23,32,51,.45)}
.scrolled .header .header-container{box-shadow:none}
.header .logo{gap:12px;text-decoration:none}
.header .logo img{display:none}
.logo-mark{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,var(--rf-red),var(--rf-red-deep));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:1.3rem;flex:0 0 auto}
.logo-text{display:flex;flex-direction:column;line-height:1.15}
.logo-title{font-weight:800;font-size:1.2rem;color:var(--rf-ink)}
.logo-sub{font-size:.76rem;font-weight:600;color:var(--rf-muted)}
.header .btn-getstarted,.header .btn-getstarted:focus{background:var(--rf-red)!important;color:#fff!important;border-radius:10px;font-weight:800;padding:9px 16px;box-shadow:none;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:1.02rem}
.header .btn-getstarted:hover{background:var(--rf-red-deep)!important;color:#fff!important}
.header .btn-getstarted i{color:#fff}
.navmenu li a{font-weight:600!important;font-size:15.5px!important;color:var(--rf-ink)!important}
.navmenu>ul>li>a:hover,.navmenu>ul>li>a.active{color:var(--rf-red)!important}
.navmenu>ul>li>a i:first-child{display:none}
@media(min-width:1200px){
  .navmenu .dropdown ul{border-radius:12px;border:1px solid var(--rf-line);box-shadow:0 20px 44px -22px rgba(23,32,51,.45);padding:8px}
  .navmenu .dropdown ul a{border-radius:8px;padding:9px 12px!important;color:var(--rf-ink-2)!important}
  .navmenu .dropdown ul a:hover{background:var(--rf-bg-2);color:var(--rf-red)!important}
  .navmenu .dropdown ul a i{color:var(--rf-red);font-size:.95rem;margin-left:6px}
}
@media(max-width:1199px){
  .header .header-container{padding:8px 0}
  .logo-sub{display:none}
  .mobile-nav-toggle{font-size:28px;color:var(--rf-ink);margin-right:8px}
  .mobile-nav-active .navmenu{background:rgba(23,32,51,.6)}
  .mobile-nav-active .navmenu>ul{border-radius:14px;margin:10px}
  .navmenu .dropdown ul a{padding-right:28px}
}

/* ---------- buttons shared by every template ---------- */
.hx-btn,.m-btn,.hero .btn-primary,.hero .btn-outline-primary,.call-to-action .btn-cta{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.78rem 1.35rem;border-radius:10px;font-weight:800;text-decoration:none;border:2px solid transparent;transition:background-color .2s var(--rf-ease),color .2s var(--rf-ease),border-color .2s var(--rf-ease);line-height:1.3}
.hx-btn:hover,.m-btn:hover{transform:none}
.hx-btn-primary,.m-btn-primary,.hero .btn-primary,.modern-ui .m-cta .m-btn-primary{background:var(--rf-red)!important;color:#fff!important;border-color:var(--rf-red)!important;box-shadow:none!important}
.call-to-action .btn-cta,.hx-cta-box .hx-btn-primary{background:#fff!important;color:var(--rf-red)!important;border-color:#fff!important;box-shadow:none!important}
.hx-btn-primary:hover,.m-btn-primary:hover,.hero .btn-primary:hover,.modern-ui .m-cta .m-btn-primary:hover{background:var(--rf-red-deep)!important;border-color:var(--rf-red-deep)!important;color:#fff!important;transform:none}
.call-to-action .btn-cta:hover,.hx-cta-box .hx-btn-primary:hover{background:var(--rf-red-soft)!important;color:var(--rf-red-deep)!important;transform:none}
.hx-btn-wa,.m-btn-wa{background:var(--rf-wa)!important;color:#fff!important;border-color:var(--rf-wa)!important;box-shadow:none!important}
.hx-btn-wa:hover,.m-btn-wa:hover{background:var(--rf-wa-deep)!important;border-color:var(--rf-wa-deep)!important;color:#fff!important}
.hx-btn-ghost,.hero .btn-outline-primary{background:#fff;color:var(--rf-red)!important;border-color:var(--rf-line-2)}
.hx-btn-ghost:hover,.hero .btn-outline-primary:hover{background:var(--rf-red-soft);border-color:var(--rf-red);color:var(--rf-red-deep)!important}
.m-btn i,.hx-btn i{font-size:1.05em}

/* ---------- generic hero (service pages) ---------- */
.hero{padding:124px 0 48px;background:var(--rf-bg-2)}
.hero::before{display:none}
.hero .hero-content h1{font-size:clamp(1.9rem,1.2rem+2.4vw,2.9rem);font-weight:800;line-height:1.22;color:var(--rf-ink)}
.hero .hero-content h1 .accent-text{color:var(--rf-red)}
.hero .hero-content p{font-size:1.06rem;line-height:1.95;color:var(--rf-ink-2);max-width:60ch}
.hero .hero-image img{border-radius:var(--rf-radius-lg);box-shadow:none;background:#fff;border:1px solid var(--rf-line);padding:18px}
.hero .stats-row{margin-top:30px!important;border-top:1px solid var(--rf-line-2);padding-top:22px}
.hero .stat-item{background:transparent;border:0;border-radius:0;padding:0 0 0 12px;box-shadow:none;height:auto;display:flex;gap:12px;align-items:flex-start;transition:none}
.hero .stat-item:hover{transform:none;box-shadow:none}
.hero .stat-item .stat-icon{width:38px;height:38px;border-radius:9px;background:#fff;border:1px solid var(--rf-line);display:flex;align-items:center;justify-content:center;margin:0;flex:0 0 auto}
.hero .stat-item .stat-icon i{color:var(--rf-red);font-size:1.1rem}
.hero .stat-item h4{font-size:1rem;font-weight:800;margin:0 0 2px}
.hero .stat-item p{font-size:.9rem;color:var(--rf-muted);line-height:1.65;margin:0}
.hero .stat-item p a{font-weight:700}
@media(max-width:991px){.hero{padding:104px 0 36px}.hero .hero-image{margin-top:20px}.hero .hero-content{text-align:start}}

/* ---------- honest notice (quiet, informational) ---------- */
.rf-notice{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--rf-line-2);border-radius:var(--rf-radius);padding:14px 18px;box-shadow:none}
.rf-notice i{color:var(--rf-red);font-size:1.25rem;flex:0 0 auto;margin-top:4px}
.rf-notice p{margin:0;line-height:1.85;color:var(--rf-ink-2);font-size:.98rem}
.rf-notice a{color:var(--rf-red);font-weight:700}
.rf-notice.rf-notice-article{margin:0 0 24px}

/* ---------- cards & lists on template pages ---------- */
.service-card,.services .service-item,.additional-services .service-box,.info-box,.faq-item{border-radius:var(--rf-radius)!important}
.services .service-card{border:1px solid var(--rf-line);box-shadow:none;background:#fff}
.services .service-card .icon{background:var(--rf-red-soft)!important;color:var(--rf-red)!important;border-radius:10px;width:52px;height:52px;display:flex;align-items:center;justify-content:center;font-size:1.4rem}
.services .service-card h3{font-size:1.12rem;font-weight:800}
.feature-list li{line-height:1.8}
.feature-list li i{color:var(--rf-red)}
.about .about-title{font-weight:800;font-size:clamp(1.5rem,1.1rem+1.3vw,2rem)}
.about .about-description{line-height:1.95;color:var(--rf-ink-2)}
.about .image-wrapper .main-image{box-shadow:none;border:1px solid var(--rf-line);border-radius:var(--rf-radius-lg)}
.about .experience-badge{display:none!important}
.features-2 .feature-icon{background:var(--rf-red-soft)!important;color:var(--rf-red)!important;border-radius:10px;width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:1.3rem}
.features-2 .feature-content h3{font-size:1.1rem;font-weight:800}
.features-2 .feature-content p{color:var(--rf-ink-2);line-height:1.85}
.features-2 .phone-mockup img{border-radius:var(--rf-radius-lg);box-shadow:none;border:1px solid var(--rf-line)}
.call-to-action{background:linear-gradient(135deg,var(--rf-red),var(--rf-red-deep))!important;padding:60px 0}
.call-to-action h2{color:#fff;font-weight:800;font-size:clamp(1.5rem,1.1rem+1.3vw,2.05rem)}
.call-to-action p{color:rgba(255,255,255,.9)}
.call-to-action .btn-cta{padding:.85rem 1.6rem}
.faq .faq-item{border:1px solid var(--rf-line);background:#fff;box-shadow:none;border-radius:var(--rf-radius)!important}
.faq .faq-item h3{font-size:1.05rem;font-weight:700;color:var(--rf-ink)}
.faq .faq-item.faq-active{border-color:var(--rf-line-2);background:#fff}
.faq .faq-item.faq-active h3{color:var(--rf-red)}
.faq .faq-item .faq-toggle{color:var(--rf-muted)}
.timeline-item .timeline-icon,.step-item .step-number{background:var(--rf-red)!important;color:#fff!important;box-shadow:none}
.timeline-content,.step-content{background:#fff;border:1px solid var(--rf-line);border-radius:var(--rf-radius);padding:18px 20px;box-shadow:none}
.timeline-title,.step-title{font-size:1.08rem;font-weight:800}
.contact .info-box{border:1px solid var(--rf-line);box-shadow:none;background:#fff}
.contact .info-item .icon-box{background:var(--rf-red-soft);color:var(--rf-red);border-radius:10px}

/* ---------- footer ---------- */
.footer{background:var(--rf-navy);color:#C9D3E2;padding:56px 0 18px;font-size:.96rem;--background-color:var(--rf-navy)}
.footer .footer-top{padding-top:0}
.footer .logo .sitename{font-size:1.2rem;font-weight:800;color:#fff!important}
.footer .footer-disclaimer{color:#B9C6DA;font-size:.9rem;line-height:1.85;margin-top:12px;border:0;padding:0;max-width:44ch}
.footer .footer-contact p{color:#C9D3E2;margin:0 0 6px;display:flex;gap:8px;align-items:center}
.footer .footer-contact p i{color:#F7B2BC}
.footer h4{color:#fff;font-weight:800;font-size:1rem;margin-bottom:12px;padding-bottom:0;position:static}
.footer h4::after{display:none}
.footer .footer-links ul{list-style:none;padding:0;margin:0}
.footer .footer-links ul li{padding:4px 0;border:0}
.footer .footer-links ul a{color:#C9D3E2;display:inline-flex;align-items:center;gap:8px;padding:0;background:none;text-decoration:none}
.footer .footer-links ul a:hover{color:#fff;background:none;transform:none;text-decoration:underline}
.footer .footer-links ul a i{color:#F7B2BC;font-size:.95rem}
.footer .copyright{border-top:1px solid rgba(255,255,255,.12);padding-top:16px;margin-top:40px!important}
.footer .copyright p{color:#B9C6DA;margin:0;font-size:.88rem}
.footer .credits{display:none}
.call-now{display:none!important}
#scroll-top.scroll-top{background:var(--rf-red);border-radius:10px;color:#fff}
#m-fab-wrap{bottom:22px;right:auto;left:16px;gap:10px}
#m-fab-wrap .m-fab{width:52px;height:52px;box-shadow:0 12px 24px -12px rgba(23,32,51,.55);transition:none}
#m-fab-wrap .m-fab:hover{transform:none}
#m-fab-wrap .m-fab-call{background:var(--rf-red)!important;color:#fff!important}
#m-fab-wrap .m-fab-call::after{display:none}
#m-fab-wrap .m-fab-wa{background:var(--rf-wa)!important}
@media(max-width:991px){#m-fab-wrap{left:12px;bottom:14px}}

/* ---------- modern article template ---------- */
.modern-ui .m-hero{padding:118px 0 48px;background:var(--rf-bg-2)}
.modern-ui .m-hero h1{font-size:clamp(1.8rem,1.15rem+2.2vw,2.7rem)}
.modern-ui .m-hero .m-lead{color:var(--rf-ink-2);max-width:60ch}
.modern-ui .m-hero .m-img{border-radius:var(--rf-radius-lg);box-shadow:none;border:1px solid var(--rf-line);background:#fff}
.modern-ui .m-hero .m-img-wrap::after{display:none}
.modern-ui .breadcrumbs ol li a{color:var(--rf-muted)}
.modern-ui .breadcrumbs ol li.current{color:var(--rf-ink)}
.m-band{background:linear-gradient(135deg,var(--rf-red),var(--rf-red-deep));padding:0}
.m-band .m-band-item{display:flex;align-items:center;gap:10px;padding:16px 14px;border:0;background:transparent}
.m-band .m-band-item i{color:#fff;font-size:1.25rem;flex:0 0 auto}
.m-band .m-band-item h3{color:#fff;font-size:.98rem;font-weight:800;margin:0}
.m-band .m-band-item p{color:rgba(255,255,255,.85);font-size:.84rem;margin:0;line-height:1.5}
.modern-ui .section h2.h3{font-size:1.45rem;font-weight:800;margin-bottom:1rem}
.modern-ui .section .col-lg-10 p{max-width:72ch}
.modern-ui .m-cta{background:var(--rf-navy);border-radius:var(--rf-radius-lg);box-shadow:none}
.modern-ui .m-cta h2{color:#fff}
.modern-ui .m-cta p{color:#C9D3E2}
.modern-ui .m-cta .m-btn-wa{background:var(--rf-wa)!important}

/* article components available on every template */
.m-table{overflow-x:auto;border-radius:var(--rf-radius);border:1px solid var(--rf-line);margin:8px 0;background:#fff;box-shadow:none}
.m-table table{margin:0;width:100%;border-collapse:collapse}
.m-table thead th{background:var(--rf-navy);color:#fff;padding:12px 15px;font-size:.95rem;text-align:right;white-space:nowrap;font-weight:700}
.m-table td{padding:11px 15px;border-top:1px solid var(--rf-line);color:var(--rf-ink-2);vertical-align:top;line-height:1.7;font-variant-numeric:tabular-nums}
.m-table tbody tr:nth-child(even){background:var(--rf-bg-2)}
ul.m-tips{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:12px;margin:8px 0;padding:0;list-style:none}
.m-tips li{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--rf-line);border-radius:var(--rf-radius);padding:13px 16px}
.m-tips li i{color:var(--rf-red);font-size:1.15rem;margin-top:3px;flex-shrink:0}
.m-tips li span{color:var(--rf-ink-2);line-height:1.75}
ol.m-steps{margin:8px 0;padding:0;list-style:none}
.m-steps li{position:relative;padding:0 56px 22px 0;border-right:1px solid var(--rf-line-2);margin-right:18px}
.m-steps li:last-child{border-right-color:transparent;padding-bottom:2px}
.m-steps li .m-step-n{position:absolute;right:-19px;top:-3px;width:37px;height:37px;border-radius:50%;background:var(--rf-red);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;box-shadow:none;font-variant-numeric:tabular-nums}
.m-steps li h4{font-size:1.05rem;margin:3px 0 4px;color:var(--rf-ink)}
.m-steps li p{margin:0;color:var(--rf-muted);line-height:1.8}
.m-answer{background:var(--rf-red-soft);border:1px solid var(--rf-red-line);border-radius:var(--rf-radius);padding:16px 22px;margin:0 0 20px;box-shadow:none}
.m-answer .m-answer-tag{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;color:var(--rf-ink);background:transparent;padding:0;margin-bottom:6px}
.m-answer .m-answer-tag i{color:var(--rf-red)}
.m-answer p{margin:0;font-size:1.05rem;line-height:1.95;color:var(--rf-ink)}
.m-model-card{height:100%;background:#fff;border:1px solid var(--rf-line);border-radius:var(--rf-radius);padding:18px;display:flex;flex-direction:column;text-align:right;box-shadow:none}
.m-model-ic{width:42px;height:42px;border-radius:10px;background:var(--rf-red-soft);color:var(--rf-red);display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:12px}
.m-model-t{font-size:1.05rem;font-weight:800;margin:0 0 6px}
.m-model-d{color:var(--rf-muted);margin:0 0 14px;line-height:1.7;flex:1;font-size:.95rem}
.m-model-l a{color:var(--rf-red);font-weight:700}
.modern-ui .m-shot{border:1px solid var(--rf-line);box-shadow:none}
.modern-ui .m-chip,.m-chips span{background:var(--rf-bg-2);border:1px solid var(--rf-line);color:var(--rf-ink-2);box-shadow:none}

/* "خدمة عملاء … خارج الضمان" contact block */
.rf-cs{background:var(--rf-bg-2);border:1px solid var(--rf-line-2);border-radius:var(--rf-radius-lg);padding:1.4rem 1.6rem;box-shadow:none;margin:0 0 1.5rem}
.rf-cs h2{font-size:1.25rem;font-weight:800;margin:0 0 .6rem;color:var(--rf-ink)}
.rf-cs h2 i{color:var(--rf-red);margin-inline-end:.4rem}
.rf-cs p{margin:0;line-height:1.95;color:var(--rf-ink-2)}
.rf-cs a{color:var(--rf-red);font-weight:700;text-decoration:none}
.rf-cs a:hover{text-decoration:underline}
.rf-cs .rf-cs-links{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;margin-top:.8rem;font-size:.95rem}
.rf-cs-links a{text-decoration:underline;text-underline-offset:.2em;font-weight:700}

/* =====================================================================
   HOME (.hx-*)
   ===================================================================== */
.hx-hero{position:relative;padding:132px 0 56px;background:var(--rf-bg-2);border-bottom:1px solid var(--rf-line)}
.hx-hero h1{font-size:clamp(2rem,1.2rem+2.8vw,3.2rem);font-weight:800;line-height:1.2;margin:0 0 14px;max-width:27ch}
.hx-hero h1 span{color:inherit}
.hx-hero .hx-lead{font-size:1.1rem;line-height:1.95;color:var(--rf-ink-2);max-width:62ch;margin:0}
.hx-hero .hx-lead a{font-weight:800;color:var(--rf-red)}
.hx-hero-top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:28px;align-items:center}
.hx-hero-photo img{width:100%;max-width:420px;aspect-ratio:1;object-fit:cover;border-radius:var(--rf-radius-lg);border:1px solid var(--rf-line);display:block;margin-inline-start:auto;background:#fff}
.hx-hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:28px;align-items:start;margin-top:34px}
@media(max-width:991px){.hx-hero{padding:104px 0 40px}.hx-hero-grid,.hx-hero-top{grid-template-columns:1fr;gap:22px}.hx-hero-photo{display:none}}

/* the booking composer: the one bold element on the page */
.hx-book{background:#fff;border:1px solid var(--rf-line-2);border-radius:var(--rf-radius-lg);padding:26px 26px 22px;box-shadow:0 24px 50px -30px rgba(20,41,74,.45);position:relative}
.hx-book::before{content:"";position:absolute;inset:0 0 auto 0;height:6px;background:var(--rf-red);border-radius:var(--rf-radius-lg) var(--rf-radius-lg) 0 0}
.hx-book h2{font-size:1.35rem;font-weight:800;margin:4px 0 4px}
.hx-book .hx-book-sub{color:var(--rf-muted);margin:0 0 18px;font-size:.98rem}
.hx-book-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hx-book-fields .hx-field-wide{grid-column:1/-1}
@media(max-width:575px){.hx-book-fields{grid-template-columns:1fr}.hx-book{padding:22px 18px 18px}}
.hx-field label{display:block;font-weight:700;font-size:.92rem;color:var(--rf-ink);margin-bottom:6px}
.hx-field select,.hx-field input{width:100%;height:48px;border:1.5px solid var(--rf-line-2);border-radius:10px;padding:0 14px;font-size:1rem;color:var(--rf-ink);background:#fff;transition:border-color .15s var(--rf-ease),box-shadow .15s var(--rf-ease)}
.hx-field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16' fill='%235E6C83'><path d='M1.5 5.5l6.5 6 6.5-6' stroke='%235E6C83' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:left 14px center;padding-left:38px}
.hx-field select:focus,.hx-field input:focus{outline:none;border-color:var(--rf-red);box-shadow:0 0 0 4px var(--rf-red-soft)}
.hx-field input::placeholder{color:#9AA7BA}
.hx-book-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;align-items:center}
.hx-book-actions .hx-btn{padding:.85rem 1.4rem;font-size:1.02rem}
.hx-book-actions .hx-btn-primary{border:0;cursor:pointer}
.hx-book-note{margin:12px 0 0;font-size:.88rem;color:var(--rf-muted);line-height:1.7}
.hx-book-note a{font-weight:700}
@media(prefers-reduced-motion:no-preference){.hx-book{animation:hxBookIn .7s var(--rf-ease) .05s both}}
@keyframes hxBookIn{from{opacity:.6;transform:translateY(12px)}to{opacity:1;transform:none}}

/* what happens after you call: a real sequence, so it is numbered */
.hx-flow{list-style:none;margin:0;padding:6px 0 0;counter-reset:flow}
.hx-flow li{position:relative;padding:0 48px 18px 0;counter-increment:flow;border-right:1px solid var(--rf-line-2);margin-right:17px}
.hx-flow li:last-child{border-right-color:transparent;padding-bottom:0}
.hx-flow li::before{content:counter(flow);position:absolute;right:-18px;top:-2px;width:34px;height:34px;border-radius:50%;background:var(--rf-red);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:.95rem;font-variant-numeric:tabular-nums}
.hx-flow strong{display:block;color:var(--rf-ink);font-weight:800;font-size:1.02rem;margin-bottom:2px}
.hx-flow span{color:var(--rf-muted);font-size:.93rem;line-height:1.7;display:block}
.hx-flow-title{font-size:1.05rem;font-weight:800;color:var(--rf-ink);margin:0 0 6px}
.hx-hero .rf-notice{margin-top:26px}

/* services: a catalog of nine equivalent choices, photo-led */
.hx-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:991px){.hx-tiles{grid-template-columns:repeat(2,1fr)}}
@media(max-width:575px){.hx-tiles{grid-template-columns:1fr}}
.hx-tile{position:relative;background:#fff;border:1px solid var(--rf-line);border-radius:var(--rf-radius-lg);padding:0 0 18px;display:grid;grid-template-columns:1fr;gap:12px;align-items:start;overflow:hidden;transition:border-color .2s var(--rf-ease)}
.hx-tile:hover,.hx-tile:focus-within{border-color:var(--rf-red)}
.hx-tile img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--rf-bg-2)}
.hx-tile img[src$=".avif"],.hx-tile img[style*="contain"]{object-fit:contain;padding:14px}
.hx-tile>div{padding:0 16px}
.hx-tile h3{font-size:1.08rem;font-weight:800;margin:0 0 4px}
.hx-tile h3 a{color:var(--rf-ink);text-decoration:none}
.hx-tile h3 a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.hx-tile p{color:var(--rf-muted);font-size:.92rem;line-height:1.7;margin:0}

/* faults table */
.hx-table-wrap{overflow-x:auto;border-radius:var(--rf-radius);border:1px solid var(--rf-line);background:#fff}
.hx-table{width:100%;border-collapse:collapse;margin:0}
.hx-table th{background:var(--rf-navy);color:#fff;padding:13px 16px;text-align:right;font-weight:700;white-space:nowrap}
.hx-table td{padding:12px 16px;border-top:1px solid var(--rf-line);line-height:1.7;vertical-align:top}
.hx-table tbody tr:nth-child(even){background:var(--rf-bg-2)}
.hx-table a{color:var(--rf-red);font-weight:700}

/* areas: three columns of plain text */
.hx-areas{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:767px){.hx-areas{grid-template-columns:1fr;gap:20px}}
.hx-area{background:transparent;border:0;border-top:3px solid var(--rf-navy);border-radius:0;padding:16px 0 0;box-shadow:none}
.hx-area h3{font-size:1.15rem;font-weight:800;display:flex;align-items:center;gap:8px;margin:0 0 8px}
.hx-area h3 i{color:var(--rf-red)}
.hx-area p{color:var(--rf-ink-2);font-size:.97rem;line-height:1.85;margin:0 0 8px}
.hx-area p.hx-area-list{color:var(--rf-muted)}
.hx-chips{display:none}

/* articles: a list, two columns */
.hx-list{display:grid;grid-template-columns:1fr 1fr;gap:6px 40px;list-style:none;padding:0;margin:0}
@media(max-width:767px){.hx-list{grid-template-columns:1fr}}
.hx-list li{padding:14px 0;border-top:1px solid var(--rf-line)}
.hx-list li a{font-weight:800;color:var(--rf-ink);text-decoration:none;font-size:1.04rem}
.hx-list li a:hover{color:var(--rf-red);text-decoration:underline}
.hx-list li p{margin:4px 0 0;color:var(--rf-muted);font-size:.93rem;line-height:1.7}
.hx-more-link{display:inline-block;margin-top:18px;font-weight:700}

/* contact */
.hx-contact{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}
@media(max-width:991px){.hx-contact{grid-template-columns:1fr}}
.hx-contact-card{background:#fff;border:1px solid var(--rf-line);border-radius:var(--rf-radius-lg);padding:26px;box-shadow:none}
.hx-contact-card h3{font-weight:800;font-size:1.2rem;margin:0 0 6px}
.hx-contact-list{list-style:none;padding:0;margin:12px 0 0}
.hx-contact-list li{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-top:1px solid var(--rf-line)}
.hx-contact-list li:first-child{border-top:0}
.hx-contact-list i{color:var(--rf-red);font-size:1.15rem;margin-top:3px}
.hx-contact-list strong{display:block;color:var(--rf-ink);font-size:.92rem}
.hx-contact-list a{color:var(--rf-ink-2);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums;text-decoration:none}
.hx-contact-list .hx-nums{display:flex;flex-wrap:wrap;gap:4px 14px}
.hx-contact-list a:hover{color:var(--rf-red);text-decoration:underline}
.hx-cta-box{background:linear-gradient(135deg,var(--rf-red),var(--rf-red-deep));color:#fff;border-radius:var(--rf-radius-lg);padding:28px;box-shadow:none;position:relative;overflow:hidden}
.hx-cta-box::after{display:none}
.hx-cta-box h3{color:#fff;font-weight:800;font-size:1.3rem}
.hx-cta-box p{color:rgba(255,255,255,.9);line-height:1.85}
.hx-cta-box .hx-num{font-size:2.4rem;font-weight:800;display:block;margin:4px 0 12px;color:#fff;text-align:right}
.hx-cta-box .hx-btn-wa{box-shadow:none}

/* 404 */
.hx-404{min-height:60vh;display:flex;align-items:center;text-align:center;padding:140px 0 60px}
.hx-404 .hx-code{font-size:6rem;font-weight:800;color:var(--rf-red);line-height:1;font-variant-numeric:tabular-nums}

/* legacy home classes (kept for safety if any page still uses them) */
.hx-facts,.hx-steps{display:none}
.hx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:991px){.hx-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:575px){.hx-grid{grid-template-columns:1fr}}
.hx-card{background:#fff;border:1px solid var(--rf-line);border-radius:var(--rf-radius-lg);padding:20px;box-shadow:none;position:relative}
.hx-card:hover{transform:none;box-shadow:none;border-color:var(--rf-red)}
.hx-card .hx-ic{display:none}
.hx-card h3{font-size:1.08rem;font-weight:800;margin:0 0 6px}
.hx-card h3 a{color:var(--rf-ink);text-decoration:none}
.hx-card h3 a::after{content:"";position:absolute;inset:0}
.hx-card p{color:var(--rf-muted);font-size:.93rem;line-height:1.75;margin:0}
.hx-card .hx-more{display:none}
.hx-card img{border-radius:10px;aspect-ratio:4/3;object-fit:contain;width:100%;margin-bottom:12px;background:var(--rf-bg-2)}

/* print */
@media print{.header,.footer,#m-fab-wrap,#scroll-top,.hx-book-actions{display:none!important}}

/* robustness: no scroll-driven reveal (content always visible) */
.modern-ui .section .m-answer,.modern-ui .section .m-codes,.modern-ui .section .m-tips,.modern-ui .section .m-table,.modern-ui .section .m-steps,.modern-ui .section .m-figure{animation:none!important;opacity:1!important;transform:none!important}
[data-aos]{opacity:1!important;transform:none!important;transition:none!important}
.about .feature-list-wrapper>[class*="col-"]{flex:0 0 100%;max-width:100%}
.modern-ui .m-card:hover,.modern-ui .m-model-card:hover,.modern-ui .m-tips li:hover{transform:none!important}

/* late overrides that need extra specificity */
#m-answer-top .m-answer,.modern-ui .m-answer{background:var(--rf-red-soft);border:1px solid var(--rf-red-line);border-right:1px solid #F3DDB0;box-shadow:none;border-radius:var(--rf-radius)}
.hero .stats-row{background:transparent;box-shadow:none;border-radius:0;padding-bottom:0}
.m-fab-call::after{display:none}
.modern-ui .m-quick{background:var(--rf-navy);border-radius:var(--rf-radius-lg)}
.modern-ui .section .m-quick p{color:#DDE4EC}
.modern-ui .section .m-quick p strong{color:#fff;background:rgba(255,255,255,.14)}
.modern-ui .m-callout{background:var(--rf-bg-2);border:1px solid var(--rf-line-2)}
.modern-ui .m-callout i{color:var(--rf-red)}

/* ---------- older article template (page-title + aside) ---------- */
main.main:has(> .page-title){padding-top:70px!important}
.page-title{padding:40px 0 10px;text-align:start;background:transparent}
.page-title h1{font-size:clamp(1.8rem,1.15rem+2.2vw,2.6rem);font-weight:800;line-height:1.25;max-width:26ch;margin:8px 0 0}
.page-title .breadcrumbs ol{justify-content:flex-start;font-size:.92rem;color:var(--rf-muted)}
.page-title .breadcrumbs ol li a{color:var(--rf-muted)}
.page-title .breadcrumbs ol li.current{color:var(--rf-ink)}
.page-title .breadcrumbs ol li+li::before{color:var(--rf-line-2)}
.section.pb-0 .lead{font-size:1.08rem;color:var(--rf-ink-2);max-width:62ch;line-height:1.9}
.main a.btn[href^="tel:"]{background:var(--rf-red)!important;color:var(--rf-ink)!important;border-radius:10px!important;font-weight:800!important;padding:.7rem 1.3rem!important;border:0}
.main a.btn[href*="wa.me"]{background:var(--rf-wa)!important;color:#fff!important;border-radius:10px!important;font-weight:800!important;padding:.7rem 1.3rem!important;border:0}
.main a.btn[href^="tel:"]:hover{background:var(--rf-red-deep)!important}
.main a.btn[href*="wa.me"]:hover{background:var(--rf-wa-deep)!important}
.table-dark,.table-dark th{background-color:var(--rf-navy)!important;--bs-table-bg:var(--rf-navy);color:#fff;border-color:rgba(255,255,255,.12)}
.table .text-danger{color:var(--rf-red)!important;font-variant-numeric:tabular-nums}
.table{--bs-table-striped-bg:var(--rf-bg-2);border-color:var(--rf-line)}
.table-bordered>:not(caption)>*{border-color:var(--rf-line)}
.table-bordered>:not(caption)>*>*{border-color:var(--rf-line)}
.main .col-lg-4 .card,.main aside .card,.main .sticky-top>div{border:1px solid var(--rf-line-2)!important;border-radius:var(--rf-radius-lg)!important;box-shadow:none!important}
.main .col-lg-4 [style*="border-top"]{border-top-color:var(--rf-navy)!important}
.related-internal-links a{color:var(--rf-red);font-weight:700}
.section.mb-4 h2.h4{font-size:1.4rem;font-weight:800;margin:0 0 .9rem}
.section.mb-4 p,.section.mb-4 li{max-width:72ch}
