/*=========================================================
STUDIO 1 PREMIUM CTA V2
/*=========================================================
ROOT VARIABLES
=========================================================*/

:root{

    --cta-gold:#D4AF37;
    --cta-gold-light:#F4D76A;

    --cta-dark:#111111;
    --cta-dark-2:#1A1A1A;

    --cta-white:#FFFFFF;

    --cta-radius:32px;

    --cta-transition:.35s ease;

    --cta-shadow:
        0 30px 80px rgba(0,0,0,.35);

}

/*=========================================================
SECTION
=========================================================*/

.cta-section{

    position:relative;

    overflow:hidden;

    padding:120px 0;

    background:
        linear-gradient(
            180deg,
            #0d0d0d,
            #171717
        );

}

/*=========================================================
CONTAINER
=========================================================*/

.cta-section .container{

    position:relative;

    z-index:2;

}

/*=========================================================
WRAPPER
=========================================================*/

.cta-wrapper{

    position:relative;

    overflow:hidden;

    border-radius:var(--cta-radius);

    padding:90px 70px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.05),
            rgba(255,255,255,.02)
        );

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    -webkit-backdrop-filter:blur(18px);

    box-shadow:var(--cta-shadow);

    transition:
        transform .45s ease,
        box-shadow .45s ease,
        border-color .45s ease;

}

/*=========================================================
PREMIUM HOVER
=========================================================*/

.cta-wrapper:hover{

    transform:translateY(-8px);

    border-color:rgba(212,175,55,.28);

    box-shadow:

        0 40px 90px rgba(0,0,0,.45),

        0 0 60px rgba(212,175,55,.08);

}

/*=========================================================
GLOW EFFECT
=========================================================*/

.cta-wrapper::before{

    content:"";

    position:absolute;

    inset:-150px;

    pointer-events:none;

    opacity:.45;

    background:

        radial-gradient(

            circle,

            rgba(212,175,55,.12),

            transparent 65%

        );

    transition:opacity .45s ease;

}

.cta-wrapper:hover::before{

    opacity:.75;

}

/*=========================================================
OVERLAY
=========================================================*/

.cta-overlay{

    position:absolute;

    inset:0;

    pointer-events:none;

    background:

        radial-gradient(

            circle at top left,

            rgba(212,175,55,.18),

            transparent 35%

        ),

        radial-gradient(

            circle at bottom right,

            rgba(212,175,55,.10),

            transparent 45%

        );

    animation:ctaGlow 10s ease-in-out infinite alternate;

}

/*=========================================================
CONTENT
=========================================================*/

.cta-content{

    position:relative;

    z-index:3;

    max-width:900px;

    margin:auto;

    text-align:center;

}

/*=========================================================
BADGE
=========================================================*/

.cta-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    padding:12px 30px;

    border-radius:999px;

    background:

        linear-gradient(

            135deg,

            #FFD95A,

            #D4AF37

        );

    color:#111;

    font-size:1rem;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    box-shadow:

        0 12px 28px rgba(212,175,55,.25);

    transition:

        transform .35s ease,

        box-shadow .35s ease;

}

.cta-wrapper:hover .cta-badge{

    transform:translateY(-2px);

    box-shadow:

        0 18px 40px rgba(212,175,55,.35);

}

/*=========================================================
TITLE
=========================================================*/

.cta-title{

    margin-top:28px;

    color:#FFF;

    font-size:clamp(2rem,4vw,3.6rem);

    font-weight:800;

    line-height:1.15;

    letter-spacing:-.02em;

    transition:

        transform .35s ease,

        text-shadow .35s ease;

}

.cta-wrapper:hover .cta-title{

    transform:translateY(-2px);

    text-shadow:

        0 10px 35px rgba(212,175,55,.15);

}

.cta-title span{

    display:block;

    margin-top:8px;

    color:var(--cta-gold);

}

/*=========================================================
DESCRIPTION
=========================================================*/

.cta-description{

    max-width:760px;

    margin:30px auto 0;

    color:rgba(255,255,255,.82);

    font-size:clamp(1rem,1.5vw,1.18rem);

    line-height:1.9;

    transition:color .35s ease;

}

