/* ===== Прелоадер ===== */
#mv-preloader{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;
    background:radial-gradient(circle at 30% 30%, #233079 0%, var(--dark-navy) 55%, #10185a 100%);
    transition:opacity .7s ease, visibility .7s ease;}
#mv-preloader.is-hidden{opacity:0;visibility:hidden;pointer-events:none;}
.mv-preloader-inner{text-align:center;color:#fff;}
.mv-orbit{position:relative;width:120px;height:120px;margin:0 auto 26px;display:flex;align-items:center;justify-content:center;}
.mv-orbit i{font-size:34px;color:var(--primary-gold);filter:drop-shadow(0 4px 14px rgba(197,165,114,.6));animation:mvFloat 2.4s ease-in-out infinite;}
.mv-orbit-ring{position:absolute;inset:0;border-radius:50%;border:2px solid transparent;border-top-color:var(--primary-gold);border-right-color:rgba(197,165,114,.35);animation:mvSpin 1.1s linear infinite;}
.mv-orbit-ring.ring2{inset:18px;border-top-color:rgba(255,255,255,.7);border-right-color:rgba(255,255,255,.15);animation-duration:1.7s;animation-direction:reverse;}
.mv-preloader-brand{font-family:'Poppins',sans-serif;font-weight:800;font-size:28px;letter-spacing:1px;
    background:linear-gradient(90deg,#fff 0%,var(--secondary-gold) 50%,#fff 100%);background-size:200% auto;
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:mvSheen 2.5s linear infinite;}
.mv-preloader-tagline{font-size:13px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.6);margin-top:6px;}
.mv-preloader-bar{width:180px;height:3px;border-radius:3px;background:rgba(255,255,255,.15);margin:22px auto 0;overflow:hidden;}
.mv-preloader-bar span{display:block;height:100%;width:40%;border-radius:3px;background:linear-gradient(90deg,var(--primary-gold),var(--secondary-gold));animation:mvLoad 1.3s ease-in-out infinite;}
@keyframes mvSpin{to{transform:rotate(360deg);}}
@keyframes mvFloat{0%,100%{transform:translateY(-3px);}50%{transform:translateY(4px);}}
@keyframes mvSheen{to{background-position:200% center;}}
@keyframes mvLoad{0%{transform:translateX(-120%);}100%{transform:translateX(360%);}}
@media (prefers-reduced-motion: reduce){
    .mv-orbit-ring,.mv-orbit i,.mv-preloader-brand,.mv-preloader-bar span{animation:none!important;}
}

/* Hero Section - Premium Full Screen */
.hero-section {
    position: relative;
    min-height: 100vh;
    width: 100vw;
    overflow: hidden;
    background: var(--dark-navy);
    margin-top: 0;
    display: flex;
    align-items: center;
}

/* Slider Container */
.hero-slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 2s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s 2s;
}

.slide.active {
    opacity: 1;
    visibility: visible;
    transition: opacity 2s cubic-bezier(0.4, 0, 0.2, 1);
}

.slide-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.1);
    transition: transform 10s ease-out;
}

.slide.active .slide-image {
    transform: scale(1);
}

.slide-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(110deg,
        rgba(26, 38, 112, 0.95) 0%,
        rgba(26, 38, 112, 0.8) 30%,
        rgba(26, 38, 112, 0.4) 60%,
        transparent 100%
    );
    z-index: 2;
}

/* Hero Content Container */
.hero-content-wrapper {
    position: relative;
    width: 100%;
    z-index: 10;
}

.hero-content-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 15px 30px;
    width: 100%;
}

/* Hero Content Glass Card */
.hero-content {
    max-width: 700px;
    padding: 45px;
    background: linear-gradient(135deg,
        rgba(255, 255, 255, 0.12) 0%,
        rgba(255, 255, 255, 0.08) 100%
    );
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow:
        0 30px 60px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
    position: relative;
    overflow: hidden;
}

