:root {
    --main-primary: #3c6b4b;
    --main-light: #d1ddcf;
    --main-dark: #284633;
    --main-darker: #17251c;
    --bg-dark-primary: #050b08;
    --bg-dark-secondary: #09120e;
    --bg-dark-tertiary: #102019;
    --bg-dark-light: #1b2c23;
    --text-primary: #f9fafb;
    --text-secondary: rgba(249, 250, 251, .9);
    --text-tertiary: rgba(249, 250, 251, .7);
    --text-muted: rgba(156, 163, 175, .85);
    --accent-blue: #45566a;
    --accent-green: #2f7a54;
    --accent-red: #a64747;
    --main-red: #bb1f19;
    --main-yellow: #dba33d;
    --main-opacity-15: rgba(60, 107, 75, .15);
    --main-opacity-10: rgba(60, 107, 75, .1);
    --main-opacity-30: rgba(60, 107, 75, .3);
    --main-opacity-50: rgba(60, 107, 75, .5);
    --shadow-main: rgba(60, 107, 75, .28);
    --shadow-main-strong: rgba(60, 107, 75, .38);
    --gradient-main: linear-gradient(135deg, #274133, #3c6b4b 45%, #1b2e23);
    --gradient-main-hover: linear-gradient(135deg, #437754, #5b8a67 45%, #274133);
    --gradient-bg-dark: linear-gradient(135deg, #050b08, #09120e 50%, #102019);
    --gradient-bg-light: linear-gradient(135deg, #d1ddcf, #3c6b4b 50%, #284633);
    --gradient-light: linear-gradient(135deg, #3c6b4b, #d1ddcf 50%, #3c6b4b);
    --gradient-lighter: linear-gradient(135deg, #d1ddcf, #3c6b4b 50%, #d1ddcf);
    --gradient-overlay: linear-gradient(135deg, rgba(5, 11, 8, .96), rgba(9, 18, 14, .9) 45%, rgba(16, 32, 25, .82))
}

* {
    box-sizing: border-box;
    padding: 0
}

*,
html {
    margin: 0
}

html {
    scroll-behavior: smooth
}

body,
html {
    overflow-x: hidden
}

body {
    background: var(--bg-dark-primary);
    color: var(--text-primary);
    line-height: 1.6
}

header {
    background: transparent;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    transition: all .4s cubic-bezier(.4, 0, .2, 1);
    z-index: 1000
}

header.scrolled {
    backdrop-filter: blur(20px);
    background: var(--main-darker);
    border-bottom: 1px solid hsla(41, 60%, 62%, .1);
    box-shadow: 0 4px 24px rgba(0, 0, 0, .3)
}

img {
    display: block;
    height: auto;
    max-width: 100%;
    pointer-events: none
}

.ihs-header-container {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1400px;
    padding: 0 20px
}

.ihs-logo {
    position: relative;
    transition: transform .3s ease;
    z-index: 1001
}

.ihs-logo:hover {
    transform: scale(1.05)
}

.ihs-logo-img {
    display: block;
    filter: drop-shadow(0 2px 8px rgba(217, 180, 101, .3));
    height: 65px;
    transform: translateY(11px);
    transition: filter .3s ease;
    width: auto
}

.ihs-logo:hover .ihs-logo-img {
    filter: drop-shadow(0 4px 12px rgba(217, 180, 101, .5))
}

.ihs-desktop-nav {
    display: none
}

.ihs-burger-container {
    align-items: center;
    display: flex;
    gap: 12px
}

.ihs-header-cta-button {
    display: none
}

.ihs-burger-btn {
    align-items: center;
    backdrop-filter: blur(10px);
    background: linear-gradient(135deg, var(--main-opacity-15), var(--main-opacity-10));
    border: 1px solid var(--main-opacity-30);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 5px;
    height: 44px;
    justify-content: center;
    padding: 0;
    position: relative;
    transition: all .3s ease;
    width: 44px
}

.ihs-burger-btn:hover {
    border-color: var(--main-opacity-50);
    transform: scale(1.05)
}

.ihs-sidebar-burger-btn {
    left: 50%;
    transform: translate(-50%, -50px)
}

.ihs-sidebar-burger-btn:hover {
    transform: scale(1.05) translate(-47%, -48px)
}

.ihs-burger-btn span {
    background: var(--text-primary);
    border-radius: 1px;
    display: block;
    height: 2.2px;
    transition: all .3s cubic-bezier(.4, 0, .2, 1);
    width: 20px
}

.ihs-burger-btn.ihs-active span:first-child {
    transform: translateY(7px) rotate(45deg)
}

.ihs-burger-btn.ihs-active span:nth-child(2) {
    opacity: 0;
    transform: translateX(-10px)
}

.ihs-burger-btn.ihs-active span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg)
}

.ihs-sidebar-overlay {
    backdrop-filter: blur(4px);
    background: rgba(0, 0, 0, .7);
    inset: 0;
    opacity: 0;
    position: fixed;
    transition: all .3s ease;
    visibility: hidden;
    z-index: 998
}

.ihs-sidebar-overlay.ihs-active {
    opacity: 1;
    visibility: visible
}

.ihs-mobile-sidebar {
    background: linear-gradient(180deg, var(--bg-dark-secondary) 0, var(--bg-dark-primary) 100%);
    box-shadow: -4px 0 24px rgba(0, 0, 0, .5);
    height: 100vh;
    max-width: 320px;
    overflow-y: auto;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateX(100%);
    transition: transform .4s cubic-bezier(.4, 0, .2, 1);
    width: 100%;
    z-index: 999
}

.ihs-mobile-sidebar.ihs-active {
    transform: translateX(0)
}

.ihs-sidebar-close {
    height: 0;
    opacity: 0;
    width: 0;
    z-index: -2
}

.ihs-mobile-sidebar-content {
    padding: 80px 24px 40px
}

.ihs-mobile-sidebar-content h2 {
    background: var(--gradient-main);
    -webkit-background-clip: text;
    color: var(--text-primary);
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 32px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-mobile-nav-menu {
    display: flex;
    flex-direction: column;
    gap: 4px;
    list-style: none;
    margin: 0;
    padding: 0
}

.ihs-mobile-nav-menu li {
    animation: slideInMenu .4s ease-out forwards;
    opacity: 0;
    transform: translateX(20px)
}

.ihs-mobile-sidebar.ihs-active .ihs-mobile-nav-menu li:first-child {
    animation-delay: .1s
}

.ihs-mobile-sidebar.ihs-active .ihs-mobile-nav-menu li:nth-child(2) {
    animation-delay: .15s
}

.ihs-mobile-sidebar.ihs-active .ihs-mobile-nav-menu li:nth-child(3) {
    animation-delay: .2s
}

.ihs-mobile-sidebar.ihs-active .ihs-mobile-nav-menu li:nth-child(4) {
    animation-delay: .25s
}

.ihs-mobile-sidebar.ihs-active .ihs-mobile-nav-menu li:nth-child(5) {
    animation-delay: .3s
}

.ihs-mobile-sidebar.ihs-active .ihs-mobile-nav-menu li:nth-child(6) {
    animation-delay: .35s
}

.ihs-mobile-sidebar.ihs-active .ihs-mobile-nav-menu li:nth-child(7) {
    animation-delay: .4s
}

@keyframes slideInMenu {
    to {
        opacity: 1;
        transform: translateX(0)
    }
}

.ihs-mobile-nav-menu a {
    border-radius: 8px;
    color: var(--text-secondary);
    display: block;
    font-size: 16px;
    font-weight: 500;
    overflow: hidden;
    padding: 14px 16px;
    position: relative;
    text-decoration: none;
    transition: all .3s ease
}

.ihs-mobile-nav-menu a:before {
    background: var(--gradient-main);
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform: scaleY(0);
    transition: transform .3s ease;
    width: 3px
}

.ihs-mobile-nav-menu a:hover:before {
    transform: scaleY(1)
}

.ihs-mobile-nav-menu a:hover {
    background: var(--main-opacity-10);
    color: var(--main-primary);
    padding-left: 24px
}

.ihs-contact-sidebar {
    background: linear-gradient(180deg, var(--bg-dark-secondary) 0, var(--bg-dark-primary) 100%);
    box-shadow: -4px 0 24px rgba(0, 0, 0, .5);
    height: 100vh;
    max-width: 400px;
    overflow-y: auto;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateX(100%);
    transition: transform .4s cubic-bezier(.4, 0, .2, 1);
    width: 100%;
    z-index: 2000
}

.ihs-contact-sidebar.ihs-active {
    transform: translateX(0)
}

.ihs-sidebar-content {
    padding: 80px 28px 40px
}

.ihs-sidebar-content h2 {
    background: var(--gradient-main);
    -webkit-background-clip: text;
    color: var(--text-primary);
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 16px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-sidebar-content p {
    color: var(--text-tertiary);
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 12px
}

.ihs-sidebar-content p:last-of-type {
    margin-bottom: 32px
}

.ihs-contact-info {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.ihs-contact-item {
    background: hsla(41, 60%, 62%, .05);
    border: 1px solid var(--main-opacity-15);
    border-radius: 12px;
    display: flex;
    gap: 16px
}

.ihs-contact-item:hover {
    background: var(--main-opacity-10);
    border-color: var(--main-opacity-30)
}

.ihs-contact-icon {
    align-items: center;
    background: linear-gradient(135deg, var(--main-opacity-15), var(--main-opacity-10));
    border: 1px solid var(--main-opacity-30);
    border-radius: 10px;
    display: flex;
    flex-shrink: 0;
    height: 44px;
    justify-content: center;
    position: relative;
    width: 44px
}

.ihs-contact-icon:before {
    content: "";
    inset: 8px;
    position: absolute
}

.ihs-icon-phone:before {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%23d9b465' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.8 19.8 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.8 19.8 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.8 12.8 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.8 12.8 0 0 0 2.81.7A2 2 0 0 1 22 16.92'/%3E%3C/svg%3E") 50% /contain no-repeat
}

.ihs-icon-email:before {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%23d9b465' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2'/%3E%3Cpath d='m22 6-10 7L2 6'/%3E%3C/svg%3E") 50% /contain no-repeat
}

.ihs-icon-location:before {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%23d9b465' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") 50% /contain no-repeat
}

.ihs-contact-details {
    flex: 1
}

.ihs-contact-label {
    color: var(--main-primary);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .05em;
    margin-bottom: 6px;
    text-transform: uppercase
}

@media (min-width:768px) {
    .ihs-header-container {
        padding: 0 32px
    }

    .ihs-logo-img {
        height: 72px;
        transform: translateY(5px)
    }

    .ihs-contact-sidebar,
    .ihs-mobile-sidebar {
        max-width: 380px
    }
}

@media (min-width:1024px) {
    .ihs-header-container {
        padding: 0 40px
    }

    .ihs-desktop-nav {
        display: block;
        flex: 1;
        margin: 0 40px
    }

    .ihs-nav-menu {
        align-items: center;
        display: flex;
        gap: 8px;
        justify-content: center;
        list-style: none;
        margin: 0;
        padding: 0
    }

    .ihs-nav-menu a {
        border-radius: 8px;
        color: var(--text-secondary);
        display: block;
        font-size: 15px;
        font-weight: 500;
        padding: 10px 18px;
        position: relative;
        text-decoration: none;
        transition: all .3s ease
    }

    .ihs-nav-menu a:before {
        background: var(--gradient-main);
        bottom: 6px;
        content: "";
        height: 2px;
        left: 18px;
        position: absolute;
        right: 18px;
        transform: scaleX(0);
        transition: transform .3s ease
    }

    .ihs-nav-menu a:hover {
        background: var(--main-opacity-10);
        color: var(--main-primary)
    }

    .ihs-nav-menu a:hover:before {
        transform: scaleX(1)
    }

    .ihs-header-cta-button {
        display: inline-flex;
        font-size: 15px;
        padding: 12px 28px
    }
}

.ihs-hero {
    align-items: center;
    background: linear-gradient(135deg, #0f172a, #1e293b 50%, #334155);
    display: flex;
    min-height: 100vh;
    overflow: hidden;
    position: relative
}

.ihs-hero-background {
    inset: 0;
    position: absolute;
    z-index: 1
}

.ihs-hero-background img,
.ihs-hero-background picture {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.ihs-hero-overlay {
    background: linear-gradient(135deg, rgba(15, 23, 42, .95), rgba(30, 41, 59, .45) 50%, rgba(51, 65, 85, .35));
    inset: 0
}

.ihs-hero-glow,
.ihs-hero-overlay {
    position: absolute;
    z-index: 2
}

.ihs-hero-glow {
    animation: glowPulse 8s ease-in-out infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .15) 0, hsla(41, 60%, 62%, .05) 40%, transparent 70%);
    filter: blur(80px);
    height: 60%;
    left: -10%;
    top: -20%;
    width: 60%
}

@keyframes glowPulse {

    0%,
    to {
        opacity: .6;
        transform: scale(1) translate(0)
    }

    50% {
        opacity: 1;
        transform: scale(1.1) translate(5%, 5%)
    }
}

.ihs-hero-container {
    margin: 0 auto;
    max-width: 1400px;
    padding: 120px 24px 80px;
    position: relative;
    width: 100%;
    z-index: 3
}

.ihs-hero-content {
    animation: heroFadeIn 1s ease-out;
    max-width: 800px
}

@keyframes heroFadeIn {
    0% {
        opacity: 0;
        transform: translateY(30px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.ihs-hero-badge {
    animation: badgeSlideIn .8s ease-out .2s both;
    backdrop-filter: blur(10px);
    color: #d9b465;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 32px
}

.ihs-header-badge,
.ihs-hero-badge {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    transition: all .3s ease
}

.ihs-header-badge {
    backdrop-filter: blur(8px);
    background: linear-gradient(135deg, var(--main-opacity-15), var(--main-opacity-10));
    border: 1px solid var(--main-opacity-30);
    border-radius: 999px;
    color: var(--main-yellow);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    margin-bottom: 14px;
    overflow: clip;
    padding: 8px 20px;
    position: relative;
    text-transform: uppercase
}

.ihs-burger-btn:after,
.ihs-header-badge:after {
    background: url(/img/favicon.webp) 50%/25px repeat;
    content: "";
    height: 100%;
    left: 0;
    opacity: .07;
    position: absolute;
    top: 0;
    width: 100%
}

@keyframes badgeSlideIn {
    0% {
        opacity: 0;
        transform: translateX(-20px)
    }

    to {
        opacity: 1;
        transform: translateX(0)
    }
}

.ihs-badge-text {
    font-size: 14.75px;
    letter-spacing: .1px;
    text-align: center;
    text-shadow: 0 0 1px #000
}

.ihs-hero-badge--tricolore {
    backdrop-filter: blur(10px) saturate(1.1);
    -webkit-backdrop-filter: blur(10px) saturate(1.1);
    background: none;
    border: 1px solid transparent;
    color: var(--main-yellow);
    display: none;
    overflow: clip;
    padding: 10px 20px;
    position: relative;
    width: -moz-fit-content;
    width: fit-content
}

@media (min-width:768px) {
    .ihs-hero-badge--tricolore {
        display: block
    }
}

.ihs-hero-badge--tricolore:before {
    background: linear-gradient(90deg, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5) 33.333%, rgba(187, 31, 25, .5) 0, rgba(187, 31, 25, .5) 66.666%, rgba(219, 163, 61, .5) 0, rgba(219, 163, 61, .5)), linear-gradient(180deg, hsla(0, 0%, 100%, .1), rgba(0, 0, 0, .08));
    box-shadow: inset 0 1px 0 hsla(0, 0%, 100%, .15), inset 0 -1px 0 rgba(0, 0, 0, .12);
    opacity: .35
}

.ihs-hero-badge--tricolore:after,
.ihs-hero-badge--tricolore:before {
    border-radius: inherit;
    content: "";
    inset: 0;
    position: absolute;
    z-index: 0
}

.ihs-hero-badge--tricolore:after {
    background: linear-gradient(90deg, rgba(0, 0, 0, .5), rgba(187, 31, 25, .5), rgba(219, 163, 61, .5));
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    padding: 1px
}

.ihs-hero-badge--tricolore>* {
    position: relative;
    z-index: 1
}

.ihs-hero-badge--tricolore:hover:before {
    background: linear-gradient(90deg, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5) 33.333%, rgba(187, 31, 25, .5) 0, rgba(187, 31, 25, .5) 66.666%, rgba(219, 163, 61, .5) 0, rgba(219, 163, 61, .5)), linear-gradient(180deg, hsla(0, 0%, 100%, .16), rgba(0, 0, 0, .1))
}

.ihs-hero-badge--tricolore:hover {
    box-shadow: 0 8px 24px hsla(41, 60%, 62%, .22);
    transform: translateY(-2px)
}

.ihs-hero-badge--tricolore .ihs-badge-text {
    position: relative
}

.ihs-hero-badge--tricolore .ihs-badge-text:after {
    background: linear-gradient(120deg, hsla(0, 0%, 100%, 0) 40%, hsla(0, 0%, 100%, .18) 55%, hsla(0, 0%, 100%, 0) 70%);
    border-radius: inherit;
    content: "";
    inset: -12px;
    pointer-events: none;
    position: absolute;
    transform: translateX(-120%);
    transition: transform .6s ease
}

.ihs-hero-badge--tricolore:hover .ihs-badge-text:after {
    transform: translateX(120%)
}

.ihs-hero-title {
    color: #fff;
    font-size: clamp(36px, 6vw, 72px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.1;
    margin-bottom: 24px
}

.ihs-title-line {
    animation: titleSlideIn .8s ease-out both;
    display: block
}

.ihs-title-line:nth-child(2) {
    animation-delay: .3s
}

.ihs-title {
    background: var(--gradient-light);
    -webkit-background-clip: text;
    font-size: clamp(28px, 5vw, 48px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: 16px;
    text-shadow: 0 0 20px hsla(41, 60%, 62%, .25);
    -webkit-text-fill-color: transparent;
    background-clip: text
}

@keyframes titleSlideIn {
    0% {
        opacity: 0;
        transform: translateY(20px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.ihs-highlight {
    background: linear-gradient(135deg, #dfcb98, #f4e4c1 50%, #b8860b);
    -webkit-background-clip: text;
    display: inline-block;
    position: relative;
    -webkit-text-fill-color: transparent;
    animation: gradientShift 3s ease infinite;
    background-clip: text;
    background-size: 200% 200%
}

@keyframes gradientShift {

    0%,
    to {
        background-position: 0 50%
    }

    50% {
        background-position: 100% 50%
    }
}

.ihs-highlight:before {
    animation: underlineExpand .8s ease-out .5s both;
    background: linear-gradient(90deg, transparent 0, var(--main-yellow) 20%, var(--main-yellow) 80%, transparent 100%);
    border-radius: 2px;
    bottom: -4px;
    content: "";
    height: 3px;
    left: 0;
    position: absolute;
    width: 100%
}

@keyframes underlineExpand {
    0% {
        opacity: 0;
        transform: scaleX(0)
    }

    to {
        opacity: 1;
        transform: scaleX(1)
    }
}

.ihs-hero-description {
    animation: descFadeIn .8s ease-out .4s both;
    color: hsla(0, 0%, 100%, .85);
    font-size: clamp(16px, 1.8vw, 20px);
    line-height: 1.7;
    margin-bottom: 40px;
    max-width: 650px
}

@keyframes descFadeIn {
    0% {
        opacity: 0;
        transform: translateY(15px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.ihs-cta-button {
    align-items: center;
    animation: btnFadeIn .8s ease-out .6s both;
    background: transparent;
    border: none;
    border: 1px solid var(--main-primary);
    border-radius: 2px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-size: 18px;
    font-weight: 600;
    max-width: 370px;
    overflow: hidden;
    padding: 18px 40px;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: transform .3s ease, box-shadow .3s ease
}

.ihs-hero-cta-button {
    margin-bottom: 60px
}

@keyframes btnFadeIn {
    0% {
        opacity: 0;
        transform: translateY(15px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.ihs-btn-gradient {
    background: var(--gradient-main);
    color: #fff;
    inset: 0;
    position: absolute;
    transition: all .4s ease
}

.ihs-cta-button:hover .ihs-btn-gradient {
    background: var(--gradient-main);
    transform: scale(1.02)
}

.ihs-btn-content {
    align-items: center;
    display: flex;
    gap: 12px;
    margin-inline: auto;
    position: relative;
    z-index: 2
}

.ihs-btn-icon {
    display: flex;
    transition: transform .3s ease
}

.ihs-cta-button:hover .ihs-btn-icon {
    transform: translateX(5px)
}

.ihs-cta-button:hover {
    box-shadow: 0 12px 40px hsla(41, 60%, 62%, .4), 0 0 60px hsla(41, 60%, 62%, .2);
    transform: translateY(-3px)
}

.ihs-btn-ripple {
    background: radial-gradient(circle, hsla(0, 0%, 100%, .5) 0, transparent 70%);
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    transform: scale(0)
}

.ihs-cta-button:active .ihs-btn-ripple {
    animation: rippleEffect .6s ease-out
}

@keyframes rippleEffect {
    0% {
        opacity: 1;
        transform: scale(0)
    }

    to {
        opacity: 0;
        transform: scale(2.5)
    }
}

.ihs-hero-stats {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 32px
}

.ihs-stat-item {
    animation: statFadeIn .6s ease-out both;
    animation-delay: var(--delay, 0s);
    opacity: 0
}

@keyframes statFadeIn {
    0% {
        opacity: 0;
        transform: translateY(10px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.ihs-stat-value {
    color: #d9b465;
    font-size: clamp(28px, 3vw, 36px);
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 4px;
    text-shadow: 0 0 20px hsla(41, 60%, 62%, .3)
}

.ihs-stat-label {
    color: hsla(0, 0%, 100%, .7);
    font-size: 14px;
    font-weight: 500
}

.ihs-stat-divider {
    background: linear-gradient(180deg, transparent 0, hsla(41, 60%, 62%, .3) 50%, transparent);
    height: 50px;
    width: 1px
}

.ihs-hero-decorative {
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1
}

.ihs-deco-circle {
    animation: float 8s ease-in-out infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .1) 0, transparent 70%);
    border-radius: 50%;
    filter: blur(40px);
    position: absolute
}

.ihs-deco-circle-1 {
    animation-delay: 0s;
    height: 400px;
    right: 10%;
    top: 10%;
    width: 400px
}

.ihs-deco-circle-2 {
    animation-delay: 2s;
    bottom: 20%;
    height: 300px;
    right: 30%;
    width: 300px
}

.ihs-deco-circle-3 {
    animation-delay: 4s;
    height: 250px;
    right: 5%;
    top: 50%;
    width: 250px
}

@keyframes float {

    0%,
    to {
        transform: translate(0) scale(1)
    }

    33% {
        transform: translate(20px, -20px) scale(1.1)
    }

    66% {
        transform: translate(-15px, 15px) scale(.9)
    }
}

@media (max-width:768px) {
    .ihs-hero-container {
        padding: 120px 20px 60px
    }

    .ihs-hero-badge {
        font-size: 13px;
        margin-bottom: 24px
    }

    .ihs-hero-title {
        margin-bottom: 20px
    }

    .ihs-hero-description {
        margin-bottom: 32px
    }

    .ihs-cta-button {
        font-size: 16px;
        justify-content: center;
        margin-bottom: 40px;
        padding: 16px 32px;
        width: 100%
    }

    .ihs-hero-stats {
        gap: 20px
    }

    .ihs-stat-divider {
        height: 40px
    }

    .ihs-deco-circle {
        display: none
    }
}

@media (max-width:480px) {
    .ihs-hero-stats {
        align-items: flex-start;
        flex-direction: column;
        gap: 16px
    }

    .ihs-stat-divider {
        display: none
    }

    .ihs-stat-item {
        width: 100%
    }
}

.ihs-about-section {
    background: radial-gradient(1200px 600px at 10% 10%, hsla(41, 60%, 62%, .08), transparent 60%), radial-gradient(900px 500px at 90% 85%, hsla(41, 60%, 62%, .06), transparent 65%);
    overflow: clip;
    padding: clamp(90px, 9vw, 130px) 20px 60px;
    position: relative
}

.ihs-about-container {
    align-items: center;
    display: grid;
    gap: min(108px, 22vw);
    grid-template-columns: 1fr;
    margin: 0 auto;
    max-width: 1400px
}

.ihs-about-images {
    position: relative
}

.ihs-about-main-image {
    background: linear-gradient(135deg, hsla(0, 0%, 100%, .08), hsla(0, 0%, 100%, 0)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .45), hsla(0, 0%, 100%, .25), rgba(184, 134, 11, .45)) border-box;
    border: 1px solid transparent;
    border-radius: 12px;
    isolation: isolate;
    margin-inline: auto;
    max-width: 568px;
    overflow: hidden;
    position: relative;
    transform-style: flat
}

.ihs-about-main-image img {
    backface-visibility: hidden;
    display: block;
    filter: saturate(1.05) contrast(1.02);
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    transform: translateZ(0);
    transition: transform .6s cubic-bezier(.2, .7, .2, 1);
    width: 100%
}

.ihs-about-main-image:hover img {
    transform: scale(1.02)
}

.ihs-about-glass {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .08), rgba(0, 0, 0, .08));
    inset: 0;
    mix-blend-mode: soft-light;
    pointer-events: none;
    position: absolute;
    z-index: 1
}

.ihs-experience-badge {
    align-items: flex-start;
    backdrop-filter: blur(10px) saturate(1.15);
    -webkit-backdrop-filter: blur(10px) saturate(1.15);
    background: linear-gradient(90deg, rgba(0, 0, 0, .5) 0 33.333%, rgba(187, 31, 25, .5) 33.333% 66.666%, rgba(219, 163, 61, .5) 66.666% 100%), linear-gradient(180deg, rgba(15, 23, 42, .6), rgba(15, 23, 42, .4));
    background-clip: padding-box, border-box;
    border: 1px solid transparent;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .35), 0 0 24px hsla(41, 60%, 62%, .25);
    color: var(--text-primary);
    display: inline-flex;
    flex-direction: column;
    gap: 2px;
    left: 16px;
    padding: 12px 16px;
    position: absolute;
    text-align: center;
    top: 16px;
    z-index: 2
}

.ihs-about-section .ihs-experience-badge.ihs-slide-in-element.ihs-visible {
    transform: translate(-50%, -65%)
}

.ihs-experience-badge:after {
    background: linear-gradient(90deg, rgba(0, 0, 0, .5), rgba(187, 31, 25, .5), rgba(219, 163, 61, .5));
    border-radius: inherit;
    content: "";
    inset: 0;
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    padding: 1px;
    pointer-events: none;
    position: absolute
}

.ihs-experience-number {
    background: var(--gradient-light);
    -webkit-background-clip: text;
    font-size: clamp(22px, 3.4vw, 32px);
    font-weight: 800;
    line-height: 1;
    -webkit-text-fill-color: transparent;
    margin-inline: auto;
    text-shadow: 0 0 18px hsla(41, 60%, 62%, .35)
}

.ihs-experience-text {
    color: var(--text-tertiary);
    font-size: 12.5px;
    letter-spacing: .06em;
    text-shadow: 0 0 2px #000, 0 0 4px hsla(41, 60%, 62%, .35);
    text-transform: uppercase
}

.ihs-about-secondary-image {
    border: 1px solid hsla(41, 60%, 62%, .28);
    border-radius: 14px;
    bottom: 0;
    box-shadow: 0 10px 35px rgba(0, 0, 0, .45), 0 0 30px hsla(41, 60%, 62%, .18);
    overflow: clip;
    position: absolute;
    right: 50%;
    transition: transform .5s ease, box-shadow .5s ease, filter .5s ease;
    width: min(54%, 360px);
    z-index: 2
}

.ihs-about-section .ihs-about-secondary-image.ihs-zoom-in-element.ihs-visible {
    transform: scale(1) translate(50%, 50%)
}

.ihs-about-secondary-image img {
    display: block;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.ihs-about-main-image:hover .ihs-about-secondary-image {
    box-shadow: 0 12px 40px rgba(0, 0, 0, .5), 0 0 40px hsla(41, 60%, 62%, .28);
    filter: saturate(1.08);
    transform: translate3d(-4px, -4px, 30px) scale(1.02)
}

.ihs-about-ring {
    background: conic-gradient(from 0deg, hsla(41, 60%, 62%, 0), hsla(41, 60%, 62%, .45), hsla(41, 60%, 62%, 0) 65%);
    border-radius: 50%;
    filter: blur(12px);
    opacity: .35;
    pointer-events: none;
    position: absolute;
    z-index: 0
}

.ihs-ring-1 {
    height: 280px;
    left: -60px;
    top: -40px;
    width: 280px
}

.ihs-ring-2 {
    bottom: -20px;
    height: 220px;
    right: -40px;
    width: 220px
}

.ihs-about-content,
.ihs-about-surface {
    position: relative
}

.ihs-about-surface {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .06), hsla(0, 0%, 100%, .02)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .35), hsla(0, 0%, 100%, .18), rgba(184, 134, 11, .35)) border-box;
    border: 1px solid transparent;
    border-radius: 18px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .35);
    overflow: clip;
    padding: clamp(20px, 3.6vw, 32px)
}

.ihs-about-surface:before {
    background-image: radial-gradient(hsla(0, 0%, 100%, .05) 1px, transparent 0);
    background-size: 14px 14px;
    content: "";
    inset: 0;
    opacity: .35;
    pointer-events: none;
    position: absolute
}

.ihs-about-title {
    background: var(--gradient-lighter);
    -webkit-background-clip: text;
    font-size: clamp(26px, 4.2vw, 40px);
    font-weight: 800;
    letter-spacing: -.01em;
    line-height: 1.15;
    margin-bottom: 12px;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 1px rgba(0, 0, 0, .7));
    text-shadow: 0 0 22px hsla(41, 60%, 62%, .25)
}

.ihs-about-subtitle {
    display: grid;
    gap: 2px;
    margin-bottom: 14px
}

.ihs-about-subtitle .ihs-subtitle-label {
    color: var(--main-light);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-decoration: underline;
    text-transform: uppercase
}

.ihs-about-subtitle h3 {
    color: var(--text-secondary);
    font-size: clamp(16px, 2.2vw, 18px);
    font-weight: 600
}

.ihs-about-description {
    color: var(--text-secondary);
    font-size: clamp(15px, 1.9vw, 16.5px);
    line-height: 1.75;
    margin: 10px 0 18px
}

.ihs-about-features {
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
    list-style: none;
    margin: 0;
    padding: 0
}

.ihs-feature-item {
    align-items: center;
    background: linear-gradient(180deg, hsla(41, 60%, 62%, .06), hsla(41, 60%, 62%, .03));
    border: 1px solid hsla(41, 60%, 62%, .22);
    border-radius: 14px;
    display: flex;
    gap: 12px;
    padding: 14px;
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease
}

.ihs-feature-item:hover {
    background: linear-gradient(180deg, hsla(41, 60%, 62%, .1), hsla(41, 60%, 62%, .05));
    box-shadow: 0 10px 26px hsla(41, 60%, 62%, .18);
    transform: translateY(-2px)
}

.ihs-feature-icon {
    background: linear-gradient(135deg, var(--main-opacity-15), var(--main-opacity-10)) padding-box, linear-gradient(135deg, #3c6b4b, #d1ddcf, #284633) border-box;
    border: 1px solid transparent;
    border-radius: 8px;
    flex: 0 0 auto;
    height: 28px;
    position: relative;
    width: 28px
}

.ihs-feature-icon:before {
    background: #000;
    content: "";
    height: 16px;
    inset: 0;
    margin: auto;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='M9.55 17.04 4.5 12l1.41-1.41 3.64 3.63 8.55-8.54 1.4 1.42z'/%3E%3C/svg%3E") center/contain no-repeat;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='M9.55 17.04 4.5 12l1.41-1.41 3.64 3.63 8.55-8.54 1.4 1.42z'/%3E%3C/svg%3E") center/contain no-repeat;
    position: absolute;
    width: 16px
}

.ihs-feature-text {
    color: var(--text-secondary);
    font-size: 15px;
    font-weight: 500
}

.ihs-about-section .ihs-fade-in-element {
    opacity: 0;
    transform: translateY(16px);
    transition: opacity .6s ease, transform .6s ease
}

.ihs-about-section .ihs-slide-in-element {
    opacity: 0;
    transform: translateX(-16px);
    transition: opacity 1.2s ease, transform 1.2s ease
}

.ihs-about-section .ihs-zoom-in-element {
    opacity: 0;
    transform: scale(.96);
    transition: opacity .6s ease, transform .6s ease
}

.ihs-about-section .ihs-fade-in-element.ihs-visible {
    opacity: 1;
    transform: translateY(0);
    transition: .3s
}

.ihs-about-section .ihs-slide-in-element.ihs-visible {
    left: 50%;
    opacity: 1;
    top: 0;
    transform: translateX(0)
}

.ihs-about-section .ihs-zoom-in-element.ihs-visible {
    opacity: 1;
    transform: scale(1)
}

@media (min-width:920px) {
    .ihs-about-container {
        gap: clamp(36px, 5vw, 64px);
        grid-template-columns: .85fr 1.15fr
    }

    .ihs-about-features {
        grid-template-columns: 1fr 1fr
    }
}

@media (min-width:1200px) {
    .ihs-about-features {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (prefers-reduced-motion:reduce) {
    .ihs-about-section * {
        animation: none !important;
        transition: none !important
    }
}

.ihs-success-section {
    background: var(--bg-dark-primary);
    overflow: hidden;
    padding: 60px 20px;
    position: relative
}

.ihs-success-section:before {
    animation: glowFloat 10s ease-in-out infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .08) 0, transparent 60%);
    content: "";
    filter: blur(80px);
    height: 600px;
    position: absolute;
    right: -20%;
    top: -50%;
    width: 600px
}

@keyframes glowFloat {

    0%,
    to {
        transform: translate(0) scale(1)
    }

    50% {
        transform: translate(-30px, 30px) scale(1.15)
    }
}

.ihs-success-container {
    margin: 0 auto;
    max-width: 1400px;
    position: relative;
    z-index: 2
}

.ihs-success-header {
    margin-bottom: 48px;
    text-align: center
}

.ihs-success-badge:hover {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .25), rgba(184, 134, 11, .15));
    border-color: var(--main-opacity-50);
    box-shadow: 0 8px 20px hsla(41, 60%, 62%, .2);
    transform: translateY(-2px)
}

.ihs-success-title {
    -webkit-background-clip: text;
    font-size: clamp(28px, 5vw, 48px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: 12px;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 0 20px hsla(41, 60%, 62%, .25)
}

.ihs-success-description {
    color: var(--text-tertiary);
    font-size: clamp(15px, 1.8vw, 18px);
    line-height: 1.6;
    margin: 0 auto;
    max-width: 600px
}

.ihs-success-stats {
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr
}

.ihs-stat-card {
    border: 1px solid transparent;
    border: 2px solid var(--bg-dark-light);
    border-radius: 9px;
    overflow: hidden;
    padding: 32px 24px;
    position: relative;
    text-align: center;
    transition: all .4s cubic-bezier(.4, 0, .2, 1)
}

.ihs-stat-card-decor {
    background: url(../img/favicon.webp) 50%/25px repeat;
    height: 100%;
    left: 0;
    opacity: .07;
    position: absolute;
    top: 0;
    width: 100%
}

.ihs-stat-card:before {
    background-image: radial-gradient(hsla(0, 0%, 100%, .04) 1px, transparent 0);
    background-size: 16px 16px;
    content: "";
    inset: 0;
    opacity: .4;
    pointer-events: none;
    position: absolute
}

.ihs-stat-card:after {
    background: linear-gradient(90deg, transparent, hsla(41, 60%, 62%, .15) 50%, transparent);
    content: "";
    height: 100%;
    left: -100%;
    position: absolute;
    top: 0;
    transition: left .6s ease;
    width: 100%
}

.ihs-stat-card:hover {
    border-color: var(--main-opacity-50);
    box-shadow: 0 20px 50px rgba(0, 0, 0, .4), 0 0 40px hsla(41, 60%, 62%, .2);
    transform: translateY(-8px)
}

.ihs-stat-card:hover:after {
    left: 100%
}

.ihs-stat-icon {
    align-items: center;
    background: linear-gradient(135deg, var(--main-opacity-15), var(--main-opacity-10)) padding-box, var(--gradient-main) border-box;
    border: 1.5px solid transparent;
    border-radius: 14px;
    display: flex;
    height: 64px;
    justify-content: center;
    margin: 0 auto 20px;
    position: relative;
    transition: all .4s ease;
    width: 64px
}

.ihs-stat-card:hover .ihs-stat-icon {
    box-shadow: 0 12px 30px hsla(41, 60%, 62%, .3);
    transform: scale(1.1) rotate(5deg)
}

.ihs-stat-icon:before {
    content: "";
    filter: brightness(.75);
    height: 42px;
    inset: 0;
    margin: auto;
    position: absolute;
    width: 42px
}

.ihs-stat-icon-1:before {
    background: var(--gradient-main);
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cpath d='m12 2 3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01z'/%3E%3C/svg%3E") center/contain no-repeat;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cpath d='m12 2 3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01z'/%3E%3C/svg%3E") center/contain no-repeat
}

.ihs-stat-icon-2:before {
    background: var(--gradient-main);
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cpath d='M15 18.5A6.48 6.48 0 0 1 9.24 15H15l1-2H8.58c-.05-.33-.08-.66-.08-1s.03-.67.08-1H15l1-2H9.24A6.49 6.49 0 0 1 15 5.5c1.61 0 3.09.59 4.23 1.57L21 5.3A8.96 8.96 0 0 0 15 3c-3.92 0-7.24 2.51-8.48 6H3l-1 2h4.06a8.3 8.3 0 0 0 0 2H3l-1 2h4.52c1.24 3.49 4.56 6 8.48 6 2.31 0 4.41-.87 6-2.3l-1.78-1.77c-1.13.98-2.6 1.57-4.22 1.57'/%3E%3C/svg%3E") center/contain no-repeat;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cpath d='M15 18.5A6.48 6.48 0 0 1 9.24 15H15l1-2H8.58c-.05-.33-.08-.66-.08-1s.03-.67.08-1H15l1-2H9.24A6.49 6.49 0 0 1 15 5.5c1.61 0 3.09.59 4.23 1.57L21 5.3A8.96 8.96 0 0 0 15 3c-3.92 0-7.24 2.51-8.48 6H3l-1 2h4.06a8.3 8.3 0 0 0 0 2H3l-1 2h4.52c1.24 3.49 4.56 6 8.48 6 2.31 0 4.41-.87 6-2.3l-1.78-1.77c-1.13.98-2.6 1.57-4.22 1.57'/%3E%3C/svg%3E") center/contain no-repeat
}

.ihs-stat-icon-3:before {
    background: var(--gradient-main);
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z'/%3E%3C/svg%3E") center/contain no-repeat;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z'/%3E%3C/svg%3E") center/contain no-repeat
}

.ihs-stat-number {
    background: var(--gradient-main);
    -webkit-background-clip: text;
    font-size: clamp(40px, 7vw, 64px);
    font-weight: 800;
    line-height: 1;
    -webkit-text-fill-color: transparent;
    animation: statGradient 3s ease infinite;
    background-clip: text;
    background-size: 200% 200%;
    filter: drop-shadow(0 0 1px rgba(0, 0, 0, .7));
    margin-bottom: 8px;
    position: relative;
    z-index: 1
}

@keyframes statGradient {

    0%,
    to {
        background-position: 0 50%
    }

    50% {
        background-position: 100% 50%
    }
}

.ihs-stat-number:after {
    content: "+";
    font-size: .5em;
    opacity: .7;
    position: absolute;
    right: -.3em;
    top: 0
}

.ihs-stat-label {
    color: var(--text-secondary);
    font-size: clamp(14px, 1.6vw, 16px);
    font-weight: 600;
    letter-spacing: .02em;
    position: relative;
    z-index: 1
}

@media (min-width:640px) {
    .ihs-success-section {
        padding: 100px 32px
    }

    .ihs-success-header {
        margin-bottom: 56px
    }

    .ihs-success-stats {
        gap: 24px;
        grid-template-columns: repeat(2, 1fr)
    }

    .ihs-stat-card:nth-child(3) {
        grid-column: 1/-1;
        margin: 0 auto;
        max-width: 470px;
        width: 100%
    }
}

@media (min-width:1024px) {
    .ihs-success-section {
        padding: 120px 40px
    }

    .ihs-success-header {
        margin-bottom: 64px
    }

    .ihs-success-stats {
        gap: 32px;
        grid-template-columns: repeat(3, 1fr)
    }

    .ihs-stat-card {
        padding: 40px 28px
    }

    .ihs-stat-card:nth-child(3) {
        grid-column: auto;
        max-width: none
    }

    .ihs-stat-icon {
        height: 72px;
        margin-bottom: 24px;
        width: 72px
    }
}

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

    .ihs-success-section *,
    .ihs-success-section:before {
        animation: none !important;
        transition: none !important
    }
}

.ihs-services-section {
    background: var(--bg-dark-secondary);
    overflow: hidden;
    padding: 60px 20px;
    position: relative
}

.ihs-services-section:before {
    animation: glowRotate 15s linear infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .06) 0, transparent 65%);
    bottom: -30%;
    content: "";
    filter: blur(90px);
    height: 700px;
    left: -20%;
    position: absolute;
    width: 700px
}

@keyframes glowRotate {
    0% {
        transform: rotate(0deg) scale(1)
    }

    50% {
        transform: rotate(180deg) scale(1.1)
    }

    to {
        transform: rotate(1turn) scale(1)
    }
}

.ihs-services-container {
    margin: 0 auto;
    max-width: 1400px;
    position: relative;
    z-index: 2
}

.ihs-services-header {
    margin-bottom: 48px;
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
    text-align: center
}

.ihs-services-badge:hover {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .25), rgba(184, 134, 11, .15));
    border-color: var(--main-opacity-50);
    transform: translateY(-2px)
}

.ihs-services-title {
    -webkit-background-clip: text;
    font-size: clamp(28px, 5vw, 48px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: 16px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-services-intro {
    color: var(--text-secondary);
    font-size: clamp(16px, 2vw, 20px);
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 8px
}

.ihs-services-description {
    color: var(--text-tertiary);
    font-size: clamp(14px, 1.6vw, 16px);
    line-height: 1.6
}

.ihs-services-grid {
    display: grid;
    gap: 24px;
    grid-template-columns: 1fr
}

@media (min-width:920px) {
    .ihs-services-grid {
        grid-template-columns: 1fr 1fr
    }
}

.ihs-service-card {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .04), hsla(0, 0%, 100%, .01)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .25), hsla(0, 0%, 100%, .12), rgba(184, 134, 11, .25)) border-box;
    border: 1px solid transparent;
    border-radius: 12px;
    display: grid;
    grid-template-columns: 1fr;
    overflow: hidden;
    position: relative;
    transition: all .4s cubic-bezier(.4, 0, .2, 1)
}

.ihs-service-card:before {
    background-image: radial-gradient(hsla(0, 0%, 100%, .03) 1px, transparent 0);
    background-size: 20px 20px;
    content: "";
    inset: 0;
    opacity: .3;
    pointer-events: none;
    position: absolute
}

.ihs-service-card:hover {
    box-shadow: 0 20px 50px rgba(0, 0, 0, .4), 0 0 40px hsla(41, 60%, 62%, .15);
    transform: translateY(-6px)
}

.ihs-service-content {
    padding: 32px 24px;
    position: relative;
    z-index: 2
}

.ihs-service-icon {
    align-items: center;
    background: linear-gradient(135deg, var(--main-opacity-15), var(--main-opacity-10)) padding-box, var(--gradient-main) border-box;
    border: 1.5px solid transparent;
    border-radius: 12px;
    display: flex;
    height: 56px;
    justify-content: center;
    margin-bottom: 20px;
    position: relative;
    transition: all .4s ease;
    width: 56px
}

.ihs-service-card:hover .ihs-service-icon {
    box-shadow: 0 10px 25px hsla(41, 60%, 62%, .3);
    transform: scale(1.1) rotate(-5deg)
}

.ihs-service-icon:before {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    filter: brightness(0) invert(1);
    height: 32px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 32px
}

.ihs-icon-broker:before {
    background-image: url(../assets/icons/broker.webp)
}

.ihs-icon-crypto:before {
    background-image: url(../assets/icons/crypto.webp)
}

.ihs-icon-investment:before {
    background-image: url(../assets/icons/investment.webp)
}

.ihs-icon-international:before {
    background-image: url(../assets/icons/international.webp)
}

.ihs-service-title {
    color: var(--text-primary);
    font-size: clamp(20px, 2.5vw, 24px);
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 12px;
    transition: color .3s ease
}

.ihs-service-card:hover .ihs-service-title {
    color: var(--main-yellow)
}

.ihs-service-description {
    color: var(--text-tertiary);
    font-size: clamp(14px, 1.6vw, 15px);
    line-height: 1.7;
    margin-bottom: 20px
}

.ihs-service-link {
    align-items: center;
    color: var(--main-yellow);
    display: inline-flex;
    font-size: 15px;
    font-weight: 600;
    gap: 8px;
    position: relative;
    text-decoration: none;
    transition: all .3s ease
}

.ihs-service-link:before {
    background: var(--gradient-main);
    bottom: -2px;
    content: "";
    height: 2px;
    left: 0;
    position: absolute;
    transition: width .3s ease;
    width: 0
}

.ihs-service-link:hover:before {
    width: calc(100% - 28px)
}

.ihs-link-arrow {
    display: inline-flex;
    font-size: 18px;
    transition: transform .3s ease
}

.ihs-service-link:hover .ihs-link-arrow {
    transform: translateX(4px)
}

.ihs-service-image {
    height: 220px;
    overflow: hidden;
    position: relative;
    width: 100%
}

.ihs-service-image:before {
    background: linear-gradient(180deg, rgba(15, 23, 42, .4), rgba(15, 23, 42, .1));
    content: "";
    inset: 0;
    position: absolute;
    transition: opacity .4s ease;
    z-index: 1
}

.ihs-service-card:hover .ihs-service-image:before {
    opacity: .5
}

.ihs-service-image img {
    border-radius: 0 0 8px 8px;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .6s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

@media (min-width:640px) {
    .ihs-service-image img {
        border-radius: 0 8px 8px 0
    }
}

.ihs-service-card:hover .ihs-service-image img {
    transform: scale(1.08)
}

@media (min-width:640px) {
    .ihs-services-section {
        padding: 100px 32px
    }

    .ihs-services-header {
        margin-bottom: 56px
    }

    .ihs-services-grid {
        gap: 28px
    }

    .ihs-service-card {
        gap: 0;
        grid-template-columns: 1fr 280px
    }

    .ihs-service-image {
        height: 100%;
        min-height: 300px
    }

    .ihs-service-content {
        padding: 36px 32px
    }
}

@media (min-width:1024px) {
    .ihs-services-section {
        padding: 120px 40px
    }

    .ihs-services-header {
        margin-bottom: 64px
    }

    .ihs-services-grid {
        gap: 32px
    }

    .ihs-service-card {
        grid-template-columns: 1.2fr 320px
    }

    .ihs-service-image {
        min-height: 340px
    }

    .ihs-service-content {
        padding: 40px 36px
    }

    .ihs-service-icon {
        height: 64px;
        margin-bottom: 24px;
        width: 64px
    }

    .ihs-service-icon:before {
        height: 32px;
        width: 32px
    }
}

@media (min-width:1200px) {
    .ihs-service-card {
        grid-template-columns: 1.3fr 380px
    }

    .ihs-service-image {
        min-height: 360px
    }
}

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

    .ihs-services-section *,
    .ihs-services-section:before {
        animation: none !important;
        transition: none !important
    }
}

.ihs-process-section {
    background: var(--bg-dark-primary);
    overflow: hidden;
    padding: 60px 20px;
    position: relative
}

.ihs-process-section:before {
    animation: pulseGlow 8s ease-in-out infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .08) 0, hsla(41, 60%, 62%, .03) 40%, transparent 70%);
    content: "";
    filter: blur(100px);
    height: 800px;
    left: 50%;
    position: absolute;
    top: -40%;
    transform: translateX(-50%);
    width: 800px
}

@keyframes pulseGlow {

    0%,
    to {
        opacity: .6;
        transform: translateX(-50%) scale(1)
    }

    50% {
        opacity: 1;
        transform: translateX(-50%) scale(1.15)
    }
}

.ihs-process-container {
    align-items: center;
    display: grid;
    gap: 48px;
    grid-template-columns: 1fr;
    margin: 0 auto;
    max-width: 1400px;
    position: relative;
    z-index: 2
}

.ihs-process-content {
    position: relative
}

.ihs-process-header {
    margin-bottom: 48px;
    text-align: center
}

.ihs-process-badge:hover {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .25), rgba(184, 134, 11, .15));
    border-color: var(--main-opacity-50);
    transform: translateY(-2px)
}

