/* RAFimport patch v61: hero lead form, blue stats and floating video gallery.
   The rest of the page is intentionally untouched. */

/* Key hero numbers: blue accent as requested. */
.raf-home .raf-hero__stats b{
  color:#29aaf2 !important;
  text-shadow:0 0 28px rgba(41,170,242,.22) !important;
}

/* Right-side request form replaces the former hero video block. */
.raf-home .raf-hero-lead{
  position:relative !important;
  isolation:isolate !important;
  justify-self:end !important;
  align-self:end !important;
  width:100% !important;
  max-width:440px !important;
  margin:0 !important;
  padding:28px 26px 24px !important;
  overflow:hidden !important;
  color:#fff !important;
  border-radius:28px !important;
  border:1px solid rgba(155,218,252,.30) !important;
  background:
    radial-gradient(circle at 18% 0%,rgba(38,167,242,.18),transparent 38%),
    linear-gradient(145deg,rgba(13,47,73,.88),rgba(5,24,40,.91)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 34px 90px rgba(0,0,0,.36) !important;
  backdrop-filter:blur(22px) saturate(140%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(140%) !important;
}
.raf-home .raf-hero-lead::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(255,255,255,.08),transparent 42%),
    radial-gradient(circle at 100% 100%,rgba(18,133,207,.18),transparent 42%);
}
.raf-hero-lead__head{
  max-width:360px;
  margin:0 auto 22px;
  text-align:center;
}
.raf-hero-lead__head > span{
  display:inline-block;
  margin-bottom:9px;
  color:#84d8ff;
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.raf-hero-lead__head h2{
  margin:0;
  color:#fff;
  font-size:34px;
  line-height:1;
  letter-spacing:-.045em;
  font-weight:950;
}
.raf-hero-lead__head p{
  margin:11px 0 0;
  color:rgba(235,245,252,.78);
  font-size:14px;
  line-height:1.45;
}
.raf-hero-lead__form{
  display:grid;
  gap:12px;
}
.raf-hero-lead__field{
  position:relative;
  display:flex;
  align-items:center;
  min-height:55px;
  margin:0;
  padding:0 16px 0 52px;
  border-radius:15px;
  border:1px solid rgba(190,229,251,.17);
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.raf-hero-lead__field:focus-within{
  border-color:rgba(63,184,246,.64);
  background:rgba(255,255,255,.10);
  box-shadow:0 0 0 3px rgba(32,154,220,.10),inset 0 1px 0 rgba(255,255,255,.10);
}
.raf-hero-lead__icon{
  position:absolute;
  left:17px;
  top:50%;
  width:22px;
  height:22px;
  transform:translateY(-50%);
  color:rgba(218,239,251,.70);
}
.raf-hero-lead__icon svg{
  display:block;
  width:100%;
  height:100%;
}
.raf-hero-lead__field input,
.raf-hero-lead__field select{
  width:100%;
  height:53px;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
  outline:0;
  color:#fff;
  background:transparent;
  font:inherit;
  font-size:14px;
  font-weight:700;
}
.raf-hero-lead__field input::placeholder{
  color:rgba(229,241,249,.58);
  opacity:1;
}
.raf-hero-lead__field select{
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
}
.raf-hero-lead__field select option{
  color:#0b1b29;
  background:#fff;
}
.raf-hero-lead__chevron{
  position:absolute;
  right:18px;
  top:50%;
  width:9px;
  height:9px;
  transform:translateY(-68%) rotate(45deg);
  border-right:2px solid rgba(237,247,253,.82);
  border-bottom:2px solid rgba(237,247,253,.82);
  pointer-events:none;
}
.raf-hero-lead__field--select{
  padding-right:44px;
}
.raf-hero-lead__consent{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  align-items:start;
  gap:9px;
  margin:2px 0 0;
  cursor:pointer;
}
.raf-hero-lead__consent input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.raf-hero-lead__consent > span{
  position:relative;
  width:19px;
  height:19px;
  margin-top:1px;
  border-radius:5px;
  border:1px solid rgba(83,190,247,.72);
  background:rgba(2,19,32,.42);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.raf-hero-lead__consent input:checked + span{
  background:linear-gradient(135deg,#29aaf2,#0871bd);
  border-color:#29aaf2;
}
.raf-hero-lead__consent input:checked + span::after{
  content:"";
  position:absolute;
  left:5px;
  top:2px;
  width:5px;
  height:9px;
  border-right:2px solid #fff;
  border-bottom:2px solid #fff;
  transform:rotate(45deg);
}
.raf-hero-lead__consent small{
  color:rgba(222,238,248,.68);
  font-size:11px;
  line-height:1.35;
}
.raf-hero-lead__submit{
  min-height:57px;
  margin-top:3px;
  padding:0 22px;
  border:0;
  border-radius:16px;
  color:#fff;
  background:linear-gradient(135deg,#22a9ef 0%,#118dd6 50%,#0762a7 100%);
  box-shadow:0 18px 36px rgba(13,119,188,.28),inset 0 1px 0 rgba(255,255,255,.24);
  font-size:15px;
  font-weight:900;
  cursor:pointer;
  transition:transform .2s ease,filter .2s ease,box-shadow .2s ease;
}
.raf-hero-lead__submit:hover{
  transform:translateY(-1px);
  filter:brightness(1.08);
  box-shadow:0 22px 42px rgba(13,119,188,.34),inset 0 1px 0 rgba(255,255,255,.26);
}
.raf-hero-lead__submit:disabled{
  opacity:.65;
  cursor:wait;
  transform:none;
}
.raf-hero-lead__safe{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin:2px 0 0;
  color:rgba(220,236,246,.55);
  font-size:10px;
  line-height:1.3;
  text-align:center;
}
.raf-hero-lead__safe svg{
  flex:0 0 15px;
  width:15px;
  height:15px;
}

/* Small floating video launcher that stays on the left while scrolling. */
.raf-video-float{
  position:fixed;
  left:clamp(14px,2.1vw,34px);
  top:56%;
  z-index:80;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  width:104px;
  margin:0;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  cursor:pointer;
  filter:drop-shadow(0 18px 30px rgba(2,18,31,.22));
}
.raf-video-float__thumb{
  position:relative;
  display:block;
  width:84px;
  height:84px;
  overflow:hidden;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.88);
  background:#061724;
  box-shadow:
    0 0 0 5px rgba(34,169,239,.12),
    0 0 34px rgba(36,174,246,.36),
    0 16px 36px rgba(0,0,0,.30);
  transition:transform .22s ease,box-shadow .22s ease;
}
.raf-video-float:hover .raf-video-float__thumb{
  transform:scale(1.045);
  box-shadow:0 0 0 6px rgba(34,169,239,.17),0 0 42px rgba(36,174,246,.46),0 20px 42px rgba(0,0,0,.32);
}
.raf-video-float__thumb img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  filter:brightness(.78) saturate(1.05);
}
.raf-video-float__thumb::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,20,34,.34));
}
.raf-video-float__play,
.raf-video-choice__play{
  position:absolute;
  left:50%;
  top:50%;
  z-index:2;
  width:36px;
  height:36px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:rgba(255,255,255,.95);
  box-shadow:0 10px 24px rgba(0,0,0,.26);
}
.raf-video-float__play::after,
.raf-video-choice__play::after{
  content:"";
  position:absolute;
  left:15px;
  top:11px;
  border-left:11px solid #138ed1;
  border-top:7px solid transparent;
  border-bottom:7px solid transparent;
}
.raf-video-float__label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 10px;
  border:1px solid rgba(138,211,247,.24);
  border-radius:999px;
  color:#fff;
  background:rgba(3,24,40,.88);
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-size:10px;
  line-height:1;
  font-weight:800;
  white-space:nowrap;
}

