/* ===============================
   MOBILE OVERRIDES (<= 900px)
   =============================== */
   @media (max-width: 900px){
    .daily-game__card br{
      display: none;
    }
  
    .game-email__title{
      color: #77101E;
      text-align: center;
      font-family: Henriette, serif;
      font-size: 25px;
      font-style: normal;
      font-weight: 700;
      line-height: 110%;
      margin: 10px 0 22px;
    }
    .site-header{
      height: 92px;
    }
  
    .site-header__bg,
    .site-header__content,
    .site-header__logo-hit{
      display: none;
    }
  
    .site-header__mobile{
      display:flex;
      align-items:center;
      justify-content:flex-end;
      height: 107px;
      padding: 0 20px;
      background: url("/assets/ui/desktop/mobile_head.png") center/cover no-repeat;
      position: relative;
      z-index: 2;
    }
  
    .site-header__mobile-logo-hit{
      position: absolute;
      left: 50%;
      top: 8px;
      width: min(58vw, 240px);
      height: 60px;
      transform: translateX(-50%);
      z-index: 3;
      text-decoration: none;
    }
  
    .site-header__burger{
      width: 40px;
      height: 40px;
      border: 0;
      padding: 0;
      background: transparent;
      display:flex;
      flex-direction: column;
      align-items:center;
      justify-content:center;
      gap: 6px;
      cursor: pointer;
      position: relative;
      z-index: 4;
    }
  
    .site-header__burger span{
      display:block;
      width: 26px;
      height: 2px;
      background: #fff;
      border-radius: 2px;
    }
  
    .site-header__mobile-menu{
      position: absolute;
      top: 92px;
      left: 0;
      right: 0;
      background: #8D1003;
      display: none;
      flex-direction: column;
      gap: 14px;
      padding: 16px 24px 20px;
      z-index: 3;
    }
  
    .site-header__mobile-menu.is-open{
      display: flex;
    }
  
    .site-header__mobile-menu a{
      color: #fff;
      text-decoration: none;
      font-family: var(--font-ui);
      font-size: 16px;
      text-transform: uppercase;
    }
  
    .hero-blue{
      width: 100%;
      background: var(--hero-bg);
      position: relative;
      overflow: hidden;
      margin-top: -6px;
      z-index: 10;
    }
  
    .hero-blue__inner{
      display:block;
      padding: 16px 0 28px;
    }
  
    .hero-blue__left,
    .hero-blue__right{
      display:none;
    }
  
    .hero-blue__mobile{
      display:flex;
      flex-direction:column;
      align-items:center;
      gap: 16px;
      padding: 8px 16px 20px;
    }
  
    .hero-blue__mobile-title{
      width: min(52vw, 360px);
      height: auto;
      display:block;
    }
  
    .hero-blue__mobile-text{
      color: #043C7A;
      text-align: center;
      font-family: Henriette, serif;
      font-size: 25px;
      font-style: normal;
      font-weight: 400;
      line-height: normal;
      margin: 4px 0 2px;
    }
  
    .hero-blue__mobile-oui{
      color: #043C7A;
      font-family: Henriette, serif;
      font-size: 25px;
      font-style: italic;
      font-weight: 700;
      line-height: normal;
    }
  
    .hero-blue__mobile-prize,
    .hero-blue__mobile-gifts,
    .hero-blue__mobile-frame{
      width: min(92vw, 520px);
      height: auto;
      display:block;
    }
  
    .hero-blue__action--mobile{
      text-align:center;
    }
  
    /* DAILY GAME: show flags in mobile */
    .daily-game__flags{
      display: block;
      height: 58px;
      top: 10px;
      width: 50%;
      max-width: 220px;
    }
  
    .daily-game__flags--left{
      left: 0;
    }
  
    .daily-game__flags--right{
      right: 0;
    }
  
    .daily-game__card{
      padding-top: 64px;
    }
  
    .daily-game__title{
      color: #FFF;
      text-align: center;
      font-family: Henriette, Georgia, "Times New Roman", serif;
      font-size: 20px;
      font-style: normal;
      font-weight: 400;
      line-height: 140%;
    }
  
    .daily-game__subtitle{
      color: #FFF;
      font-family: Henriette, Georgia, "Times New Roman", serif;
      font-size: 20px;
      font-style: italic;
      font-weight: 700;
      line-height: 140%;
    }
  
    .daily-game--hide-head .daily-game__head{
      display: none;
    }
  
    .daily-game--hide-head .daily-game__card{
      margin-top: 0;
    }
  
    .bp-form__title,
    .bp-form__subtitle{
      font-size: 20px;
    }
  
    .bp-form__actions{
      flex-direction: row;
      align-items: center;
      gap: 10px;
    }
  
    .bp-btn{
      width: calc(50% - 6px);
      height: 40px;
      font-size: 14px;
      white-space: nowrap;
    }
  
    .bp-check{
      touch-action: manipulation;
      cursor: pointer;
      align-items: flex-start;
    }
  
    .bp-check__box{
      touch-action: manipulation;
    }
  
    .bp-check__text{
      user-select: none;
      cursor: pointer;
    }

    /* FIX: Chrome Android tap on bp-form checkboxes
       - ensure checks are above any overlays and can receive pointer events
       - increase hit area by making label full-width block
    */
    .bp-form__checks{
      position: relative;
      z-index: 5;
      pointer-events: auto;
    }

    label.bp-check{
      position: relative;
      z-index: 5;
      display: flex;
      width: 100%;
      padding: 6px 0;          /* bigger tap target */
      pointer-events: auto;
      -webkit-tap-highlight-color: transparent;
    }

    .bp-check__box,
    .bp-check__text{
      pointer-events: auto;
    }

    /* keep the regulament link clickable */
    .bp-check__text a{
      pointer-events: auto;
    }

    /* TEMP reset: make checkboxes simple & functional (native) */
    .bp-form__checks,
    .bp-form__checks *{
      position: static !important;
      z-index: auto !important;
      pointer-events: auto !important;
      touch-action: auto !important;
    }

    .bp-form__checks{
      display: block !important;
    }

    .bp-check__box{
      width: auto !important;
      height: auto !important;
      min-width: 0 !important;
      min-height: 0 !important;
      accent-color: auto !important;
    }

    .bp-check__text{
      user-select: auto !important;
      cursor: auto !important;
    }

    /* Layout for simple native checkbox + label (index.php) */
    .bp-form__checks > div{
      display: flex;
      align-items: flex-start;
      gap: 10px;
    }

    .bp-form__checks > div > .bp-check__box{
      flex: 0 0 auto;
      margin-top: 2px; /* align optical with first text line */
    }

    .bp-form__checks > div > label.bp-check__text{
      flex: 1 1 auto;
      min-width: 0;
      white-space: normal; /* allow wrapping to next lines */
      display: block;
    }

    /* Easier tapping: more space between checkbox rows + bigger row hit-area */
    .bp-form__checks{
      gap: 14px !important; /* was effectively ~0 because of block divs */
    }

    .bp-form__checks > div{
      padding: 6px 0; /* increases tap target height */
    }
  
    /* PRODUCTS: show arrows on mobile */
    .products__carousel-wrap{
      padding: 0 28px;
    }
  
    .products__nav{
      display: inline-flex;
      width: 36px;
      height: 36px;
      top: 50%;
      transform: translateY(-50%);
      z-index: 2;
    }
  
    .products__nav--prev{ left: -4px; }
    .products__nav--next{ right: -4px; }
  
    .products__nav svg{ width: 18px; height: 18px; }
  
    /* CÂȘTIGĂTORI / COOKIES card */
    .mecanica-castigatori{
      max-width: 92vw;
      margin: 20px auto 18px;
      padding: 18px 16px 16px;
    }
  
    /* FOOTER (mobile) */
    .site-footer{
      padding: 220px 0 40px;
      background-image: url("/assets/ui/desktop/footer_paris.png");
      background-repeat: no-repeat;
      background-position: center top;
      background-size: 100% auto;
    }
  
    .site-footer__inner{
      padding: 0 14px;
    }
  
    .site-footer__card{
      border-radius: 14px;
      padding: 22px 18px 20px;
    }
  
    .site-footer__text{
      font-size: 14px;
      line-height: 150%;
    }
  
    .site-footer__social{
      margin-top: 16px;
      gap: 16px;
    }
  
    .site-footer__social-link{
      width: 40px;
      height: 40px;
    }
  
    .site-footer__social-link img{
      height: 26px;
    }
  
    .site-footer__divider{
      margin: 16px auto 14px;
    }
  
    .site-footer__link,
    .site-footer__sep{
      font-size: 14px;
    }
  
    /* MID CARD: mobile/tablet layout like design */
    .mid-card{
      margin-top: -24px;
      margin-bottom: 22px;
      padding: 0 14px;
    }
  
    .mid-card__inner{
      grid-template-columns: 1fr;
      gap: 14px;
      padding: 16px 14px;
      border-radius: 14px;
      justify-items: center;
      text-align: center;
    }
  
    .mid-card__steps{
      order: 1;
      width: 100%;
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
      justify-items: center;
    }
  
    .mid-card__step{
      min-width: 0;
      text-align: center;
    }
  
    .mid-card__icon{
      width: 32px;
      margin-bottom: 8px;
    }
  
    .mid-card__txt{
      font-size: 13px;
      line-height: 1.2;
    }
  
    .mid-card__packshots{
      order: 2;
      width: 100%;
    }
  
    .mid-card__packshots img{
      width: min(300px, 80%);
      margin: 0 auto;
    }
  }
  
  /* Tablet mode (still mobile header/menu) */
  @media (min-width: 768px) and (max-width: 900px){
    .site-header{
      height: 157px;
    }
  
    .site-header__mobile{
      height: 177px;
  
    }
  
    .site-header__mobile-logo-hit{
      top: 16px;
      width: min(52vw, 300px);
      height: 78px;
    }
  
    .site-header__mobile-menu{
      top: 177px;
    }
  
    .daily-game__flags{
      height: 76px;
      top: 10px;
      width: 54%;
      max-width: 260px;
    }
  
    .daily-game__card{
      padding-top: 70px;
    }
  
    .products__nav{
      width: 40px;
      height: 40px;
    }
  
    .products__nav--prev{ left: -6px; }
    .products__nav--next{ right: -6px; }
  
    .products__nav svg{ width: 20px; height: 20px; }
  
    .mecanica-castigatori{
      max-width: 94vw;
      margin: 24px auto 20px;
      padding: 20px 18px 18px;
    }
  
    .site-footer{
      padding: 260px 0 46px;
    }
  
    .site-footer__inner{
      padding: 0 18px;
    }
  
    .site-footer__card{
      padding: 26px 22px 24px;
    }
  
    .site-footer__text{
      font-size: 15px;
    }
  
    .mid-card{
      margin-top: -28px;
      margin-bottom: 26px;
      padding: 0 18px;
    }
  
    .mid-card__inner{
      padding: 18px 18px;
      gap: 16px;
    }
  
    .mid-card__icon{
      width: 36px;
      margin-bottom: 10px;
    }
  
    .mid-card__txt{
      font-size: 14px;
    }
  
    .mid-card__packshots img{
      width: min(360px, 85%);
    }
  }
  
  @media (max-width: 520px){
    .daily-game__flags{
      height: 42px;
      top: 8px;
      width: 40%;
      max-width: 200px;
    }
  
    .daily-game__card{
      margin: 14px auto 0;
      max-width: 343px;
      padding: 22px 16px 26px;
    }
  
    .daily-game__bonjour{
      width: 180px;
      max-width: 40%;
      margin-bottom: 12px;
      margin-top: 20px;
    }
  
    .products__carousel-wrap{
      padding: 0 22px;
    }
  
    .products__nav{
      width: 32px;
      height: 32px;
    }
  
    .products__nav--prev{ left: -2px; }
    .products__nav--next{ right: -2px; }
  
    .products__nav svg{ width: 16px; height: 16px; }
  
    .mecanica-castigatori{
      max-width: 94vw;
      margin: 18px auto 16px;
      padding: 16px 14px 14px;
    }
  
    .site-footer{
      padding: 30px 0 16px;
    }
  
    .site-footer__inner{
      padding: 0 12px;
    }
  
    .site-footer__card{
      padding: 20px 16px 18px;
    }
  
    .site-footer__text{
      font-size: 13px;
    }
  
    .site-footer__link,
    .site-footer__sep{
      font-size: 13px;
    }
  
    .mid-card__steps{
      gap: 10px;
    }
  
    .mid-card__icon{
      width: 28px;
    }
  
    .mid-card__txt{
      font-size: 12px;
    }
  
    .mid-card__packshots img{
      width: min(260px, 78%);
    }
  }