.ihs-process-title {
    -webkit-background-clip: text;
    font-size: clamp(28px, 5vw, 48px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: 16px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-process-description {
    color: var(--text-tertiary);
    font-size: clamp(15px, 1.8vw, 17px);
    line-height: 1.6;
    margin: 0 auto;
    max-width: 600px
}

.ihs-process-steps {
    display: flex;
    flex-direction: column;
    gap: 32px;
    position: relative
}

.ihs-process-step {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .04), hsla(0, 0%, 100%, .01)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .25), hsla(0, 0%, 100%, .12), rgba(184, 134, 11, .25)) border-box;
    border: 1px solid transparent;
    border-radius: 9px;
    display: grid;
    gap: 20px;
    grid-template-columns: 80px 1fr;
    overflow: hidden;
    padding: 28px 20px;
    position: relative;
    transition: all .4s cubic-bezier(.4, 0, .2, 1)
}

.ihs-process-step:before {
    background-image: radial-gradient(hsla(0, 0%, 100%, .03) 1px, transparent 0);
    background-size: 18px 18px;
    content: "";
    inset: 0;
    opacity: .3;
    pointer-events: none;
    position: absolute
}

.ihs-process-step:hover {
    border-color: var(--main-opacity-50);
    box-shadow: 0 16px 40px rgba(0, 0, 0, .35), 0 0 30px hsla(41, 60%, 62%, .15);
    transform: translateX(8px)
}