.cta-wrapper:hover .cta-description{

    color:rgba(255,255,255,.95);

}

.cta-description strong{

    color:#FFF;

}

.cta-description span{

    display:block;

    margin-top:10px;

    color:var(--cta-gold);

    font-weight:600;

}

/*=========================================================
STUDIO 1 PREMIUM CTA V2
PART 2
STATISTICS • BUTTONS • PREMIUM EFFECT
=========================================================*/

/*=========================================================
STATISTICS
=========================================================*/

.cta-stats{

    display:grid;

    grid-template-columns:repeat(3,minmax(160px,1fr));

    gap:50px;

    margin-top:65px;

    align-items:center;

}

.cta-stat{

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    text-align:center;

    padding:10px;

    transition:
        transform .35s ease,
        color .35s ease;

}

.cta-stat:hover{

    transform:translateY(-6px);

}

.cta-stat strong{

    color:var(--cta-gold);

    font-size:clamp(2rem,3vw,2.7rem);

    font-weight:800;

    line-height:1;

    transition:
        transform .35s ease,
        color .35s ease;

}

.cta-stat:hover strong{

    color:var(--cta-gold-light);

    transform:scale(1.05);

}

.cta-stat span{

    margin-top:10px;

    color:rgba(255,255,255,.72);

    font-size:.95rem;

    line-height:1.6;

    transition:color .35s ease;

}

.cta-stat:hover span{

    color:#FFF;

}

/*=========================================================
BUTTONS
=========================================================*/

.cta-buttons{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:22px;

    margin-top:60px;

    flex-wrap:wrap;

}

/*=========================================================
GENERAL BUTTON
=========================================================*/

.cta-buttons .btn{

    position:relative;

    overflow:hidden;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    min-width:230px;

    min-height:58px;

    padding:16px 34px;

    border-radius:999px;

    text-decoration:none;

    font-weight:700;

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease,
        color .35s ease,
        background .35s ease;

}

/*=========================================================
PRIMARY BUTTON
=========================================================*/

.cta-btn-primary{

    background:
        linear-gradient(
            135deg,
            #FFD95A,
            #D4AF37
        );

    color:#111;

    box-shadow:

        0 15px 35px rgba(212,175,55,.25);

}

.cta-btn-primary:hover{

    transform:translateY(-4px);

    box-shadow:

        0 22px 48px rgba(212,175,55,.42);

}

/*=========================================================
SECONDARY BUTTON
=========================================================*/

.cta-btn-secondary{

    background:rgba(255,255,255,.04);

    color:#FFF;

    border:1px solid rgba(255,255,255,.16);

    backdrop-filter:blur(10px);

}

.cta-btn-secondary:hover{

    transform:translateY(-4px);

    color:var(--cta-gold);

    border-color:var(--cta-gold);

    background:rgba(212,175,55,.08);

}

/*=========================================================
BUTTON ICON
=========================================================*/

.cta-buttons .btn i{

    font-size:1.05rem;

}

/*=========================================================
BUTTON SHINE
=========================================================*/

.cta-buttons .btn::before{

    content:"";

    position:absolute;

    top:0;

    left:-130%;

    width:60%;

    height:100%;

    background:

        linear-gradient(

            90deg,

            transparent,

            rgba(255,255,255,.35),

            transparent

        );

    transform:skewX(-25deg);

    transition:left .8s ease;

}

.cta-buttons .btn:hover::before{

    left:150%;

}

/*=========================================================
BUTTON ACTIVE
=========================================================*/

.cta-buttons .btn:active{

    transform:scale(.98);

}

/*=========================================================
DIVIDER LIGHT
=========================================================*/

.cta-wrapper::after{

    content:"";

    position:absolute;

    left:50%;

    bottom:-120px;

    transform:translateX(-50%);

    width:520px;

    height:520px;

    border-radius:50%;

    background:

        radial-gradient(

            circle,

            rgba(212,175,55,.08),

            transparent 70%

        );

    pointer-events:none;

}

/*=========================================================
ANIMATION
=========================================================*/

@keyframes ctaGlow{

    from{

        transform:scale(1);

        opacity:.75;

    }

    to{

        transform:scale(1.08);

        opacity:1;

    }

}