/* Animated Background Gradient */
.hero-content::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: conic-gradient(
        from 0deg,
        transparent,
        rgba(197, 165, 114, 0.1),
        transparent,
        rgba(197, 165, 114, 0.05),
        transparent
    );
    animation: rotate 20s linear infinite;
    z-index: -1;
}

@keyframes rotate {
    100% {
        transform: rotate(360deg);
    }
}

/* Badge */
.badge-new {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--primary-gold) 0%, var(--secondary-gold) 100%);
    color: var(--white);
    padding: 8px 20px;
    border-radius: 25px;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 25px;
    box-shadow: 0 8px 25px rgba(197, 165, 114, 0.4);
    animation: fadeInDown 0.8s ease-out 0.3s both;
}

.badge-new i {
    font-size: 12px;
}

/* Hero Typography */
.hero-title {
    margin-bottom: 30px;
    line-height: 1.2;
}

.gradient-text {
    display: block;
    font-size: 4rem;
    font-weight: 800;
    background: linear-gradient(135deg, var(--primary-gold) 0%, var(--secondary-gold) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 15px;
    font-family: 'Poppins', sans-serif;
    animation: fadeInUp 0.8s ease-out 0.5s both;
}

.subtitle {
    display: block;
    font-size: 1.8rem;
    font-weight: 300;
    color: rgba(255, 255, 255, 0.9);
    font-family: 'Inter', sans-serif;
    animation: fadeInUp 0.8s ease-out 0.7s both;
}

.hero-description {
    font-size: 1.2rem;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.7;
    margin-bottom: 35px;
    animation: fadeInUp 0.8s ease-out 0.9s both;
}

/* Features List */
.features-list {
    margin-bottom: 35px;
    animation: fadeInUp 0.8s ease-out 1.1s both;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
    font-size: 1.05rem;
    color: rgba(255, 255, 255, 0.9);
}

.feature-item:last-child {
    margin-bottom: 0;
}

.feature-item i {
    color: var(--primary-gold);
    font-size: 1.1rem;
    min-width: 20px;
    text-align: center;
}

/* Hero Stats */
.hero-stats {
    display: flex;
    gap: 50px;
    margin-bottom: 40px;
    animation: fadeInUp 0.8s ease-out 1.3s both;
}

.stat-item {
    text-align: center;
}

.stat-item h3 {
    font-size: 3rem;
    font-weight: 800;
    background: linear-gradient(135deg, var(--primary-gold) 0%, var(--secondary-gold) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 8px;
    font-family: 'Poppins', sans-serif;
}

.stat-item p {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.95rem;
    font-weight: 500;
}

/* CTA Buttons */
.hero-cta {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    animation: fadeInUp 0.8s ease-out 1.5s both;
}

.hero-btn-primary,
.hero-btn-outline {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 18px 40px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 1.1rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 2px solid transparent;
    overflow: hidden;
}

.hero-btn-primary {
    background: linear-gradient(135deg, var(--primary-gold) 0%, var(--secondary-gold) 100%);
    color: var(--white);
    box-shadow: 0 15px 40px rgba(197, 165, 114, 0.4);
}

.hero-btn-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.8s;
}

.hero-btn-primary:hover::before {
    left: 100%;
}

.hero-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 25px 50px rgba(197, 165, 114, 0.6);
    color: var(--white);
    text-decoration: none;
}

.hero-btn-outline {
    background: rgba(255, 255, 255, 0.1);
    color: var(--white);
    border-color: rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.hero-btn-outline:hover {
    background: rgba(197, 165, 114, 0.2);
    border-color: var(--primary-gold);
    transform: translateY(-3px);
    box-shadow: 0 15px 35px rgba(197, 165, 114, 0.3);
    color: var(--white);
    text-decoration: none;
}

/* Animations */
@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Slider Navigation */
.slider-dots {
    position: absolute;
    bottom: 50px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 15px;
    z-index: 15;
    padding: 10px;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 50px;
    backdrop-filter: blur(10px);
}

.dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    border: 2px solid rgba(255, 255, 255, 0.5);
    cursor: pointer;
    transition: all 0.4s ease;
    position: relative;
}

