/** Shopify CDN: Minification failed

Line 1780:0 Unexpected "}"

**/
/*==============================================================================
V-HYDRA PRODUCT BUILDER
Design System v3.0
==============================================================================*/



/*==============================================================================
01 • DESIGN TOKENS
==============================================================================*/

:root{

  /* Brand */

  --vhb-color-primary:#6D56F8;
  --vhb-color-primary-hover:#5C47E9;

  --vhb-color-success:#14B86E;

  /* Surface */

  --vhb-color-page:#FFFFFF;

  --vhb-color-surface:#FFFFFF;

  --vhb-color-surface-alt:#FAFBFD;

  /* Text */

  --vhb-color-text:#191C22;

  --vhb-color-text-light:#6B7280;

  /* Border */

  --vhb-color-border:#E8EAF2;

  /* Radius */

  --vhb-radius-xs:10px;

  --vhb-radius-sm:16px;

  --vhb-radius-md:24px;

  --vhb-radius-lg:32px;

  --vhb-radius-xl:40px;

  /* Shadows */

  --vhb-shadow-xs:
      0 3px 10px rgba(15,23,42,.04);

  --vhb-shadow-sm:
      0 12px 30px rgba(15,23,42,.06);

  --vhb-shadow-md:
      0 20px 50px rgba(15,23,42,.08);

  --vhb-shadow-lg:
      0 32px 80px rgba(15,23,42,.14);

  /* Spacing */

  --vhb-space-1:4px;

  --vhb-space-2:8px;

  --vhb-space-3:12px;

  --vhb-space-4:16px;

  --vhb-space-5:20px;

  --vhb-space-6:24px;

  --vhb-space-8:32px;

  --vhb-space-10:40px;

  --vhb-space-12:48px;

  --vhb-space-16:64px;

  --vhb-space-20:80px;

  /* Transition */

  --vhb-transition-fast:.15s ease;

  --vhb-transition:.28s ease;

  --vhb-transition-slow:.45s ease;

  /* Container */

  --vhb-container:1360px;

}



/*==============================================================================
02 • RESET
==============================================================================*/

.vhb-builder,
.vhb-builder *{

    box-sizing:border-box;

}

.vhb-builder img{

    display:block;

    width:100%;

    height:auto;

}

.vhb-builder h1,
.vhb-builder h2,
.vhb-builder h3,
.vhb-builder h4,
.vhb-builder h5,
.vhb-builder h6,
.vhb-builder p{

    margin:0;

}

.vhb-builder button{

    font:inherit;

    cursor:pointer;

}



/*==============================================================================
03 • BUILDER
==============================================================================*/

.vhb-builder{

    background:var(--vhb-color-page);

    color:var(--vhb-color-text);

    padding:var(--vhb-space-20) 0;

}

.vhb-builder__container{

    width:min(100%,1280px);

    margin-inline:auto;

    padding-inline:40px;

}



/*==============================================================================
04 • LAYOUT
==============================================================================*/

.vhb-builder__hero{

    margin-bottom:72px;

}

.vhb-builder__content{

    display:grid;

    grid-template-columns:minmax(0,1fr) 440px;

    gap:32px;

    align-items:start;

}

.vhb-builder__main{

    min-width:0;

}

.vhb-builder__summary{

    position:sticky;

    top:0;

}



/*==============================================================================
05 • TYPOGRAPHY
==============================================================================*/

.vhb-display{

    font-size:clamp(42px,5vw,72px);

    line-height:1;

    font-weight:800;

    letter-spacing:-0.04em;

}

.vhb-h1{

    font-size:clamp(34px,3vw,52px);

    line-height:1.08;

    font-weight:800;

}

.vhb-h2{

    font-size:clamp(28px,2vw,38px);

    line-height:1.15;

    font-weight:700;

}

.vhb-body{

    font-size:18px;

    line-height:1.7;

}

.vhb-small{

    font-size:15px;

    line-height:1.6;

}



/*==============================================================================
06 • HELPERS
==============================================================================*/

.vhb-hidden{

    display:none !important;

}

.vhb-flex{

    display:flex;

}

.vhb-center{

    display:flex;

    align-items:center;

    justify-content:center;

}



/*==============================================================================
07 • RESPONSIVE FOUNDATION
==============================================================================*/

@media (max-width:1200px){

    .vhb-builder__content{

        grid-template-columns:1fr 340px;

    }

}