/*=========================================================
REDUCED MOTION
=========================================================*/

@media (prefers-reduced-motion:reduce){

.cta-wrapper,
.cta-badge,
.cta-title,
.cta-description,
.cta-stat,
.cta-buttons .btn,
.cta-overlay{

animation:none !important;

transition:none !important;

}

}

/*=========================================================
STUDIO 1 PREMIUM CTA V2
PART 3
RESPONSIVE
=========================================================*/

/*=========================================================
4K / LARGE DESKTOP
=========================================================*/

@media (min-width:1600px){

.cta-wrapper{

    max-width:1450px;

    margin:auto;

    padding:110px 90px;

}

.cta-title{

    max-width:1050px;

    margin-left:auto;

    margin-right:auto;

}

.cta-description{

    max-width:860px;

}

}

/*=========================================================
DESKTOP
=========================================================*/

@media (max-width:1400px){

.cta-wrapper{

    padding:90px 70px;

}

}

/*=========================================================
LAPTOP
=========================================================*/

@media (max-width:1200px){

.cta-section{

    padding:100px 0;

}

.cta-wrapper{

    padding:75px 55px;

}

.cta-stats{

    gap:35px;

}

.cta-buttons{

    gap:18px;

}

}

/*=========================================================
TABLET
=========================================================*/

@media (max-width:991px){

.cta-section{

    padding:90px 0;

}

.cta-wrapper{

    padding:65px 40px;

    border-radius:26px;

}

.cta-title{

    font-size:clamp(2rem,5vw,3rem);

}

.cta-description{

    font-size:1rem;

    line-height:1.8;

}

.cta-stats{

    grid-template-columns:repeat(3,1fr);

    gap:20px;

    margin-top:45px;

}

.cta-stat strong{

    font-size:2rem;

}

.cta-buttons{

    margin-top:45px;

}

}

/*=========================================================
MOBILE
=========================================================*/

@media (max-width:768px){

.cta-section{

    padding:75px 0;

}

.cta-wrapper{

    padding:50px 28px;

    border-radius:22px;

}

.cta-badge{

    font-size:.9rem;

    padding:10px 22px;

    letter-spacing:1.5px;

}

.cta-title{

    font-size:clamp(1.8rem,7vw,2.5rem);

    line-height:1.2;

    margin-top:22px;

}

.cta-description{

    margin-top:22px;

    font-size:.98rem;

    line-height:1.75;

}

.cta-stats{

    margin-top:40px;

    grid-template-columns:repeat(3,1fr);

    gap:16px;

}

.cta-stat strong{

    font-size:1.6rem;

}

.cta-stat span{

    font-size:.82rem;

}

.cta-buttons{

    flex-direction:column;

    margin-top:40px;

    gap:15px;

}

.cta-buttons .btn{

    width:100%;

    max-width:340px;

}

}

/*=========================================================
SMALL MOBILE
=========================================================*/

@media (max-width:576px){

.cta-wrapper{

    padding:42px 20px;

}

.cta-badge{

    font-size:.8rem;

    padding:8px 18px;

    letter-spacing:1.3px;

}

.cta-title{

    font-size:clamp(1.6rem,8vw,2rem);

}

.cta-description{

    font-size:.92rem;

    line-height:1.7;

}

.cta-stats{

    grid-template-columns:1fr;

    gap:22px;

}

.cta-stat{

    padding:0;

}

.cta-stat strong{

    font-size:1.8rem;

}

.cta-stat span{

    font-size:.9rem;

}

.cta-buttons{

    gap:14px;

}

.cta-buttons .btn{

    min-width:100%;

}

}

/*=========================================================
EXTRA SMALL DEVICE
=========================================================*/

@media (max-width:380px){

.cta-wrapper{

    padding:36px 16px;

}

.cta-title{

    font-size:1.45rem;

}

.cta-description{

    font-size:.88rem;

}

.cta-badge{

    font-size:.75rem;

    padding:7px 16px;

}

.cta-buttons .btn{

    min-height:52px;

    font-size:.92rem;

    padding:14px 18px;

}

}