/* ===============================
   GALBANI INDEX MOBILE
   =============================== */
@media (max-width: 900px){
  body,
  #all,
  .page-desktop-figma,
  .galbani-index{
    background: var(--galbani-main-bg);
    filter: none;
  }

  .site-header{
    height: 94px;
  }

  .site-header__mobile{
    height: 94px;
    background: transparent;
    justify-content: flex-end;
  }

  .site-header__mobile-logo-hit{
    left: 18px;
    top: 8px;
    width: 105px;
    height: 116px;
    transform: none;
    background: url("/assets/ui/galbani/figma/logo.png") center top / contain no-repeat;
  }

  .site-header__burger span{
    background:#fff;
  }

  .site-header__mobile-menu{
    top: 94px;
    background: #012b60;
  }

  .galbani-hero{
    min-height: auto;
    margin-top: 0;
    padding: 104px 0 104px;
    background: transparent;
  }

  .galbani-hero__inner{
    width: calc(100% - 32px);
    min-height: 0;
    display:flex;
    flex-direction:column;
    gap: 28px;
    padding: 0;
  }

  .galbani-hero__copy{
    padding-top: 0;
    text-align:center;
  }

  .galbani-hero__logo{
    display:none;
  }

  .galbani-hero__eyebrow{
    font-size: 12px;
    letter-spacing: 1.6px;
  }

  .galbani-hero__title{
    max-width: 360px;
    margin: 0 auto;
    font-size: 48px;
    line-height: .9;
  }

  .galbani-hero__lead{
    max-width: 350px;
    margin: 22px auto 0;
    font-size: 17px;
    line-height: 1.45;
  }

  .galbani-hero__actions{
    margin-top: 30px;
    flex-direction:column;
    align-items:center;
    gap: 18px;
  }

  .hero-blue__btn{
    min-width: 190px;
  }

  .galbani-hero__visual{
    width: 100%;
    min-height: 330px;
    order: -1;
  }

  .galbani-hero__kv{
    position:absolute;
    left: -28%;
    right: auto;
    top: 12px;
    width: 156%;
  }

  .galbani-hero__prize{
    right: -10px;
    left: auto;
    bottom: -18px;
    width: 168px;
  }

  .galbani-steps{
    margin-top: -58px;
    padding: 0 16px 46px;
  }

  .galbani-steps__inner{
    width: 100%;
    border-radius: 12px;
    background:#012b60;
    box-shadow: 0 18px 34px rgba(1,43,96,.24);
  }

  .galbani-steps__art{
    display:none;
  }

  .galbani-steps__mobile{
    display:grid;
    gap: 18px;
    padding: 24px 20px;
    color:#fff;
    text-align:center;
  }

  .galbani-steps__mobile div{
    display:grid;
    gap: 5px;
  }

  .galbani-steps__mobile strong{
    font-size: 18px;
    font-weight: 900;
  }

  .galbani-steps__mobile span{
    font-size: 15px;
    line-height: 1.35;
  }

  .galbani-game-promo{
    padding: 38px 16px 64px;
  }

  .galbani-game-promo__inner{
    width: 100%;
    display:flex;
    flex-direction:column;
    gap: 28px;
  }

  .galbani-game-promo__copy{
    text-align:center;
  }

  .galbani-game-promo__copy h2{
    font-size: 44px;
    line-height: .95;
  }

  .galbani-game-promo__copy p{
    margin: 20px auto 0;
    font-size: 16px;
  }

  .galbani-game-promo__visual{
    width: 100%;
    min-height: 280px;
  }

  .galbani-game-promo__card{
    left: 5%;
    top: 12px;
    width: 86%;
    min-height: 224px;
    padding: 34px;
    border-radius: 22px;
  }

  .galbani-game-promo__card strong{
    font-size: 30px;
  }

  .galbani-game-promo__visual img{
    width: 138px;
    right: 6px;
    bottom: -18px;
  }

  .bp-form{
    padding: 42px 16px 78px;
  }

  .bp-form__title{
    font-size: 20px;
  }

  .bp-form__subtitle{
    font-size: 25px;
  }

  .bp-form__actions{
    flex-direction:column;
    align-items:center;
    gap: 12px;
  }

  .products--galbani{
    padding: 58px 0 62px;
  }

  .products--galbani .products__inner{
    padding: 0 20px;
  }

  .products--galbani .products__title{
    font-size: 31px;
  }

  .products--galbani .products__subtitle{
    font-size: 15px;
    margin-bottom: 24px;
  }

  .products--galbani .products-swiper .swiper-slide{
    width: 240px;
  }

  .products--galbani .product-card{
    height: 322px;
  }

  .products--galbani .product-card__img{
    height: 232px;
  }

  .products--galbani .product-card__img img{
    max-height: 226px;
  }

  .products--galbani .products__nav{
    display: inline-flex;
  }

  .site-footer{
    background:#012b60;
    padding: 0;
  }

  .site-footer__inner{
    padding: 22px 18px 34px;
  }

  .site-footer__card{
    background: transparent;
    box-shadow:none;
    border-radius:0;
    padding:0;
  }
}