.dot:hover {
    background: rgba(255, 255, 255, 0.5);
}

.dot.active {
    background: var(--primary-gold);
    border-color: var(--primary-gold);
    transform: scale(1.3);
}

.dot.active::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 25px;
    height: 25px;
    border: 2px solid var(--primary-gold);
    border-radius: 50%;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
    }
    100% {
        transform: translate(-50%, -50%) scale(1.6);
        opacity: 0;
    }
}

.slider-controls {
    position: absolute;
    bottom: 50px;
    right: 50px;
    display: flex;
    gap: 15px;
    z-index: 15;
}

.slider-control {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 2px solid rgba(255, 255, 255, 0.3);
    color: var(--white);
    width: 55px;
    height: 55px;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
}

.slider-control:hover {
    background: rgba(197, 165, 114, 0.3);
    border-color: var(--primary-gold);
    transform: scale(1.1);
    box-shadow: 0 10px 30px rgba(197, 165, 114, 0.4);
}

/* Responsive Design */
@media (max-width: 1200px) {
    .hero-content {
        padding: 50px;
        margin: 0 20px;
    }

    .hero-title {
        font-size: 3.5rem;
    }

    .subtitle {
        font-size: 1.8rem;
    }

    .hero-description {
        font-size: 1.1rem;
    }

    .feature-item {
        font-size: 1rem;
    }

    .hero-stats {
        gap: 30px;
    }

    .stat-item h3 {
        font-size: 2.8rem;
    }

    .slider-controls {
        bottom: 40px;
        right: 40px;
    }

    .slider-control {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
}

@media (max-width: 991px) {
    .hero-content-wrapper {
        padding-bottom: 20px;
        align-items: flex-start;
    }

    .hero-content {
        margin: 0 15px;
        padding: 40px;
        border-radius: 25px;
    }

    .gradient-text {
        font-size: 3rem;
    }

    .subtitle {
        font-size: 1.6rem;
    }

    .hero-stats {
        flex-direction: row;
        gap: 40px;
        justify-content: center;
    }

    .stat-item h3 {
        font-size: 2.5rem;
    }

    .hero-cta {
        justify-content: center;
    }

    .hero-btn-primary,
    .hero-btn-outline {
        padding: 15px 35px;
        font-size: 1.05rem;
    }

    .slider-dots {
        bottom: 30px;
    }

    .slider-controls {
        bottom: 30px;
        right: 30px;
        gap: 12px;
    }

    .slider-control {
        width: 48px;
        height: 48px;
        font-size: 1.1rem;
    }
}

@media (max-width: 767px) {
    .hero-section {
        min-height: 600px;
    }

    .hero-content-container {
        padding: 0 15px;
    }

    .hero-content {
        padding: 35px 25px;
        margin: 0 10px;
        border-radius: 20px;
    }

    .gradient-text {
        font-size: 2.5rem;
    }

    .subtitle {
        font-size: 1.4rem;
    }

    .hero-description {
        font-size: 1.05rem;
    }

    .feature-item {
        font-size: 0.95rem;
    }

    .hero-stats {
        flex-direction: column;
        gap: 20px;
        align-items: center;
    }

    .stat-item h3 {
        font-size: 2.2rem;
    }

    .hero-cta {
        flex-direction: column;
        gap: 15px;
        align-items: center;
    }

    .hero-btn-primary,
    .hero-btn-outline {
        padding: 14px 30px;
        font-size: 1rem;
        width: 100%;
        max-width: 280px;
        text-align: center;
        justify-content: center;
    }

    .slider-dots {
        bottom: 20px;
        gap: 10px;
    }

    .dot {
        width: 10px;
        height: 10px;
    }

    .slider-controls {
        bottom: 20px;
        right: 20px;
        gap: 10px;
    }

    .slider-control {
        width: 44px;
        height: 44px;
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .hero-content {
        padding: 30px 20px;
        margin: 0 5px;
    }

    .gradient-text {
        font-size: 2.2rem;
    }

    .subtitle {
        font-size: 1.2rem;
    }

    .hero-description {
        font-size: 1rem;
        margin: 0 auto 3rem auto;
        line-height: 1.6;
    }
}

/* ===== SECTIONS STYLING ===== */

/* Common Section Styles */
.section-title {
    font-size: 2.8rem;
    font-weight: 700;
    color: var(--gray-800);
    margin-bottom: 1rem;
    font-family: 'Poppins', sans-serif;
}

.section-subtitle {
    font-size: 1.2rem;
    color: var(--gray-600);
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Stats Section */
.stats-section {
    padding: 80px 0;
}

.stat-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    padding: 40px 20px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    height: 100%;
}

.stat-card:hover {
    transform: translateY(-8px);
    background: rgba(255, 255, 255, 0.15);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
}

.stat-icon {
    font-size: 3rem;
    margin-bottom: 20px;
}

.stat-number {
    font-size: 3rem;
    font-weight: 800;
    background: linear-gradient(135deg, var(--primary-gold) 0%, var(--secondary-gold) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 8px;
    font-family: 'Poppins', sans-serif;
}

.stat-label {
    font-size: 1.1rem;
    font-weight: 500;
}

/* ===== Process Section (timeline) ===== */
.process-section {
    padding: 100px 0;
    background:
        radial-gradient(1200px 380px at 50% -120px, rgba(43,57,144,.06), transparent 70%),
        var(--white);
}

.process-section .row { position: relative; }

.process-step {
    position: relative;
    padding: 6px 16px 18px;
    transition: transform 0.4s cubic-bezier(.34,1.56,.64,1);
    height: 100%;
    text-align: center;
}
.process-step:hover { transform: translateY(-8px); }

/* Номер-вузол таймлайну */
.step-number {
    position: relative;
    width: 64px;
    height: 64px;
    margin: 0 auto;
    background: linear-gradient(135deg, var(--primary-navy) 0%, var(--dark-navy) 100%);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 1.5rem;
    font-family: 'Poppins', sans-serif;
    box-shadow: 0 12px 30px rgba(43,57,144,.30);
    z-index: 2;
    border: 3px solid var(--white);
    outline: 2px solid rgba(197,165,114,.55);
    transition: transform .4s cubic-bezier(.34,1.56,.64,1), box-shadow .4s ease;
}
.process-step:hover .step-number {
    transform: scale(1.08);
    box-shadow: 0 14px 34px rgba(197,165,114,.5);
}

/* З'єднувальна лінія між вузлами (тільки десктоп) */
.process-step::after {
    content: '';
    position: absolute;
    top: 38px;
    left: calc(50% + 40px);
    width: calc(100% - 80px);
    height: 3px;
    background: repeating-linear-gradient(90deg, var(--primary-gold) 0 10px, transparent 10px 18px);
    opacity: .55;
    z-index: 1;
}
.process-section .row > div:last-child .process-step::after { display: none; }

.step-icon {
    background: linear-gradient(135deg, var(--light-gold) 0%, #fff 100%);
    width: 78px;
    height: 78px;
    border-radius: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 26px auto 20px;
    font-size: 1.9rem;
    box-shadow: 0 10px 26px rgba(43,57,144,.10);
    transition: transform .45s cubic-bezier(.34,1.56,.64,1), background .35s ease, box-shadow .35s ease;
}
.process-step:hover .step-icon {
    background: linear-gradient(135deg, var(--primary-gold) 0%, var(--secondary-gold) 100%);
    transform: translateY(-4px) rotate(-6deg) scale(1.06);
    box-shadow: 0 16px 32px rgba(197,165,114,.4);
}
.process-step:hover .step-icon i { color: #fff !important; }

.step-title {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--dark-navy);
    margin-bottom: 12px;
}

.step-description {
    color: var(--gray-600);
    line-height: 1.65;
    font-size: .96rem;
    max-width: 230px;
    margin: 0 auto;
}

@media (max-width: 991px) {
    .process-step::after { display: none; }
    .process-section { padding: 70px 0; }
}

/* Advantages Section */
.advantages-section {
    padding: 100px 0;
}

.advantage-card {
    background: var(--white);
    border-radius: 20px;
    padding: 40px 30px;
    text-align: center;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid rgba(43, 57, 144, 0.1);
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
    position: relative;
    overflow: hidden;
}

.advantage-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, var(--primary-gold) 0%, var(--secondary-gold) 100%);
    transition: left 0.6s ease;
}

.advantage-card:hover::before {
    left: 0;
}

.advantage-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    border-color: var(--primary-gold);
}

.advantage-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, var(--primary-navy) 0%, var(--dark-navy) 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px auto;
    color: var(--white);
    font-size: 2rem;
    transition: all 0.4s ease;
}