/*=========================================================
LANDSCAPE PHONE
=========================================================*/

@media (max-height:550px) and (orientation:landscape){

.cta-section{

    padding:60px 0;

}

.cta-wrapper{

    padding:40px;

}

.cta-title{

    margin-top:18px;

}

.cta-stats{

    margin-top:28px;

}

.cta-buttons{

    margin-top:30px;

}

}

/*=========================================================
PRINT
=========================================================*/

@media print{

.cta-section{

    background:#fff !important;

}

.cta-wrapper{

    border:1px solid #ccc;

    box-shadow:none;

    background:#fff;

}

.cta-overlay{

    display:none;

}

.cta-buttons{

    display:none;

}

}

/*=========================================================
STUDIO 1 PREMIUM CTA V2
PART 4
PREMIUM MICRO INTERACTION
=========================================================*/

/*=========================================================
GPU ACCELERATION
=========================================================*/

.cta-wrapper,
.cta-overlay,
.cta-title,
.cta-description,
.cta-badge,
.cta-stat,
.cta-buttons .btn{

    will-change:transform;

    transform:translateZ(0);

    backface-visibility:hidden;

}

/*=========================================================
BADGE SHIMMER
=========================================================*/

.cta-badge{

    position:relative;

    overflow:hidden;

}

.cta-badge::before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:55%;

    height:100%;

    background:

        linear-gradient(

            90deg,

            transparent,

            rgba(255,255,255,.45),

            transparent

        );

    transform:skewX(-25deg);

}

.cta-wrapper:hover .cta-badge::before{

    animation:badgeShine 1s ease;

}

@keyframes badgeShine{

0%{

left:-120%;

}

100%{

left:180%;

}

}

/*=========================================================
TITLE FADE
=========================================================*/

.cta-title span{

    transition:

        color .35s ease,

        letter-spacing .35s ease;

}

.cta-wrapper:hover .cta-title span{

    letter-spacing:.5px;

    color:#FFD95A;

}

/*=========================================================
DESCRIPTION
=========================================================*/

.cta-description strong{

    transition:color .35s ease;

}

.cta-wrapper:hover .cta-description strong{

    color:#FFD95A;

}

/*=========================================================
STAT CARD
=========================================================*/

.cta-stat{

    border-radius:18px;

}

.cta-stat:hover{

    background:

        rgba(255,255,255,.03);

}

/*=========================================================
STAT NUMBER GLOW
=========================================================*/

.cta-stat strong{

    text-shadow:

        0 0 0 rgba(212,175,55,0);

}

.cta-stat:hover strong{

    text-shadow:

        0 0 18px rgba(212,175,55,.25);

}

/*=========================================================
BUTTON ICON
=========================================================*/

.cta-buttons .btn i{

    transition:

        transform .35s ease;

}

.cta-buttons .btn:hover i{

    transform:translateX(4px);

}

/*=========================================================
BUTTON RIPPLE
=========================================================*/

.cta-buttons .btn::after{

    content:"";

    position:absolute;

    width:12px;

    height:12px;

    left:50%;

    top:50%;

    border-radius:50%;

    background:

        rgba(255,255,255,.25);

    transform:

        translate(-50%,-50%)

        scale(0);

    opacity:0;

}

.cta-buttons .btn:active::after{

    animation:ripple .55s ease;

}

@keyframes ripple{

0%{

transform:

translate(-50%,-50%)

scale(0);

opacity:.6;

}

100%{

transform:

translate(-50%,-50%)

scale(18);

opacity:0;

}

}

/*=========================================================
OVERLAY PARALLAX
=========================================================*/

.cta-wrapper:hover .cta-overlay{

    transform:scale(1.05);

}

/*=========================================================
BORDER LIGHT
=========================================================*/

.cta-wrapper{

    isolation:isolate;

}

.cta-wrapper::after{

    transition:

        opacity .45s ease,

        transform .45s ease;

}

.cta-wrapper:hover::after{

    opacity:.9;

    transform:

        translateX(-50%)

        scale(1.08);

}

/*=========================================================
SECTION REVEAL
=========================================================*/