/* Video chooser modal. */
.raf-video-modal[hidden]{
  display:none !important;
}
.raf-video-modal{
  position:fixed;
  inset:0;
  z-index:1600;
  display:grid;
  place-items:center;
  padding:20px;
}
.raf-video-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(1,10,18,.76);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.raf-video-modal__dialog{
  position:relative;
  z-index:1;
  width:min(1080px,calc(100vw - 40px));
  max-height:calc(100vh - 40px);
  overflow:auto;
  padding:28px;
  border-radius:28px;
  border:1px solid rgba(145,211,246,.26);
  color:#fff;
  background:
    radial-gradient(circle at 10% 0%,rgba(31,159,226,.18),transparent 34%),
    linear-gradient(145deg,#0d2b44 0%,#061827 58%,#03121e 100%);
  box-shadow:0 38px 110px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.10);
}
.raf-video-modal__close{
  position:absolute;
  right:20px;
  top:18px;
  z-index:3;
  width:42px;
  height:42px;
  border:1px solid rgba(207,235,249,.18);
  border-radius:50%;
  color:#fff;
  background:rgba(255,255,255,.07);
  font-size:27px;
  line-height:1;
  cursor:pointer;
}
.raf-video-modal__head{
  max-width:720px;
  margin:0 56px 24px 0;
}
.raf-video-modal__head > span{
  color:#72d0ff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.raf-video-modal__head h2{
  margin:8px 0 0;
  color:#fff;
  font-size:36px;
  line-height:1;
  letter-spacing:-.045em;
}
.raf-video-modal__head p{
  margin:10px 0 0;
  color:rgba(226,240,249,.68);
  font-size:14px;
  line-height:1.5;
}
.raf-video-modal__body{
  display:grid;
  grid-template-columns:minmax(280px,340px) minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.raf-video-modal__list{
  display:grid;
  gap:10px;
}
.raf-video-choice{
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  align-items:center;
  gap:12px;
  width:100%;
  min-height:88px;
  padding:9px;
  border:1px solid rgba(183,224,247,.14);
  border-radius:16px;
  color:#fff;
  background:rgba(255,255,255,.045);
  text-align:left;
  cursor:pointer;
  transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.raf-video-choice:hover,
.raf-video-choice.is-active{
  border-color:rgba(55,181,244,.58);
  background:rgba(31,148,209,.12);
  transform:translateX(2px);
}
.raf-video-choice__media{
  position:relative;
  display:block;
  width:116px;
  height:70px;
  overflow:hidden;
  border-radius:11px;
  background:#061521;
}
.raf-video-choice__media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  filter:brightness(.80);
}
.raf-video-choice__media small{
  position:absolute;
  right:6px;
  bottom:5px;
  z-index:3;
  padding:2px 5px;
  border-radius:5px;
  color:#fff;
  background:rgba(0,0,0,.62);
  font-size:9px;
}
.raf-video-choice__play{
  width:28px;
  height:28px;
}
.raf-video-choice__play::after{
  left:12px;
  top:8px;
  border-left-width:9px;
  border-top-width:6px;
  border-bottom-width:6px;
}
.raf-video-choice__copy{
  min-width:0;
}
.raf-video-choice__copy strong{
  display:block;
  color:#fff;
  font-size:13px;
  line-height:1.2;
}
.raf-video-choice__copy small{
  display:block;
  margin-top:5px;
  color:rgba(221,238,248,.60);
  font-size:10px;
  line-height:1.35;
}
.raf-video-modal__player{
  overflow:hidden;
  border:1px solid rgba(181,224,247,.16);
  border-radius:20px;
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.raf-video-modal__screen{
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#020b12;
}
.raf-video-modal__screen video{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#000;
}
.raf-video-modal__caption{
  padding:18px 20px 20px;
}
.raf-video-modal__caption strong{
  display:block;
  color:#fff;
  font-size:20px;
  line-height:1.15;
}
.raf-video-modal__caption p{
  margin:7px 0 0;
  color:rgba(220,237,247,.65);
  font-size:13px;
  line-height:1.45;
}
html.raf-video-modal-open,
body.raf-video-modal-open{
  overflow:hidden !important;
}

@media(max-width:1180px){
  .raf-home .raf-hero__inner{
    grid-template-columns:1fr !important;
    gap:26px !important;
    align-items:start !important;
  }
  .raf-home .raf-hero__content,
  .raf-home .raf-hero-lead{
    justify-self:start !important;
    align-self:auto !important;
    max-width:760px !important;
  }
  .raf-home .raf-hero-lead{
    padding:26px !important;
  }
  .raf-video-float{
    left:16px;
    top:auto;
    bottom:96px;
    width:78px;
  }
  .raf-video-float__thumb{
    width:68px;
    height:68px;
  }
  .raf-video-float__label{
    display:none;
  }
}

@media(max-width:820px){
  .raf-video-modal__dialog{
    width:min(720px,calc(100vw - 24px));
    max-height:calc(100vh - 24px);
    padding:22px;
    border-radius:22px;
  }
  .raf-video-modal__head h2{
    font-size:31px;
  }
  .raf-video-modal__body{
    grid-template-columns:1fr;
  }
  .raf-video-modal__list{
    display:flex;
    gap:10px;
    overflow-x:auto;
    padding-bottom:4px;
    scrollbar-width:none;
  }
  .raf-video-modal__list::-webkit-scrollbar{display:none;}
  .raf-video-choice{
    flex:0 0 280px;
  }
}

@media(max-width:780px){
  .raf-home .raf-hero__stats b{
    font-size:24px !important;
  }
  .raf-home .raf-hero-lead{
    max-width:none !important;
    padding:22px 18px 20px !important;
    border-radius:24px !important;
  }
  .raf-hero-lead__head{
    margin-bottom:18px;
  }
  .raf-hero-lead__head h2{
    font-size:30px;
  }
  .raf-hero-lead__head p{
    font-size:13px;
  }
  .raf-hero-lead__field{
    min-height:52px;
  }
  .raf-hero-lead__field input,
  .raf-hero-lead__field select{
    height:50px;
  }
  .raf-hero-lead__submit{
    min-height:54px;
  }
}

@media(max-width:560px){
  .raf-video-float{
    left:12px;
    bottom:82px;
    width:64px;
  }
  .raf-video-float__thumb{
    width:58px;
    height:58px;
    border-width:1px;
  }
  .raf-video-float__play{
    width:30px;
    height:30px;
  }
  .raf-video-float__play::after{
    left:13px;
    top:9px;
    border-left-width:9px;
    border-top-width:6px;
    border-bottom-width:6px;
  }
  .raf-video-modal{
    padding:7px;
  }
  .raf-video-modal__dialog{
    width:100%;
    max-height:calc(100vh - 14px);
    padding:18px 14px 16px;
    border-radius:20px;
  }
  .raf-video-modal__close{
    right:12px;
    top:11px;
    width:38px;
    height:38px;
  }
  .raf-video-modal__head{
    margin-right:44px;
    margin-bottom:18px;
  }
  .raf-video-modal__head h2{
    font-size:27px;
  }
  .raf-video-modal__head p{
    font-size:12px;
  }
  .raf-video-choice{
    flex-basis:246px;
    grid-template-columns:96px minmax(0,1fr);
  }
  .raf-video-choice__media{
    width:96px;
    height:62px;
  }
  .raf-video-choice__copy small{
    display:none;
  }
  .raf-video-modal__caption{
    padding:14px 15px 16px;
  }
  .raf-video-modal__caption strong{
    font-size:17px;
  }
}

/* Icon treatment for the three requested advantages. */
.raf-home .raf-hero__stats > .raf-hero-stat{
  display:grid !important;
  grid-template-columns:42px minmax(0,1fr) !important;
  align-items:center !important;
  gap:12px !important;
}
.raf-home .raf-hero__stats .raf-hero-stat__icon{
  display:grid !important;
  place-items:center !important;
  width:42px !important;
  height:42px !important;
  margin:0 !important;
  border-radius:50% !important;
  color:#7dd7ff !important;
  background:linear-gradient(145deg,rgba(31,164,232,.86),rgba(7,91,160,.90)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 12px 26px rgba(8,100,164,.24) !important;
}
.raf-home .raf-hero__stats .raf-hero-stat__icon svg{
  width:22px !important;
  height:22px !important;
}
.raf-home .raf-hero__stats .raf-hero-stat__copy{
  display:block !important;
  min-width:0 !important;
  margin:0 !important;
  color:inherit !important;
  font-size:inherit !important;
  line-height:inherit !important;
}
.raf-home .raf-hero__stats .raf-hero-stat__copy b{
  display:block !important;
  margin:0 !important;
}
.raf-home .raf-hero__stats .raf-hero-stat__copy small{
  display:block !important;
  margin-top:7px !important;
  color:rgba(255,255,255,.72) !important;
  font-size:12px !important;
  line-height:1.18 !important;
  font-weight:850 !important;
}
@media(max-width:780px){
  .raf-home .raf-hero__stats > .raf-hero-stat{
    grid-template-columns:38px minmax(0,1fr) !important;
  }
  .raf-home .raf-hero__stats .raf-hero-stat__icon{
    width:38px !important;
    height:38px !important;
  }
}