@media (max-width: 900px){
  .site-header__logo-hit{
    background:none;
  }

  .galbani-hero{
    padding: 104px 0 78px;
  }

  .galbani-hero__inner{
    width: calc(100% - 32px);
    display:flex;
    flex-direction:column;
    gap: 22px;
  }

  .galbani-hero__copy{
    position:relative;
    left:auto;
    top:auto;
    z-index:4;
    width:100%;
    order:2;
    text-align:center;
  }

  .galbani-hero__title{
    width: min(340px, 100%);
    max-width:none;
    margin: 0 auto;
    font-size:0;
    line-height:0;
  }

  .galbani-hero__title-art{
    display:block;
    width:100%;
    height:auto;
  }

  .galbani-hero__actions{
    margin-top: 24px;
    justify-content:center;
  }

  .galbani-hero .hero-blue__btn{
    min-width: 206px;
    height: 48px;
    font-size: 13px;
  }

  .galbani-hero__visual{
    position:relative;
    inset:auto;
    width:100%;
    min-height: 360px;
    order:1;
    pointer-events:none;
  }

  .galbani-hero__top{
    display:none;
  }

  .galbani-hero__brand{
    display:none;
  }

  .galbani-hero__kv{
    display:block;
    left: 50%;
    top: 0;
    right:auto;
    width: 720px;
    min-width:0;
    max-width:none;
    transform: translateX(-50%);
  }

  .galbani-hero__prize--italia{
    left: calc(50% - 116px);
    top: 182px;
    right:auto;
    bottom:auto;
    width: 178px;
  }

  .galbani-hero__prize--cooler{
    left: calc(50% + 24px);
    top: 235px;
    width: 126px;
  }

  .galbani-hero__prize--cutter{
    left: calc(50% + 130px);
    top: 232px;
    width: 92px;
  }

  .galbani-steps{
    margin-top: 0;
  }
}