.cta-section{

    opacity:0;

    transform:

        translateY(40px);

    transition:

        opacity .8s ease,

        transform .8s ease;

}

.cta-section.is-visible{

    opacity:1;

    transform:none;

}

/*=========================================================
GOLD FLOAT
=========================================================*/

.cta-wrapper::before{

    animation:

        goldFloat 8s ease-in-out infinite;

}

@keyframes goldFloat{

0%{

transform:

translateY(0px);

}

50%{

transform:

translateY(-10px);

}

100%{

transform:

translateY(0px);

}

}

/*=========================================================
PREMIUM FOCUS
=========================================================*/

.cta-buttons .btn:focus-visible{

outline:none;

box-shadow:

0 0 0 4px rgba(212,175,55,.25);

}

/*=========================================================
TOUCH DEVICE
=========================================================*/

@media (hover:none){

.cta-wrapper:hover{

transform:none;

}

.cta-stat:hover{

transform:none;

background:none;

}

.cta-buttons .btn:hover{

transform:none;

}

}

/*=========================================================
REDUCE MOTION
=========================================================*/

@media(prefers-reduced-motion:reduce){

.cta-wrapper::before,

.cta-overlay,

.cta-badge::before{

animation:none!important;

}

}

/*=========================================================
STUDIO 1 PREMIUM CTA V2
PART 5
FINAL OPTIMIZATION
=========================================================*/

/*=========================================================
BOX SIZING
=========================================================*/

.cta-section *,
.cta-section *::before,
.cta-section *::after{

    box-sizing:border-box;

}

/*=========================================================
IMAGE SAFETY
=========================================================*/

.cta-section img{

    display:block;

    max-width:100%;

    height:auto;

}

/*=========================================================
TEXT RENDERING
=========================================================*/

.cta-section{

    -webkit-font-smoothing:antialiased;

    -moz-osx-font-smoothing:grayscale;

    text-rendering:optimizeLegibility;

}

/*=========================================================
SELECTION
=========================================================*/

.cta-section ::selection{

    background:rgba(212,175,55,.35);

    color:#FFF;

}

/*=========================================================
SAFE AREA (iPhone)
=========================================================*/

@supports(padding:max(0px)){

.cta-section{

padding-left:max(0px,env(safe-area-inset-left));

padding-right:max(0px,env(safe-area-inset-right));

}

}

/*=========================================================
ULTRA WIDE MONITOR
=========================================================*/

@media(min-width:1920px){

.cta-wrapper{

max-width:1500px;

margin:auto;

}

}

/*=========================================================
HIGH DPI DISPLAY
=========================================================*/

@media(min-resolution:2dppx){

.cta-wrapper{

border-width:.8px;

}

}

/*=========================================================
KEYBOARD ACCESSIBILITY
=========================================================*/

.cta-buttons .btn:focus-visible{

outline:none;

box-shadow:

0 0 0 4px rgba(212,175,55,.25),

0 18px 45px rgba(0,0,0,.35);

}

/*=========================================================
LINK TRANSITION
=========================================================*/

.cta-section a{

transition:

color .3s ease,

background .3s ease,

border-color .3s ease,

transform .3s ease;

}

/*=========================================================
SMOOTH ICON
=========================================================*/

.cta-buttons i{

line-height:1;

}

/*=========================================================
PREVENT OVERFLOW
=========================================================*/

.cta-content{

overflow-wrap:break-word;

word-break:normal;

}

/*=========================================================
BUTTON DISABLED
=========================================================*/

.cta-buttons .btn:disabled,

.cta-buttons .btn.disabled{

opacity:.6;

pointer-events:none;

cursor:not-allowed;

}

/*=========================================================
PRINT IMPROVEMENT
=========================================================*/

@media print{

.cta-wrapper{

padding:35px;

border-radius:0;

}

.cta-title{

color:#000;

}

.cta-description{

color:#333;

}

.cta-stat strong{

color:#000;

}

.cta-stat span{

color:#555;

}

}

/*=========================================================
REDUCED MOTION
=========================================================*/

@media(prefers-reduced-motion:reduce){

*{

scroll-behavior:auto!important;

}

}

/*=========================================================
END
=========================================================*/
