/* ===== Hero Form 2026 ===== */
.sm-hero25{
  --sm25-bg1:#3b0863; --sm25-bg2:#7040dc;
  --sm25-strip1:#ed1c8f; --sm25-strip2:#7040dc;
  --sm25-accent:#ffde8a;
  --sm25-max:1310px; --sm25-pad:24px;
  position:relative; width:100%; color:#fff;
  background:linear-gradient(-66.24deg,var(--sm25-bg1) 0%,var(--sm25-bg2) 95.6%);
}
.sm-hero25 *{box-sizing:border-box}
.sm-hero25 .sm-hero25--m{display:none}
/* accent hairlines top + bottom of the module (Figma Rectangle 1220 / 1312) */
.sm-hero25::before,.sm-hero25::after{content:"";position:absolute;left:0;right:0;height:5px;z-index:4}
.sm-hero25::before{top:0;background:linear-gradient(252.61deg,var(--sm25-bg2) 8.58%,var(--sm25-accent) 53.65%,#c37bfb 93.8%)}
.sm-hero25::after{bottom:0;background:linear-gradient(252.74deg,var(--sm25-bg2) 26.8%,var(--sm25-accent) 37%,#c37bfb 93.8%)}

/* let the module run edge to edge inside a drag-and-drop section */
.dnd-section:has(.sm-hero25){padding:0!important;background-image:none!important}
.dnd-section:has(.sm-hero25)>.row-fluid{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
.dnd-section:has(.sm-hero25)>.row-fluid::before,
.dnd-section:has(.sm-hero25)>.row-fluid::after{display:none}
.dnd-section:has(.sm-hero25) .dnd-column,
.dnd-section:has(.sm-hero25) .dnd-row,
.dnd-section:has(.sm-hero25) .dnd-module{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;float:none!important;background:none!important;box-shadow:none!important}

/* ---- headline + form ---- */
.sm-hero25__top{display:flex;align-items:flex-start;gap:24px;width:100%;max-width:var(--sm25-max);
  margin:0 auto;padding:90px var(--sm25-pad) 48px;min-height:498px}
.sm-hero25__copy{flex:1 1 auto;min-width:0;max-width:797px}
.sm-hero25__title{margin:0;color:#fff;font-weight:700;font-size:clamp(34px,4.62vw,66.6px);line-height:1.1;letter-spacing:-.01em}
.sm-hero25__sub{margin:28px 0 0;max-width:654px;color:#fff;font-weight:500;font-size:20px;line-height:1.6;letter-spacing:-.01em}
.sm-hero25__formwrap{position:relative;flex:0 0 522px;max-width:100%;margin-top:-35px;padding:35px 41px 32px;
  border:3px solid transparent;border-radius:21px;
  background:linear-gradient(180deg,rgba(239,239,239,.6) 0%,rgba(255,255,255,.7) 100%) padding-box}
/* Figma core-gradient stroke on the form card (Rectangle 1362) */
.sm-hero25__formwrap::before{content:"";position:absolute;inset:-3px;border-radius:inherit;padding:3px;pointer-events:none;
  background:linear-gradient(224deg,var(--sm25-bg2) 0%,#fbd98c 71%,#e0acc1 100%);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude}

.sm-hero25 form.hs-form{background:transparent!important;background-image:none!important;box-shadow:none!important;border:0!important;padding:0!important;margin:0!important}
.sm-hero25 .hs-form fieldset{max-width:none!important;margin:0!important}
.sm-hero25 .hs-form .hs-form-field{position:relative;margin:0 0 16px!important;padding:0!important}
.sm-hero25 .hs-form .hs-form-field>label{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.sm-hero25 .hs-form .input{margin:0!important}
.sm-hero25 .hs-form input[type=text],
.sm-hero25 .hs-form input[type=email],
.sm-hero25 .hs-form input[type=tel],
.sm-hero25 .hs-form input[type=number],
.sm-hero25 .hs-form select,
.sm-hero25 .hs-form textarea{width:100%!important;height:59px!important;min-height:0!important;padding:0 25px!important;
  border:1px solid rgba(17,17,17,.1)!important;border-radius:9px!important;background:#fff!important;
  font-size:18px!important;line-height:57px!important;color:#212121!important;box-sizing:border-box!important;
  box-shadow:0 1px 2px rgba(16,24,40,.06)!important;-webkit-appearance:none;appearance:none}
.sm-hero25 .hs-form textarea{height:auto!important;line-height:1.5!important;padding:16px 25px!important}
.sm-hero25 .hs-form ::placeholder{color:rgba(0,0,0,.6);opacity:1}
.sm-hero25 .hs-form .hs-button,
.sm-hero25 .hs-form input[type=submit]{display:block;width:270px;max-width:100%;height:56px;margin:12px 0 0;padding:0 20px;
  border:1px solid #fff;border-radius:160px;cursor:pointer;
  background:linear-gradient(270deg,#56189e 42.7%,var(--sm25-bg2) 98.7%);
  color:#fafafa;font-size:20px;font-weight:700;line-height:54px;text-align:center;-webkit-appearance:none;appearance:none}
.sm-hero25 .hs-form .hs-error-msg,
.sm-hero25 .hs-form .hs-error-msgs label{color:#b3003c;font-size:13px}

/* ---- recognition strip ---- */
.sm-hero25__strip{position:relative;background:linear-gradient(103.52deg,var(--sm25-strip1) 15.9%,var(--sm25-strip2) 96.5%)}
.sm-hero25__strip::before,.sm-hero25__strip::after{content:"";position:absolute;left:0;right:0;height:5px;z-index:2;
  background:linear-gradient(252.61deg,var(--sm25-bg2) 8.6%,var(--sm25-accent) 53.7%,#c37bfb 93.8%)}
.sm-hero25__strip::before{top:0}
.sm-hero25__strip::after{bottom:0}
.sm-hero25__track{display:flex;align-items:stretch;width:100%;max-width:var(--sm25-max);margin:0 auto;padding:0 var(--sm25-pad);min-height:159px}
.sm-hero25__cell{position:relative;flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:20px;padding:19px 24px}
.sm-hero25__cell+.sm-hero25__cell::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:112px;background:rgba(255,255,255,.5)}
.sm-hero25__pic{flex:0 0 auto;display:block}
.sm-hero25__logo{display:block;width:auto;height:var(--sm25-lh,77px);max-width:100%;object-fit:contain}
.sm-hero25__b50{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:76px;height:76px;
  border:1.4px solid #fff;color:#fff;font-size:32.7px;font-weight:700;letter-spacing:-.02em}
.sm-hero25__ct{display:flex;flex-direction:column;gap:2px;color:#fff;min-width:0}
.sm-hero25__ct strong{font-size:23px;font-weight:700;line-height:1.42}
.sm-hero25__ct span{font-size:17px;font-weight:600;line-height:1.42;max-width:225px}
.sm-hero25__dots{display:none}

/* ---- discount banner ---- */
.sm-hero25__band{width:100%;max-width:var(--sm25-max);margin:0 auto;padding:63px var(--sm25-pad);
  text-align:center;color:#fff;font-size:clamp(22px,2.85vw,40px);font-weight:600;line-height:1.42}
.sm-hero25__em{margin-right:.28em;font-style:italic;font-weight:700;color:var(--sm25-accent)}
.sm-hero25__em b{font-weight:inherit}

/* ---- mobile ---- */
@media (max-width:991px){
  .sm-hero25 .sm-hero25--d{display:none!important}
  .sm-hero25 .sm-hero25--m{display:block}
  .sm-hero25 .sm-hero25__ct.sm-hero25--m{display:flex}
  .sm-hero25__top{display:block;min-height:0;padding:40px 24px 0}
  .sm-hero25__copy{max-width:none}
  .sm-hero25__title{font-size:28px;line-height:1.16}
  .sm-hero25__sub{margin-top:16px;max-width:none;font-size:14px;line-height:1.5}
  .sm-hero25__formwrap{width:auto!important;max-width:none!important;flex:0 0 auto;margin:28px -24px 0;padding:30px 30px 34px;border-width:3px 0 0;border-radius:0}
  .sm-hero25 .hs-form .hs-form-field{margin-bottom:12px!important}
  .sm-hero25 .hs-form input[type=text],
  .sm-hero25 .hs-form input[type=email],
  .sm-hero25 .hs-form input[type=tel],
  .sm-hero25 .hs-form select{height:44px!important;padding:0 19px!important;border-radius:7px!important;font-size:15px!important;line-height:42px!important}
  .sm-hero25 .hs-form .hs-button,
  .sm-hero25 .hs-form input[type=submit]{width:202px;height:42px;margin-top:14px;font-size:15px;line-height:40px}
  .sm-hero25__track{max-width:none;min-height:0;padding:0;overflow-x:auto;scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
  .sm-hero25__track::-webkit-scrollbar{display:none}
  .sm-hero25__cell{flex:0 0 100%;scroll-snap-align:center;flex-direction:column;align-items:flex-start;gap:14px;padding:34px 40px 46px;min-height:257px;text-align:left}
  .sm-hero25__cell+.sm-hero25__cell::before{display:none}
  .sm-hero25__logo{height:var(--sm25-lhm,115px)}
  .sm-hero25__b50{width:123px;height:95px;font-size:40.8px}
  .sm-hero25__ct{align-items:flex-start;gap:6px}
  .sm-hero25__ct strong{font-size:21.9px}
  .sm-hero25__ct span{font-size:16px;max-width:300px}
  .sm-hero25__dots{display:flex;position:absolute;left:0;right:0;bottom:18px;z-index:3;justify-content:center;gap:8px}
  .sm-hero25__dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.45);cursor:pointer;transition:width .2s}
  .sm-hero25__dots button.is-on{width:20px;border-radius:4px;background:#fff}
  .sm-hero25__band{padding:43px 24px 63px;font-size:25.6px;font-style:italic;line-height:1.25}
  .sm-hero25__em{display:block;margin:0 0 6px;line-height:.93}
  .sm-hero25__em b{display:block;font-size:56.1px;line-height:1.22;font-weight:700}
  /* Figma mobile: the gold lines are filled with the core gradient, not a flat colour */
  @supports ((-webkit-background-clip:text) or (background-clip:text)){
    .sm-hero25__em{background-image:linear-gradient(187.55deg,var(--sm25-bg2) 9.96%,var(--sm25-accent) 69.14%,#c37bfb 121.87%);background-repeat:no-repeat;background-size:100% 26px;background-position:left bottom;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
    .sm-hero25__em b{width:fit-content;margin:0 auto;background-image:linear-gradient(213.73deg,var(--sm25-bg2) 9.96%,var(--sm25-accent) 69.14%,#c37bfb 121.87%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
  }
  /* accent hairlines, Figma mobile values */
  .sm-hero25::before{height:10px;background:linear-gradient(267.5deg,var(--sm25-bg2) 8.58%,var(--sm25-accent) 53.65%,#c37bfb 93.8%)}
  .sm-hero25::after{height:8px;background:linear-gradient(129.17deg,var(--sm25-bg2) 30.84%,var(--sm25-accent) 102.78%,#c37bfb 166.87%)}
  .sm-hero25__strip::before,.sm-hero25__strip::after{background:linear-gradient(256.65deg,var(--sm25-bg2) 8.58%,var(--sm25-accent) 53.65%,#c37bfb 93.8%)}
  /* ---- exact Figma mobile values ---- */
  .sm-hero25{background:linear-gradient(-79.76deg,var(--sm25-bg1) 0%,var(--sm25-bg2) 95.64%)}
  .sm-hero25__strip{background:linear-gradient(99.84deg,var(--sm25-strip1) 5.04%,var(--sm25-strip2) 45.61%)}
  .sm-hero25__band{background:linear-gradient(-70.86deg,var(--sm25-bg1) 0%,var(--sm25-bg2) 95.64%)}
  .sm-hero25__formwrap::before{inset:-3px 0 0;border-radius:0;padding:3px 0 0}
}