@media (max-width:1024px){

    .vhb-builder{

        padding:64px 0;

    }

    .vhb-builder__content{

        grid-template-columns:1fr;

    }

    .vhb-builder__summary{

        position:relative;

        top:auto;

    }

}

@media (max-width:768px){

    .vhb-builder{

        padding:48px 0;

    }

    .vhb-builder__container{

        padding-inline:20px;

    }

}
/*==============================================================================
08 • HERO
==============================================================================*/

.vhb-hero{

    position:relative;

    display:grid;

    grid-template-columns:520px minmax(0,1fr);

    align-items:center;

    gap:72px;

    margin-bottom:72px;

}

.vhb-hero__image{

    display:flex;

    align-items:center;

    justify-content:center;

}

.vhb-hero__img{

    width:100%;

    max-width:480px;

    object-fit:contain;

}

.vhb-hero__content{

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.vhb-hero__eyebrow{

    display:inline-flex;

    align-items:center;

    width:max-content;

    padding:10px 18px;

    margin-bottom:22px;

    border-radius:999px;

    background:rgba(109,86,248,.08);

    color:var(--vhb-color-primary);

    font-size:13px;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.vhb-hero__title{

    font-size:clamp(44px,5vw,68px);

    line-height:1.05;

    font-weight:800;

    letter-spacing:-.04em;

    color:var(--vhb-color-text);

    margin-bottom:24px;

}

.vhb-hero__description{

    max-width:680px;

    font-size:20px;

    line-height:1.8;

    color:var(--vhb-color-text-light);

}



/*==============================================================================
09 • PRODUCT HEADER
==============================================================================*/

.vhb-products__header{

    margin-bottom:48px;

}

.vhb-products__eyebrow{

    display:inline-flex;

    align-items:center;

    padding:8px 16px;

    border-radius:999px;

    background:rgba(109,86,248,.08);

    color:var(--vhb-color-primary);

    font-size:13px;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

    margin-bottom:18px;

}

.vhb-products__title{

    font-size:clamp(36px,4vw,54px);

    line-height:1.05;

    font-weight:800;

    letter-spacing:-.03em;

    margin-bottom:18px;

    color:var(--vhb-color-text);

}

.vhb-products__description{

    max-width:720px;

    font-size:18px;

    line-height:1.8;

    color:var(--vhb-color-text-light);

}



/*==============================================================================
10 • PRODUCT GRID
==============================================================================*/

.vhb-products__grid{

    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:24px;

    align-items: start;

}

.vhb-products__empty{

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    gap:12px;

    min-height:260px;

    border:2px dashed var(--vhb-color-border);

    border-radius:var(--vhb-radius-lg);

    background:#FFF;

    text-align:center;

    padding:40px;

}

.vhb-products__empty h3{

    font-size:24px;

    font-weight:700;

    color:var(--vhb-color-text);

}

.vhb-products__empty p{

    color:var(--vhb-color-text-light);

    line-height:1.7;

}



/*==============================================================================
11 • MICRO INTERACTIONS
==============================================================================*/

.vhb-products__grid > *{

    animation:vhbFadeUp .45s ease both;

}

.vhb-products__grid > *:nth-child(2){

    animation-delay:.08s;

}

.vhb-products__grid > *:nth-child(3){

    animation-delay:.16s;

}

.vhb-products__grid > *:nth-child(4){

    animation-delay:.24s;

}



/*==============================================================================
12 • RESPONSIVE
==============================================================================*/

@media (max-width:1100px){

    .vhb-hero{

        grid-template-columns:1fr;

        gap:48px;

        text-align:center;

    }

    .vhb-hero__content{

        align-items:center;

    }

}

@media (max-width:768px){

    .vhb-products__grid{

        grid-template-columns:1fr;

        gap:24px;

    }

    .vhb-products__header{

        margin-bottom:32px;

    }

    .vhb-products__title{

        font-size:38px;

    }

    .vhb-hero{

        margin-bottom:48px;

    }

}
/*==============================================================================
13 • PRODUCT CARD
==============================================================================*/

.vhb-card{

    display:flex;

    flex-direction:column;

    height:100%;

    background:var(--vhb-color-surface);

    border:1px solid var(--vhb-color-border);

    border-radius:var(--vhb-radius-md);

    overflow:hidden;

}

.vhb-card:hover{

    transform:translateY(-6px);

    border-color:#D9DDEA;

    box-shadow:var(--vhb-shadow-md);

}

/*==============================================================================
MEDIA
==============================================================================*/

.vhb-card__media{

    display:flex;

    align-items:center;

    justify-content:center;

    padding:20px 20px 10px;

    background:linear-gradient(
        180deg,
        #FCFCFD 0%,
        #F6F7FB 100%
    );

}

.vhb-card__image{

    width:100%;

    max-width:220px;

    max-height:220px;

    object-fit:contain;

    transition:transform .25s ease;

}

.vhb-card:hover .vhb-card__image{

    transform:scale(1.03);

}

/*==============================================================================
BODY
==============================================================================*/

.vhb-card__body{

    display:flex;

    flex-direction:column;

    padding:14px;

    gap:8px;

}

/*==============================================================================
INFO
==============================================================================*/

.vhb-card__info{

    display:flex;

    flex-direction:column;

    gap:4px;

}

.vhb-card__title{

    font-size:24px;

    font-weight:800;

    line-height:1.15;

    color:var(--vhb-color-text);

    margin:0;

}

.vhb-card__description{

    font-size:14px;

    line-height:1.45;

    color:var(--vhb-color-text-light);

    margin:0;

}

/*==============================================================================
BUTTON
==============================================================================*/

.vhb-card__button{

    width:100%;

    margin:auto 0 0;

}

.vhb-card.is-selected .vhb-card__button{

    display:none;

}
/*==============================================================================
BADGE
==============================================================================*/

.vhb-card__badge{

    position:absolute;

    top:14px;

    left:14px;

    z-index:5;

    display:flex;

    align-items:center;

    justify-content:center;

    padding:6px 12px;

    border-radius:999px;

    background:var(--vhb-color-success);

    color:#FFF;

    font-size:11px;

    font-weight:700;

    opacity:0;

    transform:translateY(-6px);

    transition:all .25s ease;

}

.vhb-card.is-selected .vhb-card__badge{

    opacity:1;

    transform:none;

}

/*==============================================================================
QUANTITY
==============================================================================*/

.vhb-card__quantity{

    display:none;

    align-items:center;

    justify-content:space-between;

    gap:8px;

    width:100%;

    height:50px;

    padding:5px;

    border:1px solid var(--vhb-color-border);

    border-radius:16px;

    background:#FFF;

}

.vhb-card.is-selected .vhb-card__button{

    display:none;

}

.vhb-card.is-selected .vhb-card__quantity{

    display:flex;

}

.vhb-card__minus,
.vhb-card__plus{

    width:38px;

    height:38px;

    border:none;

    border-radius:12px;

    background:#F4F5FA;

    color:var(--vhb-color-text);

    font-size:22px;

    font-weight:700;

    transition:all .2s ease;

}

.vhb-card__minus:hover,
.vhb-card__plus:hover{

    background:#655DC6;

    color:#FFF;

}

.vhb-card__count{

    min-width:36px;

    text-align:center;

    font-size:17px;

    font-weight:700;

}

/*==============================================================================
PLACEHOLDER
==============================================================================*/

.vhb-card__image-placeholder{

    display:flex;

    align-items:center;

    justify-content:center;

    width:180px;

    height:180px;

    border-radius:18px;

    background:#F3F5FA;

    color:var(--vhb-color-text-light);

    font-size:14px;

    font-weight:600;

}

/*==============================================================================
RESPONSIVE
==============================================================================*/

@media (max-width:768px){

    .vhb-card{

        border-radius:18px;

    }

    .vhb-card__media{

        padding:16px 16px 8px;

    }

    .vhb-card__image{

        max-width:170px;

        max-height:170px;

    }

    .vhb-card__body{

    padding:14px;

    gap:8px;

}

    .vhb-card__info{

        gap:6px;

    }

    .vhb-card__title{

        font-size:20px;

    }

    .vhb-card__description{

        font-size:13px;

    }

    .vhb-card__price{

    font-size:22px;

    font-weight:800;

    line-height:1;

    margin:0;

}

    .vhb-card__bottom{

    display:flex;

    flex-direction:column;

    gap:12px;

}

    .vhb-card__button{

    width:100%;

    margin:0;

}

    .vhb-card__quantity{

        height:48px;

    }

    .vhb-card__minus,
    .vhb-card__plus{

        width:34px;

        height:34px;

        font-size:20px;

    }

}
/*==============================================================================
14 • SUMMARY
==============================================================================*/

.vhb-summary{

    position:relative;

    background:var(--vhb-color-surface);

    border:1px solid var(--vhb-color-border);

    border-radius:var(--vhb-radius-md);

    box-shadow:var(--vhb-shadow-sm);

    overflow:hidden;

}

.vhb-summary__header{

    padding:32px 32px 24px;

    border-bottom:1px solid var(--vhb-color-border);

}

.vhb-summary__eyebrow{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:8px 14px;

    margin-bottom:18px;

    border-radius:999px;

    background:rgba(109,86,248,.08);

    color:var(--vhb-color-primary);

    font-size:12px;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.vhb-summary__title{

    font-size:30px;

    font-weight:800;

    line-height:1.15;

    margin-bottom:10px;

}

.vhb-summary__description{

    color:var(--vhb-color-text-light);

    line-height:1.7;

    font-size:15px;

}



/*==============================================================================
SUMMARY BODY
==============================================================================*/

.vhb-summary__body{

    padding:28px 32px;

    display:flex;

    flex-direction:column;

    gap:20px;

}

.vhb-summary__line{

    display:flex;

    align-items:center;

    justify-content:space-between;

}

.vhb-summary__label{

    color:var(--vhb-color-text-light);

    font-size:15px;

}

.vhb-summary__value{

    font-size:24px;

    font-weight:800;

    color:var(--vhb-color-text);

}



/*==============================================================================
SUMMARY FOOTER
==============================================================================*/

.vhb-summary__footer{

    padding:0 32px 32px;

}

.vhb-summary__button{

    width:100%;

    height:62px;

    border:none;

    border-radius:20px;

    background:linear-gradient(
    135deg,
    #5B4CFF 0%,
    #7565FF 55%,
    #9A87FF 100%
);

background-size:140% 140%;

border:1px solid rgba(255,255,255,.14);

box-shadow:
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -8px 20px rgba(0,0,0,.10),
    0 16px 38px rgba(91,91,235,.34);

backdrop-filter:blur(8px);
-webkit-backdrop-filter:blur(8px);

    color:#FFF;

    font-family:inherit;

    font-size:17px;

    font-weight:700;

    letter-spacing:-.02em;

    cursor:pointer;

    box-shadow:
        0 10px 26px rgba(109,86,248,.28);

    transition:
        transform .22s ease,
        background .22s ease,
        box-shadow .22s ease,
        opacity .22s ease;

}

.vhb-summary__button:hover:not(:disabled){

    filter:brightness(1.06);

box-shadow:
    0 34px 75px rgba(91,91,235,.48),
    inset 0 1px 1px rgba(255,255,255,.35);

}

.vhb-summary__button:active:not(:disabled){

    transform:translateY(0) scale(.97);

}

.vhb-summary__button:disabled{

    opacity:.45;

    cursor:not-allowed;

}



/*==============================================================================
15 • SELECTED CARD
==============================================================================*/

.vhb-card.is-selected{

    border-color:var(--vhb-color-primary);

    transform:translateY(-6px);

    box-shadow:
        0 18px 40px rgba(109,86,248,.16),
        0 8px 18px rgba(109,86,248,.10),
        0 0 0 1px rgba(109,86,248,.08);

}

.vhb-card.is-selected .vhb-card__badge{

    opacity:1;

    transform:none;

}

.vhb-card.is-selected .vhb-card__button{

    display:none;

}

.vhb-card.is-selected .vhb-card__quantity{

    display:flex;

}



/*==============================================================================
16 • FOCUS STATES
==============================================================================*/

.vhb-card__button:focus-visible,
.vhb-summary__button:focus-visible,
.vhb-card__plus:focus-visible,
.vhb-card__minus:focus-visible{

    outline:3px solid rgba(109,86,248,.25);

    outline-offset:3px;

}



/*==============================================================================
17 • RESPONSIVE
==============================================================================*/

@media (max-width:1024px){

    .vhb-summary{

        margin-top:40px;

    }

}

@media (max-width:768px){

    .vhb-summary__header{

        padding:24px;

    }

    .vhb-summary__body{

        padding:24px;

    }

    .vhb-summary__footer{

        padding:0 24px 24px;

    }

    .vhb-summary__title{

        font-size:24px;

    }

    .vhb-summary__value{

        font-size:20px;

    }

}
/*==============================================================================
18 • MICRO INTERACTIONS
==============================================================================*/

.vhb-card,
.vhb-summary,
.vhb-card__button,
.vhb-summary__button{

    transition:

        transform .28s cubic-bezier(.2,.8,.2,1),

        box-shadow .28s cubic-bezier(.2,.8,.2,1),

        border-color .25s ease,

        background-color .25s ease,

        color .25s ease,

        opacity .25s ease;

}
/*==========================================================
COUNTER ANIMATIONS
==========================================================*/

.vhb-card__count{

    transition:
        transform .22s ease,
        color .22s ease;

}

.vhb-card__quantity button{

    transition:
        transform .18s ease,
        background-color .18s ease,
        box-shadow .18s ease;

}

.vhb-card__quantity button:hover{

    transform:scale(1.08);

}

.vhb-card__quantity button:active{

    transform:scale(.94);

}

/*==========================================================
SUMMARY
==========================================================*/

.vhb-summary{

    transition:
        transform .28s ease,
        box-shadow .28s ease,
        opacity .25s ease;

}

.vhb-summary--updated{

    animation:vhbSummaryPulse .35s ease;

}

.vhb-total--pulse{

    animation:vhbNumberPulse .35s ease;

}

@keyframes vhbSummaryPulse{

    0%{

        transform:scale(.985);

        opacity:.75;

    }

    100%{

        transform:scale(1);

        opacity:1;

    }

}

@keyframes vhbNumberPulse{

    0%{

        transform:scale(1);

    }

    50%{

        transform:scale(1.08);

    }

    100%{

        transform:scale(1);

    }

}



/*==============================================================================
19 • BADGE
==============================================================================*/

.vhb-card__badge{

    user-select:none;

    pointer-events:none;

    backdrop-filter:blur(8px);

}



/*==============================================================================
20 • SCROLLBAR
==============================================================================*/

.vhb-builder *::-webkit-scrollbar{

    width:8px;

    height:8px;

}

.vhb-builder *::-webkit-scrollbar-thumb{

    background:#D6D9E6;

    border-radius:999px;

}

.vhb-builder *::-webkit-scrollbar-thumb:hover{

    background:#BFC5D8;

}



/*==============================================================================
21 • ANIMATIONS
==============================================================================*/

@keyframes vhbFadeUp{

    from{

        opacity:0;

        transform:
            translateY(22px);

    }

    to{

        opacity:1;

        transform:none;

    }

}

@keyframes vhbPop{

    from{

        transform:scale(.92);

        opacity:0;

    }

    to{

        transform:scale(1);

        opacity:1;

    }

}

@keyframes vhbPulse{

    0%{

        transform:scale(1);

    }

    50%{

        transform:scale(1.04);

    }

    100%{

        transform:scale(1);

    }

}



/*==============================================================================
22 • STATES
==============================================================================*/

.vhb-card.is-selected{

    animation:vhbPop .25s ease;

}

.vhb-card.is-selected .vhb-card__badge{

    animation:vhbFadeUp .35s ease;

}

.vhb-summary--updated{

    animation:vhbPulse .30s ease;

}



/*==============================================================================
23 • UTILITIES
==============================================================================*/

.vhb-text-center{

    text-align:center;

}

.vhb-hidden{

    display:none !important;

}

.vhb-flex{

    display:flex;

}

.vhb-items-center{

    align-items:center;

}

.vhb-justify-between{

    justify-content:space-between;

}

.vhb-gap-sm{

    gap:12px;

}

.vhb-gap-md{

    gap:20px;

}

.vhb-gap-lg{

    gap:32px;

}



/*==============================================================================
24 • MOBILE POLISH
==============================================================================*/

@media (max-width:768px){

    .vhb-hero{

        gap:32px;

    }

    .vhb-card{

    border-radius:18px;

}

    .vhb-card__media{

    min-height:105px;

    padding:6px;

}

    .vhb-card__image{

    max-width:120px;

    max-height:120px;

}

    .vhb-card__title{

        font-size:20px;
line-height:1.1;

    }

    .vhb-card__description{

        font-size:14px;

    }

    .vhb-card__price{

    margin:6px 0 8px;

    font-size:22px;

    line-height:1;

}

        font-size:26px;

    }
    

    .vhb-summary{

        border-radius:22px;

    }

}



/*==============================================================================
25 • PRINT / ACCESSIBILITY
==============================================================================*/

@media print{

    .vhb-summary__button,
    .vhb-card__button,
    .vhb-card__quantity{

        display:none !important;

    }

}
/*==============================================================================
26 • BENEFITS BAR
==============================================================================*/

.vhb-benefits{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:20px;

    margin-bottom:56px;

}

.vhb-benefits__item{

    display:flex;

    align-items:center;

    gap:18px;

    padding:22px;

    background:#FFF;

    border:1px solid var(--vhb-color-border);

    border-radius:20px;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;

}

.vhb-benefits__item:hover{

    transform:translateY(-3px);

    border-color:#D7DBE8;

    box-shadow:var(--vhb-shadow-sm);

}

.vhb-benefits__icon{

    width:52px;

    height:52px;

    border-radius:16px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(109,86,248,.08);

    font-size:24px;

    flex-shrink:0;

}

.vhb-benefits__content{

    display:flex;

    flex-direction:column;

    gap:4px;

}

.vhb-benefits__content strong{

    font-size:16px;

    font-weight:700;

    color:var(--vhb-color-text);

}

.vhb-benefits__content span{

    font-size:14px;

    line-height:1.5;

    color:var(--vhb-color-text-light);

}

@media (max-width:1100px){

    .vhb-benefits{

        grid-template-columns:repeat(2,1fr);

    }

}

@media (max-width:768px){

    .vhb-benefits{

        grid-template-columns:1fr;

        gap:16px;

        margin-bottom:40px;

    }

}
/*==============================================================================
27 • BENEFITS BAR - MOBILE
==============================================================================*/

@media (max-width:768px){

    .vhb-benefits{

        grid-template-columns:repeat(2,1fr);

        gap:10px;

        margin:0 0 24px;

    }

    .vhb-benefits__item{

        display:flex;

        align-items:center;

        gap:10px;

        padding:12px;

        min-height:72px;

        border-radius:16px;

    }

    .vhb-benefits__icon{

        width:38px;

        height:38px;

        min-width:38px;

        border-radius:10px;

        font-size:18px;

    }

    .vhb-benefits__content{

        display:flex;

        flex-direction:column;

        gap:2px;

    }

    .vhb-benefits__content strong{

        font-size:14px;

        line-height:1.15;

    }

    .vhb-benefits__content span{

        font-size:12px;

        line-height:1.2;

        opacity:.75;

    }

}
/*==============================================================================
27 • SUMMARY BUTTON OVERRIDE
==============================================================================*/

.vhb-summary__button{

    width:100%;
    height:64px;

    border:none;
    border-radius:22px;

    background:#655DC6 !important;

    background-size:140% 140%;

    border:1px solid rgba(255,255,255,.14);

    color:#FFF;

    font-family:inherit;
    font-size:18px;
    font-weight:700;
    line-height:1;

    cursor:pointer;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.30),
        inset 0 -8px 20px rgba(0,0,0,.10),
        0 16px 38px rgba(91,91,235,.34);

    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);

    transition:all .25s ease;

}