.ihs-step-visual {
    flex-direction: column;
    gap: 16px
}

.ihs-step-icon,
.ihs-step-visual {
    align-items: center;
    display: flex;
    position: relative
}

.ihs-step-icon {
    background: linear-gradient(135deg, var(--main-opacity-15), var(--main-opacity-10)) padding-box, var(--gradient-main) border-box;
    border: 1.5px solid transparent;
    border-radius: 14px;
    flex-shrink: 0;
    height: 56px;
    justify-content: center;
    transition: all .4s ease;
    width: 56px
}

.ihs-process-step:hover .ihs-step-icon {
    box-shadow: 0 10px 25px hsla(41, 60%, 62%, .35);
    transform: scale(1.1) rotate(-5deg)
}

.ihs-step-icon:before {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 28px;
    inset: 0;
    margin: auto;
    position: absolute;
    width: 28px
}

.ihs-icon-search:before {
    background-image: url(../assets/icons/search.webp)
}

.ihs-icon-legal:before {
    background-image: url(../assets/icons/legal.webp)
}

.ihs-icon-recovery:before {
    background-image: url(../assets/icons/recovery.webp)
}

.ihs-step-connector {
    background: linear-gradient(180deg, var(--main-primary) 0, hsla(41, 60%, 62%, .3) 50%, transparent 100%);
    height: calc(100% - 24px);
    left: 50%;
    opacity: .4;
    position: absolute;
    top: 56px;
    transform: translateX(-50%);
    width: 2px
}

