/* Charte de mise en page Happy-Box (happy-box.fr), inspirée de la proposition Noël 2026.
   Toutes les classes commencent par hbx- : aucun effet sur le thème ni sur les autres pages.
   Polices du thème (déjà chargées) : Poppins pour les titres, DM Sans pour le texte. */
.hbx{--hbx-pink:#FF0055;--hbx-pink-deep:#D60046;--hbx-ink:#1B1B20;--hbx-ink-2:#4A4A55;--hbx-muted:#7A7A86;
  --hbx-cream:#FAF6F2;--hbx-line:#ECE4DC;--hbx-dark-2:#3A0C1F;--hbx-radius:16px;
  --hbx-title:"Poppins","Avenir Next","Helvetica Neue",Arial,sans-serif;
  --hbx-body:"DM Sans","Avenir Next","Helvetica Neue",Arial,sans-serif;
  font-family:var(--hbx-body);font-size:17px;line-height:1.6;color:var(--hbx-ink);background:var(--hbx-cream)}
.hbx *,.hbx *::before,.hbx *::after{box-sizing:border-box}
.hbx img{max-width:100%;height:auto;display:block}
.hbx a{color:var(--hbx-pink-deep)}
.hbx p{margin:0 0 14px}
.hbx-wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.hbx-sec{padding:72px 0}
.hbx-sec.hbx-tight{padding-top:0}
.hbx-white{background:#fff}
.hbx h1,.hbx h2,.hbx h3{font-family:var(--hbx-title);font-weight:800;font-style:normal;line-height:1.15;letter-spacing:-.01em;color:inherit;margin:0;text-transform:none}
.hbx h2{font-size:clamp(28px,4vw,40px);margin-bottom:14px}
.hbx h3{font-size:19px;margin-bottom:6px}
.hbx-kicker{font-family:var(--hbx-title);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:13px;color:var(--hbx-pink);margin-bottom:12px}
.hbx .hbx-lead{color:var(--hbx-ink-2);max-width:720px;margin:0 0 32px}
.hbx-btn{display:inline-block;font-family:var(--hbx-title);font-weight:700;font-size:17px;color:#fff!important;text-decoration:none!important;
  padding:16px 30px;border-radius:999px;background:linear-gradient(180deg,#FF3C78,var(--hbx-pink-deep));
  box-shadow:0 10px 24px -8px rgba(214,0,70,.55);transition:transform .15s}
.hbx-btn:hover{transform:translateY(-2px)}
.hbx-btn.hbx-ghost{background:transparent;box-shadow:none;border:2px solid rgba(255,255,255,.55)}

/* Bandeau photo */
.hbx-hero{position:relative;color:#fff;background:var(--hbx-ink);overflow:hidden}
.hbx-hero-img{position:absolute;inset:0;background-size:cover;background-repeat:no-repeat;background-position:center}
.hbx-hero-img::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(27,27,32,.94) 0%,rgba(58,12,31,.80) 45%,rgba(27,27,32,.10) 100%)}
.hbx-hero .hbx-wrap{position:relative;padding-top:96px;padding-bottom:96px}
.hbx-hero h1{font-size:clamp(34px,5.5vw,60px);max-width:660px;margin-bottom:18px;color:#fff}
.hbx-hero p{font-size:19px;max-width:560px;color:#EDE6EA;margin:0 0 30px}
.hbx-badge{display:inline-flex;align-items:center;gap:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);
  border-radius:999px;padding:8px 18px 8px 8px;margin-bottom:26px;font-size:15px}
.hbx-badge b{white-space:nowrap;font-family:var(--hbx-title);background:var(--hbx-pink);border-radius:999px;padding:6px 12px;font-size:15px}
.hbx-actions{display:flex;flex-wrap:wrap;gap:12px}

/* Cartes */
.hbx-cards{display:grid;grid-template-columns:repeat(var(--hbx-cols,3),1fr);gap:20px}
.hbx-card{background:#fff;border-radius:var(--hbx-radius);border:1px solid var(--hbx-line);overflow:hidden;display:flex;flex-direction:column}
.hbx-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hbx-card-body{padding:24px 24px 26px}
.hbx-card p{margin:0;color:var(--hbx-ink-2);font-size:16px}
.hbx-cards.hbx-feature .hbx-card img{aspect-ratio:6/7}
.hbx-card .hbx-card-link{display:inline-block;margin-top:12px;font-weight:700;font-size:15px;text-decoration:none}
.hbx-text-cols{columns:2 320px;column-gap:40px;color:var(--hbx-ink-2);font-size:16px}
.hbx-text-cols p{break-inside:avoid}

/* Alternance image et texte */
.hbx-split{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.hbx-split+.hbx-split{margin-top:64px}
.hbx-split.hbx-rev>:first-child{order:2}
.hbx-split h3{font-size:24px;margin-bottom:10px}
.hbx-split p+h3{margin-top:22px}
.hbx-split ul,.hbx-checks{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.hbx-split li,.hbx-checks li{display:grid;grid-template-columns:30px 1fr;gap:10px;font-size:16px}
.hbx-split li::before,.hbx-checks li::before{content:"";width:22px;height:22px;margin-top:2px;border-radius:50%;
  background:var(--hbx-pink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.hbx-photo{border-radius:var(--hbx-radius);overflow:hidden;box-shadow:0 18px 40px -22px rgba(27,27,32,.55);margin:0}
.hbx-photo img{width:100%;height:100%;object-fit:cover}
.hbx-photo figcaption{font-size:14px;color:var(--hbx-muted);padding:10px 4px 0;background:transparent}

/* Fond sombre */
.hbx-dark{background:linear-gradient(160deg,var(--hbx-ink) 0%,var(--hbx-dark-2) 100%);color:#fff}
.hbx-dark .hbx-lead,.hbx .hbx-dark .hbx-lead{color:#D9CFD4}
.hbx-dark a:not(.hbx-btn){color:#fff}

/* Galeries */
.hbx-gallery{display:grid;grid-template-columns:repeat(var(--hbx-cols,3),1fr);gap:22px}
.hbx-gallery.hbx-narrow{max-width:860px}
.hbx-gallery figure{margin:0}
.hbx-gallery img{border-radius:6px;box-shadow:0 14px 30px -18px rgba(27,27,32,.6);background:#fff;width:100%}
.hbx-gallery figcaption{font-size:14px;color:var(--hbx-muted);margin-top:10px}
.hbx-dark .hbx-gallery figcaption{color:#EDE6EA}
/* Galerie en mosaïque (formats d'un modèle : tirages en hauteur et en largeur mêlés) */
.hbx-masonry{columns:3 260px;column-gap:20px}
.hbx-masonry figure{break-inside:avoid;margin:0 0 20px;display:block}
.hbx-masonry img{width:100%;border-radius:6px;box-shadow:0 16px 34px -18px rgba(0,0,0,.65);background:#fff;transition:transform .25s}
.hbx-masonry figure:hover img{transform:translateY(-4px) rotate(-.4deg)}
.hbx-masonry figure.hbx-strip{width:46%;margin-left:auto;margin-right:auto}
.hbx-masonry figure.hbx-strip figcaption{text-align:center}
.hbx-masonry figcaption{font-size:13.5px;margin-top:9px;color:var(--hbx-muted)}
.hbx-dark .hbx-masonry figcaption{color:#D9CFD4}
.hbx-print{background:#fff;padding:14px;border-radius:10px;box-shadow:0 26px 50px -24px rgba(27,27,32,.55);transform:rotate(1.2deg);margin:0}
.hbx-print img{border-radius:3px}
.hbx-mosaic{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:240px 240px;gap:14px}
.hbx-mosaic .hbx-photo:first-child{grid-row:span 2}
.hbx-mosaic .hbx-photo.hbx-wide{grid-column:span 2}
.hbx-mosaic.hbx-m3{grid-template-columns:2fr 1fr}

/* Étapes */
.hbx-steps{counter-reset:s;display:grid;grid-template-columns:repeat(var(--hbx-cols,4),1fr);gap:16px;list-style:none;padding:0;margin:0 0 28px}
.hbx-steps li{counter-increment:s;background:#fff;border:1px solid var(--hbx-line);border-radius:var(--hbx-radius);padding:22px 18px;font-size:15px;color:var(--hbx-ink-2)}
.hbx-steps li::before{content:counter(s);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;
  background:var(--hbx-pink);color:#fff;font-family:var(--hbx-title);font-weight:700;font-size:18px;margin-bottom:14px}
.hbx-steps li b{display:block;color:var(--hbx-ink);font-family:var(--hbx-title);font-weight:700;font-size:16px;margin-bottom:4px}
.hbx .hbx-note{background:#fff;border-left:4px solid var(--hbx-pink);border-radius:0 12px 12px 0;padding:16px 20px;font-size:16px;color:var(--hbx-ink-2)}

/* Encadrés de prix */
.hbx-pricing{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:20px;align-items:stretch}
.hbx-price{background:#fff;border-radius:var(--hbx-radius);padding:30px 26px;border:1px solid var(--hbx-line);position:relative}
.hbx-price.hbx-hot{border:2px solid var(--hbx-pink)}
.hbx-tag{position:absolute;top:-14px;left:24px;background:var(--hbx-pink);color:#fff;font-family:var(--hbx-title);font-weight:700;font-size:13px;border-radius:999px;padding:4px 12px}
.hbx-old{color:var(--hbx-muted);text-decoration:line-through;font-size:20px}
.hbx-new{font-family:var(--hbx-title);font-weight:800;font-size:48px;color:var(--hbx-ink);line-height:1.1}
.hbx-price p{margin:8px 0 0;color:var(--hbx-ink-2);font-size:15px}
.hbx-options{background:var(--hbx-ink);color:#fff;border-radius:var(--hbx-radius);padding:28px 26px}
.hbx-options h3{margin-bottom:14px}
.hbx-options dl{margin:0;display:grid;grid-template-columns:1fr auto;gap:10px 14px;font-size:15px}
.hbx-options dt{color:#D9CFD4}
.hbx-options dd{margin:0;font-family:var(--hbx-title);font-weight:700;text-align:right}
.hbx .hbx-conditions{margin-top:22px;font-size:15px;color:var(--hbx-ink-2)}

/* Encadré d'offre (mise en avant) */
.hbx-promo{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;margin:40px 0 8px;padding:30px 34px;
  border-radius:var(--hbx-radius);color:#fff;background:linear-gradient(120deg,var(--hbx-pink-deep) 0%,#FF3C78 55%,var(--hbx-pink) 100%);
  box-shadow:0 22px 44px -24px rgba(214,0,70,.75)}
.hbx-promo-badge{font-family:var(--hbx-title);font-weight:800;font-size:15px;text-transform:uppercase;letter-spacing:.08em;
  background:#fff;color:var(--hbx-pink-deep);border-radius:999px;padding:10px 18px;white-space:nowrap}
.hbx .hbx-promo h3{font-size:clamp(22px,2.6vw,28px);margin-bottom:6px;color:#fff}
.hbx .hbx-promo p{margin:0;color:#FFE3EC;font-size:16px}
.hbx-promo .hbx-btn{background:#fff;color:var(--hbx-pink-deep)!important;box-shadow:none;white-space:nowrap}

/* Avis clients */
.hbx-quote{margin:0;background:#fff;border:1px solid var(--hbx-line);border-radius:var(--hbx-radius);padding:28px 26px;display:flex;flex-direction:column;justify-content:space-between;gap:18px}
.hbx-quote blockquote{margin:0;padding:0;border:0;font-size:17px;line-height:1.55;color:var(--hbx-ink);font-style:normal;background:none}
.hbx-quote blockquote::before{content:"\201C";display:block;color:var(--hbx-pink);font-family:var(--hbx-title);font-weight:800;font-size:56px;line-height:.8;height:28px}
.hbx-quote figcaption{font-size:14px;color:var(--hbx-muted)}
.hbx-quote figcaption b{color:var(--hbx-ink);font-family:var(--hbx-title)}

/* Logos clients */
.hbx-logos{display:grid;grid-template-columns:repeat(8,1fr);gap:12px;align-items:center}
.hbx-logos img{filter:grayscale(1);opacity:.75;mix-blend-mode:multiply}

/* Liens (réalisations, villes) */
.hbx-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
.hbx-chips a{display:inline-block;background:#fff;border:1px solid var(--hbx-line);border-radius:999px;padding:8px 16px;font-size:15px;text-decoration:none;color:var(--hbx-ink)}
.hbx-chips a:hover{border-color:var(--hbx-pink);color:var(--hbx-pink-deep)}

/* FAQ */
.hbx-faq{max-width:860px}
.hbx-faq details{background:#fff;border:1px solid var(--hbx-line);border-radius:12px;padding:0 20px;margin-bottom:10px}
.hbx-faq summary{cursor:pointer;font-family:var(--hbx-title);font-weight:700;font-size:17px;padding:16px 0;list-style-position:outside}
.hbx-faq details p{color:var(--hbx-ink-2);margin:0 0 16px}

/* Bandeau d'appel */
.hbx-cta{text-align:center}
.hbx-cta h2{max-width:760px;margin:0 auto 14px}
.hbx .hbx-cta .hbx-lead{margin:0 auto 30px}
.hbx-cta-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;text-align:left}
.hbx-cta-grid h2,.hbx .hbx-cta-grid .hbx-lead{margin-left:0;margin-right:0}
.hbx-cta-img img{width:100%;max-width:460px;margin:0 auto;filter:drop-shadow(0 24px 40px rgba(0,0,0,.45))}
.hbx .hbx-contact{margin-top:22px;color:#D9CFD4;font-size:16px}
.hbx .hbx-more{margin-top:28px;font-size:15px}

@media (max-width:900px){
  .hbx-cards,.hbx-split,.hbx-pricing,.hbx-promo,.hbx-cta-grid{grid-template-columns:1fr}
  .hbx-cta-grid{text-align:center}
  .hbx-cta-img img{max-width:320px}
  .hbx-promo{padding:26px 22px;gap:16px}
  .hbx-promo-badge{justify-self:start}
  .hbx-split.hbx-rev>:first-child{order:0}
  .hbx-gallery{grid-template-columns:repeat(2,1fr)}
  .hbx-steps{grid-template-columns:1fr 1fr}
  .hbx-logos{grid-template-columns:repeat(4,1fr)}
  .hbx-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:260px 180px 180px}
  .hbx-mosaic .hbx-photo:first-child{grid-column:span 2;grid-row:auto}
}
@media (max-width:560px){
  .hbx{font-size:16px}
  .hbx-wrap{padding:0 16px}
  .hbx-sec{padding:52px 0}
  .hbx-hero .hbx-wrap{padding-top:56px;padding-bottom:60px}
  .hbx-steps{grid-template-columns:1fr}
  .hbx-gallery{grid-template-columns:1fr 1fr;gap:12px}
  .hbx-gallery figcaption{font-size:13px}
  .hbx-mosaic{grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:220px}
  .hbx-mosaic .hbx-photo:first-child,.hbx-mosaic .hbx-photo.hbx-wide{grid-column:auto}
}

/* Pages à la charte : le bandeau photo remplace le bandeau du thème (titre, sous-titre et images de démo) */
body:has(.hbx-hero) .breadcrum-area{display:none}
/* l'en-tête du thème est en position absolue (prévu pour passer sur son bandeau clair) : remis dans le flux, logo lisible */
body:has(.hbx-hero) .axil-header{position:relative}
/* le bandeau d'appel du thème (« Réservez votre location photobooth ») ferait doublon avec celui de la page */
body:has(.hbx-hero) .call-to-action-area{display:none}
/* Sections Elementor pleine largeur, sans marge entre les blocs */
.elementor-widget-html:has(> .elementor-widget-container > .hbx){margin-bottom:0}

/* Bandeau du thème Abstrak (toutes les pages qui l'affichent) : éventail de tirages Happy-Box discret, sans formes isolées.
   Le thème réutilise l'image du bandeau comme forme décorative du petit bandeau (Marseille, Aix…) : retirée là. */
.breadcrumb-banner .banner-thumbnail:has(img[src*="tirages-happy-box"]){width:auto;bottom:auto;top:220px;
  right:max(24px,calc((100% - 1320px) / 2 + 15px))}
.breadcrum-area .banner-thumbnail img[src*="tirages-happy-box"]{width:380px;max-width:32vw;height:auto}
.breadcrum-area .shape-group-8 img[src*="tirages-happy-box"],
.breadcrum-area .shape-group-8 img[src*="anneau-rose"],
.breadcrum-area .shape-group-8 img[src*="bulle-rose"]{display:none}
@media (max-width:991px){.breadcrum-area .banner-thumbnail img[src*="tirages-happy-box"]{max-width:70vw}}

/* Menu principal (menu 46, bin/menu-principal-2026-11.py) : une seule ligne, sous-menus en cartes,
   pastille saisonnière (classe hbx-menu-pill) et bouton devis (classe hbx-menu-cta). */
@media (min-width:992px){
  .axil-mainmenu .header-navbar{flex-wrap:nowrap;align-items:center}
  .axil-mainmenu .mainmenu{flex-wrap:nowrap;margin:0;gap:clamp(4px,1.6vw,26px)}
  .axil-mainmenu .mainmenu>li{margin:0}
  .axil-mainmenu .mainmenu>li>a{font-family:"Poppins",sans-serif;font-weight:600;font-size:15px;color:#1B1B20;white-space:nowrap}
  .axil-mainmenu .mainmenu>li>a:hover,.axil-mainmenu .mainmenu>li:hover>a{color:#FF0055}
  .axil-mainmenu .mainmenu>li>a::before{background:#FF0055;height:3px;border-radius:3px}
  .axil-mainmenu .mainmenu>.menu-item-has-children>a{margin-right:16px}
  .axil-mainmenu .mainmenu>.menu-item-has-children>a::after{font-size:15px;right:-16px;color:inherit;transition:transform .25s}
  .axil-mainmenu .mainmenu>.menu-item-has-children:hover>a::after{transform:rotate(180deg)}
  .axil-mainmenu .mainmenu>.menu-item-has-children .axil-submenu{border-radius:16px;border:1px solid #ECE4DC;padding:10px;min-width:250px;
    box-shadow:0 26px 50px -22px rgba(27,27,32,.35);margin-top:-6px}
  .axil-mainmenu .mainmenu .axil-submenu li a{font-family:"DM Sans",sans-serif;font-size:15px;font-weight:500;text-transform:none;color:#4A4A55;
    padding:10px 14px 10px 30px;border-radius:10px}
  .axil-mainmenu .mainmenu .axil-submenu li a::after{content:"";width:7px;height:7px;border-radius:50%;left:14px;background:#FF0055;opacity:0;transition:opacity .2s}
  .axil-mainmenu .mainmenu .axil-submenu li a:hover{background:#FFF0F5;color:#D60046}
  .axil-mainmenu .mainmenu .axil-submenu li a:hover::after{width:7px;opacity:1}
  .axil-mainmenu .mainmenu>li.hbx-menu-pill>a,.axil-mainmenu .mainmenu>li.hbx-menu-cta>a{height:auto;line-height:1.2;align-self:center}
  .axil-mainmenu .mainmenu>li.hbx-menu-pill>a{background:#FFE3EC;color:#D60046;border-radius:999px;padding:9px 14px;font-size:13.5px}
  .axil-mainmenu .mainmenu>li.hbx-menu-pill>a::before,.axil-mainmenu .mainmenu>li.hbx-menu-cta>a::before{display:none}
  .axil-mainmenu .mainmenu>li.hbx-menu-pill>a:hover{background:#FF0055;color:#fff}
  .axil-mainmenu .mainmenu>li.hbx-menu-cta>a{color:#fff;border-radius:999px;padding:13px 22px;
    background:linear-gradient(180deg,#FF3C78,#D60046);box-shadow:0 10px 22px -10px rgba(214,0,70,.6);transition:transform .15s}
  .axil-mainmenu .mainmenu>li.hbx-menu-cta>a:hover{color:#fff;transform:translateY(-2px)}
}
@media (min-width:992px) and (max-width:1299px){
  .axil-mainmenu .mainmenu>li>a{font-size:14px}
  .axil-mainmenu .mainmenu>li.hbx-menu-pill{display:none}
}
/* Panneau mobile : même pastille et même bouton */
@media (max-width:991px){
  .mainmenu>li.hbx-menu-pill>a{color:#D60046!important;font-weight:700}
  .mainmenu>li.hbx-menu-cta>a{display:inline-block!important;margin-top:14px;background:linear-gradient(180deg,#FF3C78,#D60046);color:#fff!important;
    border-radius:999px;padding:12px 22px!important;line-height:1.2!important;height:auto!important}
}
/* Bouton devis du menu : le thème colore en rose (!important) l'entrée de la page en cours, illisible sur le bouton rose */
.axil-mainmenu .mainmenu>li.hbx-menu-cta>a,.axil-mainmenu .mainmenu>li.hbx-menu-cta.current-menu-item>a,
.mainmenu>li.hbx-menu-cta.current-menu-item>a,.mainmenu>li.hbx-menu-cta>a.active{color:#fff!important}
.mainmenu>li.hbx-menu-cta.current-menu-item>a::before{display:none}

/* Formulaire de devis (widget axil-contact-page + Contact Form 7) sur les pages à la charte */
body:has(.hbx-hero) .elementor-widget-axil-contact-page .section-padding{padding:56px 0 72px;background:#FAF6F2}
body:has(.hbx-hero) .elementor-widget-axil-contact-page .shape-group-12{display:none}
body:has(.hbx-hero) .elementor-widget-axil-contact-page .row{align-items:flex-start;justify-content:center}
@media (min-width:992px){
  body:has(.hbx-hero) .elementor-widget-axil-contact-page .row>div:first-child{flex:0 0 62%;max-width:62%}
  body:has(.hbx-hero) .elementor-widget-axil-contact-page .row>div:last-child{flex:0 0 34%;max-width:34%;margin-left:4%}
}
body:has(.hbx-hero) .contact-form-box{background:#fff;border:1px solid #ECE4DC;border-radius:16px;box-shadow:0 24px 48px -28px rgba(27,27,32,.35);padding:34px 34px 28px}
body:has(.hbx-hero) .contact-form-box>.title{font-family:"Poppins",sans-serif;font-weight:800;font-style:normal;font-size:26px;color:#1B1B20;margin-bottom:20px}
body:has(.hbx-hero) .contact-form-box .wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:2px 20px}
body:has(.hbx-hero) .contact-form-box .wpcf7-form>*{grid-column:1/-1}
body:has(.hbx-hero) .contact-form-box .wpcf7-form>.form-group:not(:has(textarea)):not(:has([type=submit])){grid-column:auto}
body:has(.hbx-hero) .contact-form-box .form-group{margin-bottom:14px}
body:has(.hbx-hero) .contact-form-box .form-group p{margin:0}
body:has(.hbx-hero) .contact-form-box .form-group br{display:none}
body:has(.hbx-hero) .contact-form-box label{display:block;font-family:"DM Sans",sans-serif;font-size:14px;font-weight:700;color:#1B1B20;margin:0 0 6px}
body:has(.hbx-hero) .contact-form-box .form-control,
body:has(.hbx-hero) .contact-form-box .wpcf7-form-control:not([type=submit]){width:100%;height:50px;border:1px solid #ECE4DC;border-radius:12px;background:#FAF6F2;
  padding:0 16px;font-family:"DM Sans",sans-serif;font-size:15px;color:#1B1B20;box-shadow:none;transition:border-color .15s,box-shadow .15s,background .15s}
body:has(.hbx-hero) .contact-form-box textarea.wpcf7-form-control:not([type=submit]){height:140px;padding:14px 16px;resize:vertical}
body:has(.hbx-hero) .contact-form-box .wpcf7-form-control:not([type=submit]):focus{outline:0;border-color:#FF0055;background:#fff;box-shadow:0 0 0 4px rgba(255,0,85,.12)}
body:has(.hbx-hero) .contact-form-box .wpcf7-form-control::placeholder{color:#9A9AA5}
body:has(.hbx-hero) .contact-form-box [type=submit]{display:inline-block;width:auto;height:auto;border:0;border-radius:999px;padding:16px 34px;margin-top:6px;cursor:pointer;
  font-family:"Poppins",sans-serif;font-weight:700;font-size:17px;color:#fff;background:linear-gradient(180deg,#FF3C78,#D60046);
  box-shadow:0 10px 24px -8px rgba(214,0,70,.55);transition:transform .15s}
body:has(.hbx-hero) .contact-form-box [type=submit]:hover{transform:translateY(-2px)}
body:has(.hbx-hero) .contact-form-box .wpcf7-not-valid-tip{font-size:13px;margin-top:4px}
body:has(.hbx-hero) .contact-form-box .wpcf7-response-output{border-radius:12px;margin:10px 0 0;padding:12px 16px;font-size:15px}
body:has(.hbx-hero) .elementor-widget-axil-contact-page .contact-info{background:#fff;border:1px solid #ECE4DC;border-left:4px solid #FF0055;border-radius:0 16px 16px 0;
  padding:26px 26px 22px;margin:0 0 20px!important;box-shadow:none}
body:has(.hbx-hero) .elementor-widget-axil-contact-page .contact-info .title{font-family:"Poppins",sans-serif;font-weight:800;font-style:normal;font-size:20px;color:#1B1B20;margin-bottom:8px}
body:has(.hbx-hero) .elementor-widget-axil-contact-page .contact-info .subtitle{color:#4A4A55;font-size:15px;margin-bottom:6px}
body:has(.hbx-hero) .elementor-widget-axil-contact-page .contact-info .phone-number,
body:has(.hbx-hero) .elementor-widget-axil-contact-page .contact-info .phone-number a{font-family:"Poppins",sans-serif;font-weight:800;font-size:28px;color:#D60046;margin:6px 0 0}
@media (max-width:767px){
  body:has(.hbx-hero) .contact-form-box{padding:24px 18px}
  body:has(.hbx-hero) .contact-form-box .wpcf7-form{grid-template-columns:1fr}
  body:has(.hbx-hero) .contact-form-box .wpcf7-form>.form-group:not(:has(textarea)):not(:has([type=submit])){grid-column:1/-1}
}