.vhb-summary__button:hover:not(:disabled){

    filter:brightness(1.06);

    transform:translateY(-2px);

    box-shadow:
        0 34px 75px rgba(91,91,235,.48),
        inset 0 1px 1px rgba(255,255,255,.35);

}

.vhb-summary__button:active:not(:disabled){

    transform:translateY(0) scale(.98);

}

.vhb-summary__button:disabled{

    opacity:.45;
    cursor:not-allowed;
    transform:none;

}
/*==============================================================================
COMO USAR
==============================================================================*/

.vhb-benefits{
    display:block !important;
    width:100%;
    margin:0 0 48px;
}

.vhb-benefits__image{
    display:block;
    width:100%;

    aspect-ratio:16 / 6;

    object-fit:cover;
    object-position:center top;

    border-radius:28px;
    overflow:hidden;

    box-shadow:0 16px 40px rgba(0,0,0,.06);
}
@media (min-width: 990px){

  .vhb-benefits__image{
      width:75%;
      max-width:900px;
      margin:0 auto;
      display:block;
  }

}

@media (max-width:768px){

    .vhb-benefits{
        margin:0 0 32px;
    }

    .vhb-benefits__image{
        border-radius:20px;
    }

}
.vhb-card__benefits{
    margin:-32px 0 -22px;
    line-height:0;
    position:relative;
    z-index:2;
}