.ihs-step-number {
    background: var(--main-opacity-10);
    border: 1px solid var(--main-opacity-30);
    border-radius: 8px;
    color: var(--main-yellow);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .05em;
    padding: 4px 10px;
    transition: all .3s ease
}

.ihs-process-step:hover .ihs-step-number {
    background: var(--main-opacity-15);
    border-color: var(--main-opacity-50);
    box-shadow: 0 4px 12px hsla(41, 60%, 62%, .2)
}

.ihs-step-content {
    position: relative;
    z-index: 1
}

.ihs-step-title {
    color: var(--text-primary);
    font-size: clamp(18px, 2.2vw, 22px);
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 8px;
    transition: color .3s ease
}

.ihs-process-step:hover .ihs-step-title {
    color: var(--main-yellow)
}

.ihs-step-description {
    color: var(--text-tertiary);
    font-size: clamp(14px, 1.6vw, 15px);
    line-height: 1.7
}

.ihs-process-image {
    background: linear-gradient(135deg, hsla(0, 0%, 100%, .08), hsla(0, 0%, 100%, 0)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .4), hsla(0, 0%, 100%, .25), rgba(184, 134, 11, .4)) border-box;
    border: 1px solid transparent;
    border-radius: 12px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .4);
    margin: 0;
    position: relative;
    transition: all .5s ease
}

.ihs-process-image:before {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .06), rgba(0, 0, 0, .06));
    border-radius: 12px;
    content: "";
    inset: -20px;
    mix-blend-mode: soft-light;
    pointer-events: none;
    position: absolute;
    z-index: 1
}

.ihs-process-image img {
    display: block;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .6s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.ihs-process-image:hover img {
    transform: scale(1.05)
}

@media (min-width:640px) {
    .ihs-process-section {
        padding: 100px 32px
    }

    .ihs-process-container {
        gap: 56px
    }

    .ihs-process-header {
        margin-bottom: 56px
    }

    .ihs-process-step {
        gap: 24px;
        grid-template-columns: 90px 1fr;
        padding: 32px 24px
    }

    .ihs-step-icon {
        height: 64px;
        width: 64px
    }

    .ihs-step-icon:before {
        height: 32px;
        width: 32px
    }

    .ihs-step-connector {
        height: calc(100% - 32px);
        top: 64px
    }
}

@media (min-width:1024px) {
    .ihs-process-section {
        padding: 120px 40px
    }

    .ihs-process-container {
        gap: 64px;
        grid-template-columns: 1fr .9fr
    }

    .ihs-process-header {
        margin-bottom: 64px;
        text-align: left
    }

    .ihs-process-description {
        margin: 0
    }

    .ihs-process-step {
        padding: 36px 28px
    }

    .ihs-process-step:hover {
        transform: translateX(12px)
    }
}

@media (min-width:1200px) {
    .ihs-process-container {
        gap: 80px;
        grid-template-columns: 1.1fr 1fr
    }

    .ihs-process-step {
        gap: 28px;
        grid-template-columns: 100px 1fr;
        padding: 40px 32px
    }

    .ihs-step-icon {
        height: 72px;
        width: 72px
    }

    .ihs-step-icon:before {
        height: 36px;
        width: 36px
    }

    .ihs-step-connector {
        height: calc(100% - 40px);
        top: 72px
    }
}

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

    .ihs-process-section *,
    .ihs-process-section:before {
        animation: none !important;
        transition: none !important
    }
}