.advantage-card:hover .advantage-icon {
    background: linear-gradient(135deg, var(--primary-gold) 0%, var(--secondary-gold) 100%);
    transform: scale(1.1);
}

.advantage-number {
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--primary-gold);
    margin-bottom: 15px;
    font-family: 'Poppins', sans-serif;
}

.advantage-title {
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--gray-800);
    margin-bottom: 15px;
}

.advantage-description {
    color: var(--gray-600);
    line-height: 1.6;
}

/* Services Section */
.services-section {
    padding: 100px 0;
    background: var(--white);
}

.service-card {
    background: var(--white);
    border-radius: 20px;
    padding: 40px 30px;
    text-align: center;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    border: 2px solid transparent;
    position: relative;
    overflow: hidden;
}

.service-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, var(--primary-navy) 0%, var(--dark-navy) 100%);
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
}

.service-card:hover::before {
    opacity: 1;
}

.service-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.2);
    color: var(--white);
}

.service-card > * {
    position: relative;
    z-index: 2;
}

.service-icon {
    width: 90px;
    height: 90px;
    background: var(--light-gold);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px auto;
    font-size: 2.2rem;
    color: var(--primary-navy);
    transition: all 0.4s ease;
}

.service-card:hover .service-icon {
    background: var(--primary-gold);
    color: var(--white);
    transform: scale(1.1);
}