.vhb-card__benefits-image{
    display: block;
    width: 100%;
    height: auto;
}
.vhb-card__bottom{
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-top:6px;
}

.vhb-card__price{
    margin:-2px 0 2px;
}

.vhb-card__benefits{

    margin:-12px 0 -10px;

    transform:scale(.82);

    transform-origin:center;

}

.vhb-card__button{

    margin-top:2px;

    height:48px;

    min-height:48px;

    padding:0 16px;

    border-radius:16px;

    font-size:15px;

}
.vhb-builder.is-highlight{

    animation: vhBuilderHighlight .8s ease;

}

@keyframes vhBuilderHighlight{

    0%{

        transform:scale(.985);

        box-shadow:0 0 0 rgba(109,86,248,0);

    }

    50%{

        transform:scale(1);

        box-shadow:0 0 40px rgba(109,86,248,.18);

    }

    100%{

        box-shadow:0 0 0 rgba(109,86,248,0);

    }

}
.vhb-card.is-highlight{

    animation:vhCardGuide .9s ease;

}

@keyframes vhCardGuide{

    0%{

        transform:translateY(0);

        box-shadow:0 0 0 rgba(109,86,248,0);

    }

    35%{

        transform:translateY(-6px);

        box-shadow:
            0 0 0 4px rgba(109,86,248,.10),
            0 24px 48px rgba(109,86,248,.22);

    }

    100%{

        transform:translateY(0);

        box-shadow:0 0 0 rgba(109,86,248,0);

    }

}
.vhb-card__button.is-guide{

    animation:vhGuideButton 1s ease;

}