.ihs-faq-section {
    background: var(--bg-dark-secondary);
    overflow: hidden;
    padding: 60px 20px;
    position: relative
}

.ihs-faq-section:before {
    animation: floatSlow 12s ease-in-out infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .07) 0, transparent 65%);
    content: "";
    filter: blur(90px);
    height: 600px;
    position: absolute;
    right: -15%;
    top: 20%;
    width: 600px
}

@keyframes floatSlow {

    0%,
    to {
        transform: translate(0) scale(1)
    }

    50% {
        transform: translate(-40px, 40px) scale(1.12)
    }
}

.ihs-faq-container {
    margin: 0 auto;
    max-width: 1400px;
    position: relative;
    z-index: 2
}

.ihs-faq-header {
    margin-bottom: 48px;
    text-align: center
}

.ihs-faq-badge:hover {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .25), rgba(184, 134, 11, .15));
    border-color: var(--main-opacity-50);
    transform: translateY(-2px)
}

.ihs-faq-title {
    -webkit-background-clip: text;
    font-size: clamp(28px, 5vw, 48px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: 16px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-faq-description {
    color: var(--text-tertiary);
    font-size: clamp(15px, 1.8vw, 17px);
    line-height: 1.6;
    margin: 0 auto;
    max-width: 600px
}

.ihs-faq-content {
    align-items: start;
    display: grid;
    gap: 48px;
    grid-template-columns: 1fr
}

.ihs-faq-content>* {
    word-break: break-all
}

.ihs-faq-image {
    background: linear-gradient(135deg, hsla(0, 0%, 100%, .08), hsla(0, 0%, 100%, 0)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .4), hsla(0, 0%, 100%, .25), rgba(184, 134, 11, .4)) border-box;
    border: 1px solid transparent;
    border-radius: 12px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .4);
    overflow: hidden;
    position: relative;
    transition: all .5s ease
}

.ihs-faq-image:hover {
    box-shadow: 0 25px 60px rgba(0, 0, 0, .5), 0 0 40px hsla(41, 60%, 62%, .2);
    transform: scale(1.02)
}

.ihs-faq-image:before {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .06), rgba(0, 0, 0, .06));
    content: "";
    inset: 0;
    mix-blend-mode: soft-light;
    pointer-events: none;
    position: absolute;
    z-index: 1
}

.ihs-faq-image img,
.ihs-faq-image picture {
    display: block;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .6s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.ihs-faq-image:hover img {
    transform: scale(1.05)
}

.ihs-faq-accordion {
    display: flex;
    flex-direction: column;
    gap: 16px
}

.ihs-faq-item {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .04), hsla(0, 0%, 100%, .01)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .25), hsla(0, 0%, 100%, .12), rgba(184, 134, 11, .25)) border-box;
    border: 1px solid transparent;
    border-radius: 9px;
    overflow: hidden;
    position: relative;
    transition: all .3s ease
}

.ihs-faq-item:before {
    background-image: radial-gradient(hsla(0, 0%, 100%, .02) 1px, transparent 0);
    background-size: 16px 16px;
    content: "";
    inset: 0;
    opacity: .3;
    pointer-events: none;
    position: absolute
}

.ihs-faq-item.ihs-active {
    background: linear-gradient(180deg, hsla(41, 60%, 62%, .08), hsla(41, 60%, 62%, .03)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .4), hsla(0, 0%, 100%, .2), rgba(184, 134, 11, .4)) border-box;
    box-shadow: 0 8px 24px hsla(41, 60%, 62%, .15)
}

.ihs-faq-question {
    align-items: center;
    background: transparent;
    border: none;
    cursor: pointer;
    display: grid;
    gap: 12px;
    grid-template-columns: auto 1fr auto;
    padding: 20px;
    position: relative;
    text-align: left;
    transition: all .3s ease;
    width: 100%;
    z-index: 1
}

.ihs-faq-question:hover {
    background: hsla(41, 60%, 62%, .05)
}

.ihs-question-number {
    color: var(--main-primary);
    flex-shrink: 0;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .05em
}

.ihs-question-text {
    color: var(--text-primary);
    font-size: clamp(15px, 1.8vw, 18px);
    font-weight: 600;
    line-height: 1.4;
    transition: color .3s ease
}

.ihs-faq-item.ihs-active .ihs-question-text {
    color: var(--main-yellow)
}

.ihs-faq-item.ihs-active .ihs-question-number {
    color: var(--main-darker)
}

.ihs-question-icon {
    align-items: center;
    background: var(--main-opacity-10);
    border: 1px solid var(--main-opacity-30);
    border-radius: 8px;
    color: var(--main-primary);
    display: flex;
    flex-shrink: 0;
    height: 32px;
    justify-content: center;
    transition: all .3s ease;
    width: 32px
}

.ihs-faq-item.ihs-active .ihs-question-icon {
    background: var(--main-opacity-15);
    border-color: var(--main-opacity-50);
    transform: rotate(180deg)
}

.ihs-question-icon svg {
    transition: transform .3s ease
}

.ihs-faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height .4s cubic-bezier(.4, 0, .2, 1)
}

.ihs-faq-item.ihs-active .ihs-faq-answer {
    max-height: 500px
}

.ihs-faq-answer p {
    color: var(--text-tertiary);
    font-size: clamp(14px, 1.6vw, 15px);
    line-height: 1.7;
    margin: 0;
    padding: 0 20px 24px
}

@media (min-width:640px) {
    .ihs-faq-section {
        padding: 100px 32px
    }

    .ihs-faq-header {
        margin-bottom: 56px
    }

    .ihs-faq-content {
        gap: 56px
    }

    .ihs-faq-accordion {
        gap: 20px
    }

    .ihs-faq-question {
        gap: 16px;
        padding: 24px
    }

    .ihs-question-number {
        font-size: 15px
    }

    .ihs-question-icon {
        height: 36px;
        width: 36px
    }

    .ihs-faq-answer p {
        padding: 0 24px 28px
    }
}

@media (min-width:1024px) {
    .ihs-faq-section {
        padding: 120px 40px
    }

    .ihs-faq-header {
        margin-bottom: 64px
    }

    .ihs-faq-content {
        gap: 64px;
        grid-template-columns: .85fr 1.15fr
    }

    .ihs-faq-image {
        position: sticky;
        top: 120px
    }

    .ihs-faq-accordion {
        gap: 18px
    }

    .ihs-faq-question {
        padding: 26px 28px
    }

    .ihs-faq-answer p {
        padding: 0 28px 30px
    }
}

@media (min-width:1200px) {
    .ihs-faq-content {
        gap: 80px
    }
}

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

    .ihs-faq-section *,
    .ihs-faq-section:before {
        animation: none !important;
        transition: none !important
    }
}

.ihs-testimonials-section {
    background: var(--bg-dark-primary);
    overflow: hidden;
    padding: 60px 20px;
    position: relative
}

.ihs-testimonials-section:before {
    animation: pulseGlowSlow 10s ease-in-out infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .08) 0, hsla(41, 60%, 62%, .02) 50%, transparent 70%);
    bottom: -25%;
    content: "";
    filter: blur(100px);
    height: 700px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 700px
}

@keyframes pulseGlowSlow {

    0%,
    to {
        opacity: .5;
        transform: translateX(-50%) scale(1)
    }

    50% {
        opacity: 1;
        transform: translateX(-50%) scale(1.2)
    }
}

.ihs-testimonials-container {
    margin: 0 auto;
    max-width: 1400px;
    position: relative;
    z-index: 2
}

.ihs-testimonials-header {
    display: grid;
    gap: 32px;
    grid-template-columns: 1fr;
    margin-bottom: 48px
}

.ihs-header-left {
    text-align: center
}

.ihs-testimonials-badge:hover {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .25), rgba(184, 134, 11, .15));
    border-color: var(--main-opacity-50);
    transform: translateY(-2px)
}

.ihs-testimonials-title {
    -webkit-background-clip: text;
    font-size: clamp(28px, 5vw, 48px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: 16px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-testimonials-description {
    color: var(--text-tertiary);
    font-size: clamp(15px, 1.8vw, 17px);
    line-height: 1.6;
    margin: 0 auto;
    max-width: 600px
}

.ihs-header-right {
    display: flex;
    justify-content: center
}

.ihs-slider-controls {
    align-items: center;
    backdrop-filter: blur(10px);
    background: linear-gradient(135deg, hsla(0, 0%, 100%, .04), hsla(0, 0%, 100%, .01)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .3), hsla(0, 0%, 100%, .15), rgba(184, 134, 11, .3)) border-box;
    border: 1px solid transparent;
    border-radius: 50px;
    display: flex;
    gap: 24px;
    padding: 12px 20px
}

.ihs-slider-pagination {
    align-items: center;
    display: flex;
    font-size: 16px;
    font-weight: 700;
    gap: 8px
}

.ihs-current-slide {
    color: #dba33d;
    font-size: 18px
}

.ihs-separator {
    color: var(--text-muted);
    font-size: 14px
}

.ihs-total-slides {
    color: var(--text-tertiary);
    font-size: 16px
}

.ihs-slider-buttons {
    display: flex;
    gap: 8px
}

.ihs-slider-btn {
    align-items: center;
    background: var(--main-opacity-10);
    border: 1px solid var(--main-opacity-30);
    border-radius: 10px;
    color: var(--main-primary);
    cursor: pointer;
    display: flex;
    height: 40px;
    justify-content: center;
    transition: all .3s ease;
    width: 40px
}

.ihs-slider-btn path {
    stroke: var(--main-yellow)
}

.ihs-slider-btn:hover {
    background: var(--main-opacity-15);
    border-color: var(--main-opacity-50);
    box-shadow: 0 4px 16px hsla(41, 60%, 62%, .2);
    transform: scale(1.05)
}

.ihs-slider-btn:disabled {
    cursor: not-allowed;
    opacity: .4;
    transform: scale(1)
}

.ihs-slider-btn:disabled:hover {
    background: var(--main-opacity-10);
    border-color: var(--main-opacity-30);
    box-shadow: none
}

.ihs-testimonials-slider-wrapper {
    overflow-x: clip;
    position: relative;
    width: 100%
}

.ihs-testimonials-slider {
    display: flex;
    transition: transform .5s cubic-bezier(.4, 0, .2, 1);
    will-change: transform
}

.ihs-testimonial-slide {
    box-sizing: border-box;
    flex: 0 0 100%;
    min-width: 0;
    width: 100%
}

.ihs-testimonial-card {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .05), hsla(0, 0%, 100%, .02)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .35), hsla(0, 0%, 100%, .2), rgba(184, 134, 11, .35)) border-box;
    border: 1px solid transparent;
    border-radius: 12px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .4);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 280px;
    padding: 46px 28px;
    position: relative;
    transition: all .4s ease
}

.ihs-testimonial-image-wrapper {
    position: relative;
    width: -moz-fit-content;
    width: fit-content
}

.ihs-testimonial-image-wrapper:before {
    color: var(--main-yellow);
    content: "★★★★★";
    font-size: 21px;
    left: 50%;
    letter-spacing: 2px;
    opacity: .8;
    position: absolute;
    top: -37px;
    transform: translateX(-48%);
    z-index: 1
}

.ihs-testimonial-card:hover {
    box-shadow: 0 25px 60px rgba(0, 0, 0, .5), 0 0 40px hsla(41, 60%, 62%, .2);
    transform: translateZ(0)
}

.ihs-testimonial-text {
    color: var(--text-secondary);
    font-size: clamp(15px, 1.8vw, 18px);
    line-height: 1.7;
    margin: 18px 0;
    position: relative;
    z-index: 1
}

.ihs-testimonial-author {
    border-top: 1px solid hsla(41, 60%, 62%, .2);
    padding-top: 24px;
    position: relative;
    z-index: 1
}

.ihs-author-name {
    background: var(--gradient-lighter);
    -webkit-background-clip: text;
    color: var(--text-primary);
    font-size: clamp(17px, 2vw, 20px);
    font-weight: 700;
    margin-bottom: 6px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-author-info {
    color: var(--text-tertiary);
    font-size: 14px;
    line-height: 1.5;
    margin: 0
}

@media (min-width:640px) {
    .ihs-testimonials-section {
        padding: 100px 32px
    }

    .ihs-testimonials-header {
        gap: 40px;
        margin-bottom: 56px
    }

    .ihs-testimonial-slide {
        padding: 0 38px
    }

    .ihs-testimonial-card {
        min-height: 300px;
        padding: 50px 32px 40px
    }

    .ihs-testimonial-card:after {
        font-size: 140px;
        right: 32px
    }

    .ihs-slider-controls {
        padding: 14px 24px
    }
}

@media (min-width:1024px) {
    .ihs-testimonials-section {
        padding: 120px 40px
    }

    .ihs-testimonials-header {
        align-items: flex-end;
        gap: 48px;
        grid-template-columns: 1fr auto;
        margin-bottom: 64px
    }

    .ihs-header-left {
        text-align: left
    }

    .ihs-testimonials-description {
        margin: 0
    }

    .ihs-header-right {
        justify-content: flex-end
    }

    .ihs-testimonial-card {
        min-height: 320px;
        padding: 54px 36px
    }

    .ihs-testimonial-card:after {
        font-size: 160px;
        right: 36px;
        top: 24px
    }

    .ihs-testimonial-card:before {
        left: 36px;
        top: 28px
    }
}

@media (min-width:1200px) {
    .ihs-testimonial-card {
        padding: 58px 40px
    }
}

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

    .ihs-testimonials-section *,
    .ihs-testimonials-section:before {
        animation: none !important;
        transition: none !important
    }
}

