:root {
    --font-global: 'Plus Jakarta Sans', sans-serif;
    --font-alt: 'Plus Jakarta Sans', sans-serif;
    --section-padding-y: 130px;

    /* --- THE INDIGO SCALE (Backgrounds) --- */
    --color-dark-1: #1b0e33;           /* Main BG from card */
    --color-dark-2: #241445;           /* Card/Section offset */
    --color-dark-3: #2d1a54;           /* Hover states */
    --color-dark-3a: #382463;          /* Borders */
    --color-dark-4: #433366;           /* Muted UI */

    /* --- THE TEXT SCALE --- */
    --color-gray-1: #8a829c;           /* Muted lavender-gray body */
    --color-gray-2: #716982;           /* Sub-titles */
    --color-gray-3: #5b5469;           /* Placeholders */

    /* --- THE GOLD SCALE (Duo-tone Accents) --- */
    /* We map all primary slots to variations of your Gold #e5d396 */
    --color-primary-1: #e5d396;        /* Main Gold */
    --color-primary-1-a: #c5b276;      /* Deep Gold */
    --color-primary-light-1: #f4edd6;  /* Champagne Silk */
    --color-primary-light-1-a: #ede4c7;
    
    --color-primary-2: #d1bf84;        /* Muted Gold */
    --color-primary-light-2: #faf7ed;
    
    --color-primary-3: #b39a5d;        /* Bronze Accent */
    --color-primary-light-3: #fcfaf3;
    
    --color-primary-4: #9c844a;        /* Shadow Gold */
    --color-primary-light-4: #fffef9; 
    
    --color-secondary-1: #e5d396;

    /* --- LIGHT MODE / INTERFACE --- */
    --color-gray-light-1: #fbfaf7;     /* High-end off-white background */
    --color-gray-light-2: #f4f2ed;
    --color-gray-light-3: #d1cbd8;
    --color-gray-light-4: #e0dce6;
    --color-gray-light-5: #e9e6ed;
    --color-gray-light-6: #f0edf2;

    --gradient-gray-light-1: linear-gradient(0deg, #f4f2ed 0%, #fff 100%);
    --gradient-gray-light-2: linear-gradient(0deg, #fff 0%, #f4f2ed 100%); 

    --border-radius-default: 10px;

    /* --- TINTED SHADOWS (Uses Indigo 13,7,26 instead of gray for a premium look) --- */
    --box-shadow: 0px 5px 15px 0px rgba(13, 7, 26, 0.1);
    --box-shadow-strong: 0px 10px 25px 0px rgba(13, 7, 26, 0.15);
    --box-shadow-block: 0px 10px 30px 0px rgba(13, 7, 26, 0.2);
    --box-shadow-block-strong: 0px 15px 50px 0px rgba(13, 7, 26, 0.3);
}

.dark-mode {
    /* Ensure all primary accents stay within the Gold family in dark mode */
    --color-primary-1: #e5d396;
    --color-primary-1-a: #fbe3a1;
    --color-primary-2: #d1bf84;
    --color-primary-3: #b39a5d;
    --color-primary-4: #c5b276;

    /* Metallic Gold Gradients instead of Multi-color */
    --gradient-primary-1: linear-gradient(90deg, #e5d396 0%, #b39a5d 50%, #e5d396 100%);
    --gradient-primary-1-a: linear-gradient(90deg, #c5b276 25%, #e5d396 50%, #c5b276 75%);
    --gradient-primary-1-b: linear-gradient(45deg, #e5d396 0%, #b39a5d 100%);
    --gradient-primary-1-c: linear-gradient(0deg, #e5d396 0%, #b39a5d 100%);

    /* Depth Gradients */
    --gradient-dark-alpha-1: linear-gradient(90deg, var(--color-dark-1) 40%, transparent 87%);
    --gradient-dark-alpha-2: linear-gradient(90deg, transparent 13%, var(--color-dark-1) 60%);
    --gradient-primary-alpha-1: linear-gradient(90deg, var(--color-primary-1) 40%, transparent 87%);
    --gradient-primary-alpha-2: linear-gradient(90deg, transparent 13%, var(--color-primary-1) 60%);
}
body{
    color: var(--color-dark-1);
    font-family: var(--font-global);
    font-size: 17px;
    font-weight: 400; 
    line-height: 1.725;
    letter-spacing: normal;
    word-spacing: 0.1em;
}
h1,h2,h3,h4,h5,h6,
.h1,.h2,.h3,.h4,.h5,.h6{
    font-weight: 600;
}
h3, .h3{
    font-size: 28px;
    letter-spacing: -0.03em;
}
b, strong{
    font-weight: 600;
}
.small{
    font-size: 0.8em;
}
hr:not([size]){
    background: var(--color-dark-1);
    height: 1px;
    opacity: .1;
}
.bg-dark-alpha:before,
.bg-dark-alpha .YTPOverlay:before{
    background: #1b0e33;
    opacity: .97;
}
.bg-dark-alpha-30:before,
.bg-dark-alpha-30 .YTPOverlay:before{
    background: #1b0e33;
    opacity: .3;
}
.bg-dark-alpha-50:before,
.bg-dark-alpha-50 .YTPOverlay:before{
    background: #1b0e33;
    opacity: .5;
}
.bg-dark-alpha-60:before,
.bg-dark-alpha-60 .YTPOverlay:before{
    background: #1b0e33;
    opacity: .6;
}
.bg-dark-alpha-70:before,
.bg-dark-alpha-70 .YTPOverlay:before{
    background: #1b0e33;
    opacity: .7;
}
.bg-dark-alpha-80:before,
.bg-dark-alpha-80 .YTPOverlay:before{
    background: #1b0e33;
    opacity: .8;
}
.bg-dark-alpha-90:before,
.bg-dark-alpha-90 .YTPOverlay:before{
    background: #1b0e33;
    opacity: .9;
}
.main-nav.dark {
    background-color: rgba(27, 14, 51, .8777);
}
.main-nav.dark-mode{
    background-color: rgba(27, 14, 51, .9);
}
.inner-nav ul{
    font-size: 16px;
    letter-spacing: normal;
}
.inner-nav ul li {
    margin: 0 18px;
}
.inner-nav > ul > li > a {
    opacity: .7;
}
.inner-nav ul li a{
    position: relative;
}
.inner-nav > ul > li > a:not(.no-hover):before{
    content: "";
    position: absolute;
    top: calc(50% + 1.25em);
    left: 1px;
    display: block;
    width: 20px;
    height: 2px;
    background: var(--color-primary-1);
    border-radius: 1px;
    transform: scaleX(0);
    transform-origin: 0 50%;
    transition: transform .27s var(--ease-default);
}
.inner-nav > ul > li > a.active:before{
    transform: scaleX(1);
}
.main-nav.mobile-on .inner-nav > ul > li > a:not(.no-hover):before{
    display: none;
}
.mn-sub{
    background: rgba(36, 20, 69, .9927); /* Slightly lighter indigo for contrast */
}
.mobile-on .desktop-nav ul{
    background: rgba(27, 14, 51, .99);
}
.mobile-on .desktop-nav ul li a,
.inner-nav ul li .mn-sub li a,
.mn-group-title{
    color: var(--color-primary-1) !important; /* Gold text instead of white */
}
.form label{
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: 600;
}
.form .form-group{
    margin-bottom: 0px;
}
.form-tip,
.form-tip a{
    font-size: 13px;
    line-height: 1.53;
}
.form input[type="text"],
.form input[type="email"],
.form input[type="number"],
.form input[type="url"],
.form input[type="search"],
.form input[type="tel"],
.form input[type="password"],
.form input[type="date"],
.form input[type="color"],
.form select,
.form textarea{
    border-color: rgba(52,61,85, .183);
}
.form select:not([multiple]){
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="9px" height="5px"><path fill-rule="evenodd" fill="#343d55" d="M8.886,0.631 L8.336,0.117 C8.263,0.049 8.178,0.015 8.083,0.015 C7.988,0.015 7.903,0.049 7.830,0.117 L4.506,3.155 L1.183,0.117 C1.109,0.049 1.025,0.015 0.930,0.015 C0.834,0.015 0.750,0.049 0.677,0.117 L0.127,0.631 C0.053,0.699 0.017,0.778 0.017,0.867 C0.017,0.956 0.053,1.035 0.127,1.103 L4.253,4.892 C4.327,4.960 4.411,4.994 4.506,4.994 C4.602,4.994 4.686,4.960 4.759,4.892 L8.886,1.103 C8.959,1.035 8.996,0.956 8.996,0.867 C8.996,0.778 8.959,0.699 8.886,0.631 L8.886,0.631 Z"/></svg>');  
}
.form input[type="text"]:hover,
.form input[type="email"]:hover,
.form input[type="number"]:hover,
.form input[type="url"]:hover,
.form input[type="search"]:hover,
.form input[type="tel"]:hover,
.form input[type="password"]:hover,
.form input[type="date"]:hover,
.form input[type="color"]:hover,
.form select:hover,
.form textarea:hover{
    border-color: rgba(52,61,85, .38);
}
.form input[type="text"]:focus,
.form input[type="email"]:focus,
.form input[type="number"]:focus,
.form input[type="url"]:focus,
.form input[type="search"]:focus,
.form input[type="tel"]:focus,
.form input[type="password"]:focus,
.form input[type="date"]:focus,
.form input[type="color"]:focus,
.form select:focus,
.form textarea:focus{
    border-color: rgba(52,61,85, .7);
    box-shadow: 0 0 3px rgba(52,61,85, .3);
}
.form input[type="text"]::placeholder,
.form input[type="email"]::placeholder,
.form input[type="number"]::placeholder,
.form input[type="url"]::placeholder,
.form input[type="search"]::placeholder,
.form input[type="tel"]::placeholder,
.form input[type="password"]::placeholder,
.form input[type="date"]::placeholder,
.form input[type="color"]::placeholder,
.form select::placeholder,
.form textarea::placeholder{
    color: var(--color-gray-3);
}
.form input[type="text"].input-md,
.form input[type="email"].input-md,
.form input[type="number"].input-md,
.form input[type="url"].input-md,
.form input[type="search"].input-md,
.form input[type="tel"].input-md,
.form input[type="password"].input-md,
.form input[type="date"].input-md,
.form input[type="color"].input-md,
.form select.input-md{
    height: 50px;
    font-size: 16px;
}
.form textarea.input-md{
    font-size: 16px;
}
.form input[type="text"].input-lg,
.form input[type="email"].input-lg,
.form input[type="number"].input-lg,
.form input[type="url"].input-lg,
.form input[type="search"].input-lg,
.form input[type="tel"].input-lg,
.form input[type="password"].input-lg,
.form input[type="date"].input-lg,
.form input[type="color"].input-lg,
.form select.input-lg{
    height: 54px;
    font-size: 17px;
}
.form textarea.input-lg{
    font-size: 17px;
}
.light-content input[type="text"],
.light-content input[type="email"],
.light-content input[type="number"],
.light-content input[type="url"],
.light-content input[type="search"],
.light-content input[type="tel"],
.light-content input[type="password"],
.light-content input[type="date"],
.light-content input[type="color"],
.light-content select,
.light-content textarea{
    border-color: rgba(255,255,255, .25);
}
.light-content input[type="text"]:hover,
.light-content input[type="email"]:hover,
.light-content input[type="number"]:hover,
.light-content input[type="url"]:hover,
.light-content input[type="search"]:hover,
.light-content input[type="tel"]:hover,
.light-content input[type="password"]:hover,
.light-content input[type="date"]:hover,
.light-content input[type="color"]:hover,
.light-content select:hover,
.light-content textarea:hover{
    border-color: rgba(255,255,255, .35);
}
.light-content input[type="text"]:focus,
.light-content input[type="email"]:focus,
.light-content input[type="number"]:focus,
.light-content input[type="url"]:focus,
.light-content input[type="search"]:focus,
.light-content input[type="tel"]:focus,
.light-content input[type="password"]:focus,
.light-content input[type="date"]:focus,
.light-content input[type="color"]:focus,
.light-content select:focus,
.light-content textarea:focus{
    border-color: rgba(255,255,255, .75);
}
.icon-info {
    top: 0.07em;
}
.btn-mod,
a.btn-mod{
    font-weight: 500;
}
.btn-mod.btn-border-c{
    border-color: var(--color-primary-light-1-a);
}
.btn-mod.btn-border-c:hover,
.btn-mod.btn-border-c:focus{
    background: transparent;
    color: var(--color-primary-1);
    border-color: var(--color-primary-light-1-a);
}
.btn-mod.btn-small{
    padding: 10px 22px;
    font-size: 16px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
}
.btn-mod.btn-medium{
    padding: 12px 22px;
    font-size: 16px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
}
.btn-mod.btn-large{
    padding: 14px 36px;
    font-size: 16px;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0;
}
.big-icon{
    color: var(--color-primary-1);
}
.composition-4-image-1{
    border-color: var(--color-gray-light-3);
}
.composition-4-image-2{
    border-color: var(--color-gray-light-3);
}
.scroll-down-1-icon:before{
    opacity: .7;
}
.scroll-down-1-icon svg,
.scroll-down-1-icon img{
    opacity: .7;
}
.scroll-down-1-icon i{
    opacity: .7;
}
.scroll-down-1-text{
    font-weight: 500;
    opacity: .7;
    transition: opacity 0.4s ease, transform 0.4s var(--ease-elastic-2);
}
.typewrite .wrap:after{
    font-size: 0.9em;
}
.section-caption-slick{
    padding: 9px 12px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.1em;
}
.light-content .section-caption-slick{
    color: #fff;  
    background-image: linear-gradient( 45deg, rgba(45,26,84, .75) 0%, transparent 100%);
}
.light-content .section-caption-fancy{   
    background-image: linear-gradient( 15deg, rgba(5,16,38, .75) 0%, transparent 100%);
}
.section-title{
    font-size: 48px;
    font-weight: 500;
    line-height: 1.25;
}
.section-title-small{
    font-size: 34px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -0.02em;
}
.section-title-tiny{
    font-size: 20px;
    font-weight: 600;
    letter-spacing: normal;
}
.section-descr{
    font-size: 23px;
    font-weight: 300;
    line-height: 1.7;
    letter-spacing: -0.005em;
}
.light-content .section-descr{
    color: var(--color-dark-mode-gray-1);
}
.light-content .toggle,
.light-content .toggle > dt > a,
.light-content .accordion,
.light-content .accordion > dt > a{
    border-color: rgba(255,255,255, .25);
}
.accordion > dt > a:after,
.toggle > dt > a:after{
    color: var(--color-primary-1);
}
.light-content .accordion > dt > a:after,
.light-content .toggle > dt > a:after{
    color: var(--color-primary-1);
}
a.link-hover-anim,
a.link-hover-anim:hover{
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    color: var(--color-primary-1);
    font-size: 16px;
    font-weight: 600;  
}
.link-strong i{
    position: relative;
    top: -0.05em;
    vertical-align: middle;
}
.link-strong-hovered{
    top: 0;
}
.light-content .link-strong,
.light-content .link-hover-anim{
    color: var(--color-primary-1);
}
.features-list{
    font-size: 17px;
}
.features-list-icon{
    top: 0.175em;
    color: var(--color-primary-1);
    background: var(--color-primary-light-1);
}
.light-content .features-list-icon{
    color: #110920;
    background: var(--color-primary-1);
}
.works-filter.works-filter-slick{
    font-size: 16px;
    font-weight: 600;
}
.works-grid.work-grid-fancy .work-title{
    margin-bottom: 10px;
    font-size: 22px;
    font-weight: 600;
}
.works-grid.work-grid-fancy .work-descr{
    font-size: 16px;
}
.work-img-bg{
    background: var(--color-gray-light-2);
}
.number-1-title{
    font-weight: 600;
}
.testimonials-3-text p {
    letter-spacing: -0.015em;
}
.testimonials-4-text p{
    color: var(--color-gray-1);
    line-height: 1.67;
}
.testimonials-4-author{
    font-weight: 500;
}
.testimonials-4-author .small{
    font-size: 15px;
    font-weight: 400;
}
.post-prev-container{
    overflow: hidden;
    background: #fff;
    border-radius: var(--border-radius-default); 
    box-shadow: var(--box-shadow-block);
    isolation: isolate;
    transform: translateZ(0);
    transition: all .27s var(--ease-default);
}
.post-prev-container:before{
    display: none;
}
.post-prev-container:hover{
    transform: translateY(-5px);
    box-shadow: var(--box-shadow-block-strong);
}
.post-prev-title{
    font-size: 22px;
    font-weight: 600;
}
.post-prev-img a:hover{
    opacity: 1;
}
.post-prev-img a:hover img{
    transform: translateZ(0.1px);
}
.post-prev-title{
    padding-top: 30px;
}
.post-prev-title a:hover{
    opacity: .85;
}
.post-prev-text{
    line-height: 1.625;
}
.post-prev-info,
.post-prev-info a{
    font-size: 14px;
}
.post-prev-title,
.post-prev-text,
.post-prev-info{
    padding-left: 30px;
    padding-right: 30px;
}
.post-prev-container > *:last-child{
    padding-bottom: 30px;
}
.post-prev-3-text{
    line-height: 1.68;
}
.post-prev-3-title a:hover{
    opacity: .85;
}
.pagination a.active,
.pagination a.active:hover{
    border-color: var(--color-primary-1);
    color: var(--color-primary-1);
}
.tags a{
    border-radius: 50px;
}
.widget-body img{
    border-radius: var(--border-radius-default);
}
.tpl-minimal-tabs{
    display: flex;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.059em;
    text-transform: uppercase;
}
.tpl-minimal-tabs li{
    padding: 0;
}
.tpl-minimal-tabs > li > a,
.tpl-minimal-tabs > li > a:hover,
.tpl-minimal-tabs > li > a:focus{
    position: relative;
    margin: 0 !important;
    padding: 10px 20px;
    color: var(--color-gray-1);
    border: none !important;
    border-radius: 0 !important; 
    isolation: isolate;   
}
.tpl-minimal-tabs > li > a:before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid var(--color-dark-1);
    opacity: .3;
    transition: var(--transition-default);
    z-index: -1;
}
.tpl-minimal-tabs > li > a:after,
.tpl-minimal-tabs > li > a:hover:after{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    background: var(--color-primary-1);
    transform: none;
    transition: all .2s var(--ease-out-short);
    z-index: -1;
}
.tpl-minimal-tabs > li:not(:first-child) > a:before,
.tpl-minimal-tabs > li:not(:first-child) > a:after{
    width: calc(100% + 1px);
    margin-left: -1px;
    border-left: none;
}
.tpl-minimal-tabs > li:first-child > a:before,
.tpl-minimal-tabs > li:first-child > a:after{
    border-top-left-radius: 100px;
    border-bottom-left-radius: 100px;
}
.tpl-minimal-tabs > li:last-child > a:before,
.tpl-minimal-tabs > li:last-child > a:after{
    border-top-right-radius: 100px;
    border-bottom-right-radius: 100px;
}
.tpl-minimal-tabs > li > a.active,
.tpl-minimal-tabs > li > a.active:hover{
    color: #fff !important;
    border: none !important;
}
.tpl-minimal-tabs > li > a.active:after{
    opacity: 1;
}
.light-content .tpl-minimal-tabs > li > a,
.light-content .tpl-minimal-tabs > li > a:hover,
.light-content .tpl-minimal-tabs > li > a:focus{
    color: #fff;
}
.light-content .tpl-minimal-tabs > li > a:before{
    border-color: #fff;
}
.light-content .tpl-minimal-tabs li a.active,
.light-content .tpl-minimal-tabs li a.active:hover{
    color: #fff;
    border: none !important;    
}
.pricing-title{
    font-weight: 600;
    letter-spacing: -0.0175em;
}
.pricing-num{
    font-weight: 600;
}
.contact-item{
    padding-left: 69px;
}
.contact-item a.link-hover-anim,
.contact-item a.link-hover-anim:hover{
    font-size: 14px;   
}
a.link-hover-anim i{
    top: -0.05em;   
}
.ci-icon{
    width: 48px;
    height: 48px;
    color: var(--color-primary-1);
}
.ci-icon:before{
    background: var(--color-primary-light-1);  
}
.ci-text{
    margin-bottom: 2px;
    font-size: 16px;
}
.light-content .ci-icon{
    color: var(--color-primary-1) !important;
}
.light-content .ci-icon:before{
    background: var(--color-primary-1);
    opacity: .25;  
}
.mt-icon:before{
    background: var(--color-primary-1);
}

.footer b,
.footer strong{
    font-weight: 500;
}
.fw-title {
    margin-bottom: 25px;
    font-size: 16px;
    font-weight: 600;    
    letter-spacing: normal;
}
.fw-menu li:not(:last-child){
    margin-bottom: 9px;
}
.appear-animate .linesAnimIn .word{   
    transform: translateY(37px) translateZ(0) scale(1.0) rotate(0.02deg);
    transition: all 0.8s var(--ease-out-short);
    transition-delay: calc( 0.065s * var(--line-index) );
}
@media (prefers-reduced-motion:reduce),print{
    .appear-animate .linesAnimIn .word{
        opacity: 1 !important;
        transform: none !important;
    }
}
.linesAnimIn.animated .word,
.mobile .linesAnimIn .word{
    opacity: 1;   
    transform: none;
}
.mfp-bg {
    background: var(--color-dark-1);
}
.steps-1-number{
    background: var(--color-primary-1);
}
.light-content .steps-1-number{
    color: #fff;
    background: var(--color-primary-1);
}
.light-content .map-section{
    background: rgba(16,24,40, .92);
}
.light-content .map-section:hover{
    background: rgba(16,24,40, .88);
}
@media only screen and (max-width: 1366px) {
    .container{
        max-width: var(--container-width);
    }
    .section-title{
        font-size: calc(1.041rem + 2.29vw);
    }
    .section-title-small{
        font-size: calc(1.635rem + 0.57vw);
    }
    .section-descr{
        font-size:  calc(0.948rem + 0.57vw);
    }
    .features-list,
    .number-1-descr{
        font-size: calc(0.962rem + 0.19vw);
    }
    .works-grid.work-grid-fancy .work-title,
    .post-prev-title{
        font-size: calc(0.967rem + 0.48vw);
    }
}
@media only screen and (max-width: 1200px) {
    .inner-nav ul li{
        margin: 0 12px;
    }
}
@media only screen and (max-width: 767px) {    
    .tpl-minimal-tabs > li{
        margin: 2px !important;
        width: 46%;
    }
    .tpl-minimal-tabs > li > a.active:after,
    .tpl-minimal-tabs > li > a:hover:after{
        transform: none;
    }
    .tpl-minimal-tabs > li > a:before,
    .tpl-minimal-tabs > li > a:after{
        width: 100%;
        margin-left: 0;
    }
    .tpl-minimal-tabs > li > a:before{
        border: 1px solid var(--color-dark-1) !important;
    }
    .tpl-minimal-tabs > li > a:before,
    .tpl-minimal-tabs > li > a:after{
        border-radius: 100px;
    }
}
@media only screen and (max-width: 480px) {    
    .tpl-minimal-tabs > li{
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }   
}
/* --- EXTRAS --- */
.shared-notary-bg {
    background-color: var(--color-dark-1);
    position: relative;
    overflow: hidden;
}
.shared-notary-bg:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%; 
    background-image: url('../images/tmfaq_bg.svg');
    background-repeat: no-repeat;
    background-size: 100% auto; 
    background-position: top center;
    background-attachment: scroll;
    
    opacity: 0.03; 
    pointer-events: none;
    z-index: 0;
}
.shared-notary-bg .container {
    position: relative;
    z-index: 1;
}
.lang-fade-active {
    transition: 
        opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1), 
        filter 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.lang-fade-out {
    opacity: 0 !important;
    filter: blur(20px);
}
.legal-modal-overlay {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(17, 9, 32, 0.9); 
    backdrop-filter: blur(0px); /* Starts clear */
    display: flex; /* Always flex, but hidden via opacity */
    justify-content: center;
    align-items: center;
    z-index: 10000;
    
    /* Transition Logic */
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.legal-modal-content {
    width: 95%;
    max-width: 1290px;
    max-height: 85vh;
    padding: 40px; 
    background-color: #1b0e33;
    border: 1px solid rgba(229, 211, 150, 0.15);
    border-radius: 12px;
    position: relative;
    overflow-y: auto;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
    transform: scale(0.9) translateY(20px);
    filter: blur(10px);
    opacity: 0;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.legal-modal-overlay.active {
    opacity: 1;
    visibility: visible;
    backdrop-filter: blur(15px);
}
.legal-modal-overlay.active .legal-modal-content {
    transform: scale(1) translateY(0);
    filter: blur(0px);
    opacity: 1;
}
@media (max-width: 768px) {
    .legal-modal-content {
        padding: 25px 20px;
        width: 92%;
    }
    .legal-modal-close {
        top: 10px; right: 10px;
        font-size: 32px;
    }
}
.legal-modal-close {
    position: absolute;
    top: 15px; 
    right: 15px;
    width: 44px;
    height: 44px;
    background: rgba(229, 211, 150, 0.05);
    border: 1px solid rgba(229, 211, 150, 0.2);
    border-radius: 50%;
    color: var(--color-primary-1);
    font-size: 24px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
}
.legal-modal-close:hover {
    background: var(--color-primary-1);
    color: #1b0e33;
    transform: rotate(90deg);
}
@media (max-width: 768px) {
    .legal-modal-close {
        top: 10px;
        right: 10px;
        width: 36px;
        height: 36px;
        font-size: 18px;
    }
}
html {
    scrollbar-gutter: stable;
}
html[style*="overflow: hidden"] {
    height: 100vh !important;
    overflow: hidden !important;
}