@keyframes vhGuideButton{

    0%{

        transform:scale(1);

    }

    35%{

        transform:scale(1.06);

    }

    60%{

        transform:scale(.98);

    }

    100%{

        transform:scale(1);

    }

}
.vhb-summary__value.is-updating{

    animation:vhSummaryPop .35s ease;

}

.vhb-summary__shipping.is-updating{

    animation:vhSummaryPop .35s ease;

}

@keyframes vhSummaryPop{

    0%{

        transform:scale(.96);

        opacity:.65;

    }

    60%{

        transform:scale(1.04);

        opacity:1;

    }

    100%{

        transform:scale(1);

        opacity:1;

    }

}

.vhb-summary__button.is-glow{

    animation:vhCheckoutGlow .6s ease;

}

@keyframes vhCheckoutGlow{

    0%{

        box-shadow:0 0 0 rgba(101,93,198,0);

    }

    50%{

        box-shadow:0 0 28px rgba(101,93,198,.40);

    }

    100%{

        box-shadow:0 0 0 rgba(101,93,198,0);

    }

}
/* ==========================================================
   Progress
========================================================== */

.vhb-progress{

    margin:18px 0 18px;

}

.vhb-progress__track{

    position:relative;

    width:100%;

    height:10px;

    background:#ECECEC;

    border-radius:999px;

    overflow:visible;

}