.ihs-testimonial-image {
    background: linear-gradient(135deg, var(--main-opacity-15), var(--main-opacity-10)) padding-box, var(--gradient-main) border-box;
    border: 3px solid transparent;
    border-radius: 50%;
    box-shadow: 0 8px 24px hsla(41, 60%, 62%, .3);
    flex-shrink: 0;
    height: 80px;
    margin-bottom: 11px;
    overflow: hidden;
    position: relative;
    transition: all .4s ease;
    width: 80px
}

.ihs-testimonial-card:hover .ihs-testimonial-image {
    border-width: 4px;
    box-shadow: 0 12px 32px hsla(41, 60%, 62%, .4);
    transform: scale(1.08)
}

.ihs-testimonial-image img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .4s ease;
    width: 100%
}

.ihs-testimonial-card:hover .ihs-testimonial-image img {
    transform: scale(1.1)
}

.ihs-testimonial-image:after {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .2), transparent 50%);
    content: "";
    inset: 0;
    mix-blend-mode: overlay;
    pointer-events: none;
    position: absolute
}

.ihs-testimonial-card {
    min-height: 360px
}

@media (min-width:640px) {
    .ihs-testimonial-image {
        height: 90px;
        margin-bottom: 15px;
        width: 90px
    }

    .ihs-testimonial-card {
        min-height: 380px
    }
}

@media (min-width:1024px) {
    .ihs-testimonial-image {
        height: 100px;
        margin-bottom: 19px;
        width: 100px
    }

    .ihs-testimonial-card {
        min-height: 400px
    }
}

.ihs-consultation-section {
    background: var(--bg-dark-secondary);
    overflow: hidden;
    padding: 60px 20px;
    position: relative
}

.ihs-consultation-section:before {
    animation: rotateGlow 20s linear infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .06) 0, transparent 70%);
    content: "";
    filter: blur(120px);
    height: 900px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 900px
}

@keyframes rotateGlow {
    0% {
        transform: translate(-50%, -50%) rotate(0deg)
    }

    to {
        transform: translate(-50%, -50%) rotate(1turn)
    }
}

.ihs-consultation-container {
    margin: 0 auto;
    max-width: 1400px;
    position: relative;
    z-index: 2
}

.ihs-consultation-header {
    margin-bottom: 48px;
    text-align: center
}

.ihs-consultation-badge:hover {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .25), rgba(184, 134, 11, .15));
    border-color: var(--main-opacity-50);
    transform: translateY(-2px)
}

.ihs-consultation-title {
    -webkit-background-clip: text;
    font-size: clamp(28px, 5vw, 48px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: 16px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-consultation-subtitle {
    color: var(--text-tertiary);
    font-size: clamp(15px, 1.8vw, 18px);
    line-height: 1.6;
    margin: 0 auto;
    max-width: 700px
}

.ihs-consultation-grid {
    align-items: center;
    display: grid;
    grid-template-columns: 1fr
}

@media (min-width:640px) {
    .ihs-consultation-grid {
        align-items: start
    }
}

.ihs-consultation-image {
    background: linear-gradient(135deg, hsla(0, 0%, 100%, .08), hsla(0, 0%, 100%, 0)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .4), hsla(0, 0%, 100%, .25), rgba(184, 134, 11, .4)) border-box;
    border: 1px solid transparent;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .4);
    display: none;
    margin: 0;
    overflow: hidden;
    position: relative;
    transition: all .5s ease
}

.ihs-consultation-image:hover {
    box-shadow: 0 25px 60px rgba(0, 0, 0, .5), 0 0 40px hsla(41, 60%, 62%, .2);
    transform: scale(1.02)
}

.ihs-consultation-image:before {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .06), rgba(0, 0, 0, .06));
    content: "";
    inset: 0;
    mix-blend-mode: soft-light;
    pointer-events: none;
    position: absolute;
    z-index: 1
}

.ihs-consultation-image img {
    display: block;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .6s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.ihs-consultation-image:hover img {
    transform: scale(1.05)
}

.ihs-consultation-card {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .05), hsla(0, 0%, 100%, .02)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .35), hsla(0, 0%, 100%, .2), rgba(184, 134, 11, .35)) border-box;
    border: 1px solid transparent;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .4);
    padding: 16px 12px;
    position: relative
}

@media (min-width:768px) {
    .ihs-consultation-card {
        padding: 32px 24px
    }
}

.ihs-consultation-card:before {
    background-image: radial-gradient(hsla(0, 0%, 100%, .03) 1px, transparent 0);
    background-size: 18px 18px;
    border-radius: inherit;
    content: "";
    inset: 0;
    opacity: .3;
    pointer-events: none;
    position: absolute
}

.ihs-form-heading {
    color: var(--text-primary);
    color: var(--main-yellow);
    font-size: clamp(20px, 2.5vw, 26px);
    font-weight: 700;
    margin-bottom: 28px;
    position: relative;
    text-align: center;
    z-index: 1
}

.ihs-consultation-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: relative;
    z-index: 1
}

.ihs-form-row {
    display: grid;
    gap: 16px
}

.ihs-form-row.ihs-two {
    grid-template-columns: 1fr
}

.ihs-input-group {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.ihs-input-group label {
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .02em
}

.ihs-input-group input,
.ihs-input-group select,
.ihs-input-group textarea {
    background: hsla(0, 0%, 100%, .05);
    border: 1px solid hsla(41, 60%, 62%, .2);
    color: var(--text-primary);
    font-family: inherit;
    font-size: 15px;
    padding: 14px 16px;
    transition: all .3s ease
}

.ihs-input-group input:focus,
.ihs-input-group select:focus,
.ihs-input-group textarea:focus {
    background: hsla(0, 0%, 100%, .08);
    border-color: var(--main-primary);
    box-shadow: 0 0 0 3px hsla(41, 60%, 62%, .1);
    outline: none
}

.ihs-input-group input::-moz-placeholder,
.ihs-input-group textarea::-moz-placeholder {
    color: var(--text-muted)
}

.ihs-input-group input::placeholder,
.ihs-input-group textarea::placeholder {
    color: var(--text-muted)
}

.ihs-input-group select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23d9b465' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m5 7.5 5 5 5-5'/%3E%3C/svg%3E");
    background-position: right 12px center;
    background-repeat: no-repeat;
    cursor: pointer;
    padding-right: 40px
}

.ihs-input-group textarea {
    line-height: 1.6;
    min-height: 120px;
    resize: vertical
}

.ihs-checkbox-line.error,
.ihs-input-group.error input,
.ihs-input-group.error select,
.ihs-input-group.error textarea {
    background: rgba(187, 31, 25, .04);
    border-color: rgba(187, 31, 25, .9);
    box-shadow: 0 0 0 3px rgba(187, 31, 25, .12)
}

.field-error {
    font-size: 13px;
    letter-spacing: .02em;
    line-height: 1.35;
    margin-top: 4px
}

.field-error,
.ihs-form-message.error {
    color: #f8bdbb;
    text-shadow: 0 0 1px rgba(0, 0, 0, .4), 0 0 8px hsla(0, 0%, 100%, .2)
}

.ihs-checkbox-line {
    align-items: flex-start;
    background: hsla(41, 60%, 62%, .05);
    border: 1px solid hsla(41, 60%, 62%, .15);
    cursor: pointer;
    display: flex;
    gap: 12px;
    padding: 16px 10px;
    transition: all .3s ease
}

.ihs-checkbox-line:hover {
    background: hsla(41, 60%, 62%, .08);
    border-color: var(--main-opacity-30)
}

.ihs-checkbox-line input[type=checkbox] {
    accent-color: var(--main-primary);
    cursor: pointer;
    flex-shrink: 0;
    height: 20px;
    margin-top: 2px;
    width: 20px
}

.ihs-checkbox-line span {
    color: var(--text-tertiary);
    font-size: 14px;
    line-height: 1.6
}

.ihs-checkbox-line a {
    text-decoration: underline;
    transition: color .3s ease
}

.ihs-checkbox-line a,
.ihs-checkbox-line a:hover {
    color: var(--main-light)
}

.ihs-submit-btn {
    margin-top: 8px;
    width: 100%
}

.ihs-form-message {
    display: none;
    font-size: 14px;
    font-weight: 600;
    padding: 16px;
    text-align: center
}

.ihs-form-message:not(:empty) {
    display: block
}

.ihs-form-message.success {
    background: rgba(16, 185, 129, .15);
    border: 1px solid rgba(16, 185, 129, .3);
    color: var(--accent-green)
}

.ihs-form-message.error {
    background: rgba(187, 31, 25, .15);
    border: 1px solid rgba(187, 31, 25, .9)
}

@media (min-width:640px) {
    .ihs-consultation-section {
        padding: 100px 32px
    }

    .ihs-consultation-header {
        margin-bottom: 56px
    }

    .ihs-consultation-card {
        padding: 36px 32px
    }

    .ihs-form-row.ihs-two {
        grid-template-columns: 1fr 1fr
    }

    .ihs-consultation-image {
        display: block
    }
}

@media (min-width:1024px) {
    .ihs-consultation-section {
        padding: 120px 40px
    }

    .ihs-consultation-header {
        margin-bottom: 64px
    }

    .ihs-consultation-grid {
        grid-template-columns: .9fr 1.25fr
    }

    .ihs-consultation-image {
        position: sticky;
        top: 120px
    }

    .ihs-consultation-card {
        padding: 40px 36px
    }

    .ihs-form-heading {
        margin-bottom: 32px
    }

    .ihs-consultation-form {
        gap: 24px
    }
}

@media (min-width:1200px) {
    .ihs-consultation-card {
        padding: 44px 40px
    }
}

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

    .ihs-consultation-section *,
    .ihs-consultation-section:before {
        animation: none !important;
        transition: none !important
    }
}

select option {
    color: var(--bg-dark-light)
}

.ihs-consultation-grid>* {
    min-width: 0
}

.ihs-blog-section {
    background: var(--bg-dark-primary);
    overflow: hidden;
    padding: 60px 20px;
    position: relative
}

.ihs-blog-section:before {
    animation: driftGlow 15s ease-in-out infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .07) 0, hsla(41, 60%, 62%, .02) 50%, transparent 70%);
    content: "";
    filter: blur(100px);
    height: 800px;
    position: absolute;
    right: -20%;
    top: -30%;
    width: 800px
}

@keyframes driftGlow {

    0%,
    to {
        transform: translate(0)
    }

    50% {
        transform: translate(-50px, 50px)
    }
}

.ihs-blog-container {
    margin: 0 auto;
    max-width: 1400px;
    position: relative;
    z-index: 2
}

.ihs-blog-header {
    margin-bottom: 48px;
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
    text-align: center
}

.ihs-blog-badge:hover {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .25), rgba(184, 134, 11, .15));
    border-color: var(--main-opacity-50);
    transform: translateY(-2px)
}

.ihs-blog-title {
    -webkit-background-clip: text;
    font-size: clamp(28px, 5vw, 48px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.2;
    margin-bottom: 16px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-blog-description {
    color: var(--text-tertiary);
    font-size: clamp(15px, 1.8vw, 17px);
    line-height: 1.7
}

.ihs-blog-grid {
    display: grid;
    gap: 28px;
    grid-template-columns: 1fr
}

.ihs-blog-card {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .04), hsla(0, 0%, 100%, .01)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .25), hsla(0, 0%, 100%, .12), rgba(184, 134, 11, .25)) border-box;
    border: 1px solid transparent;
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
    transition: all .4s cubic-bezier(.4, 0, .2, 1)
}

.ihs-blog-card:before {
    background-image: radial-gradient(hsla(0, 0%, 100%, .02) 1px, transparent 0);
    background-size: 16px 16px;
    content: "";
    inset: 0;
    opacity: .3;
    pointer-events: none;
    position: absolute
}

.ihs-blog-card:hover {
    box-shadow: 0 20px 50px rgba(0, 0, 0, .4), 0 0 40px hsla(41, 60%, 62%, .15);
    transform: translateY(-8px)
}

.ihs-blog-image {
    background: var(--bg-dark-tertiary);
    display: block;
    height: 240px;
    overflow: hidden;
    position: relative;
    width: 100%
}

.ihs-blog-image:before {
    background: linear-gradient(180deg, transparent, rgba(15, 23, 42, .6));
    content: "";
    inset: 0;
    position: absolute;
    transition: opacity .4s ease;
    z-index: 1
}

.ihs-blog-card:hover .ihs-blog-image:before {
    opacity: .3
}

.ihs-blog-image:after {
    align-items: center;
    background: hsla(41, 60%, 62%, .9);
    border-radius: 50%;
    content: "";
    display: flex;
    height: 40px;
    justify-content: center;
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14m-7-7 7 7-7 7'/%3E%3C/svg%3E") center/16px no-repeat;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14m-7-7 7 7-7 7'/%3E%3C/svg%3E") center/16px no-repeat;
    opacity: 0;
    position: absolute;
    right: 16px;
    top: 16px;
    transform: scale(.8);
    transition: all .4s ease;
    width: 40px;
    z-index: 2
}

.ihs-blog-card:hover .ihs-blog-image:after {
    opacity: 1;
    transform: scale(1)
}

.ihs-blog-image img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform .6s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.ihs-blog-card:hover .ihs-blog-image img {
    transform: scale(1.08)
}

.ihs-blog-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 24px 20px;
    position: relative;
    z-index: 1
}