.service-title {
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--gray-800);
    margin-bottom: 15px;
    transition: color 0.4s ease;
}

.service-card:hover .service-title {
    color: var(--white);
}

.service-description {
    color: var(--gray-600);
    line-height: 1.6;
    margin-bottom: 20px;
    transition: color 0.4s ease;
}

.service-card:hover .service-description {
    color: rgba(255, 255, 255, 0.9);
}

.service-price {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--primary-gold);
    font-family: 'Poppins', sans-serif;
    transition: color 0.4s ease;
}

.service-card:hover .service-price {
    color: var(--primary-gold);
}

/* FAQ Section */
.faq-section {
    padding: 100px 0;
}

.accordion-item {
    border: none;
    margin-bottom: 15px;
    border-radius: 15px !important;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
}

.accordion-button {
    background: var(--white);
    border: none;
    padding: 25px 30px;
    font-weight: 600;
    font-size: 1.1rem;
    color: var(--gray-800);
    border-radius: 15px !important;
    position: relative;
}

.accordion-button:not(.collapsed) {
    background: linear-gradient(135deg, var(--primary-navy) 0%, var(--dark-navy) 100%);
    color: var(--white);
    box-shadow: none;
}

.accordion-button:focus {
    border-color: var(--primary-gold);
    box-shadow: 0 0 0 0.25rem rgba(197, 165, 114, 0.25);
}

.accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23C5A572'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.accordion-body {
    background: var(--white);
    padding: 30px;
    color: var(--gray-600);
    line-height: 1.7;
    font-size: 1.05rem;
}

/* Testimonials Section */
.testimonials-section {
    padding: 100px 0;
    background: var(--white);
}