/* ===============================
   GALBANI MOBILE FIGMA PASS
   =============================== */
@media (max-width: 900px){
  html,
  body{
    width: 100%;
    overflow-x: hidden;
    background: #0D5698;
  }

  body,
  #all,
  .page-desktop-figma,
  .galbani-index{
    background: var(--galbani-main-bg);
    filter: none;
  }

  .page-desktop-figma{
    min-height: 0;
  }

  .site-header{
    position: absolute !important;
    inset: 0 0 auto;
    z-index: 80;
    height: 0;
    min-height: 0;
    background: transparent;
  }

  .site-header__bg,
  .site-header__content,
  .site-header__logo-hit,
  .site-header__mobile-logo-hit{
    display: none;
  }

  .site-header__mobile{
    position: absolute !important;
    inset: 0 0 auto;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    height: 88px;
    padding: 28px 32px 0 0;
    background: transparent;
  }

  .site-header__burger{
    position: absolute;
    right: 32px;
    top: 28px;
    width: 38px;
    height: 30px;
    gap: 6px;
    padding: 0;
  }

  .site-header__burger:focus{
    outline: none;
  }

  .site-header__burger span{
    width: 32px;
    height: 3px;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 1px 3px rgba(1, 43, 96, .42);
    opacity: 0;
  }

  .site-header__mobile-menu{
    top: 76px;
    left: 18px;
    right: 18px;
    z-index: 90;
    border-radius: 14px;
    background: #012b60;
    box-shadow: 0 18px 38px rgba(1, 43, 96, .26);
  }

  .galbani-hero{
    --galbani-mobile-head-h: min(754px, calc(100vw * 1339 / 1600));
    position: relative;
    min-height: 0;
    margin: 0;
    padding: var(--galbani-mobile-head-h) 0 28px;
    overflow: hidden;
    background: transparent !important;
  }

  .galbani-hero::before{
    content: "";
    position: absolute;
    inset: 0 0 auto;
    display: block;
    height: var(--galbani-mobile-head-h);
    background: url("../ui/galbani/mobile-slider/top-head-mobile.webp") center top / 100% auto no-repeat;
    opacity: 1;
    pointer-events: none;
    z-index: 1;
  }

  .galbani-hero::after{
    content: none;
  }

  .galbani-hero__inner{
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    min-height: 0;
    margin: -30px 0 0;
    padding: 0 24px;
  }

  .galbani-hero__copy{
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    padding: 0;
    text-align: center;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .galbani-hero__eyebrow,
  .galbani-hero__visual,
  .galbani-hero__top,
  .galbani-hero__brand,
  .galbani-hero__kv,
  .galbani-hero__prize,
  .galbani-hero__shadow{
    display: none;
  }

  .galbani-hero__title{
    width: 100%;
    max-width: none;
    margin: 0;
    font-size: 0;
    line-height: 0;
    order: 1;
  }

  .galbani-hero__title-art{
    display: block;
    width: min(306px, 100%);
    height: auto;
    margin: 0 auto;
    content: url("../ui/galbani/mobile/hero-title-mobile.png");
    transform: translateY(8px);
  }

  .galbani-hero__actions{
    order: 3;
    margin: 10px 0 0;
    display: flex;
    justify-content: center;
  }

  .galbani-hero .hero-blue__btn{
    width: min(235px, 100%);
    min-width: 0;
    height: 51px;
    padding: 0 18px;
    border-radius: 999px;
    background: #012b60;
    color: #fff;
    font: 800 17px/1 var(--font-ui);
    box-shadow: none;
  }

  .galbani-hero__copy::after{
    content: none;
  }

  .galbani-mobile-prizes{
    position: relative;
    order: 2;
    display: block;
    width: min(372px, calc(100vw - 12px));
    margin: -2px auto 0;
    padding: 0 18px 14px;
    overflow: visible;
  }

  .galbani-mobile-prizes__swiper{
    width: 100%;
    overflow: hidden;
  }

  .galbani-mobile-prizes__slide{
    display: flex;
    align-items: center;
    justify-content: center;
    height: clamp(196px, 54vw, 232px);
  }

  .galbani-mobile-prizes__slide img{
    display: block;
    width: auto;
    max-width: min(322px, 100%);
    max-height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 18px 22px rgba(1, 43, 96, .28));
    transform: translateX(-7px);
  }

  .galbani-mobile-prizes__nav{
    position: absolute;
    top: calc(50% - 16px);
    z-index: 4;
    width: 34px;
    height: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    font: 800 31px/1 var(--font-ui);
    text-shadow: 0 2px 4px rgba(1, 43, 96, .35);
  }

  .galbani-mobile-prizes__nav--prev{
    left: -2px;
  }

  .galbani-mobile-prizes__nav--next{
    right: -2px;
  }

  .galbani-mobile-prizes__nav::before{
    display: block;
  }

  .galbani-mobile-prizes__nav--prev::before{
    content: "‹";
  }

  .galbani-mobile-prizes__nav--next::before{
    content: "›";
  }

  .galbani-mobile-prizes__pagination{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    gap: 8px;
    height: 12px;
  }

  .galbani-mobile-prizes__pagination .swiper-pagination-bullet{
    width: 9px;
    height: 9px;
    margin: 0;
    background: rgba(255,255,255,.55);
    opacity: 1;
  }

  .galbani-mobile-prizes__pagination .swiper-pagination-bullet-active{
    background: #fff;
  }

  .galbani-steps{
    position: relative;
    z-index: 3;
    margin: 0;
    padding: 0 0 38px;
    background: transparent;
  }

  .galbani-steps__stage{
    position: relative;
    display: block;
    width: 100%;
    min-height: 0;
    margin: 0 auto;
    padding: 24px 10px 22px;
    border-radius: 0;
    background: #012b60;
    box-shadow: none;
    overflow: visible;
  }

  .galbani-steps__panel{
    display: none;
  }

  .galbani-steps__asset{
    display: none;
  }

  .galbani-steps__mobile-row{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
    gap: 8px;
    width: min(430px, 100%);
    margin: 0 auto;
    color: #fff;
    text-align: center;
  }

  .galbani-steps__mobile-step{
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 8px;
    min-height: 134px;
    padding: 0 2px;
    color: #fff;
    text-decoration: none;
  }

  .galbani-steps__mobile-step:hover,
  .galbani-steps__mobile-step:focus-visible{
    color: #fff;
    text-decoration: none;
  }

  .galbani-steps__mobile-step img{
    display: block;
    width: auto;
    height: 42px;
    max-width: 56px;
    object-fit: contain;
  }

  .galbani-steps__mobile-step:nth-child(1),
  .galbani-steps__mobile-step:nth-child(2){
    transform: translateY(-8px);
  }

  .galbani-steps__mobile-step span{
    display: block;
    max-width: 116px;
    margin: 0 auto;
    font: 500 11px/1.12 var(--font-ui);
    color: #fff;
  }

  .galbani-steps__mobile-step strong{
    font-weight: 900;
    font-style: italic;
  }

  .galbani-steps__mobile-step--play span{
    max-width: 124px;
  }

  .galbani-game-promo{
    margin: 0;
    padding: 24px 0 54px;
    background: transparent;
    color: #fff;
  }

  .galbani-game-promo__inner{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin: 0;
    padding: 0 30px;
    gap: 0;
  }

  .galbani-game-promo__copy{
    width: 100%;
    text-align: center;
  }

  .galbani-game-promo__title{
    width: 100%;
    margin: 0;
    color: #fff;
    font-family: var(--font-script);
    font-size: 31px;
    font-weight: 400;
    line-height: 1.02;
    text-align: center;
    letter-spacing: 0;
  }

  .galbani-game-promo__title picture{
    display: none;
  }

  .galbani-game-promo__title img{
    display: none;
  }

  .galbani-game-promo__title span{
    display: block;
    width: min(330px, 100%);
    margin: 0 auto;
  }

  .galbani-game-promo__copy p{
    width: min(300px, 100%);
    max-width: none;
    margin: 18px auto 0;
    color: rgba(255,255,255,.96);
    font: 400 14px/1.35 var(--font-ui);
  }

  .galbani-game-promo__copy strong{
    font-weight: 900;
    font-style: italic;
  }

  .galbani-game-promo__copy::after{
    content: "";
    display: block;
    width: min(218px, 100%);
    aspect-ratio: 256 / 150;
    margin: 18px auto 0;
    background: url("../ui/galbani/mobile/game-prizes-mobile.png") center / contain no-repeat;
  }

  .galbani-game-promo__visual{
    position: relative;
    width: min(304px, 100%);
    min-height: 0;
    margin: 28px auto 0;
  }

  .galbani-game-promo__art,
  .galbani-game-promo__art img{
    display: block;
    width: 100%;
    height: auto;
  }

  .galbani-game-promo__art img{
    position: static;
    transform: none;
    filter: none;
    content: url("../ui/galbani/mobile/section3-card-mobile.png");
  }

  .bp-form{
    position: relative;
    margin: 0;
    padding: 10px 30px 318px;
    background: transparent;
    color: #fff;
    overflow: hidden;
  }

  .bp-form::before{
    content: none;
  }

  .bp-form::after{
    content: "";
    position: absolute;
    left: 50%;
    bottom: 34px;
    width: min(366px, 100vw);
    aspect-ratio: 366 / 352;
    transform: translateX(-50%);
    background: url("../ui/galbani/mobile/pizza-form-mobile.png") center / contain no-repeat;
    pointer-events: none;
  }

  .bp-form__decor{
    display: none;
  }

  .bp-form__inner{
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: none;
    margin: 0 auto;
  }

  .bp-form__header{
    margin: 0 auto 18px;
    text-align: center;
  }

  .bp-form__title,
  .bp-form__subtitle{
    font-family: var(--font-ui);
  }

  .bp-form__title{
    font-size: 22px;
    font-weight: 300;
    line-height: 1.22;
  }

  .bp-form__subtitle{
    margin-top: 2px;
    font-size: 21px;
    font-weight: 900;
    line-height: 1.2;
  }

  .bp-form__intro{
    max-width: 300px;
    margin: 16px auto 0;
    color: rgba(255,255,255,.94);
    font: 400 13px/1.35 var(--font-ui);
  }

  .bp-form__intro strong{
    font-weight: 900;
  }

  .bp-form__form{
    width: 100%;
    margin: 0;
  }

  .bp-form__grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
  }

  .bp-field,
  .bp-field--full,
  .bp-field--half{
    min-width: 0;
  }

  .bp-field--full{
    grid-column: 1 / -1;
    width: 100%;
  }

  .bp-field--half{
    grid-column: auto;
    width: auto;
  }

  .bp-form__grid > .bp-field:nth-child(5){
    grid-column: auto;
    width: auto;
  }

  .bp-form__grid > .bp-field:nth-child(7){
    grid-column: 1 / -1;
    width: min(248px, 100%);
    justify-self: start;
  }

  .bp-form .bp-input,
  .bp-input{
    width: 100%;
    height: 46px;
    border: 0;
    border-radius: 999px;
    padding: 0 16px;
    background: #fff;
    color: #585858;
    font: 400 13px/1 var(--font-ui);
  }

  .bp-field--half .bp-input{
    padding: 0 14px;
    font-size: 12px;
  }

  .bp-form .bp-input::placeholder{
    color: #606060;
    opacity: 1;
  }

  .bp-captcha{
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 38px;
    gap: 8px;
    width: 100%;
    align-items: stretch;
  }

  .bp-captcha__img{
    display: block;
    width: 100%;
    height: 46px;
    max-height: none;
    object-fit: cover;
    border-radius: 0;
    background: #fff;
  }

  .bp-captcha__reload{
    width: 38px;
    height: 38px;
    min-width: 38px;
    align-self: center;
    border-radius: 50%;
    background: #9dd9ef;
    color: #012b60;
    font-size: 19px;
  }

  .bp-form__checks{
    display: block !important;
    margin: 16px 0 0;
  }

  .bp-form__checks > div{
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0 0 8px;
    padding: 2px 0;
  }

  .bp-form__checks > div > .bp-check__box{
    flex: 0 0 17px;
    width: 17px;
    height: 17px;
    margin: 0;
    border-radius: 4px;
  }

  .bp-form__checks > div > label.bp-check__text{
    color: #fff;
    font: 400 14px/1.28 var(--font-ui);
    text-align: left;
  }

  .bp-link{
    color: #fff;
  }

  .bp-form__disclaimer{
    margin: 12px 0 0;
    color: rgba(255,255,255,.92);
    text-align: left;
    font: 400 11px/1.34 var(--font-ui);
  }

  .bp-form__actions{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin-top: 8px;
  }

  .bp-btn{
    width: min(235px, 100%);
    min-width: 0;
    height: 44px;
    min-height: 44px;
    border-radius: 999px;
    font: 800 14px/1 var(--font-ui);
  }

  .bp-btn--white{
    background: #012b60;
    color: #fff;
  }

  .bp-btn--gold{
    background: #79d3ef;
    color: #012b60;
  }

  .products--galbani{
    margin: 0;
    padding: 75px 0 0;
    background:
      radial-gradient(78% 44% at 50% 38%, rgba(0, 104, 168, .78) 0%, rgba(0, 62, 120, .32) 55%, rgba(1, 43, 96, 0) 100%),
      linear-gradient(180deg, #012b60 0%, #003a76 54%, #006aa0 100%);
  }

  .products--galbani .products__inner{
    width: 100%;
    max-width: none;
    padding: 0;
  }

  .products--galbani .products__title{
    max-width: 260px;
    margin: 0 auto 42px;
    color: #fff;
    text-align: center;
    font: 400 48px/1.15 var(--font-ui);
  }

  .products--galbani .products__carousel-wrap{
    position: relative;
    width: 100%;
    max-width: none;
    margin: 0 auto;
    padding: 0 62px;
  }

  .products--galbani .products__carousel.products-swiper{
    width: 100%;
    max-width: 270px;
    margin: 0 auto;
    overflow: hidden;
  }

  .products--galbani .products__list{
    gap: 0;
    justify-content: flex-start;
  }

  .products--galbani .products-swiper .swiper-slide{
    width: 270px;
  }

  .products--galbani .product-card{
    height: 380px;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    text-align: center;
    overflow: visible;
  }

  .products--galbani .product-card__img{
    height: 258px;
    padding: 0 0 22px;
  }

  .products--galbani .product-card__img img{
    max-width: 230px;
    max-height: 250px;
    margin: 0 auto;
    filter: drop-shadow(0 18px 20px rgba(0,0,0,.24));
  }

  .products--galbani .product-card__meta{
    padding: 0;
  }

  .products--galbani .product-card__name,
  .products--galbani .product-card__size{
    color: #fff;
    font-size: 20px;
    line-height: 1.25;
  }

  .products--galbani .product-card__name{
    font-weight: 800;
  }

  .products--galbani .product-card__size{
    font-weight: 700;
  }

  .products--galbani .products__nav{
    position: absolute;
    top: 132px;
    z-index: 4;
    display: inline-flex;
    width: 48px;
    height: 70px;
    color: #fff;
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  .products--galbani .products__nav--prev{
    left: 19px;
  }

  .products--galbani .products__nav--next{
    right: 19px;
  }

  .products--galbani .products__nav svg{
    width: 27px;
    height: 46px;
  }

  .products--galbani .products__nav path{
    stroke: currentColor;
    stroke-width: 5;
    fill: none;
  }

  .products--galbani .products__legal{
    max-width: 292px;
    margin: 34px auto 0;
    padding: 0 0 14px;
    color: rgba(255,255,255,.96);
    text-align: center;
    font: 400 12px/1.28 var(--font-ui);
  }

  .galbani-campaign-legal{
    width: min(292px, calc(100% - 48px));
    max-width: 292px;
    margin: 34px auto 0;
    padding: 0 0 14px;
    color: rgba(255,255,255,.96);
    text-align: center;
    font: 400 12px/1.28 var(--font-ui);
  }

  .site-footer{
    margin: 0;
    padding: 0;
    background: #012b60;
    background-image: none;
    border-top: 0;
  }

  .site-footer__inner{
    padding: 25px 33px 34px;
  }

  .site-footer__card{
    width: 100%;
    padding: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .site-footer__links{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 5px;
    margin: 0 auto;
    color: #fff;
    text-align: center;
  }

  .site-footer__link,
  .site-footer__sep{
    color: #fff;
    font: 700 13px/1.8 var(--font-footer);
  }

  .site-footer__social{
    display: flex;
    justify-content: center;
    gap: 24px;
    margin-top: 21px;
  }

  .site-footer__social-link{
    width: 26px;
    height: 26px;
  }

  .site-footer__social-link img{
    width: 26px;
    height: 26px;
  }

  .site-footer__divider,
  .site-footer__copyright{
    display: none;
  }
}

@media (max-width: 900px){
  .site-header{
    position: relative !important;
    inset: auto !important;
    height: 0 !important;
    min-height: 0 !important;
  }

  .site-header__mobile{
    position: absolute !important;
    inset: 0 0 auto !important;
  }

  .site-header__mobile-logo-hit{
    position: absolute !important;
  }

  .site-header__burger{
    position: absolute !important;
    top: 28px !important;
    right: 32px !important;
    z-index: 1002;
    display: flex !important;
    width: 38px;
    height: 30px;
    padding: 0;
    border: 0;
    background: transparent;
    pointer-events: auto;
  }

  .site-header__burger span{
    display: block !important;
    width: 32px;
    height: 3px;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 1px 3px rgba(1, 43, 96, .42);
    opacity: 1 !important;
  }

  .site-header__mobile-menu{
    position: absolute !important;
    top: 76px !important;
    left: 18px !important;
    right: 18px !important;
    z-index: 1001;
    border-radius: 14px;
    background: #012b60;
    box-shadow: 0 18px 38px rgba(1, 43, 96, .26);
  }

  body.galbani-mobile-scrolled .site-header,
  body.galbani-mobile-scrolled .site-header__mobile,
  body.galbani-mobile-scrolled .site-header__mobile-logo-hit,
  body.galbani-mobile-scrolled .site-header__burger,
  body.galbani-mobile-scrolled .site-header__mobile-menu{
    display: none !important;
    pointer-events: none !important;
  }
}

@media (max-width: 374px){
  .bp-form{
    padding-left: 30px;
    padding-right: 30px;
  }

  .products--galbani .products__carousel-wrap{
    padding-left: 54px;
    padding-right: 54px;
  }
}