.ihs-post-title {
    margin: 0 0 12px
}

.ihs-post-title a {
    color: var(--text-primary);
    display: block;
    font-size: clamp(17px, 2vw, 20px);
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition: color .3s ease
}

.ihs-post-title a:hover {
    color: var(--main-primary)
}

.ihs-post-meta {
    align-items: center;
    color: var(--text-muted);
    display: flex;
    flex-wrap: wrap;
    font-size: 13px;
    gap: 8px;
    margin: 0
}

.ihs-post-meta .ihs-dot {
    color: var(--main-primary);
    font-weight: 700
}

.ihs-blog-card:after {
    backdrop-filter: blur(10px);
    background: var(--main-yellow);
    border-radius: 20px;
    color: var(--bg-dark-primary);
    content: "";
    font-size: 11px;
    font-weight: 700;
    left: 16px;
    letter-spacing: .05em;
    opacity: 0;
    padding: 6px 14px;
    position: absolute;
    text-transform: uppercase;
    top: 16px;
    transform: translateY(-10px);
    transition: all .3s ease;
    z-index: 2
}

.ihs-blog-card:first-child:after {
    content: "BROKER"
}

.ihs-blog-card:nth-child(2):after {
    content: "CRYPTO"
}

.ihs-blog-card:nth-child(3):after {
    content: "LEGALE"
}

.ihs-blog-card:nth-child(4):after {
    content: "INVESTIMENTI"
}

.ihs-blog-card:hover:after {
    opacity: 1;
    transform: translateY(0)
}

@media (min-width:640px) {
    .ihs-blog-section {
        padding: 100px 32px
    }

    .ihs-blog-header {
        margin-bottom: 56px
    }

    .ihs-blog-grid {
        gap: 32px;
        grid-template-columns: repeat(2, 1fr)
    }

    .ihs-blog-image {
        height: 260px
    }

    .ihs-blog-content {
        padding: 28px 24px
    }
}

@media (min-width:1024px) {
    .ihs-blog-section {
        padding: 120px 40px
    }

    .ihs-blog-header {
        margin-bottom: 64px
    }

    .ihs-blog-grid {
        gap: 28px;
        grid-template-columns: repeat(4, 1fr)
    }

    .ihs-blog-image {
        height: 220px
    }

    .ihs-blog-content {
        padding: 24px 20px
    }
}

@media (min-width:1200px) {
    .ihs-blog-grid {
        gap: 32px
    }

    .ihs-blog-image {
        height: 240px
    }

    .ihs-blog-content {
        padding: 28px 24px
    }
}

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

    .ihs-blog-section *,
    .ihs-blog-section:before {
        animation: none !important;
        transition: none !important
    }
}

.ihs-site-footer {
    background: var(--bg-dark-primary);
    overflow: hidden;
    position: relative
}

.ihs-site-footer:before {
    background: linear-gradient(90deg, transparent, hsla(41, 60%, 62%, .3) 50%, transparent);
    height: 1px;
    top: 0;
    width: 100%
}

.ihs-site-footer:after,
.ihs-site-footer:before {
    content: "";
    left: 50%;
    position: absolute;
    transform: translateX(-50%)
}

.ihs-site-footer:after {
    background: radial-gradient(circle, hsla(41, 60%, 62%, .06) 0, transparent 70%);
    filter: blur(120px);
    height: 900px;
    pointer-events: none;
    top: -40%;
    width: 900px
}

.ihs-footer-container-bg {
    padding: 80px 20px 60px;
    position: relative;
    z-index: 1
}

.ihs-footer-container {
    display: grid;
    gap: 48px;
    grid-template-columns: 1fr;
    margin: 0 auto;
    max-width: 1400px
}

.ihs-footer-cta {
    text-align: center
}

.ihs-footer-eyebrow {
    background: var(--main-opacity-10);
    border: 1px solid var(--main-opacity-30);
    border-radius: 20px;
    color: var(--main-primary);
    display: inline-block;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .08em;
    margin-bottom: 12px;
    padding: 6px 16px;
    text-transform: uppercase
}

.ihs-footer-title {
    background: var(--gradient-light);
    -webkit-background-clip: text;
    font-size: clamp(32px, 5vw, 56px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.1;
    margin-bottom: 16px;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-footer-text {
    color: var(--text-tertiary);
    font-size: clamp(15px, 1.8vw, 17px);
    line-height: 1.7;
    margin-bottom: 28px;
    margin-left: auto;
    margin-right: auto;
    max-width: 600px
}

.ihs-footer-btn {
    align-items: center;
    background: var(--gradient-main);
    border: none;
    border-radius: 12px;
    box-shadow: 0 4px 20px var(--shadow-main);
    color: var(--bg-dark-primary);
    cursor: pointer;
    display: inline-flex;
    font-size: 16px;
    font-weight: 600;
    justify-content: center;
    overflow: hidden;
    padding: 16px 36px;
    position: relative;
    text-decoration: none;
    transition: all .3s ease
}

.ihs-footer-btn:before {
    background: var(--gradient-main-hover);
    border-radius: inherit;
    content: "";
    inset: 0;
    opacity: 0;
    position: absolute;
    transition: opacity .3s ease
}

.ihs-footer-btn:hover {
    box-shadow: 0 12px 40px var(--shadow-main-strong), 0 0 60px hsla(41, 60%, 62%, .2);
    transform: translateY(-3px)
}

.ihs-footer-btn:hover:before {
    opacity: 1
}

.ihs-footer-btn span {
    position: relative;
    z-index: 2
}

.ihs-footer-btn-ripple {
    background: radial-gradient(circle, hsla(0, 0%, 100%, .5) 0, transparent 70%);
    border-radius: inherit;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    transform: scale(0)
}

.ihs-footer-btn:active .ihs-footer-btn-ripple {
    animation: rippleEffect .6s ease-out
}

.ihs-footer-links {
    text-align: center
}

.ihs-footer-heading {
    color: var(--text-primary);
    display: inline-block;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
    position: relative
}

.ihs-footer-heading:after {
    background: var(--gradient-main);
    bottom: -6px;
    content: "";
    height: 2px;
    left: 0;
    position: absolute;
    width: 100%
}

.ihs-footer-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0
}

.ihs-footer-list a {
    color: var(--text-tertiary);
    display: inline-block;
    font-size: 15px;
    font-weight: 500;
    position: relative;
    text-decoration: none;
    transition: all .3s ease
}

.ihs-footer-list a:before {
    background: var(--main-primary);
    bottom: -2px;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transition: width .3s ease;
    width: 0
}

.ihs-footer-list a:hover {
    color: var(--main-primary);
    transform: translateX(4px)
}

.ihs-footer-list a:hover:before {
    width: 100%
}

.ihs-footer-contacts {
    text-align: center
}

.ihs-contacts-list {
    display: flex;
    flex-direction: column;
    gap: 24px;
    list-style: none;
    margin: 0;
    padding: 0
}

.ihs-contact-item {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .04), hsla(0, 0%, 100%, .01)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .25), hsla(0, 0%, 100%, .12), rgba(184, 134, 11, .25)) border-box;
    border: 1px solid transparent;
    border-radius: 14px;
    padding: 20px;
    position: relative;
    transition: all .3s ease
}

.ihs-contact-item:hover {
    background: linear-gradient(180deg, hsla(41, 60%, 62%, .06), hsla(41, 60%, 62%, .03)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .4), hsla(0, 0%, 100%, .2), rgba(184, 134, 11, .4)) border-box;
    box-shadow: 0 8px 20px hsla(41, 60%, 62%, .15);
    transform: translateY(-2px)
}

.ihs-contact-body {
    display: flex;
    flex-direction: column;
    gap: 6px
}

.ihs-footer-contacts .ihs-contact-label {
    color: var(--main-yellow);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .05em;
    padding-left: 28px;
    text-transform: uppercase
}

.ihs-contact-value {
    color: var(--text-primary);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.5
}

.ihs-contact-value a {
    color: var(--text-primary);
    text-decoration: none;
    transition: color .3s ease
}

.ihs-contact-value a:hover {
    color: var(--main-primary)
}

.ihs-contact-item:before {
    content: "";
    height: 20px;
    left: 20px;
    opacity: .3;
    position: absolute;
    top: 20px;
    width: 20px
}

.ihs-contact-phone:before {
    background: var(--main-light);
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath d='M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02z'/%3E%3C/svg%3E") center/contain no-repeat;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath d='M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02z'/%3E%3C/svg%3E") center/contain no-repeat
}

.ihs-contact-mail:before {
    background: var(--main-light);
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2m0 4-8 5-8-5V6l8 5 8-5z'/%3E%3C/svg%3E") center/contain no-repeat;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2m0 4-8 5-8-5V6l8 5 8-5z'/%3E%3C/svg%3E") center/contain no-repeat
}

.ihs-contact-map:before {
    background: var(--main-light);
    mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7m0 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5'/%3E%3C/svg%3E") center/contain no-repeat;
    -webkit-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7m0 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5'/%3E%3C/svg%3E") center/contain no-repeat
}

.ihs-footer-bottom {
    background: rgba(0, 0, 0, .3);
    border-top: 1px solid hsla(41, 60%, 62%, .1);
    padding: 24px 20px;
    position: relative;
    z-index: 1
}

.ihs-footer-bottom-inner {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin: 0 auto;
    max-width: 1400px;
    text-align: center
}

.ihs-copyright {
    color: var(--text-muted);
    font-size: 14px;
    margin: 0
}

.ihs-copyright time {
    color: var(--main-primary);
    font-weight: 600
}

.ihs-legal-links {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0
}

.ihs-legal-links a {
    color: var(--text-tertiary);
    font-size: 13px;
    font-weight: 500;
    position: relative;
    text-decoration: none;
    transition: color .3s ease
}

.ihs-legal-links a:after {
    background: var(--main-primary);
    bottom: -2px;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transition: width .3s ease;
    width: 0
}

.ihs-legal-links a:hover {
    color: var(--main-primary)
}

.ihs-legal-links a:hover:after {
    width: 100%
}

@media (min-width:640px) {
    .ihs-footer-container-bg {
        padding: 100px 32px 70px
    }

    .ihs-footer-container {
        gap: 56px
    }

    .ihs-footer-bottom {
        padding: 28px 32px
    }

    .ihs-footer-bottom-inner {
        gap: 20px
    }
}

@media (min-width:1024px) {
    .ihs-footer-container-bg {
        padding: 120px 40px 80px
    }

    .ihs-footer-container {
        gap: 64px;
        grid-template-columns: 1.5fr .8fr 1.2fr
    }

    .ihs-footer-cta {
        text-align: left
    }

    .ihs-footer-text {
        margin-left: 0;
        margin-right: 0
    }

    .ihs-footer-contacts,
    .ihs-footer-links {
        text-align: left
    }

    .ihs-footer-bottom {
        padding: 32px 40px
    }

    .ihs-footer-bottom-inner {
        flex-direction: row;
        justify-content: space-between;
        text-align: left
    }

    .ihs-legal-links {
        gap: 24px
    }
}

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

    .ihs-site-footer *,
    .ihs-site-footer:after {
        animation: none !important;
        transition: none !important
    }
}

.ihs-article-hero {
    align-items: center;
    background: var(--gradient-bg-dark);
    display: flex;
    justify-content: center;
    min-height: 30vh;
    overflow: hidden;
    padding: 140px 20px 80px;
    position: relative
}

.ihs-article-hero:before {
    animation: heroGlowPulse 8s ease-in-out infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .12) 0, hsla(41, 60%, 62%, .04) 40%, transparent 70%);
    content: "";
    filter: blur(100px);
    height: 800px;
    left: 50%;
    position: absolute;
    top: -30%;
    transform: translateX(-50%);
    width: 800px
}

@keyframes heroGlowPulse {

    0%,
    to {
        opacity: .6;
        transform: translateX(-50%) scale(1)
    }

    50% {
        opacity: 1;
        transform: translateX(-50%) scale(1.15)
    }
}

.ihs-article-hero:after {
    background: linear-gradient(90deg, transparent, hsla(41, 60%, 62%, .4) 50%, transparent);
    bottom: 0;
    content: "";
    height: 2px;
    left: 0;
    position: absolute;
    right: 0
}

.ihs-article-hero__inner {
    margin: 0 auto;
    max-width: 1100px;
    position: relative;
    text-align: center;
    z-index: 2
}

.ihs-article-hero__bg-title {
    color: transparent;
    font-size: clamp(80px, 20vw, 180px);
    font-weight: 900;
    left: 50%;
    line-height: 1;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-text-stroke: 1px hsla(41, 60%, 62%, .08);
    text-stroke: 1px hsla(41, 60%, 62%, .08);
    letter-spacing: -.03em;
    opacity: .5;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    white-space: nowrap
}

.ihs-article-hero__title {
    background: var(--gradient-main);
    -webkit-background-clip: text;
    font-size: clamp(32px, 6vw, 64px);
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.15;
    margin-bottom: 24px;
    position: relative;
    z-index: 1;
    -webkit-text-fill-color: transparent;
    animation: heroTitleGradient 4s ease infinite;
    background-clip: text;
    background-size: 200% 200%
}

@keyframes heroTitleGradient {

    0%,
    to {
        background-position: 0 50%
    }

    50% {
        background-position: 100% 50%
    }
}

.ihs-article-hero__title:before {
    background: var(--gradient-main);
    border-radius: 2px;
    bottom: -8px;
    content: "";
    height: 4px;
    left: 50%;
    opacity: .6;
    position: absolute;
    transform: translateX(-50%);
    width: 120px
}