.testimonial-card {
    background: var(--white);
    border-radius: 20px;
    padding: 35px 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid rgba(43, 57, 144, 0.1);
    position: relative;
}

.testimonial-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15);
}

.testimonial-card::before {
    content: '"';
    position: absolute;
    top: -20px;
    left: 30px;
    font-size: 6rem;
    color: var(--primary-gold);
    font-family: Georgia, serif;
    line-height: 1;
}

.rating {
    display: flex;
    justify-content: center;
    gap: 5px;
    margin-bottom: 20px;
}

.rating i {
    color: #FFD700;
    font-size: 1.2rem;
}

.testimonial-text {
    font-style: italic;
    color: var(--gray-700);
    line-height: 1.7;
    margin-bottom: 25px;
    font-size: 1.05rem;
}

.testimonial-author {
    text-align: center;
    padding-top: 20px;
    border-top: 1px solid rgba(43, 57, 144, 0.1);
}

.testimonial-author strong {
    color: var(--gray-800);
    font-weight: 600;
}

/* Final CTA Section */
.final-cta {
    padding: 80px 0;
    position: relative;
    overflow: hidden;
}

.final-cta::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: conic-gradient(
        from 0deg,
        transparent,
        rgba(197, 165, 114, 0.1),
        transparent,
        rgba(197, 165, 114, 0.05),
        transparent
    );
    animation: rotate 30s linear infinite;
    z-index: 1;
}

.final-cta .container {
    position: relative;
    z-index: 2;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .section-title {
        font-size: 2.4rem;
    }

    .stat-card,
    .advantage-card,
    .service-card,
    .testimonial-card {
        margin-bottom: 30px;
    }

    .process-step,
    .advantage-card,
    .service-card {
        padding: 30px 20px;
    }
}

@media (max-width: 767px) {
    .section-title {
        font-size: 2rem;
    }

    .section-subtitle {
        font-size: 1.1rem;
    }

    .stats-section,
    .process-section,
    .advantages-section,
    .services-section,
    .faq-section,
    .testimonials-section {
        padding: 60px 0;
    }
}

