:root { --brand:#4F46E5; --brand-2:#22D3EE; }
html { scroll-behavior: smooth; }
body { font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji"; }
.glass { background: rgba(255,255,255,.6); backdrop-filter: blur(10px); }
details[open] summary svg { transform: rotate(180deg); }



/* --- Fix Responsive Hero --- */
.hero-container {
  display: flex;
  flex-direction: row;
}
@media (max-width: 768px) {
  .hero-container {
    flex-direction: column-reverse;
  }
}


/* --- Reception page enhancements --- */
.card {
  border: 1px solid #e5e7eb; border-radius: 1rem; background:#fff; padding:1.25rem;
  transition: transform .15s ease, box-shadow .15s ease;
}
.card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(15,23,42,.08); }
.badge { display:inline-flex; align-items:center; gap:.5rem; font-weight:600; border-radius:9999px; padding:.25rem .625rem; background:#fff; color:#4338ca; border:1px solid #e0e7ff; }
.sticky-safe { padding-bottom: env(safe-area-inset-bottom); }
details summary { list-style: none; }
details summary::-webkit-details-marker { display:none; }


/* Placeholder square for service cards */
.placeholder-square{background:#f1f5f9;border:2px dashed #cbd5e1}


/* === Scroll reveal animations === */
.js [data-reveal], .js .reveal { opacity:0; transform: translateY(18px); transition: opacity .7s ease, transform .7s ease; }
.in-view { opacity:1 !important; transform: translateY(0) !important; }

/* === Hero slider === */
#hero-slider { position: relative; }
#hero-slider .hero-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 0.9s ease; }
#hero-slider .hero-slide.active { position: relative; opacity: 1; }


/* --- Slider priority fix --- */
#hero-slider .hero-slide{ position:absolute; inset:0; opacity:0 !important; transition: opacity .9s ease; z-index:1; width:100%; height:100%; object-fit:cover; }
#hero-slider .hero-slide.active{ position:relative; opacity:1 !important; z-index:2; }
#hero-slider{ position:relative; aspect-ratio:16/9; }


/* === Slider: slide + zoom === */
#hero-slider{ position:relative; aspect-ratio:16/9; overflow:hidden; }
#hero-slider .hero-slide{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; opacity:0 !important; transform:translateX(100%); 
  transition: transform .9s ease, opacity .9s ease;
}
#hero-slider .hero-slide.active{ opacity:1 !important; transform:translateX(0); z-index:2; }
#hero-slider .hero-slide.prev{ opacity:0 !important; transform:translateX(-100%); z-index:1; }

@keyframes hero-zoom-in {
  0% { transform: scale(1.05); }
  100% { transform: scale(1); }
}
#hero-slider .hero-slide.zooming{
  animation: hero-zoom-in 5s ease both;
}


/* === Scroll reveal zoom for images === */
.reveal-img { opacity:0; transform: scale(1.05); transition: opacity 1s ease, transform 1s ease; }
.reveal-img.in-view { opacity:1; transform: scale(1); }


/* === Scroll zoom for section images === */
.js .reveal-img { opacity: 0; transform: scale(1.05); transition: opacity 1s ease, transform 1s ease; }
.reveal-img.in-view { opacity: 1; transform: scale(1); }


/* === Ultra-wide centered slab (excludes header, footer, hero) === */
.xl-slab{ /* no effect by default */ }

@media (min-width: 1600px){
  .xl-slab{ max-width: 1240px; margin-left:auto; margin-right:auto; }
  /* Reduce inner container width and add gentle side paddings */
  .xl-slab .mx-auto{ max-width: 1240px !important; }
  .xl-slab .px-4{ padding-left: clamp(16px, 2vw, 40px) !important; padding-right: clamp(16px, 2vw, 40px) !important; }
  .xl-slab .lg\:px-8{ padding-left: clamp(20px, 2.5vw, 48px) !important; padding-right: clamp(20px, 2.5vw, 48px) !important; }
}

@media (min-width: 1920px){
  .xl-slab{ max-width: 1320px; }
  .xl-slab .mx-auto{ max-width: 1320px !important; }
}

@media (min-width: 2560px){
  .xl-slab{ max-width: 1440px; }
  .xl-slab .mx-auto{ max-width: 1440px !important; }
}


/* === Ultra-wide hero centering & reduction === */
@media (min-width: 1600px){ .hero-slab{ max-width: 1120px !important; margin-left:auto; margin-right:auto; } }
@media (min-width: 1920px){ .hero-slab{ max-width: 1200px !important; } }
@media (min-width: 2560px){ .hero-slab{ max-width: 1280px !important; } }


/* === Service cards media sizing & spacing === */
.service-card .service-media{
  width: 100%;
  aspect-ratio: 1 / 1;
  margin-bottom: 0.5rem !important; /* tighten space image -> title */
}
.service-card .service-media > img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Fallback for older browsers without aspect-ratio */
@supports not (aspect-ratio: 1 / 1){
  .service-card .service-media{ position:relative; }
  .service-card .service-media::before{ content:""; display:block; padding-top:100%; }
  .service-card .service-media > img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
}

/* Optional: tighten title spacing a bit more */
.service-card h3, .service-card .card-title{
  margin-top: 0.25rem !important;
}


/* === Brand palette & components (site theme) === */
:root{
  --brand-600:#2563eb; /* indigo-600 */
  --brand-700:#1d4ed8; /* indigo-700 */
  --brand-50:#eef2ff;  /* indigo-50 */
}
.text-brand{ color: var(--brand-700); }
.bg-brand-50{ background: var(--brand-50); }
.btn-primary{
  display:inline-flex; align-items:center; justify-content:center;
  background:var(--brand-600); color:#fff; font-weight:700;
  padding:.75rem 1rem; border-radius: .75rem; text-decoration:none;
  transition: transform .15s ease, box-shadow .2s ease, background .2s ease;
  box-shadow: 0 8px 20px rgba(37,99,235,.15);
}
.btn-primary:hover{ background:var(--brand-700); transform: translateY(-1px); box-shadow:0 10px 24px rgba(29,78,216,.18); }
.btn-outline{
  display:inline-flex; align-items:center; justify-content:center;
  border:2px solid var(--brand-600); color:var(--brand-700); font-weight:700;
  padding:.65rem 1rem; border-radius:.75rem; text-decoration:none;
  transition: transform .15s ease, background .2s ease, color .2s ease, border-color .2s ease;
}
.btn-outline:hover{ background:var(--brand-50); border-color:var(--brand-700); color:var(--brand-700); transform: translateY(-1px); }
/* Accents */
.section-accent{ background: linear-gradient(180deg, rgba(238,242,255,.7), rgba(255,255,255,1)); }
.badge-brand{ background:var(--brand-50); color:var(--brand-700); font-weight:600; padding:.25rem .5rem; border-radius:.5rem; }



/* Minimal reveal animation */
.reveal { opacity: 0; transform: translateY(10px); transition: opacity .35s ease, transform .35s ease; }
.reveal.reveal-in { opacity: 1; transform: translateY(0); }


/* Micro interaction for CTA buttons */
.btn-anim { transition: transform .15s ease, box-shadow .15s ease; will-change: transform; }
.btn-anim:hover { transform: translateY(-1px); box-shadow: 0 10px 20px -12px rgba(15,23,42,.25); }
.btn-anim:active { transform: translateY(0); box-shadow: none; }


/* === Global premium typography override === */
html, body,
body p, body li, body a, body span, body label, body input, body textarea, body select, body button {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

body h1, body h2, body h3, body h4, body h5, body h6,
.hero-title {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing: -0.01em !important;
  color: #0f172a;
}

body h1, .text-5xl, .text-4xl, .text-3xl {
  font-weight: 500 !important;
  line-height: 1.1 !important;
}

body h2, body h3, .text-2xl {
  font-weight: 500 !important;
  line-height: 1.15 !important;
}

body p, body li, body label, body input, body textarea, body select, body button,
.text-lg, .text-base, .text-sm {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: -0.005em !important;
  line-height: 1.65 !important;
}

.hero-sub {
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #64748b !important;
}

@media (min-width: 640px) {
  .hero-sub {
    font-size: 18px !important;
  }
}

/* Neutralize overly heavy Tailwind font utilities site-wide */
.font-extrabold, .font-bold, .font-semibold {
  font-weight: 500 !important;
}

.font-medium {
  font-weight: 500 !important;
}

.font-normal {
  font-weight: 400 !important;
}



/* === Fireul conversion forms === */
.fireul-lead-wrap{position:relative}.fireul-lead-form{margin:0}.fireul-lead-form .hidden{display:none!important}.fireul-lead-form .ring-2{box-shadow:0 0 0 3px rgba(248,113,113,.28)}

/* === Fireul V3 visual direction: warm, airy, high-conversion === */

:root{
  --fireul-blue:#0071eb;
  --fireul-blue-deep:#0753b8;
  --fireul-blue-soft:#f1f7ff;
  --fireul-cream:#fff8ef;
  --fireul-lilac:#f7f3ff;
  --fireul-mint:#effaf5;
  --fireul-text:#10233f;
}

html, body,
body p, body li, body a, body span, body label, body input, body textarea, body select, body button,
body h1, body h2, body h3, body h4, body h5, body h6,
.hero-title, .hero-sub {
  font-family: 'Manrope', ui-rounded, 'Segoe UI', Arial, sans-serif !important;
}

body{ color:var(--fireul-text); }

.fireul-hero{ color:#fff; }
.fireul-hero-bg{
  background:
    radial-gradient(circle at 86% 20%, rgba(255,255,255,.16), transparent 28%),
    radial-gradient(circle at 16% 88%, rgba(0,41,110,.28), transparent 34%),
    linear-gradient(135deg, #0b56c5 0%, #0071eb 58%, #2a83ef 100%);
}
.fireul-hero .hero-slide{ border-radius:1rem; }
.fireul-hero .rounded-3xl{ border-color:rgba(255,255,255,.20) !important; background:rgba(255,255,255,.08) !important; }
.fireul-hero .absolute.-inset-5{ background:radial-gradient(circle,rgba(255,255,255,.24),transparent 65%) !important; }

.fireul-section{ position:relative; }
.fireul-section-blue{ background:linear-gradient(180deg,#f1f7ff 0%,#eaf3ff 100%); }
.fireul-section-cream{ background:linear-gradient(180deg,#fffaf3 0%,#fff4e8 100%); }
.fireul-section-lilac{ background:linear-gradient(180deg,#faf8ff 0%,#f5f0ff 100%); }
.fireul-section-mint{ background:linear-gradient(180deg,#f5fcf8 0%,#eaf8f1 100%); }
.fireul-section-blue-soft{ background:linear-gradient(135deg,#eff6ff 0%,#f6faff 100%); }

.fireul-section .border-slate-200,
.fireul-section .border-slate-100{ border-color:rgba(15,35,63,.10) !important; }

.service-card-v3{ transform-origin:center; }
.service-card-v3 img{ display:block; }
.service-card-v3:hover{ transform:translateY(-2px); }
.service-card-v3 .text-lg{ letter-spacing:-.02em; }

/* Keep the original client marquee appearance clean and compact. */
.fireul-premium-marquee{ background:rgba(255,255,255,.90); }

/* Softer buttons on the new blue hero. */
.fireul-hero .btn-anim:hover{ box-shadow:0 14px 28px rgba(5,45,110,.18); }

/* Give the form a more premium card treatment without adding a plugin. */
.fireul-lead-wrap{ border-color:rgba(15,35,63,.10) !important; box-shadow:0 18px 50px rgba(15,35,63,.07) !important; }

@media (max-width: 767px){
  .fireul-hero h1{ font-size:2.35rem !important; }
  .fireul-hero .hero-sub{ font-size:1rem !important; }
  .fireul-hero .grid{ gap:2rem; }
}

/* === V5 FIX: robust hero visual === */
.fireul-hero #hero-slider{
  position:relative;
  width:100%;
  aspect-ratio:16/10;
  min-height:320px;
  overflow:hidden;
  border-radius:1rem;
  background:#0b56c5;
}
.fireul-hero #hero-slider .hero-slide{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  opacity:0 !important;
  visibility:hidden !important;
  transform:scale(1.01);
  transition:opacity .8s ease, transform 5s ease;
  z-index:1;
}
.fireul-hero #hero-slider .hero-slide.active{
  opacity:1 !important;
  visibility:visible !important;
  transform:scale(1.03);
  z-index:2;
}
.fireul-hero #hero-slider .hero-slide.prev{
  opacity:0 !important;
  visibility:hidden !important;
  z-index:1;
}

/* === V5 FIX: original continuous client marquee === */
.fireul-premium-marquee{
  overflow:hidden;
  position:relative;
  width:100%;
}
.fireul-premium-track{
  display:flex;
  align-items:center;
  gap:2.1rem;
  width:max-content;
  animation:fireulPremiumScroll 26s linear infinite;
  will-change:transform;
}
.fireul-premium-logo{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:220px;
  padding:.15rem .4rem;
  white-space:nowrap;
  opacity:.9;
  color:#a8b0c2;
  transition:opacity .25s ease, transform .25s ease;
}
.fireul-premium-logo:hover{opacity:1;transform:translateY(-1px);}
.fireul-logo-bw{font-family:Arial,Helvetica,sans-serif;font-size:1.18rem;font-weight:700;letter-spacing:-.03em;}
.fireul-logo-marriott{font-family:"Arial Narrow",Arial,Helvetica,sans-serif;font-size:1.3rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;}
.fireul-logo-courtyard{font-family:Futura,"Trebuchet MS",Arial,sans-serif;font-size:1.22rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;}
.fireul-logo-ibis{font-family:Georgia,"Times New Roman",serif;font-size:1.48rem;font-weight:700;font-style:italic;letter-spacing:-.04em;text-transform:lowercase;}
.fireul-logo-novotel{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:1.16rem;font-weight:400;letter-spacing:.24em;text-transform:uppercase;}
.fireul-logo-kyriad{font-family:Georgia,"Times New Roman",serif;font-size:1.34rem;font-style:italic;font-weight:700;letter-spacing:.01em;}
@keyframes fireulPremiumScroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}
.fireul-premium-marquee:hover .fireul-premium-track{animation-play-state:paused;}
@media (prefers-reduced-motion:reduce){
  .fireul-premium-track{animation:none;}
}
@media (max-width:640px){
  .fireul-premium-track{gap:1.2rem;}
  .fireul-premium-logo{min-width:155px;}
  .fireul-logo-bw{font-size:.92rem;}
  .fireul-logo-marriott{font-size:1rem;letter-spacing:.12em;}
  .fireul-logo-courtyard{font-size:.94rem;letter-spacing:.12em;}
  .fireul-logo-ibis{font-size:1.12rem;}
  .fireul-logo-novotel{font-size:.9rem;letter-spacing:.12em;}
  .fireul-logo-kyriad{font-size:1rem;}
}


/* === V6 HERO: blue gradient, dark typography, compact title === */
.fireul-hero{
  position:relative;
  isolation:isolate;
  color:#10233f;
  background:
    radial-gradient(900px 420px at 86% 18%, rgba(70,160,255,.34), transparent 62%),
    radial-gradient(700px 360px at 5% 92%, rgba(0,113,235,.20), transparent 66%),
    linear-gradient(135deg, #eaf5ff 0%, #d8ecff 45%, #f8fbff 100%);
}
.fireul-hero-bg{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background:
    radial-gradient(circle at 78% 32%, rgba(255,255,255,.55), transparent 28%),
    linear-gradient(115deg, rgba(0,113,235,.12), rgba(255,255,255,0) 58%);
  pointer-events:none;
}
.fireul-hero > .mx-auto{position:relative; z-index:1;}
.fireul-hero h1{
  color:#10233f !important;
  font-size:clamp(2rem, 3vw, 2.75rem) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  font-weight:600 !important;
  max-width:700px;
}
.fireul-hero h1 span{ color:#0a63c9 !important; }
.fireul-hero .text-white,
.fireul-hero .text-white\/95,
.fireul-hero .text-white\/90,
.fireul-hero .text-white\/85,
.fireul-hero .text-white\/80{color:#44566f !important;}
.fireul-hero .hero-sub{
  color:#50647c !important;
  font-size:15px !important;
  line-height:1.65 !important;
  max-width:620px;
}
@media (min-width:640px){
  .fireul-hero .hero-sub{font-size:17px !important;}
}
.fireul-hero .inline-flex.rounded-full{
  color:#0753b8 !important;
  border-color:rgba(0,113,235,.20) !important;
  background:rgba(255,255,255,.72) !important;
  box-shadow:0 6px 22px rgba(0,70,160,.08);
}
.fireul-hero .inline-flex.rounded-full .h-2.w-2{background:#0071eb !important;}
.fireul-hero .rounded-3xl{
  border-color:rgba(0,113,235,.15) !important;
  background:rgba(255,255,255,.72) !important;
  box-shadow:0 28px 70px rgba(0,76,160,.15) !important;
}
.fireul-hero .absolute.-inset-5{
  background:radial-gradient(circle, rgba(0,113,235,.20), transparent 68%) !important;
}
.fireul-hero .mt-6.flex.flex-wrap{color:#50647c !important;}
.fireul-hero .mt-6.flex.flex-wrap span{color:#50647c !important;}
.fireul-hero .btn-anim{font-size:.94rem;}
@media (max-width:767px){
  .fireul-hero h1{font-size:2rem !important; line-height:1.08 !important;}
  .fireul-hero{background:linear-gradient(155deg,#eaf5ff 0%,#dceeff 48%,#f9fbff 100%);}
}


/* === V7 HERO: Fireul premium navy / blue gradient direction === */
:root{
  --fireul-navy:#041635;
  --fireul-navy-2:#08295a;
  --fireul-electric:#1683ff;
  --fireul-sky:#54b8ff;
  --fireul-white:#ffffff;
}

.fireul-hero{
  color:#fff !important;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(900px 540px at 100% 12%, rgba(38,143,255,.42), transparent 62%),
    radial-gradient(760px 520px at 0% 100%, rgba(12,82,176,.50), transparent 66%),
    linear-gradient(112deg, #041635 0%, #061f48 38%, #08295a 66%, #0a376f 100%) !important;
  border-bottom-color:rgba(255,255,255,.09) !important;
}
.fireul-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(600px 340px at 73% 45%, rgba(49,164,255,.20), transparent 68%),
    linear-gradient(90deg, rgba(4,22,53,.96) 0%, rgba(4,22,53,.72) 46%, rgba(4,22,53,.08) 100%);
}
.fireul-hero > .mx-auto{position:relative;z-index:1;}
.fireul-hero-bg{
  z-index:0 !important;
  background:
    radial-gradient(circle at 90% 50%, rgba(100,203,255,.24), transparent 26%),
    radial-gradient(circle at 10% 100%, rgba(0,113,235,.18), transparent 32%) !important;
  opacity:1 !important;
}

.fireul-hero h1{
  color:#fff !important;
  font-size:clamp(2.1rem,3.3vw,2.9rem) !important;
  line-height:1.06 !important;
  letter-spacing:-.045em !important;
  font-weight:600 !important;
  max-width:680px;
  text-shadow:0 2px 18px rgba(0,0,0,.10);
}
.fireul-hero h1 span{
  color:#8ad3ff !important;
}
.fireul-hero .hero-sub,
.fireul-hero .text-slate-700,
.fireul-hero .text-slate-600,
.fireul-hero .text-white\/95,
.fireul-hero .text-white\/90,
.fireul-hero .text-white\/85,
.fireul-hero .text-white\/80{
  color:rgba(255,255,255,.84) !important;
}
.fireul-hero .hero-sub{
  font-size:15.5px !important;
  line-height:1.72 !important;
  max-width:620px;
}
@media (min-width:640px){
  .fireul-hero .hero-sub{font-size:17px !important;}
}

/* Premium availability badge */
.fireul-hero .inline-flex.rounded-full{
  color:#eaf6ff !important;
  border-color:rgba(145,211,255,.30) !important;
  background:rgba(255,255,255,.08) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.07);
  backdrop-filter:blur(10px);
}
.fireul-hero .inline-flex.rounded-full .h-2.w-2{background:#65c7ff !important;box-shadow:0 0 0 5px rgba(101,199,255,.11);}

/* Hero CTA hierarchy */
.fireul-hero .btn-anim.bg-\[\#0071eb\],
.fireul-hero a.bg-\[\#0071eb\]{
  background:linear-gradient(135deg,#ffffff 0%,#eef7ff 100%) !important;
  color:#041635 !important;
  box-shadow:0 12px 30px rgba(0,0,0,.20), 0 0 0 1px rgba(255,255,255,.28) inset;
  border:1px solid rgba(255,255,255,.48) !important;
}
.fireul-hero .btn-anim.bg-\[\#0071eb\]:hover,
.fireul-hero a.bg-\[\#0071eb\]:hover{
  background:#fff !important;
  color:#041635 !important;
  transform:translateY(-2px);
  box-shadow:0 16px 36px rgba(0,0,0,.24), 0 0 0 1px rgba(255,255,255,.55) inset;
}
.fireul-hero .border-blue-300{
  border-color:rgba(151,216,255,.38) !important;
  background:rgba(255,255,255,.055) !important;
  color:#fff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(8px);
}
.fireul-hero .border-blue-300:hover{
  background:rgba(255,255,255,.13) !important;
  border-color:rgba(186,229,255,.62) !important;
  color:#fff !important;
}
.fireul-hero .mt-6.flex.flex-wrap,
.fireul-hero .mt-6.flex.flex-wrap span{color:rgba(255,255,255,.68) !important;}

/* Remove the old white image card: make the illustration feel embedded in the hero. */
.fireul-hero-media{
  position:relative;
  isolation:isolate;
  padding:0 !important;
}
.fireul-hero-media-glow{
  position:absolute;
  inset:-12% -10% -12% -10%;
  z-index:-1;
  background:
    radial-gradient(circle at 58% 44%, rgba(72,181,255,.34), transparent 48%),
    radial-gradient(circle at 80% 68%, rgba(28,117,226,.28), transparent 44%);
  filter:blur(28px);
  opacity:.9;
}
.fireul-hero #hero-slider{
  position:relative;
  width:100%;
  aspect-ratio:16/11;
  min-height:340px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.13) !important;
  border-radius:1.75rem !important;
  background:#08295a;
  box-shadow:0 32px 70px rgba(0,0,0,.28), 0 0 0 1px rgba(255,255,255,.035) inset;
}
.fireul-hero #hero-slider::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(4,22,53,.02), rgba(4,22,53,.14)),
    linear-gradient(90deg, rgba(4,22,53,.24), transparent 48%, rgba(4,22,53,.06));
}
.fireul-hero #hero-slider .hero-slide{
  filter:saturate(.96) contrast(1.02);
}

@media (max-width:767px){
  .fireul-hero h1{font-size:2.05rem !important;line-height:1.08 !important;}
  .fireul-hero .hero-sub{font-size:1rem !important;}
  .fireul-hero #hero-slider{aspect-ratio:4/3;min-height:260px;border-radius:1.35rem !important;}
  .fireul-hero::before{
    background:linear-gradient(180deg, rgba(4,22,53,.86) 0%, rgba(4,22,53,.52) 58%, rgba(4,22,53,.16) 100%);
  }
}


/* === V8 HERO: single static illustration, borderless and visually fused with the navy background === */
.fireul-hero-media{
  position:relative;
  min-height:340px;
}
.fireul-hero-media-glow{
  position:absolute;
  inset:2% -6% 4% 0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 58% 48%, rgba(42,151,255,.22), transparent 44%),
    radial-gradient(circle at 78% 70%, rgba(25,106,207,.20), transparent 42%);
  filter:blur(28px);
  opacity:.8;
}
.fireul-hero-art{
  position:relative;
  z-index:1;
  width:100%;
  overflow:visible;
}
.fireul-hero-art .hero-static{
  display:block;
  width:100%;
  height:auto;
  max-height:560px;
  object-fit:contain;
  object-position:center right;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.18) 6%, #000 15%, #000 88%, rgba(0,0,0,.35) 97%, transparent 100%);
  mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.18) 6%, #000 15%, #000 88%, rgba(0,0,0,.35) 97%, transparent 100%);
}
.fireul-hero #hero-slider{
  all:unset;
}
@media (max-width: 767px){
  .fireul-hero-media{min-height:260px;}
  .fireul-hero-art .hero-static{
    max-height:380px;
    object-position:center center;
    -webkit-mask-image:linear-gradient(180deg, transparent 0%, #000 10%, #000 88%, transparent 100%);
    mask-image:linear-gradient(180deg, transparent 0%, #000 10%, #000 88%, transparent 100%);
  }
}


/* === V8 refinement: Fireul blue gradient CTAs === */
.fireul-header-cta{
  background:linear-gradient(135deg,#041635 0%,#0b3f86 58%,#0071eb 100%) !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(4,22,53,.22), inset 0 1px 0 rgba(255,255,255,.12);
  border:1px solid rgba(87,173,255,.22);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.fireul-header-cta:hover{
  filter:brightness(1.06);
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(4,22,53,.28), inset 0 1px 0 rgba(255,255,255,.16);
}
.fireul-lead-form .fireul-next,
.fireul-lead-form .fireul-submit{
  background:linear-gradient(135deg,#041635 0%,#0b3f86 58%,#0071eb 100%) !important;
  color:#fff !important;
  border:1px solid rgba(14,99,205,.28) !important;
  box-shadow:0 10px 22px rgba(4,22,53,.18), inset 0 1px 0 rgba(255,255,255,.12);
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.fireul-lead-form .fireul-next:hover,
.fireul-lead-form .fireul-submit:hover{
  filter:brightness(1.06);
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(4,22,53,.23), inset 0 1px 0 rgba(255,255,255,.16);
}

/* === Service-card image quality & framing === */
.service-card-v3 img,
.service-card .service-media img{
  image-rendering:auto;
  backface-visibility:hidden;
  transform:translateZ(0);
}
.service-card-v3 .service-image-night{
  object-position:center 22%;
}
@media (max-width: 640px){
  .service-card-v3 .service-image-night{ object-position:center 20%; }
}

/* === Solutions hub === */
.fireul-subhero{isolation:isolate}
.fireul-subhero-bg{background:radial-gradient(circle at 90% 30%, rgba(0,113,235,.14), transparent 35%), radial-gradient(circle at 15% 0%, rgba(64,123,255,.10), transparent 34%), linear-gradient(180deg,#f7fbff 0%,#ffffff 100%)}
.service-detail-card img{background:#eef4fb}
.fireul-dark-cta{background:radial-gradient(circle at 12% 30%, rgba(0,113,235,.32), transparent 28%), radial-gradient(circle at 90% 20%, rgba(62,135,255,.26), transparent 26%), #041635}
@media (max-width: 640px){
  .service-detail-card img{height:10.5rem}
}


/* Solutions page hero image */
.fireul-solutions-hero-media{
  position:relative;
  isolation:isolate;
}
.fireul-solutions-hero-media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(120deg, rgba(4,22,53,.06), rgba(0,113,235,.04) 55%, rgba(255,255,255,0) 100%);
}
.fireul-solutions-hero-media img{
  transform:scale(1.01);
}
@media (max-width:767px){
  .fireul-solutions-hero-media img{height:260px !important;}
}

/* === V18 Solutions refinements === */
/* Let the Solutions hero image merge into the hero background: no solid frame. */
.fireul-solutions-hero-media{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:hidden;
}
.fireul-solutions-hero-media::after{
  background:
    linear-gradient(90deg,#f7fbff 0%,rgba(247,251,255,.65) 5%,rgba(247,251,255,0) 22%,rgba(247,251,255,0) 80%,rgba(247,251,255,.18) 94%,#f7fbff 100%),
    linear-gradient(180deg,rgba(247,251,255,.05) 0%,transparent 25%,transparent 78%,rgba(247,251,255,.12) 100%) !important;
}
.fireul-solutions-hero-media img{
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

/* Hero CTA buttons: Fireul blue gradient, premium hover. */
.fireul-subhero .fireul-cta-gradient{
  background:linear-gradient(135deg,#041635 0%,#0b3f86 58%,#0071eb 100%) !important;
  color:#fff !important;
  border:1px solid rgba(0,113,235,.26) !important;
  box-shadow:0 12px 26px rgba(4,22,53,.18), inset 0 1px 0 rgba(255,255,255,.12);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.fireul-subhero .fireul-cta-gradient:hover{
  filter:brightness(1.07);
  transform:translateY(-2px);
  box-shadow:0 16px 32px rgba(4,22,53,.24), inset 0 1px 0 rgba(255,255,255,.16);
}
.fireul-subhero a[href*="#solutions"]{
  background:linear-gradient(135deg,#041635 0%,#0b3f86 58%,#0071eb 100%) !important;
  color:#fff !important;
  border:1px solid rgba(0,113,235,.26) !important;
  box-shadow:0 10px 22px rgba(4,22,53,.14), inset 0 1px 0 rgba(255,255,255,.10);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.fireul-subhero a[href*="#solutions"]:hover{
  filter:brightness(1.07);
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(4,22,53,.20), inset 0 1px 0 rgba(255,255,255,.14);
}

/* Evolution cards 01 / 02 / 03: blue hover in the Fireul theme. */
.fireul-evolution-card{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}
.fireul-evolution-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(135deg,rgba(4,22,53,.98),rgba(0,113,235,.95));
  opacity:0;
  transition:opacity .22s ease;
}
.fireul-evolution-card:hover,
.fireul-evolution-card:focus-within{
  color:#fff !important;
  border-color:#0071eb !important;
  background:#041635 !important;
  transform:translateY(-5px);
  box-shadow:0 18px 40px rgba(4,22,53,.20) !important;
}
.fireul-evolution-card:hover::after,
.fireul-evolution-card:focus-within::after{opacity:1;}
.fireul-evolution-card > *{position:relative;z-index:1;}
.fireul-evolution-card:hover h3,
.fireul-evolution-card:focus-within h3,
.fireul-evolution-card:hover p,
.fireul-evolution-card:focus-within p,
.fireul-evolution-card:hover .text-blue-700,
.fireul-evolution-card:focus-within .text-blue-700{
  color:#fff !important;
}
.fireul-evolution-card:hover .text-blue-700,
.fireul-evolution-card:focus-within .text-blue-700{
  color:#8fd1ff !important;
}


/* === V19: Solutions hero typography + rounded visual === */
.fireul-subhero .fireul-solutions-title,
.fireul-subhero h1.fireul-solutions-title{
  font-family:'Manrope',ui-rounded,'Segoe UI',Arial,sans-serif !important;
  letter-spacing:-.035em !important;
}
.fireul-subhero .fireul-solutions-lead{
  font-family:'Manrope',ui-rounded,'Segoe UI',Arial,sans-serif !important;
  font-size:1rem !important;
  line-height:1.72 !important;
}
.fireul-solutions-hero-media{
  width:min(100%, 460px);
  aspect-ratio:1 / 1;
  margin-inline:auto;
  border:0 !important;
  border-radius:50% !important;
  overflow:hidden;
  background:transparent !important;
  box-shadow:0 22px 60px rgba(4,22,53,.16), 0 0 0 10px rgba(255,255,255,.08);
}
.fireul-solutions-hero-media::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  pointer-events:none;
  background:
    radial-gradient(circle at 70% 30%, rgba(0,113,235,.10), transparent 38%),
    linear-gradient(135deg, rgba(4,22,53,.05), rgba(255,255,255,0) 55%);
}
.fireul-solutions-hero-media img.fireul-solutions-hero-image{
  width:100%;
  height:100% !important;
  display:block;
  object-fit:cover;
  object-position:center 46%;
  border:0 !important;
  border-radius:50% !important;
  box-shadow:none !important;
  transform:none !important;
}
@media (max-width:767px){
  .fireul-solutions-hero-media{width:min(82vw,340px);box-shadow:0 18px 42px rgba(4,22,53,.14),0 0 0 7px rgba(255,255,255,.08);}
  .fireul-solutions-hero-media img.fireul-solutions-hero-image{object-position:center 44%;}
  .fireul-subhero .fireul-solutions-title{font-size:2.25rem !important;line-height:1.08 !important;}
}

/* === V20: premium Solutions hero === */
.fireul-solutions-hero-premium{
  background:
    radial-gradient(circle at 100% 0%, rgba(0,113,235,.16), transparent 34%),
    radial-gradient(circle at 0% 85%, rgba(82,165,255,.10), transparent 28%),
    linear-gradient(135deg,#f8fbff 0%,#ffffff 52%,#eef6ff 100%);
  isolation:isolate;
}
.fireul-solutions-hero-premium::after{
  content:"";
  position:absolute;
  left:6%;
  right:6%;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,113,235,.34),transparent);
}
.fireul-solutions-hero-grid{
  position:absolute;
  inset:0;
  opacity:.28;
  background-image:linear-gradient(rgba(4,22,53,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(4,22,53,.045) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.24),transparent 82%);
  pointer-events:none;
}
.fireul-solutions-hero-glow{position:absolute;border-radius:999px;filter:blur(16px);pointer-events:none;}
.fireul-solutions-hero-glow-a{width:340px;height:340px;right:-100px;top:-120px;background:rgba(0,113,235,.16)}
.fireul-solutions-hero-glow-b{width:240px;height:240px;right:28%;bottom:-120px;background:rgba(74,151,255,.13)}
.fireul-hero-proof{
  display:flex;flex-direction:column;gap:.12rem;
  padding:.68rem .65rem;
  border-radius:1rem;
  background:rgba(255,255,255,.7);
  border:1px solid rgba(4,22,53,.08);
  box-shadow:0 8px 24px rgba(4,22,53,.05);
}
.fireul-hero-proof span{font-size:.8rem;font-weight:800;color:#0071eb}
.fireul-hero-proof strong{font-size:.84rem;color:#041635}
.fireul-hero-proof small{font-size:.69rem;line-height:1.3;color:#64748b}
.fireul-solutions-secondary{
  border:1px solid rgba(0,113,235,.24);
  background:rgba(255,255,255,.64);
  transition:transform .2s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.fireul-solutions-secondary:hover{transform:translateY(-2px);background:#fff;border-color:rgba(0,113,235,.42);box-shadow:0 12px 26px rgba(4,22,53,.08)}

.fireul-solutions-hero-collage{position:relative;min-height:520px;max-width:650px;margin-inline:auto;}
.fireul-collage-card{position:absolute;margin:0;overflow:hidden;background:#fff;border-radius:28px;box-shadow:0 26px 70px rgba(4,22,53,.16);border:1px solid rgba(255,255,255,.78);}
.fireul-collage-card img{width:100%;height:100%;display:block;object-fit:cover;}
.fireul-collage-card figcaption{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;border-radius:15px;background:rgba(4,22,53,.74);backdrop-filter:blur(10px);color:#fff;display:flex;flex-direction:column;gap:2px;}
.fireul-collage-card figcaption span{font-size:.78rem;font-weight:800;letter-spacing:.01em}
.fireul-collage-card figcaption small{font-size:.68rem;color:rgba(255,255,255,.78)}
.fireul-collage-main{left:2%;top:72px;width:58%;height:365px;border-radius:34px;transform:rotate(-2.5deg);z-index:3;}
.fireul-collage-night{right:5%;top:8px;width:34%;height:230px;border-radius:28px;transform:rotate(3.2deg);z-index:4;}
.fireul-collage-housekeeping{right:0;bottom:10px;width:35%;height:235px;border-radius:28px;transform:rotate(-2deg);z-index:2;}
.fireul-collage-day{left:15%;bottom:-8px;width:38%;height:210px;border-radius:26px;transform:rotate(2.4deg);z-index:4;}
.fireul-collage-orbit{position:absolute;border-radius:999px;border:1px solid rgba(0,113,235,.20);pointer-events:none}
.fireul-orbit-one{width:520px;height:520px;right:-20px;top:-10px}
.fireul-orbit-two{width:355px;height:355px;left:14px;bottom:8px;border-color:rgba(4,22,53,.11)}
.fireul-collage-dot{position:absolute;width:10px;height:10px;border-radius:50%;background:#0071eb;box-shadow:0 0 0 8px rgba(0,113,235,.08);z-index:5}
.fireul-dot-one{right:8%;top:48%}.fireul-dot-two{left:5%;top:28%;background:#4b9fff}

@media (max-width: 1024px){
  .fireul-solutions-hero-collage{min-height:470px;}
  .fireul-collage-main{width:60%;height:330px;}
  .fireul-collage-night{height:205px}.fireul-collage-housekeeping{height:210px}.fireul-collage-day{height:190px}
}
@media (max-width: 767px){
  .fireul-solutions-hero-premium{background:linear-gradient(160deg,#f8fbff 0%,#ffffff 55%,#eef6ff 100%)}
  .fireul-solutions-hero-grid{background-size:34px 34px;opacity:.16;}
  .fireul-solutions-hero-glow-a{width:220px;height:220px;right:-80px;top:-100px}
  .fireul-solutions-hero-collage{min-height:390px;margin-top:8px}
  .fireul-collage-main{left:3%;top:54px;width:61%;height:265px;border-radius:25px}
  .fireul-collage-night{right:3%;top:0;width:37%;height:165px;border-radius:21px}
  .fireul-collage-housekeeping{right:0;bottom:4px;width:38%;height:175px;border-radius:21px}
  .fireul-collage-day{left:10%;bottom:-5px;width:42%;height:155px;border-radius:20px}
  .fireul-collage-orbit.fireul-orbit-one{width:360px;height:360px;right:-40px;top:5px}
  .fireul-collage-orbit.fireul-orbit-two{width:250px;height:250px;left:0;bottom:10px}
  .fireul-collage-card figcaption{left:8px;right:8px;bottom:8px;padding:7px 8px;border-radius:11px}
  .fireul-collage-card figcaption span{font-size:.64rem}.fireul-collage-card figcaption small{font-size:.56rem}
}

/* =========================================================
   V21 — Solutions page: premium editorial landing page
   ========================================================= */
.v21-solutions-page{font-family:Manrope,Inter,ui-sans-serif,system-ui,sans-serif;color:#041635;background:#fff;overflow:hidden}
.v21-container{width:min(1280px,calc(100% - 48px));margin:0 auto}
.v21-solutions-hero{position:relative;min-height:790px;padding:78px 0 118px;background:linear-gradient(135deg,#f9fcff 0%,#eef7ff 48%,#fff 100%);overflow:hidden}
.v21-hero-bg-shape{position:absolute;pointer-events:none;border-radius:999px;filter:blur(1px);opacity:.9}
.v21-shape-a{width:760px;height:760px;right:-250px;top:-260px;background:radial-gradient(circle at 35% 55%,rgba(0,113,235,.26),rgba(81,166,255,.10) 42%,transparent 68%)}
.v21-shape-b{width:900px;height:240px;right:-130px;bottom:25px;background:linear-gradient(105deg,transparent 5%,rgba(0,113,235,.08) 30%,rgba(0,113,235,.18) 62%,transparent 85%);transform:rotate(-18deg)}
.v21-hero-dots{position:absolute;left:46%;top:115px;width:160px;height:120px;opacity:.35;background-image:radial-gradient(#0071eb 1.2px,transparent 1.2px);background-size:14px 14px;mask-image:linear-gradient(90deg,transparent,#000 30%,#000 75%,transparent)}
.v21-hero-grid{display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);align-items:center;gap:0;position:relative;z-index:2}
.v21-hero-copy{position:relative;z-index:4;padding-top:20px}
.v21-eyebrow{display:inline-flex;align-items:center;gap:9px;padding:9px 14px;border:1px solid #c8defb;border-radius:999px;background:rgba(255,255,255,.72);font-size:12px;font-weight:800;letter-spacing:.08em;color:#29405e;box-shadow:0 8px 25px rgba(4,22,53,.04)}
.v21-eyebrow span{width:9px;height:9px;border-radius:50%;background:#0071eb;box-shadow:0 0 0 5px rgba(0,113,235,.08)}
.v21-hero-copy h1{margin:27px 0 0;font-size:clamp(44px,4.2vw,67px);line-height:.99;letter-spacing:-.055em;font-weight:800;color:#041635}
.v21-hero-copy h1 strong{color:#0874ea;font-weight:800}
.v21-hero-copy>p{max-width:570px;margin:25px 0 0;font-size:18px;line-height:1.52;color:#40536f}
.v21-hero-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:650px;margin-top:31px}
.v21-hero-benefits div{display:flex;flex-direction:column;gap:7px}
.v21-hero-benefits b{font-size:27px;line-height:1;color:#0071eb;font-weight:500}
.v21-hero-benefits strong{font-size:12px;line-height:1.25;color:#122846}
.v21-hero-actions{display:flex;gap:16px;align-items:center;margin-top:31px}
.v21-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:15px 24px;text-decoration:none;font-weight:750;font-size:14px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.v21-btn span{font-size:18px;line-height:0}
.v21-btn-primary{color:#fff;background:linear-gradient(105deg,#041635 0%,#0757b8 62%,#0071eb 100%);box-shadow:0 12px 26px rgba(0,75,170,.22)}
.v21-btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(0,75,170,.28)}
.v21-btn-secondary{color:#08459e;border:1px solid #bdd8fb;background:rgba(255,255,255,.72)}
.v21-btn-secondary:hover{transform:translateY(-2px);background:#eef6ff;border-color:#7db5f7}
.v21-trust-line{display:flex;align-items:center;gap:12px;margin-top:25px;font-size:13px;color:#5d6d83}
.v21-trust-line strong{color:#0071eb}
.v21-trust-dots{display:flex}
.v21-trust-dots i{display:block;width:27px;height:27px;margin-left:-6px;border:2px solid #fff;border-radius:50%;background:linear-gradient(135deg,#b9d9ff,#274d82)}
.v21-trust-dots i:first-child{margin-left:0}

.v21-collage{position:relative;height:570px;min-width:0;margin-left:-22px}
.v21-photo-card{position:absolute;overflow:hidden;border-radius:46px;background:#dceeff;box-shadow:0 22px 55px rgba(4,22,53,.12);isolation:isolate}
.v21-photo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(4,22,53,.58));pointer-events:none}
.v21-photo-card img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02)}
.v21-collage-main{left:3%;bottom:35px;width:54%;height:315px;border-radius:55px;z-index:2}
.v21-collage-main img{object-position:center center}
.v21-collage-night{left:13%;top:0;width:38%;height:235px;z-index:4;transform:rotate(-1.5deg)}
.v21-collage-night img{object-position:center 20%}
.v21-collage-housekeeping{right:2%;top:3px;width:38%;height:235px;z-index:4;transform:rotate(1.7deg)}
.v21-collage-housekeeping img{object-position:center 32%}
.v21-collage-day{right:1%;bottom:0;width:30%;height:300px;z-index:3;border-radius:45px}
.v21-collage-day img{object-position:center center}
.v21-photo-label{position:absolute;left:22px;bottom:20px;z-index:2;color:#fff;font-weight:800;font-size:13px;line-height:1.12;letter-spacing:.02em;text-shadow:0 2px 10px rgba(0,0,0,.2)}
.v21-photo-label b{font-size:24px;vertical-align:middle;margin-right:6px;font-weight:500}
.v21-collage-main .v21-photo-label{background:#fff;color:#041635;border-radius:22px;padding:13px 18px;bottom:18px;left:24px;text-shadow:none;box-shadow:0 10px 22px rgba(4,22,53,.12)}
.v21-collage-main .v21-photo-label b{color:#0071eb}
.v21-brand-badge{position:absolute;z-index:6;right:22%;top:47%;width:112px;height:112px;border-radius:50%;background:rgba(255,255,255,.96);box-shadow:0 15px 40px rgba(4,22,53,.16);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#0a5dca}
.v21-brand-badge:before{content:"";position:absolute;inset:8px;border:1px solid #d3e6fb;border-radius:50%}
.v21-brand-badge span,.v21-brand-badge strong{font-size:7px;letter-spacing:.15em;z-index:1}
.v21-brand-badge img{width:42px;height:auto;margin:5px 0;object-fit:contain;z-index:1}
.v21-brand-badge strong{font-size:7px}
.v21-orbit{position:absolute;border:24px solid rgba(0,113,235,.13);border-radius:50%;z-index:1;pointer-events:none}
.v21-orbit-1{width:560px;height:560px;right:-80px;bottom:-160px}
.v21-orbit-2{width:430px;height:430px;right:0;bottom:-80px;border-width:16px;border-color:rgba(0,113,235,.09)}

.v21-hero-proofbar{position:absolute;z-index:8;left:50%;bottom:28px;transform:translateX(-50%);width:min(1200px,calc(100% - 48px));display:grid;grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.94);border:1px solid rgba(210,225,242,.9);border-radius:28px;padding:25px 34px;box-shadow:0 18px 50px rgba(4,22,53,.09);backdrop-filter:blur(14px)}
.v21-hero-proofbar>div{display:flex;align-items:flex-start;gap:15px;padding:0 28px;border-left:1px solid #e2ebf5}
.v21-hero-proofbar>div:first-child{border-left:0}
.v21-hero-proofbar b{font-size:30px;line-height:1;color:#0071eb;font-weight:500}
.v21-hero-proofbar span{display:flex;flex-direction:column;gap:4px}
.v21-hero-proofbar strong{font-size:14px;color:#041635}
.v21-hero-proofbar small{font-size:11px;line-height:1.35;color:#66778f}

.v21-solutions-section{padding:92px 0 88px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.v21-section-heading{text-align:center;max-width:820px;margin:0 auto}
.v21-kicker{font-size:12px;font-weight:800;letter-spacing:.16em;color:#0071eb}
.v21-section-heading h2{margin:12px 0 0;font-size:clamp(34px,4vw,52px);line-height:1.03;letter-spacing:-.045em;color:#041635}
.v21-section-heading p{margin:20px auto 0;max-width:760px;font-size:17px;line-height:1.55;color:#566980}
.v21-solution-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}
.v21-solution-card{overflow:hidden;border:1px solid #e0e9f3;border-radius:24px;background:#fff;box-shadow:0 10px 30px rgba(4,22,53,.05);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.v21-solution-card:hover{transform:translateY(-6px);box-shadow:0 22px 45px rgba(4,22,53,.12);border-color:#c8ddf5}
.v21-card-image{height:205px;overflow:hidden;background:#edf4fb}
.v21-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.v21-solution-card:hover .v21-card-image img{transform:scale(1.045)}
.v21-card-body{padding:22px 22px 20px}
.v21-card-title{display:flex;align-items:center;gap:11px}
.v21-card-title>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#edf6ff;color:#0071eb;font-size:21px;flex:none}
.v21-card-title h3{margin:0;font-size:16px;line-height:1.2;color:#041635}
.v21-card-body p{min-height:88px;margin:16px 0 18px;font-size:13px;line-height:1.55;color:#5d6e84}
.v21-card-body a{display:inline-flex;align-items:center;gap:6px;color:#075fc8;text-decoration:none;font-size:13px;font-weight:800}
.v21-card-body a span{font-size:17px}
.v21-card-body a:hover{color:#0071eb}

.v21-project-cta{margin:0 0 72px}
.v21-project-inner{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:42px 52px;border-radius:28px;background:linear-gradient(110deg,#041635 0%,#06469a 58%,#0071eb 100%);box-shadow:0 20px 45px rgba(4,22,53,.16)}
.v21-project-inner:after{content:"";position:absolute;right:-60px;top:-150px;width:480px;height:480px;border:45px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 45px rgba(255,255,255,.04)}
.v21-project-inner>*{position:relative;z-index:1}
.v21-project-inner .v21-kicker{color:#cce5ff}
.v21-project-inner h2{margin:7px 0 0;color:#fff;font-size:35px;letter-spacing:-.035em}
.v21-project-inner p{margin:8px 0 0;color:rgba(255,255,255,.78);font-size:15px}
.v21-btn-white{color:#041635;background:#fff;box-shadow:0 12px 25px rgba(0,0,0,.12);white-space:nowrap}
.v21-btn-white:hover{transform:translateY(-2px);background:#f3f8ff}
.v21-client-strip{padding:0 0 65px;background:#fff}
.v21-client-title{text-align:center;font-size:10px;letter-spacing:.18em;font-weight:800;color:#8a98aa;margin-bottom:22px}
.v21-client-logos{display:flex;align-items:center;justify-content:center;gap:38px;flex-wrap:wrap;opacity:.68}
.v21-client-logos img{max-width:115px;max-height:34px;width:auto;height:auto;object-fit:contain;filter:grayscale(1)}
.v21-client-logos span{font-size:13px;font-weight:700;color:#718096}

@media(max-width:1100px){
 .v21-solutions-hero{padding-bottom:135px}
 .v21-hero-copy h1{font-size:52px}
 .v21-collage{height:500px}
 .v21-collage-main{width:57%;height:290px}
 .v21-collage-night,.v21-collage-housekeeping{height:205px}
 .v21-collage-day{height:275px}
 .v21-hero-proofbar{padding:20px 16px}
 .v21-hero-proofbar>div{padding:0 15px}
 .v21-solution-cards{gap:14px}
}
@media(max-width:820px){
 .v21-container{width:min(100% - 32px,680px)}
 .v21-solutions-hero{min-height:auto;padding:55px 0 115px}
 .v21-hero-grid{grid-template-columns:1fr}
 .v21-hero-copy{text-align:left}
 .v21-hero-copy h1{font-size:48px}
 .v21-hero-copy>p{font-size:16px}
 .v21-hero-benefits{max-width:none}
 .v21-collage{height:520px;margin:20px -5px 0}
 .v21-hero-proofbar{grid-template-columns:repeat(2,1fr);gap:20px;bottom:20px;border-radius:22px;padding:18px}
 .v21-hero-proofbar>div:nth-child(3){border-left:0}
 .v21-hero-proofbar>div{padding:0 10px}
 .v21-solution-cards{grid-template-columns:repeat(2,1fr)}
 .v21-project-inner{padding:34px 30px}
}
@media(max-width:560px){
 .v21-hero-copy h1{font-size:39px;line-height:1.01}
 .v21-hero-actions{flex-direction:column;align-items:stretch}
 .v21-btn{width:100%}
 .v21-hero-benefits{grid-template-columns:repeat(2,1fr);gap:18px 12px}
 .v21-trust-line{font-size:11px}
 .v21-collage{height:390px;margin-top:15px}
 .v21-photo-card{border-radius:28px}
 .v21-collage-main{left:0;bottom:0;width:66%;height:215px;border-radius:32px}
 .v21-collage-night{left:2%;top:0;width:47%;height:150px}
 .v21-collage-housekeeping{right:0;top:0;width:45%;height:150px}
 .v21-collage-day{right:0;bottom:0;width:30%;height:195px}
 .v21-brand-badge{right:27%;top:39%;width:76px;height:76px}
 .v21-brand-badge img{width:29px;margin:2px 0}
 .v21-brand-badge span,.v21-brand-badge strong{font-size:5px}
 .v21-orbit-1{width:340px;height:340px;right:-100px;bottom:-80px;border-width:14px}
 .v21-orbit-2{width:260px;height:260px;right:-35px;bottom:-35px;border-width:10px}
 .v21-photo-label{font-size:8px;left:10px;bottom:10px}
 .v21-photo-label b{font-size:15px}
 .v21-collage-main .v21-photo-label{padding:8px 10px;left:10px;bottom:10px;border-radius:14px}
 .v21-hero-proofbar{grid-template-columns:1fr 1fr;gap:14px;padding:16px 12px}
 .v21-hero-proofbar>div{gap:8px}
 .v21-hero-proofbar b{font-size:22px}
 .v21-hero-proofbar strong{font-size:11px}
 .v21-hero-proofbar small{font-size:9px}
 .v21-solutions-section{padding:65px 0}
 .v21-section-heading h2{font-size:34px}
 .v21-section-heading p{font-size:15px}
 .v21-solution-cards{grid-template-columns:1fr;gap:16px;margin-top:32px}
 .v21-card-image{height:210px}
 .v21-card-body p{min-height:0}
 .v21-project-cta{margin-bottom:50px}
 .v21-project-inner{flex-direction:column;align-items:flex-start;padding:30px 24px}
 .v21-project-inner h2{font-size:29px}
 .v21-btn-white{width:auto}
 .v21-client-logos{gap:20px}
}

/* V22 typography refinements — retained on V21 visuals */
.v21-solutions-page,
.v21-solutions-page p,
.v21-solutions-page a,
.v21-solutions-page span,
.v21-solutions-page strong,
.v21-solutions-page small,
.v21-solutions-page h1,
.v21-solutions-page h2,
.v21-solutions-page h3{
  font-family:'Manrope',ui-rounded,'Segoe UI',Arial,sans-serif !important;
}
.v21-solutions-page .v21-hero-copy h1{
  font-weight:500 !important;
  letter-spacing:-0.045em !important;
}
.v21-solutions-page .v21-hero-copy h1 strong{font-weight:650 !important;}
.v21-solutions-page .v21-hero-copy>p{
  font-size:16px !important;
  line-height:1.55 !important;
  font-weight:400 !important;
}
.v21-solutions-page .v21-hero-benefits strong,
.v21-solutions-page .v21-trust-line,
.v21-solutions-page .v21-section-heading p,
.v21-solutions-page .v21-card-body p{
  font-weight:400 !important;
}
.v21-solutions-page .v21-kicker{font-weight:650 !important;}
.v21-solutions-page .v21-section-heading h2{font-weight:600 !important;}
.v21-solutions-page .v21-card-title h3{font-weight:600 !important;}
.v21-solutions-page .v21-card-body a{font-weight:600 !important;}
/* =========================================================
   FIREUL V24 HOMEPAGE — premium homepage direction
   ========================================================= */
.fireul-v24-home{font-family:'Manrope',ui-sans-serif,system-ui,sans-serif;color:#041635;background:#fff;overflow:hidden}
.v24-container{width:min(1200px,calc(100% - 48px));margin:0 auto}
.v24-home-hero{position:relative;min-height:650px;padding:74px 0 105px;background:linear-gradient(135deg,#f9fcff 0%,#edf6ff 55%,#dfeeff 100%);overflow:hidden}
.v24-hero-pattern{position:absolute;inset:0;background:radial-gradient(circle at 35% 35%,rgba(0,113,235,.11),transparent 27%),radial-gradient(circle at 86% 20%,rgba(0,113,235,.14),transparent 25%);pointer-events:none}
.v24-hero-pattern:after{content:"";position:absolute;right:-170px;bottom:-260px;width:650px;height:650px;border:28px solid rgba(0,113,235,.10);border-radius:50%;box-shadow:0 0 0 35px rgba(0,113,235,.05),0 0 0 70px rgba(0,113,235,.025)}
.v24-hero-grid{display:grid;grid-template-columns:45% 55%;align-items:center;position:relative;z-index:2}
.v24-hero-copy{padding-right:25px}
.v24-eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid #c8def7;background:rgba(255,255,255,.65);border-radius:999px;padding:8px 13px;font-size:10px;font-weight:700;letter-spacing:.04em;color:#1f3d63}
.v24-eyebrow span{width:7px;height:7px;border-radius:50%;background:#0071eb}
.v24-hero-copy h1{margin:24px 0 0;font-size:clamp(43px,4.3vw,65px);line-height:1.01;letter-spacing:-.055em;font-weight:500;color:#041635}
.v24-hero-copy h1 em{font-style:normal;color:#0071eb;font-weight:500}
.v24-hero-copy>p{max-width:570px;margin:22px 0 0;font-size:16px;line-height:1.6;color:#3e536d;font-weight:400}
.v24-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:27px}
.v24-btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;border-radius:999px;padding:15px 24px;text-decoration:none;font-size:13px;font-weight:700;transition:.25s ease}
.v24-btn span{font-size:18px;line-height:0}.v24-btn:hover{transform:translateY(-2px)}
.v24-btn-primary{color:#fff;background:linear-gradient(100deg,#0071eb,#0754c7);box-shadow:0 12px 28px rgba(0,113,235,.23)}
.v24-btn-secondary{color:#0754c7;background:rgba(255,255,255,.72);border:1px solid #bdd8f6}
.v24-btn-secondary:hover{background:#fff;box-shadow:0 10px 22px rgba(4,22,53,.08)}
.v24-hero-benefits{display:flex;gap:27px;margin-top:27px}.v24-hero-benefits>div{display:flex;align-items:flex-start;gap:9px}.v24-hero-benefits b{font-size:24px;color:#0071eb;font-weight:500}.v24-hero-benefits span{display:flex;flex-direction:column;gap:3px}.v24-hero-benefits strong{font-size:11px}.v24-hero-benefits small{font-size:10px;color:#65768b}
.v24-home-collage{position:relative;height:510px;margin-left:8px}
.v24-photo{position:absolute;overflow:hidden;border:7px solid rgba(255,255,255,.92);box-shadow:0 20px 50px rgba(4,22,53,.14)}.v24-photo img{width:100%;height:100%;object-fit:cover;display:block}.v24-main-photo{left:1%;top:25px;width:58%;height:405px;border-radius:125px 125px 125px 45px;z-index:2}.v24-main-photo img{object-position:center 30%}.v24-photo-night{right:8%;top:0;width:39%;height:185px;border-radius:38px 65px 28px 65px;z-index:4;transform:rotate(1deg)}.v24-photo-night img{object-position:center 18%}.v24-photo-house{right:1%;top:174px;width:39%;height:175px;border-radius:35px 55px 55px 25px;z-index:4;transform:rotate(-1deg)}.v24-photo-house img{object-position:center 35%}.v24-photo-reinforce{right:5%;bottom:0;width:42%;height:175px;border-radius:65px 25px 60px 35px;z-index:3}.v24-photo-reinforce img{object-position:center 42%}.v24-photo>span{position:absolute;left:20px;bottom:18px;color:#fff;font-size:11px;line-height:1.15;font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.45)}
.v24-quote{position:absolute;left:22px;top:35px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.35);font-size:28px}.v24-quote span{font-size:12px;line-height:1.3;display:block;font-weight:600}.v24-trust-badge{position:absolute;right:24%;top:43%;width:88px;height:88px;border-radius:50%;background:#fff;z-index:7;box-shadow:0 12px 30px rgba(4,22,53,.18);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#0071eb;font-size:6px;letter-spacing:.13em;font-weight:800}.v24-trust-badge b{font-size:28px;line-height:1;margin:3px 0}.v24-hotels-badge{position:absolute;left:38%;bottom:55px;z-index:8;background:#fff;border-radius:16px;padding:11px 18px;display:flex;align-items:center;gap:9px;box-shadow:0 12px 25px rgba(4,22,53,.13)}.v24-hotels-badge b{font-size:19px;color:#041635}.v24-hotels-badge span{font-size:10px;color:#4f6178}.v24-orbit{position:absolute;border-radius:50%;border:28px solid rgba(0,113,235,.10);z-index:0}.v24-orbit-a{width:470px;height:470px;right:-95px;bottom:-125px}.v24-orbit-b{width:360px;height:360px;right:-45px;bottom:-65px;border-width:18px;border-color:rgba(0,113,235,.08)}
.v24-client-strip{background:#fff;padding:0 0 18px}.v24-client-inner{display:flex;align-items:center;gap:20px;padding:14px 22px;border:1px solid #e2eaf3;border-radius:20px;box-shadow:0 8px 28px rgba(4,22,53,.045);overflow:hidden;position:relative}.v24-client-inner>strong{font-size:10px;white-space:nowrap}.v24-client-arrow{font-size:18px;color:#60728b;white-space:nowrap}.v24-client-track{display:flex;align-items:center;gap:40px;min-width:max-content;animation:v24marquee 28s linear infinite}.v24-client-track img{max-width:100px;max-height:28px;object-fit:contain;filter:grayscale(1);opacity:.7}.v24-client-track span{font-size:11px;font-weight:700;color:#66778b;white-space:nowrap}@keyframes v24marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.v24-problem{padding:65px 0 70px;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}.v24-section-head{text-align:center}.v24-section-head>span,.v24-section-kicker{font-size:10px;font-weight:800;letter-spacing:.16em;color:#0071eb}.v24-section-head h2{font-size:36px;letter-spacing:-.04em;line-height:1.05;font-weight:600;margin:10px 0 0}.v24-problem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:35px}.v24-problem-card{border-radius:18px;padding:20px;text-decoration:none;border:1px solid transparent;transition:.25s ease;min-height:155px}.v24-problem-card:hover{transform:translateY(-5px);box-shadow:0 16px 32px rgba(4,22,53,.09)}.v24-problem-card b{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;font-size:18px;margin-bottom:14px}.v24-problem-card h3{font-size:14px;font-weight:700;margin:0}.v24-problem-card p{font-size:11px;line-height:1.45;color:#566980;margin:8px 0 14px}.v24-problem-card strong{font-size:10px}.v24-problem-card.red{background:#fff1f2;border-color:#ffdadd}.v24-problem-card.red b{background:#ffd8dc;color:#e43d4a}.v24-problem-card.red strong{color:#e43d4a}.v24-problem-card.orange{background:#fff6eb;border-color:#ffe6c7}.v24-problem-card.orange b{background:#ffe1bb;color:#e58a12}.v24-problem-card.orange strong{color:#d87900}.v24-problem-card.blue{background:#eef7ff;border-color:#d8eaff}.v24-problem-card.blue b{background:#dcecff;color:#0071eb}.v24-problem-card.blue strong{color:#0071eb}.v24-problem-card.purple{background:#f6f0ff;border-color:#e8dcff}.v24-problem-card.purple b{background:#e9ddff;color:#7046d8}.v24-problem-card.purple strong{color:#7046d8}
.v24-solutions{padding:70px 0 85px;background:#fff}.v24-solution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:35px}.v24-solution-card{border:1px solid #e1e9f2;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 8px 25px rgba(4,22,53,.05);transition:.25s ease}.v24-solution-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(4,22,53,.11)}.v24-card-image{height:178px;overflow:hidden}.v24-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:.5s ease}.v24-solution-card:hover .v24-card-image img{transform:scale(1.04)}.v24-card-body{position:relative;padding:17px 18px 19px}.v24-card-icon{position:absolute;top:-20px;left:17px;width:40px;height:40px;background:#fff;border-radius:50%;display:grid;place-items:center;color:#0071eb;box-shadow:0 5px 16px rgba(4,22,53,.12);font-size:20px}.v24-card-body h3{font-size:14px;font-weight:600;margin:9px 0 14px}.v24-card-body a{font-size:11px;color:#0071eb;font-weight:700;text-decoration:none}
.v24-why-form{padding:80px 0;background:linear-gradient(135deg,#f4f9ff 0%,#eaf4ff 100%)}.v24-why-grid{display:grid;grid-template-columns:1fr 470px;gap:65px;align-items:center}.v24-why-copy h2{font-size:40px;line-height:1.03;letter-spacing:-.045em;font-weight:500;margin:12px 0}.v24-why-copy h2 em{font-style:normal;color:#0071eb}.v24-why-copy>p{max-width:570px;font-size:15px;line-height:1.6;color:#566980}.v24-why-benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 25px;margin-top:30px}.v24-why-benefits b{font-size:24px;color:#0071eb;font-weight:500}.v24-why-benefits h3{font-size:13px;margin:5px 0 3px;font-weight:700}.v24-why-benefits p{font-size:10px;line-height:1.4;color:#65768b;margin:0}.v24-form-card{background:#fff;border-radius:27px;padding:5px;box-shadow:0 20px 55px rgba(4,22,53,.11)}.v24-form-card .fireul-lead-wrap{border:0!important;box-shadow:none!important;padding:22px!important}.v24-form-card .fireul-lead-wrap h2{font-family:'Manrope',sans-serif!important;font-size:22px!important;font-weight:600!important}.v24-form-card .fireul-lead-wrap p{font-family:'Manrope',sans-serif!important;font-size:12px!important}.v24-form-card .fireul-choice{border-radius:13px!important}.v24-form-card .fireul-submit,.v24-form-card .fireul-next{background:linear-gradient(100deg,#041635,#0071eb)!important}.v24-form-card .fireul-prev{background:#fff!important}
.v24-resources{padding:70px 0;background:#fff}.v24-resource-heading{display:flex;justify-content:space-between;align-items:end}.v24-resource-heading h2{font-size:30px;font-weight:600;letter-spacing:-.035em;margin:7px 0 0}.v24-resource-heading>a{font-size:11px;color:#0071eb;font-weight:700;text-decoration:none}.v24-resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}.v24-resource{display:flex;gap:13px;align-items:center;border:1px solid #e3eaf2;border-radius:17px;padding:10px;text-decoration:none;transition:.2s}.v24-resource:hover{box-shadow:0 12px 28px rgba(4,22,53,.08);transform:translateY(-3px)}.v24-resource-thumb{width:74px;height:74px;border-radius:12px;flex:none;background:linear-gradient(135deg,#d9eaff,#f5f9ff)}.v24-resource small{font-size:8px;color:#0071eb;font-weight:700}.v24-resource h3{font-size:11px;line-height:1.35;color:#041635;margin:4px 0 7px;font-weight:700}.v24-resource strong{font-size:9px;color:#0071eb}.v24-final-cta{padding:0 0 65px}.v24-final-inner{border-radius:25px;padding:36px 48px;display:flex;justify-content:space-between;align-items:center;gap:25px;background:linear-gradient(105deg,#041635,#0750ad 70%,#0071eb);position:relative;overflow:hidden}.v24-final-inner:after{content:"";position:absolute;right:-100px;top:-230px;width:500px;height:500px;border:38px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 38px rgba(255,255,255,.04)}.v24-final-inner>*{position:relative;z-index:1}.v24-final-inner>div>span{font-size:9px;letter-spacing:.12em;color:#cce5ff}.v24-final-inner h2{font-size:31px;color:#fff;font-weight:600;letter-spacing:-.035em;margin:7px 0}.v24-final-inner p{font-size:12px;color:rgba(255,255,255,.78);margin:0}.v24-btn-white{background:#fff;color:#041635;box-shadow:0 10px 25px rgba(0,0,0,.12);white-space:nowrap}
@media(max-width:1000px){.v24-hero-grid{grid-template-columns:1fr}.v24-hero-copy{padding-right:0}.v24-home-collage{margin-top:30px}.v24-problem-grid,.v24-solution-grid{grid-template-columns:repeat(2,1fr)}.v24-why-grid{grid-template-columns:1fr}.v24-form-card{max-width:650px}.v24-resource-grid{grid-template-columns:1fr}}
@media(max-width:640px){.v24-container{width:min(100% - 28px,1200px)}.v24-home-hero{padding:48px 0 70px}.v24-hero-copy h1{font-size:42px}.v24-hero-copy>p{font-size:14px}.v24-actions{flex-direction:column}.v24-btn{width:100%;box-sizing:border-box}.v24-hero-benefits{gap:15px;justify-content:space-between}.v24-hero-benefits strong{font-size:9px}.v24-home-collage{height:390px}.v24-main-photo{width:61%;height:290px;border-radius:80px 80px 80px 30px}.v24-photo-night{width:40%;height:130px}.v24-photo-house{width:40%;height:125px;top:123px}.v24-photo-reinforce{width:43%;height:125px}.v24-trust-badge{width:65px;height:65px;right:24%;top:42%}.v24-trust-badge b{font-size:19px}.v24-hotels-badge{left:25%;bottom:40px;padding:8px 11px}.v24-hotels-badge b{font-size:15px}.v24-hotels-badge span{font-size:8px}.v24-problem-grid,.v24-solution-grid{grid-template-columns:1fr}.v24-section-head h2{font-size:30px}.v24-why-copy h2{font-size:34px}.v24-why-benefits{gap:22px 15px}.v24-final-inner{padding:30px 25px;flex-direction:column;align-items:flex-start}.v24-final-inner h2{font-size:27px}.v24-client-inner{padding:12px 14px}.v24-client-inner>strong{font-size:8px}.v24-client-track{gap:25px}.v24-resource-heading{align-items:flex-start;gap:15px;flex-direction:column}}

/* =========================================================
   FIREUL V25 — homepage refinement
   Hero: smaller, bold and premium
   Form: self-contained styling so it does not depend on Tailwind
   ========================================================= */
.v24-hero-copy h1{
  font-family:'Manrope',ui-sans-serif,system-ui,sans-serif !important;
  font-size:clamp(40px,3.35vw,52px) !important;
  line-height:1.06 !important;
  letter-spacing:-.045em !important;
  font-weight:750 !important;
  margin:24px 0 0 !important;
}
.v24-hero-copy h1 em{font-weight:750 !important;}
.v24-hero-copy>p{
  font-family:'Manrope',ui-sans-serif,system-ui,sans-serif !important;
  font-size:16px !important;
  line-height:1.6 !important;
  font-weight:400 !important;
}

/* Form card — stable layout independent of utility CSS */
.v24-form-card .fireul-lead-wrap{
  width:100%; box-sizing:border-box;
  background:#fff !important;
  border-radius:22px !important;
  padding:26px !important;
  margin:0 !important;
  color:#041635 !important;
}
.v24-form-card .fireul-lead-wrap *{box-sizing:border-box;}
.v24-form-card .fireul-lead-wrap > div:first-child{margin-bottom:20px !important;}
.v24-form-card .fireul-lead-wrap > div:first-child > div{
  display:inline-flex !important; align-items:center !important;
  width:auto !important; margin:0 !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  background:#eef6ff !important;
  color:#0753b8 !important;
  font-size:10px !important; font-weight:700 !important;
}
.v24-form-card .fireul-lead-wrap h2{
  margin:12px 0 7px !important;
  font-family:'Manrope',ui-sans-serif,system-ui,sans-serif !important;
  font-size:24px !important; line-height:1.18 !important;
  font-weight:650 !important; letter-spacing:-.035em !important;
  color:#041635 !important;
}
.v24-form-card .fireul-lead-wrap > div:first-child > p{
  margin:0 !important; font-size:12px !important; line-height:1.5 !important;
  color:#64748b !important; font-weight:400 !important;
}
.v24-form-card .fireul-progress{
  width:100% !important; height:5px !important; padding:0 !important;
  margin:0 0 20px !important; border-radius:999px !important;
  overflow:hidden !important; background:#e8f0fa !important;
}
.v24-form-card .fireul-progress-bar{
  height:100% !important; min-width:0 !important; border-radius:999px !important;
  background:linear-gradient(90deg,#041635 0%,#0b3f86 55%,#0071eb 100%) !important;
  transition:width .25s ease !important;
}
.v24-form-card .fireul-step{display:none !important; margin:0 !important;}
.v24-form-card .fireul-step.active{display:block !important;}
.v24-form-card .fireul-step > div:first-child{
  margin:0 0 13px !important; font-size:13px !important;
  line-height:1.4 !important; font-weight:650 !important; color:#041635 !important;
}
.v24-form-card .fireul-step .grid{
  display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important; margin:0 !important;
}
.v24-form-card .fireul-choice{
  width:100% !important; min-height:68px !important;
  display:flex !important; flex-direction:column !important;
  align-items:flex-start !important; justify-content:center !important;
  gap:4px !important; padding:12px 13px !important;
  margin:0 !important; border:1px solid #dbe6f2 !important;
  border-radius:13px !important; background:#fff !important;
  color:#041635 !important; text-align:left !important;
  font-family:'Manrope',ui-sans-serif,system-ui,sans-serif !important;
  cursor:pointer !important; transition:.18s ease !important;
}
.v24-form-card .fireul-choice:hover{
  border-color:#8abcf0 !important; background:#f7fbff !important;
  transform:translateY(-1px) !important;
}
.v24-form-card .fireul-choice.selected{
  border-color:#0071eb !important; background:#eef6ff !important;
  box-shadow:0 0 0 2px rgba(0,113,235,.08) !important;
}
.v24-form-card .fireul-choice strong{
  font-size:12px !important; line-height:1.25 !important; font-weight:650 !important;
  color:#041635 !important;
}
.v24-form-card .fireul-choice span{
  font-size:10px !important; line-height:1.35 !important; color:#6b7c90 !important;
}
.v24-form-card .fireul-step label{
  display:block !important; margin:0 0 5px !important;
  font-size:10px !important; line-height:1.3 !important;
  font-weight:650 !important; color:#334155 !important;
}
.v24-form-card .fireul-step input,
.v24-form-card .fireul-step select,
.v24-form-card .fireul-step textarea{
  width:100% !important; max-width:100% !important; box-sizing:border-box !important;
  margin:0 !important; padding:10px 12px !important;
  border:1px solid #d7e2ee !important; border-radius:11px !important;
  background:#fff !important; color:#041635 !important;
  font-family:'Manrope',ui-sans-serif,system-ui,sans-serif !important;
  font-size:11px !important; line-height:1.4 !important;
  outline:none !important; box-shadow:none !important;
}
.v24-form-card .fireul-step input:focus,
.v24-form-card .fireul-step select:focus,
.v24-form-card .fireul-step textarea:focus{
  border-color:#0071eb !important;
  box-shadow:0 0 0 3px rgba(0,113,235,.10) !important;
}
.v24-form-card .fireul-step textarea{min-height:88px !important; resize:vertical !important;}
.v24-form-card .fireul-lead-form > .flex{
  display:flex !important; align-items:center !important; gap:10px !important;
  margin:20px 0 0 !important; padding-top:0 !important;
}
.v24-form-card .fireul-lead-form > .flex > .text-xs{
  font-size:9px !important; line-height:1.35 !important; color:#718198 !important;
  margin:0 !important;
}
.v24-form-card .fireul-prev,
.v24-form-card .fireul-next,
.v24-form-card .fireul-submit{
  flex:none !important; border-radius:12px !important;
  padding:11px 16px !important; min-height:42px !important;
  font-family:'Manrope',ui-sans-serif,system-ui,sans-serif !important;
  font-size:11px !important; font-weight:700 !important;
  cursor:pointer !important; white-space:nowrap !important;
}
.v24-form-card .fireul-prev{
  color:#334155 !important; background:#fff !important;
  border:1px solid #d7e2ee !important;
}
.v24-form-card .fireul-next,
.v24-form-card .fireul-submit{
  color:#fff !important; border:1px solid transparent !important;
  background:linear-gradient(135deg,#041635 0%,#0b3f86 55%,#0071eb 100%) !important;
  box-shadow:0 9px 20px rgba(4,22,53,.16) !important;
}
.v24-form-card .fireul-next:hover,
.v24-form-card .fireul-submit:hover{
  filter:brightness(1.06) !important; transform:translateY(-1px) !important;
}
@media(max-width:640px){
  .v24-hero-copy h1{font-size:39px !important;line-height:1.07 !important;}
  .v24-form-card .fireul-lead-wrap{padding:21px !important;}
  .v24-form-card .fireul-step .grid{grid-template-columns:1fr !important;}
  .v24-form-card .fireul-lead-form > .flex{align-items:stretch !important; flex-wrap:wrap !important;}
  .v24-form-card .fireul-lead-form > .flex > .text-xs{order:3;flex-basis:100%;}
}

/* === V27 CLIENT TRUST BAR + COMPACT HERO === */
.v24-hero-copy h1{
  font-size:clamp(36px,2.95vw,46px) !important;
  line-height:1.08 !important;
  font-weight:750 !important;
}
.v24-hero-copy h1 em{font-weight:750 !important;}

.v24-client-strip{padding:26px 0 30px !important;background:#fff !important;border:0 !important;}
.v24-client-inner{display:block !important;padding:0 !important;overflow:hidden;}
.v24-client-heading{
  text-align:center;
  color:#041635;
  font-family:'Manrope',ui-sans-serif,system-ui,sans-serif;
  font-size:14px;
  line-height:1.3;
  font-weight:650;
  letter-spacing:-.01em;
  margin:0 0 18px;
}
.v24-client-marquee{width:100%;overflow:hidden;mask-image:linear-gradient(to right,transparent 0,#000 8%,#000 92%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 8%,#000 92%,transparent 100%);}
.v24-client-track{
  display:flex !important;
  align-items:center;
  width:max-content;
  gap:62px !important;
  animation:fireulClientScroll 28s linear infinite;
  padding:4px 0 8px;
}
.v24-client-logo{
  flex:0 0 auto;
  white-space:nowrap;
  color:#697386;
  opacity:.82;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:150px;
  height:38px;
  transition:opacity .2s ease;
}
.v24-client-logo:hover{opacity:1;}
.v24-logo-novotel{font-family:'Helvetica Neue',Arial,sans-serif;font-size:22px;font-weight:400;letter-spacing:.16em;text-transform:lowercase;}
.v24-logo-marriott{font-family:'Arial Narrow',Arial,sans-serif;font-size:20px;font-weight:700;letter-spacing:.18em;}
.v24-logo-mercure{font-family:Georgia,'Times New Roman',serif;font-size:25px;font-weight:400;letter-spacing:.01em;}
.v24-logo-bestwestern{font-family:Arial,Helvetica,sans-serif;font-size:16px;font-weight:800;letter-spacing:.035em;}
.v24-logo-chateau{font-family:Georgia,'Times New Roman',serif;font-size:17px;font-weight:600;letter-spacing:.1em;}
.v24-logo-letex{font-family:'Trebuchet MS',Arial,sans-serif;font-size:19px;font-weight:700;letter-spacing:.18em;}
@keyframes fireulClientScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.v24-client-track{animation:none;}}
@media(max-width:640px){
 .v24-hero-copy h1{font-size:35px !important;line-height:1.08 !important;}
 .v24-client-heading{font-size:13px;margin-bottom:14px;}
 .v24-client-track{gap:34px !important;}
 .v24-client-logo{min-width:115px;height:32px;}
 .v24-logo-novotel{font-size:17px}.v24-logo-marriott{font-size:15px}.v24-logo-mercure{font-size:20px}.v24-logo-bestwestern{font-size:12px}.v24-logo-chateau{font-size:13px}.v24-logo-letex{font-size:15px}
}


/* =========================================================
   FIREUL V28 — clients + why/form balance
   ========================================================= */
.v24-hero-copy h1{
  font-size:clamp(34px,2.7vw,43px) !important;
  line-height:1.07 !important;
  font-weight:750 !important;
}
.v24-hero-copy h1 em{font-weight:750 !important;}

/* Trust title is deliberately outside the scrolling bar */
.v24-client-heading-outside{
  text-align:center;
  color:#041635;
  font-family:'Manrope',ui-sans-serif,system-ui,sans-serif;
  font-size:15px;
  line-height:1.3;
  font-weight:700;
  letter-spacing:-.01em;
  margin:2px 0 10px;
}
.v24-client-strip{padding:0 0 28px !important;background:#fff !important;border:0 !important;}
.v24-client-inner{border:0 !important;box-shadow:none !important;border-radius:0 !important;padding:0 !important;}
.v24-client-track{gap:72px !important;padding:5px 0 10px !important;}
.v24-client-logo{
  min-width:175px;
  height:42px;
  color:#4f6075;
  opacity:.9;
  font-weight:700 !important;
}
.v24-logo-novotel{font-size:25px !important;font-weight:700 !important;letter-spacing:.13em !important;}
.v24-logo-marriott{font-size:23px !important;font-weight:800 !important;letter-spacing:.15em !important;}
.v24-logo-mercure{font-size:28px !important;font-weight:700 !important;}
.v24-logo-bestwestern{font-size:19px !important;font-weight:800 !important;letter-spacing:.025em !important;}
.v24-logo-chateau{font-size:19px !important;font-weight:700 !important;letter-spacing:.08em !important;}
.v24-logo-ibis{font-family:'Helvetica Neue',Arial,sans-serif;font-size:27px !important;font-weight:700 !important;letter-spacing:.03em !important;}
.v24-logo-handwritten{font-family:'Trebuchet MS',Arial,sans-serif;font-size:22px !important;font-weight:700 !important;letter-spacing:-.02em !important;}
.v24-logo-indep{font-family:'Manrope',Arial,sans-serif;font-size:15px !important;font-weight:800 !important;letter-spacing:.04em !important;}

/* Less empty space around the Why Fireul block; more room for the form */
.v24-why-form{padding:58px 0 62px !important;}
.v24-why-grid{grid-template-columns:minmax(0,1fr) 540px !important;gap:48px !important;}
.v24-why-copy h2{font-size:37px !important;margin:8px 0 10px !important;}
.v24-why-copy>p{font-size:15px !important;max-width:600px !important;}
.v24-why-benefits{gap:22px 24px !important;margin-top:24px !important;}
.v24-form-card{padding:4px !important;border-radius:27px !important;}
.v24-form-card .fireul-lead-wrap{padding:16px 18px !important;border-radius:20px !important;}
.v24-form-card .fireul-lead-wrap > div:first-child{margin-bottom:14px !important;}
.v24-form-card .fireul-lead-wrap h2{font-size:23px !important;}
.v24-form-card .fireul-lead-wrap p{font-size:13px !important;}

@media(max-width:1000px){
  .v24-why-grid{grid-template-columns:1fr !important;gap:35px !important;}
  .v24-form-card{max-width:720px !important;width:100%;}
}
@media(max-width:640px){
  .v24-hero-copy h1{font-size:34px !important;line-height:1.08 !important;}
  .v24-client-heading-outside{font-size:14px;margin-bottom:7px;}
  .v24-client-track{gap:42px !important;}
  .v24-client-logo{min-width:135px;height:36px;}
  .v24-logo-novotel{font-size:21px !important}.v24-logo-marriott{font-size:19px !important}.v24-logo-mercure{font-size:23px !important}.v24-logo-bestwestern{font-size:15px !important}.v24-logo-chateau{font-size:16px !important}.v24-logo-ibis{font-size:22px !important}.v24-logo-handwritten{font-size:18px !important}.v24-logo-indep{font-size:12px !important}
  .v24-why-form{padding:44px 0 48px !important;}
  .v24-why-copy h2{font-size:32px !important;}
  .v24-form-card .fireul-lead-wrap{padding:15px !important;}
}

/* =========================================================
   FIREUL — REMPLACEMENT LANDING PAGE
   ========================================================= */
.fireul-replacement-page{font-family:Manrope,Inter,ui-sans-serif,system-ui,sans-serif;color:#041635;background:#fff;overflow:hidden}
.fr-container{width:min(1240px,calc(100% - 48px));margin:0 auto}
.fr-hero{position:relative;min-height:700px;padding:70px 0 78px;background:linear-gradient(135deg,#fbfdff 0%,#edf7ff 52%,#fff 100%);overflow:hidden}
.fr-hero-glow{position:absolute;border-radius:999px;pointer-events:none}
.fr-glow-a{width:720px;height:720px;right:-250px;top:-250px;background:radial-gradient(circle,rgba(0,113,235,.2),rgba(0,113,235,.06) 45%,transparent 70%)}
.fr-glow-b{width:800px;height:240px;right:-180px;bottom:0;background:linear-gradient(100deg,transparent,rgba(0,113,235,.12),transparent);transform:rotate(-15deg)}
.fr-hero-grid{display:grid;grid-template-columns:48% 52%;align-items:center;position:relative;z-index:2}
.fr-hero-copy{padding:22px 0 0;position:relative;z-index:3}
.fr-eyebrow{display:inline-flex;align-items:center;gap:9px;padding:9px 14px;border:1px solid #c8defb;border-radius:999px;background:rgba(255,255,255,.72);font-size:11px;font-weight:800;letter-spacing:.08em;color:#29405e;box-shadow:0 8px 25px rgba(4,22,53,.04)}
.fr-eyebrow span{width:8px;height:8px;border-radius:50%;background:#0071eb;box-shadow:0 0 0 5px rgba(0,113,235,.08)}
.fr-hero-copy h1{margin:25px 0 0;font-size:clamp(43px,4vw,60px);line-height:1.01;letter-spacing:-.055em;font-weight:800;color:#041635}
.fr-hero-copy>p{max-width:560px;margin:23px 0 0;font-size:18px;line-height:1.55;color:#40536f}
.fr-actions{display:flex;gap:14px;align-items:center;margin-top:28px;flex-wrap:wrap}
.fr-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:14px 20px;text-decoration:none;font-weight:750;font-size:14px;transition:.2s ease}
.fr-btn:hover{transform:translateY(-2px)}
.fr-btn-primary{background:linear-gradient(135deg,#041635,#0071eb);color:#fff;box-shadow:0 12px 28px rgba(0,113,235,.2)}
.fr-btn-secondary{border:1px solid #aac9ea;background:#fff;color:#123052}
.fr-btn-white{background:#fff;color:#06214a}
.fr-hero-points{display:grid;grid-template-columns:repeat(3,1fr);max-width:620px;margin-top:32px;gap:18px}
.fr-hero-points>div{display:flex;gap:9px;align-items:flex-start;border-right:1px solid #d9e5f2;padding-right:12px}.fr-hero-points>div:last-child{border-right:0}
.fr-hero-points b{font-size:25px;color:#0071eb;line-height:1;font-weight:500}.fr-hero-points strong{display:block;font-size:12px;line-height:1.25}.fr-hero-points small{display:block;margin-top:3px;font-size:11px;color:#64748b}
.fr-hero-visual{position:relative;height:560px;margin-left:-10px}.fr-main-photo{position:absolute;right:5%;top:35px;width:74%;height:485px;border-radius:32px;overflow:hidden;box-shadow:0 25px 70px rgba(4,22,53,.16);transform:rotate(1.2deg)}
.fr-main-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(4,22,53,.15))}.fr-main-photo img{width:100%;height:100%;object-fit:cover}
.fr-orbit{position:absolute;border:1px solid rgba(0,113,235,.24);border-radius:50%;pointer-events:none}.fr-orbit-one{width:500px;height:500px;right:-20px;top:30px}.fr-orbit-two{width:620px;height:620px;right:-80px;top:-30px;border-color:rgba(0,113,235,.11)}
.fr-floating-card{position:absolute;left:1%;bottom:52px;width:275px;padding:16px 18px;background:#fff;border-radius:16px;display:flex;gap:12px;box-shadow:0 18px 45px rgba(4,22,53,.16);z-index:4}.fr-card-icon{width:40px;height:40px;border-radius:12px;background:#edf6ff;color:#0071eb;display:grid;place-items:center;font-size:23px}.fr-floating-card strong{font-size:13px;line-height:1.25}.fr-floating-card small{display:block;color:#66778f;font-size:10px;line-height:1.35;margin-top:5px}.fr-mini-card{position:absolute;right:-5px;top:35px;background:#041635;color:#fff;border-radius:15px;padding:14px 18px;z-index:4;box-shadow:0 14px 35px rgba(4,22,53,.2)}.fr-mini-card span{font-size:9px;letter-spacing:.15em;opacity:.7}.fr-mini-card strong{display:block;margin-top:4px;font-size:12px;letter-spacing:.04em}
.fr-situations{padding:72px 0 82px;background:linear-gradient(180deg,#eef7ff 0%,#f8fbff 100%)}
.fr-heading.centered{text-align:center}.fr-kicker{font-size:11px;letter-spacing:.12em;font-weight:800;color:#58708d}.fr-heading h2,.fr-postes h2,.fr-benefits h2{margin:12px 0 0;font-size:clamp(32px,3vw,46px);line-height:1.06;letter-spacing:-.045em;font-weight:750;color:#041635}.fr-situation-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:36px}.fr-situation{background:#fff;border:1px solid #e1ebf5;border-radius:14px;padding:22px 16px 20px;min-height:155px;box-shadow:0 10px 30px rgba(4,22,53,.035);text-align:center}.fr-situation-icon{font-size:28px;color:#0071eb;line-height:1}.fr-situation h3{font-size:14px;line-height:1.2;margin:13px 0 7px;font-weight:800}.fr-situation p{margin:0;color:#66778f;font-size:11px;line-height:1.45}
.fr-postes{padding:84px 0;background:#fff}.fr-postes-grid{display:grid;grid-template-columns:minmax(0,1fr) 470px;gap:58px;align-items:start}.fr-postes-copy h2{max-width:580px}.fr-intro{max-width:650px;margin:20px 0 0;color:#5b6d84;font-size:15px;line-height:1.65}.fr-post-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px}.fr-post-card{border:1px solid #e1e8f0;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(4,22,53,.045)}.fr-post-card img{display:block;width:100%;height:120px;object-fit:cover}.fr-post-card>div{padding:14px 15px 16px}.fr-post-card h3{margin:0;font-size:14px;font-weight:800}.fr-post-card p{margin:6px 0 0;color:#687991;font-size:11px;line-height:1.45}
.fr-form-panel{position:sticky;top:88px;background:linear-gradient(145deg,#041635,#092b5d);border-radius:25px;padding:6px;box-shadow:0 24px 65px rgba(4,22,53,.18)}.fr-form-panel .fireul-lead-wrap{margin:0!important;padding:25px!important;border:0!important;border-radius:20px!important}.fr-form-panel .fireul-lead-wrap h2{font-size:25px!important}.fr-form-panel .fireul-lead-wrap>div:first-child{margin-bottom:17px!important}
.fr-benefits{padding:80px 0 70px;background:linear-gradient(180deg,#f7fbff,#fff)}.fr-benefits-grid{display:grid;grid-template-columns:44% 56%;gap:55px;align-items:start}.fr-benefits-copy p{max-width:520px;color:#61738a;font-size:15px;line-height:1.7;margin:20px 0 0}.fr-benefit-list{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 34px}.fr-benefit{display:flex;gap:14px}.fr-benefit>span{width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:#edf6ff;color:#0071eb;display:grid;place-items:center;font-size:23px}.fr-benefit h3{margin:1px 0 4px;font-size:15px;font-weight:800}.fr-benefit p{margin:0;color:#697b91;font-size:12px;line-height:1.5}.fr-quote{margin-top:46px;display:flex;gap:15px;padding:22px 25px;border:1px solid #e6edf4;background:#fbfcfe;border-radius:16px}.fr-quote>span{font-size:42px;line-height:.7;color:#aab8c9}.fr-quote p{margin:0;color:#41536a;font-size:14px;line-height:1.55}.fr-quote strong{display:block;margin-top:8px;font-size:11px;color:#041635}
.fr-transition{display:grid;grid-template-columns:38% 62%;min-height:300px;background:linear-gradient(110deg,#041635,#0069da);color:#fff;position:relative;overflow:hidden}.fr-transition:after{content:"";position:absolute;right:-100px;top:-160px;width:470px;height:470px;border-radius:50%;border:70px solid rgba(255,255,255,.08)}.fr-transition-image{min-height:300px}.fr-transition-image img{width:100%;height:100%;object-fit:cover}.fr-transition-content{padding:48px 7%;position:relative;z-index:2}.fr-transition-content .light{color:#bcdcff}.fr-transition-content h2{margin:10px 0 10px;font-size:clamp(28px,3vw,40px);line-height:1.08;letter-spacing:-.04em;color:#fff;font-weight:750;max-width:700px}.fr-transition-content p{max-width:620px;margin:0;color:#d8e9fb;font-size:14px;line-height:1.6}.fr-transition-content .fr-btn{margin-top:20px}
.fr-client-strip{padding:28px 0;background:#fff;border-bottom:1px solid #eef2f6}.fr-client-track{display:flex;gap:62px;align-items:center;width:max-content;animation:frClientScroll 30s linear infinite;padding:4px 0}.fr-client-logo{min-width:145px;white-space:nowrap;text-align:center;color:#516277;display:inline-block}.fr-logo-novotel{font-family:'Helvetica Neue',Arial,sans-serif;font-size:25px;font-weight:700;letter-spacing:.13em}.fr-logo-marriott{font-family:'Arial Narrow',Arial,sans-serif;font-size:23px;font-weight:800;letter-spacing:.14em}.fr-logo-mercure{font-family:Georgia,'Times New Roman',serif;font-size:27px;font-weight:700}.fr-logo-bestwestern{font-family:Arial,Helvetica,sans-serif;font-size:18px;font-weight:800}.fr-logo-ibis{font-family:'Helvetica Neue',Arial,sans-serif;font-size:28px;font-weight:800}.fr-logo-handwritten{font-family:'Trebuchet MS',Arial,sans-serif;font-size:22px;font-weight:700;font-style:italic}.fr-logo-indep{font-family:Manrope,Arial,sans-serif;font-size:14px;font-weight:800;letter-spacing:.05em}.fr-client-strip{overflow:hidden}@keyframes frClientScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:1050px){.fr-hero-grid{grid-template-columns:1fr}.fr-hero-copy{padding-right:35%}.fr-hero-visual{height:500px;margin-top:15px}.fr-situation-grid{grid-template-columns:repeat(3,1fr)}.fr-postes-grid{grid-template-columns:1fr}.fr-form-panel{position:relative;top:auto;max-width:700px}.fr-benefits-grid{grid-template-columns:1fr;gap:35px}.fr-transition{grid-template-columns:1fr}.fr-transition-image{height:260px;min-height:0}}
@media(max-width:700px){.fr-container{width:min(100% - 30px,1240px)}.fr-hero{padding:48px 0 50px}.fr-hero-copy{padding-right:0}.fr-hero-copy h1{font-size:40px}.fr-hero-copy>p{font-size:16px}.fr-hero-points{grid-template-columns:1fr;gap:12px}.fr-hero-points>div{border-right:0;padding:0}.fr-hero-visual{height:380px}.fr-main-photo{width:84%;height:330px;right:4%;top:20px}.fr-orbit-one{width:360px;height:360px;right:-30px;top:10px}.fr-orbit-two{width:450px;height:450px;right:-75px;top:-30px}.fr-floating-card{left:0;bottom:8px;width:235px;padding:12px}.fr-mini-card{right:0;top:15px}.fr-situations{padding:55px 0}.fr-situation-grid{grid-template-columns:repeat(2,1fr);gap:10px}.fr-situation{min-height:145px;padding:18px 10px}.fr-heading h2,.fr-postes h2,.fr-benefits h2{font-size:32px}.fr-postes{padding:60px 0}.fr-post-cards{grid-template-columns:1fr}.fr-benefits{padding:60px 0}.fr-benefit-list{grid-template-columns:1fr}.fr-quote{padding:18px}.fr-transition-content{padding:38px 25px}.fr-client-track{gap:35px}.fr-client-logo{min-width:125px}.fr-logo-novotel{font-size:21px}.fr-logo-marriott{font-size:19px}.fr-logo-mercure{font-size:23px}.fr-logo-bestwestern{font-size:15px}.fr-logo-ibis{font-size:23px}.fr-logo-handwritten{font-size:18px}.fr-logo-indep{font-size:12px}}
@media(prefers-reduced-motion:reduce){.fr-client-track{animation:none}}

/* V32 — Solutions: SEO editorial detail blocks */
.v21-solution-details{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  margin-top:42px;
}
.v21-solution-detail{
  padding:30px 32px;
  border:1px solid rgba(4,22,53,.08);
  border-radius:24px;
  background:linear-gradient(145deg,#fff 0%,#f7fbff 100%);
  box-shadow:0 16px 40px rgba(4,22,53,.06);
}
.v21-solution-detail-wide{grid-column:1 / -1;}
.v21-detail-kicker{
  margin-bottom:10px;
  color:#0071eb;
  font-size:12px;
  font-weight:750;
  letter-spacing:.12em;
}
.v21-solution-detail h3{
  margin:0 0 13px;
  color:#041635;
  font-size:24px;
  line-height:1.18;
  font-weight:650;
  letter-spacing:-.025em;
}
.v21-solution-detail p{
  margin:0 0 12px;
  color:#52627a;
  font-size:15.5px;
  line-height:1.72;
  font-weight:400;
}
.v21-solution-detail p:last-child{margin-bottom:0;}
@media (max-width:760px){
  .v21-solution-details{grid-template-columns:1fr;gap:16px;margin-top:30px;}
  .v21-solution-detail,.v21-solution-detail-wide{grid-column:auto;padding:24px 22px;border-radius:20px;}
  .v21-solution-detail h3{font-size:21px;}
  .v21-solution-detail p{font-size:15px;line-height:1.65;}
}


/* Central demand landing page */
.fireul-demande-page{background:#f5f9ff;color:#041635;}
.fd-hero{padding:56px 0 72px;background:linear-gradient(180deg,#eef6ff 0%,#fff 72%);}
.fd-container{width:min(1180px,calc(100% - 40px));margin:0 auto;}
.fd-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.fd-copy{position:relative;}
.fd-eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;color:#0071eb;margin-bottom:16px;}
.fd-copy h1{font-family:'Manrope',sans-serif;font-size:clamp(40px,4.5vw,60px);line-height:1.02;letter-spacing:-.045em;font-weight:800;margin:0 0 20px;}
.fd-copy>p{font-family:'Manrope',sans-serif;font-size:18px;line-height:1.6;color:#52627a;max-width:610px;margin:0;}
.fd-points{display:grid;gap:12px;margin:28px 0;}
.fd-points>div{display:flex;gap:12px;align-items:center;}
.fd-points b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e6f1ff;color:#0071eb;font-size:17px;}
.fd-points span{display:grid;gap:2px;}
.fd-points strong{font-size:14px;}
.fd-points small{font-size:13px;color:#718096;}
.fd-photo{height:280px;border-radius:28px;overflow:hidden;box-shadow:0 24px 70px rgba(4,22,53,.14);margin-top:24px;}
.fd-photo img{width:100%;height:100%;object-fit:cover;}
.fd-form-card{background:#fff;border-radius:28px;padding:28px;box-shadow:0 24px 80px rgba(4,22,53,.13);border:1px solid rgba(4,22,53,.07);}
.fd-form-card .fireul-lead-wrap{margin:0!important;}
@media(max-width:900px){.fd-grid{grid-template-columns:1fr;gap:28px}.fd-form-card{padding:20px}.fd-photo{height:230px}.fd-copy h1{font-size:42px}}


/* Fireul V50 — in-page lead confirmation modal */
html.fireul-modal-open,html.fireul-modal-open body{overflow:hidden!important}
.fireul-lead-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s ease}
.fireul-lead-modal.is-open{visibility:visible;opacity:1}
.fireul-lead-modal__backdrop{position:absolute;inset:0;background:rgba(4,22,53,.62);backdrop-filter:blur(7px)}
.fireul-lead-modal__dialog{position:relative;width:min(620px,100%);background:#fff;border:1px solid rgba(4,22,53,.08);border-radius:28px;padding:38px 34px 30px;box-shadow:0 30px 90px rgba(4,22,53,.25);text-align:center;transform:translateY(12px) scale(.985);transition:transform .22s ease;outline:none}
.fireul-lead-modal.is-open .fireul-lead-modal__dialog{transform:translateY(0) scale(1)}
.fireul-lead-modal__close{position:absolute;top:14px;right:16px;width:38px;height:38px;border:0;border-radius:50%;background:#f3f6fa;color:#526176;font-size:27px;line-height:1;cursor:pointer}
.fireul-lead-modal__icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 17px;border-radius:50%;background:linear-gradient(135deg,#0071eb,#005fcf);color:#fff;font-size:31px;font-weight:800;box-shadow:0 13px 28px rgba(0,113,235,.24)}
.fireul-lead-modal__icon.is-error{background:linear-gradient(135deg,#64748b,#475569)}
.fireul-lead-modal__eyebrow{color:#0071eb;font-size:11px;font-weight:800;letter-spacing:.12em}
.fireul-lead-modal__dialog h2{margin:10px auto 11px;color:#041635;font-family:'Manrope',sans-serif;font-size:clamp(28px,4vw,42px);line-height:1.08;letter-spacing:-.03em;font-weight:650}
.fireul-lead-modal__text{max-width:500px;margin:0 auto;color:#526176;font-size:16px;line-height:1.65}
.fireul-lead-modal__actions{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin-top:26px}
.fireul-lead-modal__primary,.fireul-lead-modal__secondary{min-height:48px;padding:0 19px;border-radius:13px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit}
.fireul-lead-modal__primary{border:0;background:linear-gradient(135deg,#0071eb,#005fcf);color:#fff;box-shadow:0 10px 22px rgba(0,113,235,.2)}
.fireul-lead-modal__secondary{border:1px solid #dce3ec;background:#fff;color:#0f172a}
.fireul-lead-modal__note{margin:17px auto 0;max-width:500px;color:#8793a4;font-size:12px;line-height:1.55}
@media(max-width:640px){.fireul-lead-modal{padding:14px}.fireul-lead-modal__dialog{padding:34px 20px 24px;border-radius:23px}.fireul-lead-modal__text{font-size:15px}.fireul-lead-modal__primary,.fireul-lead-modal__secondary{width:100%}}

/* Fireul V51 — social links */
footer .fireul-social-icon{
  width:44px;
  height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px;
  background:rgba(255,255,255,.08);
  color:#fff !important;
  text-decoration:none !important;
  transition:transform .18s ease, background .18s ease, border-color .18s ease;
}
footer .fireul-social-icon:hover{
  transform:translateY(-2px);
  background:#0071eb;
  border-color:#0071eb;
  color:#fff !important;
}
footer .fireul-social-icon:focus-visible{
  outline:3px solid rgba(0,113,235,.35);
  outline-offset:3px;
}
footer .fireul-social-icon svg{
  width:22px;
  height:22px;
  display:block;
}
footer .fireul-social-links{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:16px;
}

/* V53 — Fireul Conseils / articles */
.fireul-article{background:#fff;color:#041635}.fireul-article-hero{padding:78px 0 62px;background:linear-gradient(180deg,#f3f8ff 0%,#fff 100%);border-bottom:1px solid #e8eef6}.fireul-article-wrap{width:min(100% - 40px,900px);margin:auto}.fireul-article-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#0071eb}.fireul-article-kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:#0071eb}.fireul-article h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(38px,5vw,62px);line-height:1.06;letter-spacing:-.045em;font-weight:550;margin:18px 0 20px;max-width:880px}.fireul-article-lead{font-size:19px;line-height:1.7;color:#53657d;max-width:790px}.fireul-article-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:25px;font-size:12px;color:#708199}.fireul-article-body{padding:60px 0 82px}.fireul-article-body .fireul-article-wrap{max-width:800px}.fireul-article-body h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(26px,3vw,34px);line-height:1.2;letter-spacing:-.03em;font-weight:600;margin:48px 0 16px}.fireul-article-body h2:first-child{margin-top:0}.fireul-article-body h3{font-size:20px;margin:30px 0 10px;font-weight:650}.fireul-article-body p,.fireul-article-body li{font-size:17px;line-height:1.78;color:#4c5e74}.fireul-article-body ul{padding-left:22px;margin:18px 0}.fireul-article-body li{margin:8px 0}.fireul-article-note{margin:34px 0;padding:24px 26px;border-radius:18px;background:#f4f8fd;border:1px solid #dfebf8}.fireul-article-note strong{display:block;color:#041635;font-size:17px;margin-bottom:6px}.fireul-article-cta{margin-top:58px;padding:34px;border-radius:24px;background:linear-gradient(120deg,#041635,#0750ad 72%,#0071eb);color:#fff;position:relative;overflow:hidden}.fireul-article-cta h2{color:#fff;margin:0 0 10px}.fireul-article-cta p{color:rgba(255,255,255,.78);margin:0;max-width:620px}.fireul-article-cta a{display:inline-flex;margin-top:22px;padding:13px 20px;border-radius:12px;background:#fff;color:#041635;text-decoration:none;font-size:13px;font-weight:700}.fireul-article-related{margin-top:48px;padding-top:30px;border-top:1px solid #e6edf5}.fireul-article-related a{color:#0071eb;text-decoration:none;font-weight:650}.fireul-article-breadcrumb{font-size:12px;color:#718096;margin-bottom:12px}.fireul-article-breadcrumb a{color:#53657d;text-decoration:none}@media(max-width:640px){.fireul-article-hero{padding:52px 0 44px}.fireul-article-wrap{width:min(100% - 28px,900px)}.fireul-article-lead{font-size:17px}.fireul-article-body{padding:42px 0 60px}.fireul-article-body p,.fireul-article-body li{font-size:16px}.fireul-article-cta{padding:26px 22px}}

/* V54 — Legal pages */
.fireul-legal-page{background:#f7f9fc;color:#041635;min-height:70vh}.fireul-legal-wrap{width:min(920px,calc(100% - 40px));margin:0 auto}.fireul-legal-hero{padding:92px 0 54px;background:radial-gradient(circle at 80% 10%,rgba(0,113,235,.18),transparent 34%),linear-gradient(135deg,#041635 0%,#082650 100%);color:#fff}.fireul-legal-kicker{display:inline-block;font-size:12px;letter-spacing:.16em;font-weight:700;color:#7ec3ff;margin-bottom:14px}.fireul-legal-hero h1{font-size:clamp(38px,6vw,64px);line-height:1.04;letter-spacing:-.04em;font-weight:650;margin:0 0 18px}.fireul-legal-hero p{font-size:18px;line-height:1.7;color:rgba(255,255,255,.78);max-width:700px}.fireul-legal-body{padding:56px 0 80px}.fireul-legal-card{background:#fff;border:1px solid #e8edf5;border-radius:28px;padding:clamp(28px,5vw,58px);box-shadow:0 20px 55px rgba(4,22,53,.07)}.fireul-legal-card h2{font-size:23px;line-height:1.25;font-weight:650;margin:34px 0 12px;color:#041635}.fireul-legal-card h2:first-child{margin-top:0}.fireul-legal-card p{font-size:16px;line-height:1.8;color:#526075;margin:0 0 13px}.fireul-legal-card a{color:#0071eb;text-decoration:underline;text-underline-offset:3px}.fireul-legal-note{margin-top:38px;padding:18px 20px;border-radius:16px;background:#f3f7fd;color:#526075;font-size:14px}@media(max-width:640px){.fireul-legal-hero{padding:72px 0 42px}.fireul-legal-body{padding:30px 0 56px}.fireul-legal-wrap{width:min(100% - 28px,920px)}.fireul-legal-card{border-radius:20px}}
\n\n/* V55 — Homepage: PMS, salaried teams and Fireul vs interim */\n.fireul-difference{padding:96px 0;background:#f7faff;color:#041635}.fireul-difference-head{max-width:850px;margin-bottom:38px}.fireul-difference-head p{max-width:790px;margin:18px auto 0;color:#52627a;font-size:17px;line-height:1.75}.fireul-pms-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center;background:#041635;color:#fff;border-radius:30px;padding:42px 46px;box-shadow:0 22px 60px rgba(4,22,53,.12)}.fireul-mini-kicker{display:block;font-size:12px;letter-spacing:.16em;font-weight:800;color:#2389ff;margin-bottom:10px}.fireul-pms-copy h3,.fireul-employment-card h3,.fireul-compare-title h3{font-size:28px;line-height:1.15;margin:0 0 12px}.fireul-pms-copy p{color:#c7d3e4;line-height:1.7;margin:0}.fireul-pms-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.fireul-pms-list span{min-height:72px;display:flex;align-items:center;justify-content:center;gap:5px;text-align:center;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);border-radius:16px;font-size:18px;font-weight:800;letter-spacing:.01em}.fireul-pms-list small{font-size:11px;font-weight:600;opacity:.75}.fireul-employment-card{margin-top:22px;background:#fff;border:1px solid #dfe8f4;border-radius:24px;padding:30px 34px;display:grid;grid-template-columns:54px 1fr;gap:20px;align-items:start}.fireul-employment-icon{width:54px;height:54px;border-radius:16px;background:#e9f4ff;color:#0071eb;display:grid;place-items:center;font-size:24px;font-weight:900}.fireul-employment-card p{margin:0;color:#5b687b;line-height:1.7}.fireul-compare{margin-top:54px}.fireul-compare-title{text-align:center;max-width:760px;margin:0 auto 26px}.fireul-compare-title>span{font-size:12px;letter-spacing:.16em;font-weight:800;color:#0071eb}.fireul-compare-title p{color:#607086;line-height:1.65}.fireul-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:960px;margin:auto}.fireul-compare-card{background:#fff;border:1px solid #dfe8f4;border-radius:24px;padding:28px}.fireul-compare-card.fireul-compare-us{border:2px solid #0071eb;box-shadow:0 14px 38px rgba(0,113,235,.1)}.fireul-compare-card>strong{display:block;font-size:22px;margin-bottom:17px}.fireul-compare-card.fireul-compare-us>strong{color:#0071eb}.fireul-compare-card ul{list-style:none;padding:0;margin:0}.fireul-compare-card li{position:relative;padding:11px 0 11px 28px;border-top:1px solid #edf1f6;color:#46566b;line-height:1.45}.fireul-compare-card li:first-child{border-top:0}.fireul-compare-card li:before{content:'✓';position:absolute;left:0;color:#0071eb;font-weight:900}.fireul-compare-card:not(.fireul-compare-us) li:before{content:'•';color:#8996a8}.fireul-lead-form select[name="ns_pms"]{background-color:#fff}\n@media(max-width:800px){.fireul-difference{padding:68px 0}.fireul-pms-panel{grid-template-columns:1fr;padding:30px 22px;gap:26px}.fireul-pms-list{grid-template-columns:repeat(2,1fr)}.fireul-compare-grid{grid-template-columns:1fr}.fireul-employment-card{grid-template-columns:1fr;padding:26px 22px}.fireul-pms-copy h3,.fireul-employment-card h3,.fireul-compare-title h3{font-size:24px}}\n

/* V56 — Homepage alignment, spacing and subtle motion */
.fireul-difference-head{text-align:center;margin-left:auto;margin-right:auto}
.fireul-difference-head p{text-align:center}
.fireul-compare{margin-bottom:50px}
.fireul-reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.fireul-reveal.is-visible{opacity:1;transform:none}
.fireul-pms-list span{transition:transform .25s ease,border-color .25s ease,background .25s ease}
.fireul-pms-list span:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.11)}
.fireul-employment-card,.fireul-compare-card{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.fireul-employment-card:hover,.fireul-compare-card:hover{transform:translateY(-5px);box-shadow:0 18px 48px rgba(4,22,53,.10)}
.fireul-compare-card.fireul-compare-us:hover{box-shadow:0 20px 52px rgba(0,113,235,.16)}
@media (prefers-reduced-motion:reduce){.fireul-reveal,.fireul-pms-list span,.fireul-employment-card,.fireul-compare-card{transition:none!important;transform:none!important;opacity:1!important}}

/* V57 — Center the Fireul hospitality team intro */
.fireul-difference-head{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.fireul-difference-head > span{
  display:block;
  width:100%;
  text-align:center;
}

/* === V58: espace entre le hero et la barre clients === */
.fireul-v24-home .v24-client-strip{
  margin-top:80px !important;
}

/* === V60 service pages: Reception jour / Housekeeping / Renfort hotelier === */
.fireul-service-page{background:#fff;color:#07162f;overflow:hidden}
.fsp-hero{position:relative;padding:72px 0 66px;background:radial-gradient(circle at 86% 16%,rgba(0,113,235,.14),transparent 32%),linear-gradient(180deg,#f8fbff 0%,#fff 100%)}
.fsp-hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);gap:64px;align-items:center}
.fsp-kicker{display:inline-block;color:#0071eb;font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin-bottom:16px}
.fsp-hero h1{font-size:clamp(38px,4.4vw,64px);line-height:1.02;letter-spacing:-.045em;font-weight:750;max-width:780px;margin:0}
.fsp-hero-copy>p{max-width:720px;font-size:18px;line-height:1.72;color:#526078;margin:22px 0 0}
.fsp-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.fsp-mini-proof{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.fsp-mini-proof span{padding:9px 12px;border:1px solid #dce7f4;background:#fff;border-radius:999px;color:#44536a;font-size:13px;font-weight:650;box-shadow:0 8px 24px rgba(4,22,53,.05)}
.fsp-hero-media{position:relative;border-radius:30px;overflow:hidden;box-shadow:0 28px 70px rgba(4,22,53,.17);aspect-ratio:4/4.15;background:#eef4fb}
.fsp-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(4,22,53,.12));pointer-events:none}
.fsp-hero-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.fsp-hero-media:hover img{transform:scale(1.025)}
.fsp-section{padding:86px 0}
.fsp-soft{background:#f7faff}
.fsp-heading{text-align:center;max-width:850px;margin:0 auto 42px}
.fsp-heading>span{display:block;color:#0071eb;font-size:12px;font-weight:800;letter-spacing:.14em;margin-bottom:12px}
.fsp-heading h2{font-size:clamp(30px,3.4vw,46px);line-height:1.08;letter-spacing:-.035em;margin:0;font-weight:730}
.fsp-heading p{font-size:17px;color:#617087;line-height:1.7;margin:16px auto 0;max-width:720px}
.fsp-card-grid{display:grid;gap:18px}
.fsp-card-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.fsp-card-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.fsp-card{position:relative;background:#fff;border:1px solid #e5edf6;border-radius:22px;padding:26px;box-shadow:0 12px 34px rgba(4,22,53,.055);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.fsp-card:hover{transform:translateY(-6px);box-shadow:0 18px 46px rgba(4,22,53,.1);border-color:#c9ddf5}
.fsp-card>b{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:10px;background:#eaf4ff;color:#0071eb;font-size:12px;margin-bottom:20px}
.fsp-card h3{font-size:20px;line-height:1.25;margin:0 0 11px;font-weight:720;letter-spacing:-.02em}
.fsp-card p{font-size:15px;line-height:1.65;color:#637188;margin:0}
.fsp-card-featured{border-color:#9ecaff;background:linear-gradient(180deg,#f8fbff,#fff)}
.fsp-band{padding:72px 0;background:#041635;color:#fff}
.fsp-band-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.fsp-band h2{font-size:clamp(30px,3vw,44px);line-height:1.1;letter-spacing:-.035em;margin:0;font-weight:720}
.fsp-checks{display:grid;gap:14px}
.fsp-checks p{margin:0;font-size:16px;line-height:1.55;color:inherit}
.fsp-pms{padding:76px 0;background:#041635;color:#fff}
.fsp-pms-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:72px;align-items:center}
.fsp-pms h2,.fsp-breakfast h2{font-size:clamp(30px,3vw,44px);line-height:1.08;letter-spacing:-.035em;margin:0;font-weight:720}
.fsp-pms p{color:#c4d1e3;font-size:16px;line-height:1.72;max-width:620px;margin-top:16px}
.fsp-pms-cloud{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.fsp-pms-cloud span{display:flex;align-items:center;justify-content:center;min-height:72px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.06);font-size:18px;font-weight:760;transition:transform .25s ease,background .25s ease}
.fsp-pms-cloud span:hover{transform:translateY(-4px);background:rgba(255,255,255,.11)}
.fsp-breakfast{padding:88px 0;background:linear-gradient(135deg,#f4f8ff,#fff)}
.fsp-breakfast-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.fsp-breakfast-media{border-radius:28px;overflow:hidden;box-shadow:0 24px 65px rgba(4,22,53,.15);aspect-ratio:4/4.15}
.fsp-breakfast-media img{width:100%;height:100%;object-fit:cover;display:block}
.fsp-breakfast-copy>p{font-size:17px;line-height:1.72;color:#607087;margin:18px 0 24px}
.fsp-breakfast-copy .fsp-checks{color:#27364e}
.fsp-cta{padding:62px 0;background:linear-gradient(115deg,#0071eb 0%,#0057b8 100%);color:#fff}
.fsp-cta>.v24-container{display:flex;align-items:center;justify-content:space-between;gap:40px}
.fsp-cta span:not(.v24-btn span){font-size:12px;letter-spacing:.15em;font-weight:800;opacity:.82}
.fsp-cta h2{font-size:clamp(28px,3vw,42px);line-height:1.08;letter-spacing:-.035em;margin:9px 0 10px;font-weight:720;max-width:820px}
.fsp-cta p{margin:0;color:#e3efff;font-size:16px}
@media(max-width:980px){.fsp-hero-grid,.fsp-band-grid,.fsp-pms-grid,.fsp-breakfast-grid{grid-template-columns:1fr;gap:38px}.fsp-hero{padding:54px 0}.fsp-hero-media{max-height:540px}.fsp-card-grid-4{grid-template-columns:repeat(2,1fr)}.fsp-cta>.v24-container{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.fsp-hero{padding:38px 0 44px}.fsp-hero h1{font-size:38px}.fsp-hero-copy>p{font-size:16px}.fsp-section{padding:64px 0}.fsp-card-grid-4,.fsp-card-grid-3,.fsp-pms-cloud{grid-template-columns:1fr}.fsp-hero-media,.fsp-breakfast-media{border-radius:22px}.fsp-card{padding:22px}.fsp-pms,.fsp-band,.fsp-breakfast{padding:62px 0}.fsp-mini-proof{gap:7px}.fsp-mini-proof span{font-size:12px}}

/* === V61 — Site-wide scroll motion: smooth, restrained SaaS-style reveals === */
.fireul-motion{opacity:0;transform:translate3d(0,28px,0);transition:opacity .78s cubic-bezier(.22,1,.36,1),transform .78s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}
.fireul-motion.fireul-motion-left{transform:translate3d(-28px,0,0)}
.fireul-motion.fireul-motion-right{transform:translate3d(28px,0,0)}
.fireul-motion.fireul-motion-scale{transform:translate3d(0,18px,0) scale(.965)}
.fireul-motion.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1)}
.fireul-stagger-1{transition-delay:.06s}.fireul-stagger-2{transition-delay:.12s}.fireul-stagger-3{transition-delay:.18s}.fireul-stagger-4{transition-delay:.24s}.fireul-stagger-5{transition-delay:.30s}.fireul-stagger-6{transition-delay:.36s}
.fireul-float-card{transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s ease,border-color .32s ease}
.fireul-float-card:hover{transform:translateY(-6px);box-shadow:0 18px 46px rgba(4,22,53,.10)}
.fireul-motion-media{overflow:hidden}
.fireul-motion-media img{transition:transform 1.15s cubic-bezier(.22,1,.36,1)}
.fireul-motion-media.is-visible img{transform:scale(1.018)}

/* FAQ */
.fireul-faq-page{background:#fff;color:#041635}.faq-hero{position:relative;overflow:hidden;padding:120px 0 92px;background:linear-gradient(145deg,#041635 0%,#071f49 63%,#0a3975 100%);color:#fff}.faq-hero:before,.faq-hero:after{content:"";position:absolute;border-radius:999px;filter:blur(2px);pointer-events:none}.faq-hero:before{width:460px;height:460px;right:-120px;top:-190px;background:radial-gradient(circle,rgba(0,113,235,.34),rgba(0,113,235,0) 70%)}.faq-hero:after{width:340px;height:340px;left:-130px;bottom:-180px;background:radial-gradient(circle,rgba(65,170,255,.16),rgba(65,170,255,0) 72%)}.faq-hero-inner{position:relative;z-index:1;max-width:900px;text-align:center}.faq-kicker{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.15em;color:#67b7ff;margin-bottom:18px}.faq-hero h1{font-size:clamp(2.4rem,5.3vw,4.9rem);line-height:1.02;letter-spacing:-.045em;max-width:980px;margin:0 auto 24px}.faq-hero p{max-width:720px;margin:0 auto 32px;color:rgba(255,255,255,.76);font-size:1.08rem;line-height:1.75}.faq-main{padding:104px 0}.faq-layout{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:72px;align-items:start}.faq-aside{position:sticky;top:110px;padding:30px;border:1px solid #e6edf7;border-radius:24px;background:linear-gradient(180deg,#f9fbff,#fff);box-shadow:0 16px 45px rgba(4,22,53,.06)}.faq-aside .faq-kicker{color:#0071eb;margin-bottom:12px}.faq-aside h2{font-size:1.8rem;line-height:1.12;letter-spacing:-.03em;margin:0 0 14px}.faq-aside p{color:#64748b;line-height:1.7;margin:0 0 18px}.faq-aside a{font-weight:800;color:#0071eb;text-decoration:none}.faq-list{border-top:1px solid #dfe7f1}.faq-item{border-bottom:1px solid #dfe7f1}.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;text-align:left;border:0;background:transparent;padding:26px 0;color:#041635;font:inherit;font-size:1.1rem;font-weight:800;cursor:pointer}.faq-question:hover{color:#0071eb}.faq-plus{flex:0 0 34px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eef6ff;color:#0071eb;font-size:1.35rem;transition:transform .28s ease,background .28s ease,color .28s ease}.faq-question[aria-expanded="true"] .faq-plus{transform:rotate(45deg);background:#0071eb;color:#fff}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .36s cubic-bezier(.22,1,.36,1),opacity .3s ease;opacity:.25}.faq-answer>div{overflow:hidden}.faq-answer p{padding:0 56px 24px 0;margin:0;color:#607086;line-height:1.75}.faq-answer.is-open{grid-template-rows:1fr;opacity:1}.faq-cta{padding:0 0 96px}.faq-cta-inner{background:linear-gradient(135deg,#071b3a,#0071eb);border-radius:30px;padding:42px 46px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:32px;box-shadow:0 22px 55px rgba(0,67,145,.18)}.faq-cta-inner span{font-size:.76rem;font-weight:800;letter-spacing:.12em;color:#8dcbff}.faq-cta-inner h2{margin:8px 0 0;font-size:clamp(1.75rem,3vw,2.55rem);letter-spacing:-.03em;max-width:720px}
@media(max-width:900px){.faq-hero{padding:94px 0 72px}.faq-main{padding:76px 0}.faq-layout{grid-template-columns:1fr;gap:34px}.faq-aside{position:static}.faq-cta-inner{align-items:flex-start;flex-direction:column}.faq-answer p{padding-right:0}}
@media (prefers-reduced-motion:reduce){.fireul-motion,.fireul-motion *,.fireul-float-card,.fireul-motion-media img,.faq-answer,.faq-plus{transition:none!important;transform:none!important;animation:none!important;opacity:1!important}}


/* === V62 — visible SaaS-style motion, cache-busted with main.js === */
.fireul-motion-v62{
  --fireul-delay:0ms;
  opacity:0;
  transform:translate3d(0,46px,0);
  transition:
    opacity .78s cubic-bezier(.16,1,.3,1) var(--fireul-delay),
    transform .88s cubic-bezier(.16,1,.3,1) var(--fireul-delay),
    filter .88s cubic-bezier(.16,1,.3,1) var(--fireul-delay);
  filter:blur(3px);
  will-change:transform,opacity,filter;
}
.fireul-motion-v62.fireul-rise{transform:translate3d(0,42px,0)}
.fireul-motion-v62.fireul-from-left{transform:translate3d(-56px,14px,0)}
.fireul-motion-v62.fireul-from-right{transform:translate3d(56px,14px,0)}
.fireul-motion-v62.fireul-card-pop{transform:translate3d(0,34px,0) scale(.955)}
.fireul-motion-v62.fireul-media-zoom{transform:translate3d(0,30px,0) scale(.94);filter:blur(2px)}
.fireul-motion-v62.is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:blur(0);
}
.fireul-motion-grid{perspective:1200px}
.fireul-float-card{transition:transform .34s cubic-bezier(.16,1,.3,1),box-shadow .34s ease,border-color .34s ease!important}
.fireul-float-card:hover{transform:translateY(-8px) scale(1.012)!important;box-shadow:0 24px 58px rgba(4,22,53,.13)!important}
.v24-home-collage.fireul-motion-v62.is-visible .v24-main-photo,
.fireul-media-zoom.is-visible img{animation:fireulMediaSettle 1.25s cubic-bezier(.16,1,.3,1) both}
@keyframes fireulMediaSettle{0%{transform:scale(1.045)}100%{transform:scale(1)}}

/* small ambient movement on decorative hero shapes */
.v24-orbit{animation:fireulOrbitFloat 7s ease-in-out infinite alternate}
.v24-orbit-b{animation-delay:-2.4s;animation-duration:8.5s}
@keyframes fireulOrbitFloat{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-14px,0)}}

@media (prefers-reduced-motion:reduce){
  .fireul-motion-v62,.fireul-motion-v62 *,.v24-orbit{transition:none!important;animation:none!important;transform:none!important;opacity:1!important;filter:none!important}
}

/* V63 — Hero safety: never hide or translate hero content/images. */
.v24-home-hero .fireul-motion-v62,
.fsp-hero .fireul-motion-v62,
.faq-hero .fireul-motion-v62,
.v24-hero .fireul-motion-v62,
.page-hero .fireul-motion-v62,
.ext-hero .fireul-motion-v62{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
  visibility:visible !important;
}
.v24-home-hero .v24-hero-copy,
.v24-home-hero .v24-home-collage,
.v24-home-hero .v24-photo,
.fsp-hero .fsp-hero-copy,
.fsp-hero .fsp-hero-media,
.faq-hero .faq-hero-inner,
.ext-hero .ext-hero-copy,
.ext-hero .ext-hero-media{
  opacity:1 !important;
  visibility:visible !important;
}
