/*
|--------------------------------------------------------------------------
| HYRO ONE Experience
|--------------------------------------------------------------------------
| Product : HYRO ONE SPA
| File    : spa.css
|--------------------------------------------------------------------------
*/

.spa-product-hero{
    position:relative;
    overflow:hidden;
    padding:96px 0 110px;
    background:
        radial-gradient(
            circle at 12% 20%,
            rgba(236,72,153,.16),
            transparent 32%
        ),
        radial-gradient(
            circle at 87% 18%,
            rgba(192,132,252,.22),
            transparent 35%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            var(--hyro-soft-background) 100%
        );
}

.spa-product-hero::before{
    content:"";
    position:absolute;
    width:440px;
    height:440px;
    left:-260px;
    bottom:-300px;
    border-radius:50%;
    background:rgba(236,72,153,.08);
}

.spa-product-hero::after{
    content:"";
    position:absolute;
    width:520px;
    height:520px;
    right:-300px;
    top:-310px;
    border-radius:50%;
    background:rgba(139,92,246,.08);
}

.spa-product-hero-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:72px;
}

.spa-product-badge{
    width:fit-content;
    padding:9px 14px;
    border:1px solid var(--hyro-border);
    border-radius:999px;
    color:var(--hyro-primary);
    background:rgba(255,255,255,.88);
    font-size:12px;
    font-weight:700;
    letter-spacing:1px;
}

.spa-product-hero h1{
    margin:22px 0 18px;
    color:var(--hyro-text);
    font-size:clamp(43px,5.7vw,72px);
    line-height:1.06;
    letter-spacing:-2.8px;
}

.spa-product-hero h1 span{
    display:block;
    color:transparent;
    background:var(--hyro-gradient);
    background-clip:text;
    -webkit-background-clip:text;
}

.spa-product-subtitle{
    margin:0;
    max-width:650px;
    color:var(--hyro-muted);
    font-size:18px;
    line-height:1.8;
}

.spa-product-actions{
    display:flex;
    flex-wrap:wrap;
    gap:13px;
    margin-top:32px;
}

.spa-product-proof{
    display:flex;
    flex-wrap:wrap;
    gap:10px 21px;
    margin-top:25px;
    color:var(--hyro-muted);
    font-size:13px;
}

/* SPA application preview */

.spa-app-preview{
    position:relative;
    padding:20px;
    border:1px solid rgba(243,232,255,.95);
    border-radius:28px;
    background:rgba(255,255,255,.9);
    box-shadow:0 30px 90px rgba(139,92,246,.18);
    backdrop-filter:blur(18px);
}

.spa-preview-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-bottom:16px;
}

.spa-preview-brand{
    color:var(--hyro-text);
    font-size:14px;
    font-weight:700;
}

.spa-preview-online{
    padding:7px 10px;
    border-radius:999px;
    color:#15803d;
    background:#f0fdf4;
    font-size:9px;
    font-weight:700;
}

.spa-preview-welcome{
    padding:22px;
    border-radius:19px;
    color:#ffffff;
    background:var(--hyro-gradient);
}

.spa-preview-welcome small,
.spa-preview-welcome strong,
.spa-preview-welcome span{
    display:block;
}

.spa-preview-welcome small{
    font-size:11px;
    opacity:.85;
}

.spa-preview-welcome strong{
    margin-top:8px;
    font-size:25px;
}

.spa-preview-welcome span{
    margin-top:7px;
    font-size:11px;
    opacity:.88;
}

.spa-preview-stats{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-top:14px;
}

.spa-preview-stat{
    padding:16px;
    border:1px solid var(--hyro-border);
    border-radius:15px;
    background:#ffffff;
}

.spa-preview-stat span,
.spa-preview-stat strong,
.spa-preview-stat small{
    display:block;
}

.spa-preview-stat span{
    color:var(--hyro-muted);
    font-size:9px;
}

.spa-preview-stat strong{
    margin-top:8px;
    color:var(--hyro-text);
    font-size:20px;
}

.spa-preview-stat small{
    margin-top:5px;
    color:var(--hyro-primary);
    font-size:8px;
}

.spa-preview-content{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:12px;
    margin-top:12px;
}

.spa-preview-panel{
    min-height:205px;
    padding:17px;
    border:1px solid var(--hyro-border);
    border-radius:16px;
    background:#ffffff;
}

.spa-preview-panel-title{
    color:var(--hyro-text);
    font-size:11px;
    font-weight:700;
}

.spa-preview-bars{
    height:135px;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:8px;
    margin-top:22px;
}

.spa-preview-bars span{
    width:100%;
    border-radius:7px 7px 2px 2px;
    background:linear-gradient(
        180deg,
        var(--hyro-secondary),
        var(--hyro-primary)
    );
}

.spa-preview-appointment{
    margin-top:13px;
    padding:11px;
    border-radius:10px;
    background:var(--hyro-soft-background);
}

.spa-preview-appointment span,
.spa-preview-appointment strong{
    display:block;
}

.spa-preview-appointment span{
    color:var(--hyro-primary);
    font-size:8px;
}

.spa-preview-appointment strong{
    margin-top:4px;
    color:var(--hyro-text);
    font-size:9px;
}

/* Quick benefits strip */

.spa-quick-benefits{
    padding:34px 0;
    border-top:1px solid var(--hyro-border);
    border-bottom:1px solid var(--hyro-border);
    background:#ffffff;
}

.spa-quick-benefits-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
}

.spa-quick-benefit{
    display:flex;
    align-items:center;
    gap:12px;
    padding:16px;
    border:1px solid var(--hyro-border);
    border-radius:16px;
    background:#ffffff;
}

.spa-quick-benefit-icon{
    width:43px;
    height:43px;
    flex:0 0 43px;
    border-radius:13px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--hyro-soft-background);
    font-size:20px;
}

.spa-quick-benefit strong,
.spa-quick-benefit span{
    display:block;
}

.spa-quick-benefit strong{
    color:var(--hyro-text);
    font-size:13px;
}

.spa-quick-benefit span{
    margin-top:4px;
    color:var(--hyro-muted);
    font-size:10px;
    line-height:1.5;
}

@media(max-width:960px){

    .spa-product-hero-grid{
        grid-template-columns:1fr;
    }

    .spa-product-hero-content{
        text-align:center;
    }

    .spa-product-badge{
        margin:0 auto;
    }

    .spa-product-subtitle{
        margin:0 auto;
    }

    .spa-product-actions,
    .spa-product-proof{
        justify-content:center;
    }

    .spa-quick-benefits-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:600px){

    .spa-product-hero{
        padding:68px 0 75px;
    }

    .spa-product-hero h1{
        letter-spacing:-1.6px;
    }

    .spa-product-actions{
        flex-direction:column;
    }

    .spa-product-actions .hyro-button{
        width:100%;
    }

    .spa-preview-stats,
    .spa-preview-content{
        grid-template-columns:1fr;
    }

    .spa-preview-panel:first-child{
        display:none;
    }

    .spa-quick-benefits-grid{
        grid-template-columns:1fr;
    }
}