.vhb-progress__fill{

    position:relative;

    width:8%;

    height:100%;

    background:#6D56F8;

    border-radius:999px;

    transition:width .45s cubic-bezier(.22,.61,.36,1);

}

.vhb-progress__header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:8px;

}

.vhb-progress__icon{

    width:34px;

    height:34px;

    border-radius:50%;

    background:#F4F4F4;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:18px;

    transition:.35s;

    border:2px solid #ECECEC;

}

.vhb-progress__icon.active{

    background:var(--vhb-primary);

    border-color:var(--vhb-primary);

    color:#FFF;

    transform:scale(1.08);

}

.vhb-progress__track::before,
.vhb-progress__track::after{

    content:"";

    position:absolute;

    top:50%;

    width:18px;

    height:18px;

    border-radius:50%;

    background:#FFF;

    border:3px solid #ECECEC;

    transform:translateY(-50%);

    transition:.35s;

    z-index:3;

}

.vhb-progress__track::before{

    left:-2px;

}

.vhb-progress__track::after{

    right:-2px;

}

.vhb-progress__text{

    margin-top:10px;

    text-align:center;

    font-size:14px;

    line-height:1.4;

    color:#555;

    font-weight:600;

}
/* ==========================================================
   Sprint 3.1
   Remove mensagem antiga de frete
========================================================== */

#vhb-shipping-message{

    display:none;

}
/* ==========================================
   Desktop - Alinhamento do Summary
========================================== */

@media (min-width:1025px){

    .vhb-builder__summary{

        margin-top:145px;

    }

}