.success-section { background: var(--gray-100); }
.success-card { background:#fff; border-radius:16px; overflow:hidden; box-shadow:var(--shadow-md); height:100%; transition:transform .25s, box-shadow .25s; }
.success-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); }
.success-media { position:relative; height:170px; }
.success-media img { width:100%; height:100%; object-fit:cover; }
.success-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:2.6rem; color:#fff; background:linear-gradient(135deg, var(--primary-navy) 0%, var(--dark-navy) 100%); }
.success-country { position:absolute; bottom:10px; left:10px; background:rgba(0,0,0,.55); color:#fff; padding:4px 10px; border-radius:20px; font-size:.8rem; }
.success-body { padding:18px; }
.success-body h3 { font-size:1.05rem; color:var(--dark-navy); font-weight:700; margin-bottom:8px; }
.success-body p { color:#666; font-size:.9rem; margin-bottom:12px; }
.success-meta { display:flex; align-items:center; justify-content:space-between; font-size:.82rem; color:#888; }
.success-badge { background:var(--light-gold); color:var(--dark-navy); padding:3px 10px; border-radius:12px; font-weight:600; }

.lp-card{position:relative;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.07);height:100%;transition:transform .3s,box-shadow .3s;display:flex;flex-direction:column;}
.lp-card:hover{transform:translateY(-8px);box-shadow:0 16px 44px rgba(0,0,0,.13);}
.lp-link{position:absolute;inset:0;z-index:2;}
.lp-img{height:190px;overflow:hidden;}
.lp-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.lp-card:hover .lp-img img{transform:scale(1.06);}
.lp-body{padding:22px 22px 24px;display:flex;flex-direction:column;gap:10px;}
.lp-cat{align-self:flex-start;background:var(--light-gold,#f3ead8);color:var(--dark-navy,#1A2670);font-size:.74rem;font-weight:600;padding:4px 12px;border-radius:12px;text-transform:uppercase;letter-spacing:.4px;}
.lp-title{font-size:1.12rem;font-weight:700;color:var(--dark-navy,#1A2670);line-height:1.35;margin:0;}
.lp-excerpt{color:#6a6f7a;font-size:.92rem;line-height:1.55;margin:0;}
.lp-meta{color:var(--primary-gold,#C5A572);font-size:.82rem;font-weight:600;margin-top:auto;}

/* Плавна поява секцій при скролі */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .7s cubic-bezier(.22,.61,.36,1), transform .7s cubic-bezier(.22,.61,.36,1);will-change:opacity,transform;}
.reveal.in-view{opacity:1;transform:none;}

/* Анімований золотий підкреслювач у заголовків секцій */
.section-title{position:relative;}
.section-title::after{content:'';position:absolute;left:50%;transform:translateX(-50%);bottom:-14px;
    width:0;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--primary-gold),var(--secondary-gold),var(--primary-gold));
    background-size:200% auto;transition:width .8s ease .15s;animation:mvSheen 3s linear infinite;}
.section-title.in-view::after{width:72px;}

/* Блиск-перелив, що пробігає по картках при наведенні */
.advantage-card,.service-card,.success-card,.testimonial-card,.stat-card,.country-card{position:relative;}
.advantage-card::after,.service-card::after,.success-card::after,.testimonial-card::after{
    content:'';position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none;z-index:3;background:
        linear-gradient(115deg,transparent 30%,rgba(255,255,255,.55) 48%,rgba(255,255,255,0) 60%);
    background-size:250% 250%;background-position:-120% 0;opacity:0;transition:opacity .2s;}
.advantage-card:hover::after,.service-card:hover::after,.success-card:hover::after,.testimonial-card:hover::after{
    opacity:1;animation:mvGlint .9s ease;}
@keyframes mvGlint{0%{background-position:-120% 0;}100%{background-position:220% 0;}}

/* М'яке золоте підсвічування рамки карток при наведенні */
.advantage-card,.service-card,.success-card,.testimonial-card{transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;}
.advantage-card:hover,.service-card:hover,.success-card:hover,.testimonial-card:hover{
    box-shadow:0 18px 48px rgba(43,57,144,.16), 0 0 0 1px rgba(197,165,114,.35);}

/* Перелив на кнопках-заклику */
.hero-btn-primary,.cta-button,.btn.hero-btn-primary{position:relative;overflow:hidden;}
.hero-btn-primary::after,.cta-button::after,.btn.hero-btn-primary::after{
    content:'';position:absolute;top:0;left:-75%;width:50%;height:100%;
    background:linear-gradient(120deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);}
.hero-btn-primary:hover::after,.cta-button:hover::after,.btn.hero-btn-primary:hover::after{animation:mvBtnShine .8s ease;}
@keyframes mvBtnShine{0%{left:-75%;}100%{left:130%;}}

/* Гармонізація: золотий акцент-роздільник зверху секції статистики */
.stats-section{position:relative;}
.stats-section::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;
    background:linear-gradient(90deg,transparent,var(--primary-gold),var(--secondary-gold),var(--primary-gold),transparent);background-size:200% auto;animation:mvSheen 4s linear infinite;}

/* Легкий «дих» іконок переваг/послуг */
.advantage-icon,.service-icon{transition:transform .4s cubic-bezier(.34,1.56,.64,1), box-shadow .4s ease;}
.advantage-card:hover .advantage-icon,.service-card:hover .service-icon{transform:translateY(-4px) scale(1.06);}

/* Пульсуючий золотий ореол навколо лічильників статистики */
.stat-card .stat-icon{position:relative;}
.stat-card:hover .stat-icon{filter:drop-shadow(0 6px 16px rgba(197,165,114,.5));}

@keyframes mvSheen{to{background-position:200% center;}}
@media (prefers-reduced-motion: reduce){
    .reveal{opacity:1!important;transform:none!important;}
    .section-title::after{animation:none;}
    .stats-section::before{animation:none;}
}