.ihs-article-hero__eyebrow {
    backdrop-filter: blur(10px);
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .04), hsla(0, 0%, 100%, .01)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .25), hsla(0, 0%, 100%, .12), rgba(184, 134, 11, .25)) border-box;
    border: 1px solid transparent;
    border-radius: 16px;
    color: var(--text-tertiary);
    display: block;
    font-size: clamp(15px, 1.8vw, 18px);
    line-height: 1.7;
    margin: 0 auto 24px;
    max-width: 800px;
    padding: 24px 28px;
    position: relative;
    z-index: 1
}

.ihs-article-hero__eyebrow:before {
    background-image: radial-gradient(hsla(0, 0%, 100%, .03) 1px, transparent 0);
    background-size: 18px 18px;
    border-radius: inherit;
    content: "";
    inset: 0;
    opacity: .3;
    pointer-events: none;
    position: absolute
}

.ihs-article-hero__inner:after,
.ihs-article-hero__inner:before {
    animation: floatCircle 10s ease-in-out infinite;
    background: radial-gradient(circle, hsla(41, 60%, 62%, .1) 0, transparent 70%);
    border-radius: 50%;
    content: "";
    filter: blur(60px);
    pointer-events: none;
    position: absolute
}

.ihs-article-hero__inner:before {
    animation-delay: 0s;
    height: 300px;
    left: -100px;
    top: -100px;
    width: 300px
}

.ihs-article-hero__inner:after {
    animation-delay: 2s;
    bottom: -80px;
    height: 250px;
    right: -80px;
    width: 250px
}

@keyframes floatCircle {

    0%,
    to {
        transform: translate(0) scale(1)
    }

    33% {
        transform: translate(20px, -15px) scale(1.08)
    }

    66% {
        transform: translate(-15px, 20px) scale(.95)
    }
}

@media (min-width:640px) {
    .ihs-article-hero {
        min-height: 35vh;
        padding: 160px 32px 100px
    }

    .ihs-article-hero__title:before {
        height: 5px;
        width: 150px
    }

    .ihs-article-hero__eyebrow {
        padding: 28px 32px
    }
}

@media (min-width:1024px) {
    .ihs-article-hero {
        min-height: 40vh;
        padding: 180px 40px 120px
    }

    .ihs-article-hero__title {
        margin-bottom: 28px
    }

    .ihs-article-hero__title:before {
        width: 180px
    }

    .ihs-article-hero__eyebrow {
        padding: 32px 36px
    }

    .ihs-article-hero__inner:before {
        height: 400px;
        left: -150px;
        top: -150px;
        width: 400px
    }

    .ihs-article-hero__inner:after {
        bottom: -120px;
        height: 350px;
        right: -120px;
        width: 350px
    }
}

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

    .ihs-article-hero *,
    .ihs-article-hero:before {
        animation: none !important;
        transition: none !important
    }
}

.ihs-container {
    margin: 0 auto;
    max-width: 1200px;
    position: relative;
    z-index: 2
}

.ihs-rts-section-gap {
    padding: 50px 0;
    position: relative
}

.ihs-rts-section-gap:before {
    background-image: radial-gradient(hsla(0, 0%, 100%, .12) 1px, transparent 0);
    background-size: 16px 16px;
    border-radius: inherit;
    content: "";
    inset: 0;
    opacity: .3;
    pointer-events: none;
    position: absolute;
    transform: translateX(-25%);
    width: 200%
}

.ihs-cookie-modal {
    backdrop-filter: blur(6px);
    background: radial-gradient(1000px 500px at 20% 10%, hsla(41, 60%, 62%, .08), transparent 60%), radial-gradient(900px 500px at 80% 90%, hsla(41, 60%, 62%, .06), transparent 65%), rgba(0, 0, 0, .55);
    display: grid;
    inset: 0;
    opacity: 0;
    place-items: center;
    position: fixed;
    transition: opacity .35s ease, visibility .35s ease;
    visibility: hidden;
    z-index: 3000
}

.ihs-cookie-modal.show {
    opacity: 1;
    visibility: visible
}

.ihs-cookie-modal-content {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, .06), hsla(0, 0%, 100%, .02)) padding-box, linear-gradient(135deg, #09120e, #1b2c23, #102019) border-box;
    border: 1px solid transparent;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .45);
    color: var(--text-primary);
    overflow: clip;
    padding: clamp(20px, 3.2vw, 28px);
    position: relative;
    transform: translateY(14px) scale(.98);
    transition: transform .4s cubic-bezier(.2, .7, .2, 1), box-shadow .4s ease;
    width: min(720px, 92vw)
}

.ihs-cookie-modal.show .ihs-cookie-modal-content {
    transform: translateY(0) scale(1)
}

.cookie-glow {
    border-radius: 999px;
    filter: blur(60px);
    pointer-events: none;
    position: absolute
}

.cookie-glow-1 {
    background: radial-gradient(circle, hsla(41, 60%, 62%, .22), transparent 70%);
    height: 380px;
    left: -120px;
    top: -120px;
    width: 380px
}

.cookie-glow-2 {
    background: linear-gradient(90deg, rgba(0, 0, 0, .5) 0 33.333%, rgba(187, 31, 25, .5) 33.333% 66.666%, rgba(219, 163, 61, .5) 66.666% 100%), radial-gradient(circle, hsla(41, 60%, 62%, .18), transparent 65%);
    bottom: -160px;
    height: 420px;
    right: -140px;
    width: 420px
}

.cookie-close {
    background: linear-gradient(135deg, var(--main-opacity-15), var(--main-opacity-10));
    border: 1px solid var(--main-opacity-30);
    border-radius: 10px;
    color: var(--main-primary);
    cursor: pointer;
    display: grid;
    height: 40px;
    place-items: center;
    position: absolute;
    right: 12px;
    top: 12px;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    width: 40px
}

.cookie-close:hover {
    border-color: var(--main-opacity-50);
    box-shadow: 0 8px 20px var(--shadow-main);
    transform: rotate(90deg) scale(1.05)
}

.cookie-close:focus-visible {
    outline: 2px solid var(--main-primary);
    outline-offset: 2px
}

.ihs-cookie-title-wrapper {
    align-items: center;
    display: flex;
    gap: .7rem
}

.ihs-cookie-icon {
    background: linear-gradient(90deg, rgba(0, 0, 0, .5) 0 33.333%, rgba(187, 31, 25, .5) 33.333% 66.666%, rgba(219, 163, 61, .5) 66.666% 100%), linear-gradient(180deg, rgba(15, 23, 42, .6), rgba(15, 23, 42, .3));
    border: 1px solid var(--main-opacity-30);
    border-radius: 50px;
    box-shadow: inset 0 1px hsla(0, 0%, 100%, .15), 0 10px 28px rgba(0, 0, 0, .35);
    display: grid;
    height: 36px;
    place-items: center;
    position: relative;
    width: 36px
}

.ihs-cookie-icon:after {
    background: url(../img/cookie.svg) 50%/cover no-repeat;
    content: "";
    inset: -2px;
    position: absolute
}

.cookie-svg {
    height: 42px;
    width: 42px
}

.ihs-cookie-text {
    margin-bottom: 12px
}

.ihs-cookie-title {
    background: var(--gradient-lighter);
    -webkit-background-clip: text;
    font-size: clamp(22px, 2.8vw, 26px);
    font-weight: 800;
    line-height: 1.2;
    -webkit-text-fill-color: transparent;
    background-clip: text
}

.ihs-cookie-description {
    color: var(--text-tertiary);
    font-size: 15px;
    margin-top: 6px
}

.ihs-cookie-options {
    display: grid;
    gap: 10px;
    margin: 18px 0 6px
}

.ihs-cookie-option {
    background: hsla(0, 0%, 100%, .02);
    border: 1px solid hsla(41, 60%, 62%, .16);
    padding: 12px 14px;
    transition: border-color .25s ease, background .25s ease
}

.ihs-cookie-option:hover {
    background: hsla(41, 60%, 62%, .06);
    border-color: hsla(41, 60%, 62%, .3)
}

.ihs-cookie-checkbox {
    align-items: start;
    cursor: pointer;
    display: grid;
    gap: 12px;
    grid-template-columns: 22px auto;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.ihs-cookie-checkbox input {
    opacity: 0;
    pointer-events: none;
    position: absolute
}

.ihs-checkbox-custom {
    background: linear-gradient(135deg, hsla(0, 0%, 100%, .06), hsla(0, 0%, 100%, .02));
    border: 1px solid hsla(41, 60%, 62%, .35);
    border-radius: 2px;
    display: grid;
    flex-shrink: 0;
    height: 22px;
    place-items: center;
    transition: all .25s ease;
    width: 22px
}

form input[type=checkbox] {
    display: none
}

.ihs-cookie-checkbox input:checked+.ihs-checkbox-custom,
form input:checked+.ihs-checkbox-custom {
    background: linear-gradient(135deg, #3c6b4b, #d1ddcf, #284633);
    border-color: transparent;
    box-shadow: 0 0 0 4px hsla(41, 60%, 62%, .15)
}

.ihs-checkbox-custom:after {
    background: #0f172a;
    clip-path: polygon(14% 54%, 0 68%, 42% 100%, 100% 16%, 86% 4%, 40% 70%);
    content: "";
    height: 12px;
    transform: scale(0);
    transition: transform .18s ease;
    width: 12px
}

.ihs-cookie-checkbox input:checked+.ihs-checkbox-custom:after,
form input:checked+.ihs-checkbox-custom:after {
    transform: scale(1)
}

.ihs-checkbox-label strong {
    color: var(--text-secondary);
    font-weight: 700
}

.ihs-checkbox-desc {
    color: var(--text-muted);
    display: block;
    font-size: 12.5px;
    margin-top: 2px
}

.ihs-cookie-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px
}

.ihs-cookie-btn {
    border: 0;
    border-radius: 2px;
    cursor: pointer;
    font-weight: 700;
    isolation: isolate;
    padding: 12px 18px;
    position: relative;
    transition: transform .2s ease, box-shadow .3s ease, background .3s ease, color .2s ease
}

.ihs-cookie-btn-primary {
    background: linear-gradient(135deg, #3c6b4b, #d1ddcf 50%, #284633);
    box-shadow: 0 12px 30px hsla(41, 60%, 62%, .35)
}

.ihs-cookie-btn-primary:hover {
    box-shadow: 0 16px 40px hsla(41, 60%, 62%, .45);
    transform: translateY(-2px)
}

.ihs-cookie-btn-primary:active {
    transform: translateY(0)
}

.ihs-cookie-btn-secondary {
    background: var(--gradient-main);
    border: 1px solid var(--main-opacity-30);
    color: #fff
}

.ihs-cookie-btn-secondary:hover {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .25), rgba(184, 134, 11, .18));
    border-color: var(--main-opacity-50)
}

.ihs-cookie-btn:focus-visible,
.ihs-cookie-checkbox input:focus-visible+.ihs-checkbox-custom {
    border-radius: 10px;
    outline: 2px solid var(--main-primary);
    outline-offset: 2px
}

@media (min-width:720px) {
    .ihs-cookie-modal-content {
        padding: 28px 30px
    }

    .ihs-cookie-options {
        grid-template-columns: 1fr 1fr
    }
}

@media (max-width:380px) {
    .ihs-cookie-actions {
        flex-direction: column
    }
}

.ihs-back-to-top {
    background: linear-gradient(135deg, hsla(41, 60%, 62%, .15), hsla(41, 60%, 62%, .1)) padding-box, linear-gradient(135deg, hsla(41, 60%, 62%, .35), hsla(0, 0%, 100%, .15), rgba(184, 134, 11, .35)) border-box;
    border: 1px solid var(--main-opacity-30);
    border-radius: 50%;
    bottom: 13px;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .4), 0 0 24px hsla(41, 60%, 62%, .2);
    color: var(--main-primary);
    cursor: pointer;
    display: grid;
    height: 44px;
    opacity: 0;
    place-items: center;
    pointer-events: none;
    position: fixed;
    right: 13px;
    transform: translateY(10px);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    visibility: hidden;
    width: 44px;
    z-index: 2100
}

@media (min-width:768px) {
    .ihs-back-to-top {
        bottom: 20px;
        height: 54px;
        right: 20px;
        width: 54px
    }
}

.ihs-back-to-top[data-visible=true] {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible
}

.ihs-back-to-top:hover {
    border-color: var(--main-opacity-50);
    box-shadow: 0 18px 40px rgba(0, 0, 0, .48), 0 0 34px hsla(41, 60%, 62%, .28);
    transform: translateY(-3px) rotate(8deg)
}

.ihs-back-to-top:focus-visible {
    outline: 2px solid var(--main-primary);
    outline-offset: 3px
}

.ihs-back-to-top__icon {
    fill: var(--main-light);
    height: 24px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 24px
}

.ihs-max-w-image {
    margin-inline: auto;
    max-width: 520px;
    padding: 12px
}

@media (min-width:920px) {
    .ihs-max-w-image {
        margin-inline: auto;
        max-width: 740px
    }
}

.iti input.iti__tel-input {
    width: 100%
}

.iti__dropdown-content {
    background: var(--main-dark)
}

.iti__selected-country-primary {
    background: rgba(0, 0, 0, .06)
}

.iti__arrow {
    border-top-color: rgba(0, 0, 0, .62)
}
.ihs-phone-holder {
  position: relative;
}

.ihs-phone-prefix {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  pointer-events: none;
  user-select: none;
}

.ihs-flag-img {
  width: 22px;
  height: 15px;
  border-radius: 2px;
  display: block;
  object-fit: cover;
}

.ihs-phone-code {
  font-size: 14px;
  opacity: 0.85;
}

.ihs-phone-holder input.ihs-_phone {
  padding-left: 86px;
  width: 100%;
}

.ihs-_phone.is-invalid {
  outline: 2px solid #c00;
  outline-offset: 2px;
}

.ihs-phone-error {
  display: none;
  color: #c00;
  font-size: 13px;
  margin-top: 6px;
}
