/* ========================================
   HELVETICA NOW TEXT FONT DECLARATIONS
======================================== */
@font-face {
    font-family: 'Helvetica Now Text';
    src: url('HelveticaNowText-Regular.eot');
    src: local('Helvetica Now Text  Regular'), local('HelveticaNowText-Regular'),
        url('HelveticaNowText-Regular.eot?#iefix') format('embedded-opentype'),
        url('HelveticaNowText-Regular.woff2') format('woff2'),
        url('HelveticaNowText-Regular.woff') format('woff'),
        url('HelveticaNowText-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Now Text';
    src: url('HelveticaNowText-Medium.eot');
    src: local('Helvetica Now Text  Medium'), local('HelveticaNowText-Medium'),
        url('HelveticaNowText-Medium.eot?#iefix') format('embedded-opentype'),
        url('HelveticaNowText-Medium.woff2') format('woff2'),
        url('HelveticaNowText-Medium.woff') format('woff'),
        url('HelveticaNowText-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Now Text';
    src: url('HelveticaNowText-Bold.eot');
    src: local('Helvetica Now Text  Bold'), local('HelveticaNowText-Bold'),
        url('HelveticaNowText-Bold.eot?#iefix') format('embedded-opentype'),
        url('HelveticaNowText-Bold.woff2') format('woff2'),
        url('HelveticaNowText-Bold.woff') format('woff'),
        url('HelveticaNowText-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Now Text';
    src: url('HelveticaNowText-ExtraBold.eot');
    src: local('Helvetica Now Text  Extra Bold'), local('HelveticaNowText-ExtraBold'),
        url('HelveticaNowText-ExtraBold.eot?#iefix') format('embedded-opentype'),
        url('HelveticaNowText-ExtraBold.woff2') format('woff2'),
        url('HelveticaNowText-ExtraBold.woff') format('woff'),
        url('HelveticaNowText-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Now Text';
    src: url('HelveticaNowText-Black.eot');
    src: local('Helvetica Now Text  Black'), local('HelveticaNowText-Black'),
        url('HelveticaNowText-Black.eot?#iefix') format('embedded-opentype'),
        url('HelveticaNowText-Black.woff2') format('woff2'),
        url('HelveticaNowText-Black.woff') format('woff'),
        url('HelveticaNowText-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* ========================================
   CSS VARIABLES & ROOT STYLES
======================================== */
:root {
    /* Primary Colors */
    --color-primary: #e3001b;
    --color-secondary-start: #8a2387;
    --color-secondary-middle: #e94057;
    --color-secondary-end: #f27121;
    --color-button-stroke: #d71414;
    --color-hero: #D9D9D9;
    
    /* Text Colors */
    --color-text-primary: #667085;
    --color-text-secondary: #000000;
    --color-text-caption: #344054;
    --color-text-white: #ffffff;
    
    /* Background Colors */
    --color-bg-base: #ffffff;
    --color-bg-section: #f5f5f5;
    
    /* Gradients */
    --gradient-banner: linear-gradient(135deg, #8a2387 0%, #e94057 50%, #f27121 100%);
    --gradient-secondary: linear-gradient(135deg, #8a2387 0%, #e94057 50%, #f27121 100%);
    --gradient-background-date: linear-gradient(135deg, #d9d9d9 0%, #d9d9d9 60%, #ffffff 100%);
    
    /* Typography */
    --font-family-primary: 'Helvetica Now Text', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extra-bold: 800;
    
    /* Spacing */
    --spacing-xs: 8px;
    --spacing-sm: 16px;
    --spacing-md: 24px;
    --spacing-lg: 32px;
    --spacing-xl: 48px;
    --spacing-xxl: 64px;
    
    /* Shadows */
    --shadow-low: 0 2px 8px 0 rgba(99, 99, 99, 0.2);
    --shadow-medium: 
        5px 10px 12.6px 0 rgba(158, 158, 158, 0.36),
        2.1px 4.1px 5.2px 0 rgba(158, 158, 158, 0.36),
        0.8px 1.6px 2px 0 rgba(158, 158, 158, 0.36),
        0.3px 0.5px 0.7px 0 rgba(158, 158, 158, 0.36);
    --shadow-high: 
        0 791px 221px 0 rgba(0, 0, 0, 1),
        0 506px 202px 0 rgba(0, 0, 0, 0.01),
        0 285px 171px 0 rgba(0, 0, 0, 0.05),
        0 127px 127px 0 rgba(0, 0, 0, 0.09),
        0 32px 70px 0 rgba(0, 0, 0, 0.1);
    --shadow-banner: 0 20px 40px rgba(0, 0, 0, 0.1);
    
    /* Grid System - Desktop 1440px */
    --grid-columns: 12;
    --grid-margin: 80px;
    --grid-gutter: 24px;
    --grid-max-width: 1440px;
}

/* ========================================
   BASE STYLES
======================================== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-family-primary);
    color: var(--color-text-primary);
    background-color: var(--color-bg-base);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    font-feature-settings: "kern" 1;
}

/* ========================================
   TYPOGRAPHY SYSTEM
======================================== */
h1 {
    font-weight: var(--font-weight-bold);
    font-size: 65px;
    line-height: 77px;
    letter-spacing: -3.705px; /* -5.7% of 65px */
    margin-bottom: 24px;
    font-feature-settings: "kern" 1, "liga" 1;
    color: var(--color-primary);
}

h2 {
    font-weight: var(--font-weight-medium);
    font-size: 64px;
    line-height: 70px;
    letter-spacing: -2.752px; /* -4.3% of 64px */
    margin-bottom: 20px;
    font-feature-settings: "kern" 1, "liga" 1;
    color: var(--color-primary);
}

h3 {
    font-weight: var(--font-weight-medium);
    font-size: 42px;
    line-height: 50px;
    letter-spacing: -0.9996px; /* -2.38% of 42px */
    margin-bottom: 16px;
    font-feature-settings: "kern" 1, "liga" 1;
    color: var(--color-primary);
}

h4 {
    font-weight: var(--font-weight-bold);
    font-size: 36px;
    line-height: 44px;
    letter-spacing: -0.72px; /* -2% of 36px */
    margin-bottom: 16px;
    font-feature-settings: "kern" 1, "liga" 1;
    color: var(--color-primary);
}

h5 {
    font-weight: var(--font-weight-medium);
    font-size: 27px;
    line-height: 30px;
    letter-spacing: -0.3348px; /* -1.24% of 27px */
    margin-bottom: 12px;
    font-feature-settings: "kern" 1, "liga" 1;
    color: var(--color-primary);
}

h6 {
    font-weight: var(--font-weight-medium);
    font-size: 18px;
    line-height: 24px;
    letter-spacing: -0.36px; /* -2% of 18px */
    margin-bottom: 8px;
    font-feature-settings: "kern" 1, "liga" 1;
    color: var(--color-primary);
}

p {
    font-weight: var(--font-weight-regular);
    font-size: 20px;
    line-height: 30px;
    color: var(--color-text-secondary);
    margin-bottom: 16px;
    font-feature-settings: "kern" 1, "liga" 1;
}

/* ========================================
   SPECIAL TYPOGRAPHY
======================================== */
.caption-title {
    color: var(--color-text-caption);
    font-weight: var(--font-weight-medium);
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.1px;
    text-transform: uppercase;
}

.history-font {
    font-weight: var(--font-weight-extra-bold);
    font-size: 900px;
    line-height: 988px;
    letter-spacing: -114.3px; /* -12.7% of 900px */
    opacity: 0.1;
    position: absolute;
    z-index: -1;
}

.background-date-font {
    font-weight: var(--font-weight-extra-bold);
    font-size: 500px;
    line-height: 528px;
    letter-spacing: -13.5px; /* -2.7% of 500px */
    background: var(--gradient-background-date);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    opacity: 0.3;
    position: absolute;
    z-index: -1;
}

/* ========================================
   GRID SYSTEM
======================================== */
.container {
    max-width: var(--grid-max-width);
    margin: 0 auto;
    padding: 0 var(--grid-margin);
}

.grid {
    display: grid;
    grid-template-columns: repeat(var(--grid-columns), 1fr);
    gap: var(--grid-gutter);
}

.col-1 { grid-column: span 1; }
.col-2 { grid-column: span 2; }
.col-3 { grid-column: span 3; }
.col-4 { grid-column: span 4; }
.col-5 { grid-column: span 5; }
.col-6 { grid-column: span 6; }
.col-7 { grid-column: span 7; }
.col-8 { grid-column: span 8; }
.col-9 { grid-column: span 9; }
.col-10 { grid-column: span 10; }
.col-11 { grid-column: span 11; }
.col-12 { grid-column: span 12; }

/* ========================================
   BUTTONS
======================================== */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 16px 32px;
    font-family: var(--font-family-primary);
    font-size: 16px;
    line-height: 24px;
    font-weight: var(--font-weight-medium);
    text-decoration: none;
    border-radius: 50px;
    border: 2px solid transparent;
    cursor: pointer;
    transition: background-color 0.3s ease, color 0.3s ease;

    white-space: nowrap;
    min-height: 56px;
}

.btn-store-locate {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 22px;
    font-family: var(--font-family-primary);
    font-size: 16px;
    line-height: 24px;
    font-weight: var(--font-weight-medium);
    text-decoration: none;
    border-radius: 50px;
    border: 2px solid transparent;
    cursor: pointer;
    transition: background-color 0.3s ease, color 0.3s ease;

    white-space: nowrap;
    /*min-height: 56px;*/
    margin-top: 10px;
}


.btn-primary {
    background-color: var(--color-primary);
    color: white;
    border-color: var(--color-primary);
}

.btn-primary:hover {
    background-color: #c20019;
    border-color: #c20019;
}

.btn-secondary {
    background: var(--gradient-secondary);
    color: white;
    border: none;
}

.btn-secondary:hover {
    opacity: 0.9;
}

.btn-outline {
    background-color: transparent;
    color: var(--color-primary);
    border-color: var(--color-button-stroke);
}

.btn-outline:hover {
    background-color: var(--color-primary);
    color: white;
}

.btn-icon {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    order: 2;
}

.btn-icon::before {
    content: "?";
    color: white;
}

.btn-icon.icon-arrow::before {
    content: "→";
}

.btn-icon.icon-info::before {
    content: "?";
}

/* ========================================
   BACKGROUNDS & SECTIONS
======================================== */
.bg-section {
    background-color: var(--color-bg-section);
}

.bg-gradient-secondary {
    background: var(--gradient-secondary);
}

.bg-gradient-date {
    background: var(--gradient-background-date);
}

/* ========================================
   UTILITY CLASSES
======================================== */
.shadow-low {
    box-shadow: var(--shadow-low);
}

.shadow-medium {
    box-shadow: var(--shadow-medium);
}

.shadow-high {
    box-shadow: var(--shadow-high);
}

.text-primary {
    color: var(--color-primary);
}

.text-secondary {
    color: var(--color-text-secondary);
}

.text-caption {
    color: var(--color-text-caption);
}

/* ========================================
   RESPONSIVE BREAKPOINTS
======================================== */

/* Tablet Styles (768px - 1023px) */
@media screen and (max-width: 1023px) {
    :root {
        --grid-margin: 40px;
        --grid-gutter: 20px;
    }
    
    .container {
        padding: 0 var(--grid-margin);
    }
    
    h1 {
        font-size: 48px;
        line-height: 56px;
        letter-spacing: -2.736px; /* -5.7% of 48px */
    }
    
    h2 {
        font-size: 42px;
        line-height: 50px;
        letter-spacing: -1.806px; /* -4.3% of 42px */
    }
    
    h3 {
        font-size: 32px;
        line-height: 38px;
        letter-spacing: -0.7616px; /* -2.38% of 32px */
    }
    
    h4 {
        font-size: 28px;
        line-height: 34px;
        letter-spacing: -0.56px; /* -2% of 28px */
    }
    
    h5 {
        font-size: 24px;
        line-height: 28px;
        letter-spacing: -0.2976px; /* -1.24% of 24px */
    }
    
    h6 {
        font-size: 18px;
        line-height: 24px;
        letter-spacing: -0.36px; /* -2% of 18px */
    }
    
    p {
        font-size: 18px;
        line-height: 27px;
    }
    
    .history-font {
        font-size: 600px;
        line-height: 660px;
        letter-spacing: -76.2px; /* -12.7% of 600px */
    }
    
    .background-date-font {
        font-size: 350px;
        line-height: 370px;
        letter-spacing: -9.45px; /* -2.7% of 350px */
    }
}

/* Mobile Styles (320px - 767px) */
@media screen and (max-width: 767px) {
    :root {
        --grid-margin: 20px;
        --grid-gutter: 16px;
        --grid-columns: 4;
    }
    
    .container {
        padding: 0 var(--grid-margin);
    }
    
    h1 {
        font-size: 32px;
        line-height: 38px;
        letter-spacing: -1.824px; /* -5.7% of 32px */
    }
    
    h2 {
        font-size: 28px;
        line-height: 34px;
        letter-spacing: -1.204px; /* -4.3% of 28px */
    }
    
    h3 {
        font-size: 24px;
        line-height: 28px;
        letter-spacing: -0.5712px; /* -2.38% of 24px */
    }
    
    h4 {
        font-size: 20px;
        line-height: 24px;
        letter-spacing: -0.4px; /* -2% of 20px */
    }
    
    h5 {
        font-size: 18px;
        line-height: 22px;
        letter-spacing: -0.2232px; /* -1.24% of 18px */
    }
    
    h6 {
        font-size: 16px;
        line-height: 20px;
        letter-spacing: -0.32px; /* -2% of 16px */
    }
    
    p {
        font-size: 16px;
        line-height: 24px;
    }
    
    .btn {
        padding: 14px 28px;
        font-size: 16px;
        line-height: 24px;
        min-height: 48px;
    }
    
    .history-font {
        font-size: 300px;
        line-height: 330px;
        letter-spacing: -38.1px; /* -12.7% of 300px */
    }
    
    .background-date-font {
        font-size: 200px;
        line-height: 220px;
        letter-spacing: -5.4px; /* -2.7% of 200px */
    }
    
    /* Mobile Grid Classes */
    .col-sm-1 { grid-column: span 1; }
    .col-sm-2 { grid-column: span 2; }
    .col-sm-3 { grid-column: span 3; }
    .col-sm-4 { grid-column: span 4; }
}



/* ========================================
   OXYGEN DIGITAL SHOP - SVG ICON DEFINITIONS
   Clean implementation using inline SVG backgrounds
======================================== */

/* ========================================
   SOCIAL MEDIA ICONS - SVG BACKGROUNDS
======================================== */

.icon-youtube {
    background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M47.5219 14.3996C47.5219 14.3996 47.0531 11.0902 45.6094 9.63711C43.7812 7.72461 41.7375 7.71523 40.8 7.60273C34.0875 7.11523 24.0094 7.11523 24.0094 7.11523H23.9906C23.9906 7.11523 13.9125 7.11523 7.2 7.60273C6.2625 7.71523 4.21875 7.72461 2.39062 9.63711C0.946875 11.0902 0.4875 14.3996 0.4875 14.3996C0.4875 14.3996 0 18.2902 0 22.1715V25.809C0 29.6902 0.478125 33.5809 0.478125 33.5809C0.478125 33.5809 0.946875 36.8902 2.38125 38.3434C4.20937 40.2559 6.60938 40.1902 7.67813 40.3965C11.5219 40.7621 24 40.8746 24 40.8746C24 40.8746 34.0875 40.8559 40.8 40.3777C41.7375 40.2652 43.7812 40.2559 45.6094 38.3434C47.0531 36.8902 47.5219 33.5809 47.5219 33.5809C47.5219 33.5809 48 29.6996 48 25.809V22.1715C48 18.2902 47.5219 14.3996 47.5219 14.3996ZM19.0406 30.2246V16.734L32.0062 23.5027L19.0406 30.2246Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-linkedin {
    background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M44.4469 0H3.54375C1.58437 0 0 1.54688 0 3.45938V44.5312C0 46.4437 1.58437 48 3.54375 48H44.4469C46.4063 48 48 46.4438 48 44.5406V3.45938C48 1.54688 46.4063 0 44.4469 0ZM14.2406 40.9031H7.11563V17.9906H14.2406V40.9031ZM10.6781 14.8688C8.39063 14.8688 6.54375 13.0219 6.54375 10.7437C6.54375 8.46562 8.39063 6.61875 10.6781 6.61875C12.9563 6.61875 14.8031 8.46562 14.8031 10.7437C14.8031 13.0125 12.9563 14.8688 10.6781 14.8688ZM40.9031 40.9031H33.7875V29.7656C33.7875 27.1125 33.7406 23.6906 30.0844 23.6906C26.3812 23.6906 25.8187 26.5875 25.8187 29.5781V40.9031H18.7125V17.9906H25.5375V21.1219H25.6312C26.5781 19.3219 28.9031 17.4188 32.3625 17.4188C39.5719 17.4188 40.9031 22.1625 40.9031 28.3313V40.9031V40.9031Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-instagram {
    background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_1226_1012)'%3E%3Cpath d='M24 4.32187C30.4125 4.32187 31.1719 4.35 33.6938 4.4625C36.0375 4.56562 37.3031 4.95938 38.1469 5.2875C39.2625 5.71875 40.0688 6.24375 40.9031 7.07812C41.7469 7.92188 42.2625 8.71875 42.6938 9.83438C43.0219 10.6781 43.4156 11.9531 43.5188 14.2875C43.6313 16.8187 43.6594 17.5781 43.6594 23.9813C43.6594 30.3938 43.6313 31.1531 43.5188 33.675C43.4156 36.0188 43.0219 37.2844 42.6938 38.1281C42.2625 39.2438 41.7375 40.05 40.9031 40.8844C40.0594 41.7281 39.2625 42.2438 38.1469 42.675C37.3031 43.0031 36.0281 43.3969 33.6938 43.5C31.1625 43.6125 30.4031 43.6406 24 43.6406C17.5875 43.6406 16.8281 43.6125 14.3063 43.5C11.9625 43.3969 10.6969 43.0031 9.85313 42.675C8.7375 42.2438 7.93125 41.7188 7.09688 40.8844C6.25313 40.0406 5.7375 39.2438 5.30625 38.1281C4.97813 37.2844 4.58438 36.0094 4.48125 33.675C4.36875 31.1438 4.34063 30.3844 4.34063 23.9813C4.34063 17.5688 4.36875 16.8094 4.48125 14.2875C4.58438 11.9437 4.97813 10.6781 5.30625 9.83438C5.7375 8.71875 6.2625 7.9125 7.09688 7.07812C7.94063 6.23438 8.7375 5.71875 9.85313 5.2875C10.6969 4.95938 11.9719 4.56562 14.3063 4.4625C16.8281 4.35 17.5875 4.32187 24 4.32187ZM24 0C17.4844 0 16.6688 0.028125 14.1094 0.140625C11.5594 0.253125 9.80625 0.665625 8.2875 1.25625C6.70313 1.875 5.3625 2.69062 4.03125 4.03125C2.69063 5.3625 1.875 6.70313 1.25625 8.27813C0.665625 9.80625 0.253125 11.55 0.140625 14.1C0.028125 16.6687 0 17.4844 0 24C0 30.5156 0.028125 31.3313 0.140625 33.8906C0.253125 36.4406 0.665625 38.1938 1.25625 39.7125C1.875 41.2969 2.69063 42.6375 4.03125 43.9688C5.3625 45.3 6.70313 46.125 8.27813 46.7344C9.80625 47.325 11.55 47.7375 14.1 47.85C16.6594 47.9625 17.475 47.9906 23.9906 47.9906C30.5063 47.9906 31.3219 47.9625 33.8813 47.85C36.4313 47.7375 38.1844 47.325 39.7031 46.7344C41.2781 46.125 42.6188 45.3 43.95 43.9688C45.2813 42.6375 46.1063 41.2969 46.7156 39.7219C47.3063 38.1938 47.7188 36.45 47.8313 33.9C47.9438 31.3406 47.9719 30.525 47.9719 24.0094C47.9719 17.4938 47.9438 16.6781 47.8313 14.1188C47.7188 11.5688 47.3063 9.81563 46.7156 8.29688C46.125 6.70312 45.3094 5.3625 43.9688 4.03125C42.6375 2.7 41.2969 1.875 39.7219 1.26562C38.1938 0.675 36.45 0.2625 33.9 0.15C31.3313 0.028125 30.5156 0 24 0Z' fill='currentColor'/%3E%3Cpath d='M24 11.6719C17.1938 11.6719 11.6719 17.1938 11.6719 24C11.6719 30.8062 17.1938 36.3281 24 36.3281C30.8062 36.3281 36.3281 30.8062 36.3281 24C36.3281 17.1938 30.8062 11.6719 24 11.6719ZM24 31.9969C19.5844 31.9969 16.0031 28.4156 16.0031 24C16.0031 19.5844 19.5844 16.0031 24 16.0031C28.4156 16.0031 31.9969 19.5844 31.9969 24C31.9969 28.4156 28.4156 31.9969 24 31.9969Z' fill='currentColor'/%3E%3Cpath d='M39.6937 11.1848C39.6937 12.7785 38.4 14.0629 36.8156 14.0629C35.2219 14.0629 33.9375 12.7691 33.9375 11.1848C33.9375 9.59102 35.2313 8.30664 36.8156 8.30664C38.4 8.30664 39.6937 9.60039 39.6937 11.1848Z' fill='currentColor'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_1226_1012'%3E%3Crect width='48' height='48' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
}

.icon-facebook {
    background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 0C10.7453 0 0 10.7453 0 24C0 35.255 7.74912 44.6995 18.2026 47.2934V31.3344H13.2538V24H18.2026V20.8397C18.2026 12.671 21.8995 8.8848 29.9194 8.8848C31.44 8.8848 34.0637 9.18336 35.137 9.48096V16.129C34.5706 16.0694 33.5866 16.0397 32.3645 16.0397C28.4294 16.0397 26.9088 17.5306 26.9088 21.4061V24H34.7482L33.4013 31.3344H26.9088V47.8243C38.7926 46.3891 48.001 36.2707 48.001 24C48 10.7453 37.2547 0 24 0Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-google {
    background-image: url("data:image/svg+xml,%3Csvg width='48' height='48' viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M23.9995 19.6367V28.9313H36.9158C36.3487 31.9204 34.6466 34.4514 32.094 36.1532L39.883 42.1968C44.4212 38.0079 47.0394 31.8551 47.0394 24.546C47.0394 22.8443 46.8867 21.2077 46.603 19.637L23.9995 19.6367Z' fill='currentColor'/%3E%3Cpath d='M10.5492 28.5684L8.7925 29.9131L2.57422 34.7567C6.5233 42.5893 14.6172 48.0003 23.999 48.0003C30.4788 48.0003 35.9115 45.8621 39.8825 42.1968L32.0934 36.1531C29.9552 37.5931 27.2279 38.4659 23.999 38.4659C17.759 38.4659 12.4574 34.255 10.559 28.5822L10.5492 28.5684Z' fill='currentColor'/%3E%3Cpath d='M2.57436 13.2432C0.938084 16.4721 0 20.1158 0 23.9994C0 27.8829 0.938084 31.5266 2.57436 34.7556C2.57436 34.7773 10.5599 28.5592 10.5599 28.5592C10.08 27.1192 9.79624 25.5921 9.79624 23.9991C9.79624 22.4062 10.08 20.879 10.5599 19.439L2.57436 13.2432Z' fill='currentColor'/%3E%3Cpath d='M23.9995 9.55636C27.5341 9.55636 30.6758 10.7781 33.1849 13.1345L40.0576 6.2619C35.8903 2.37833 30.4796 0 23.9995 0C14.6177 0 6.5233 5.38908 2.57422 13.2437L10.5596 19.44C12.4576 13.7672 17.7595 9.55636 23.9995 9.55636Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-whatsapp {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 24L1.687 17.837C0.645998 16.033 0.0989998 13.988 0.0999998 11.891C0.103 5.335 5.43799 0 11.993 0C15.174 0.001 18.16 1.24 20.406 3.488C22.6509 5.736 23.8869 8.724 23.8859 11.902C23.8829 18.459 18.548 23.794 11.993 23.794C10.003 23.793 8.04198 23.294 6.30499 22.346L0 24ZM6.59698 20.193C8.27298 21.188 9.87298 21.784 11.989 21.785C17.437 21.785 21.875 17.351 21.878 11.9C21.88 6.438 17.463 2.01 11.997 2.008C6.54498 2.008 2.11 6.442 2.108 11.892C2.107 14.117 2.75899 15.783 3.85399 17.526L2.85499 21.174L6.59698 20.193ZM17.984 14.729C17.91 14.605 17.712 14.531 17.414 14.382C17.117 14.233 15.656 13.514 15.383 13.415C15.111 13.316 14.913 13.266 14.714 13.564C14.516 13.861 13.946 14.531 13.773 14.729C13.6 14.927 13.426 14.952 13.129 14.803C12.832 14.654 11.874 14.341 10.739 13.328C9.85598 12.54 9.25898 11.567 9.08598 11.269C8.91298 10.972 9.06798 10.811 9.21598 10.663C9.34998 10.53 9.51298 10.316 9.66198 10.142C9.81298 9.97 9.86198 9.846 9.96198 9.647C10.061 9.449 10.012 9.275 9.93698 9.126C9.86198 8.978 9.26798 7.515 9.02098 6.92C8.77898 6.341 8.53398 6.419 8.35198 6.41L7.78198 6.4C7.58398 6.4 7.26198 6.474 6.98998 6.772C6.71798 7.07 5.94999 7.788 5.94999 9.251C5.94999 10.714 7.01498 12.127 7.16298 12.325C7.31198 12.523 9.25798 15.525 12.239 16.812C12.948 17.118 13.502 17.301 13.933 17.438C14.645 17.664 15.293 17.632 15.805 17.556C16.376 17.471 17.563 16.837 17.811 16.143C18.059 15.448 18.059 14.853 17.984 14.729Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-x-twitter {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='21' viewBox='0 0 22 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.3263 0.904297H20.6998L13.3297 9.32779L22 20.7903H15.2112L9.89404 13.8383L3.80995 20.7903H0.434432L8.31743 11.7804L0 0.904297H6.96111L11.7674 7.25863L17.3263 0.904297ZM16.1423 18.7711H18.0116L5.94539 2.81743H3.93946L16.1423 18.7711Z' fill='currentColor'/%3E%3C/svg%3E");
}

/* ========================================
   NAVIGATION ICONS
======================================== */

.icon-menu-arrow {
    background-image: url("data:image/svg+xml,%3Csvg width='72' height='72' viewBox='0 0 72 72' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M40.4715 43.5H26.25C25.0074 43.5 24 44.5074 24 45.75C24 46.9926 25.0074 48 26.25 48H45.75C46.9926 48 48 46.9926 48 45.75V26.25C48 25.0074 46.9926 24 45.75 24C44.5074 24 43.5 25.0074 43.5 26.25V40.1658L27.8334 24.6511C26.9505 23.7767 25.5259 23.7836 24.6514 24.6666C23.7771 25.5495 23.784 26.9741 24.667 27.8485L40.4715 43.5ZM6 36C6 19.4314 19.4314 6 36 6C52.5684 6 66 19.4314 66 36C66 52.5684 52.5684 66 36 66C19.4314 66 6 52.5684 6 36ZM36 10.5C21.9167 10.5 10.5 21.9167 10.5 36C10.5 50.0832 21.9167 61.5 36 61.5C50.0832 61.5 61.5 50.0832 61.5 36C61.5 21.9167 50.0832 10.5 36 10.5Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-left-arrow {
    background-image: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.4665 24.5512L17.5875 24.411C17.9507 23.9217 17.9103 23.2272 17.4665 22.7834L12.9343 18.2512L24.0838 18.2507L24.2535 18.2392C24.8635 18.1565 25.3338 17.6335 25.3338 17.0007L25.3223 16.831C25.2397 16.2209 24.7167 15.7507 24.0838 15.7507L12.931 15.7512L17.4675 11.2167L17.5887 11.0765C17.9518 10.5872 17.9115 9.89276 17.4678 9.44889C16.9798 8.96066 16.1883 8.96051 15.7002 9.44856L9.03089 16.1152L8.90982 16.2554C8.54661 16.7447 8.58689 17.4394 9.03072 17.8832L15.6988 24.5512L15.839 24.6722C16.3283 25.0354 17.0227 24.995 17.4665 24.5512ZM16.9997 0.333374C7.79492 0.333374 0.333008 7.79529 0.333008 17C0.333008 26.2047 7.79492 33.6667 16.9997 33.6667C26.2043 33.6667 33.6663 26.2047 33.6663 17C33.6663 7.79529 26.2043 0.333374 16.9997 0.333374ZM16.9997 31.1667C9.17564 31.1667 2.83301 24.824 2.83301 17C2.83301 9.17601 9.17564 2.83337 16.9997 2.83337C24.8237 2.83337 31.1663 9.17601 31.1663 17C31.1663 24.824 24.8237 31.1667 16.9997 31.1667Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-right-arrow {
    background-image: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.0017 0.333374C26.2063 0.333374 33.6683 7.79529 33.6683 17C33.6683 26.2047 26.2063 33.6667 17.0017 33.6667C7.79688 33.6667 0.334961 26.2047 0.334961 17C0.334961 7.79529 7.79688 0.333374 17.0017 0.333374ZM17.0017 2.83337C9.1776 2.83337 2.83496 9.17601 2.83496 17C2.83496 24.824 9.1776 31.1667 17.0017 31.1667C24.8257 31.1667 31.1683 24.824 31.1683 17C31.1683 9.17601 24.8257 2.83337 17.0017 2.83337ZM16.4133 9.58851L16.5343 9.44832C16.9782 9.00454 17.6727 8.96419 18.162 9.32729L18.3022 9.44832L24.9702 16.1164C25.414 16.5602 25.4543 17.2547 25.0912 17.744L24.97 17.8844L18.3008 24.551C17.8127 25.039 17.0212 25.0389 16.533 24.5505C16.0893 24.1067 16.0492 23.4124 16.4123 22.923L16.5333 22.7829L21.07 18.2484L9.91711 18.2489C9.2843 18.2489 8.7613 17.7785 8.67853 17.1685L8.66711 16.9989C8.66711 16.366 9.13738 15.843 9.74749 15.7602L9.91711 15.7489L21.0667 15.7484L16.5343 11.2161C16.0907 10.7723 16.0503 10.0779 16.4133 9.58851Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-close {
    background-image: url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.6567 15.1796L14.8987 14.8992C15.7863 14.0117 17.1752 13.931 18.1539 14.6572L18.4343 14.8992L39.9998 36.4637L61.5655 14.8992C62.5418 13.9229 64.1245 13.9229 65.1008 14.8992C66.0772 15.8755 66.0772 17.4585 65.1008 18.4348L43.5365 40.0003L65.1008 61.566C65.9885 62.4533 66.0692 63.8423 65.3428 64.821L65.1008 65.1013C64.2135 65.989 62.8245 66.0697 61.8458 65.3433L61.5655 65.1013L39.9998 43.537L18.4343 65.1013C17.458 66.0777 15.875 66.0777 14.8987 65.1013C13.9224 64.125 13.9224 62.5423 14.8987 61.566L36.4632 40.0003L14.8987 18.4348C14.0112 17.5472 13.9305 16.1583 14.6567 15.1796Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-down-arrow {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.5297 9.7199L14.4456 9.6473C14.152 9.4294 13.7353 9.4536 13.4691 9.7199L10.7497 12.4392L10.7494 5.74951L10.7425 5.64774C10.6929 5.28167 10.3791 4.99951 9.9994 4.99951L9.8976 5.00636C9.5315 5.05602 9.2494 5.36982 9.2494 5.74951L9.2497 12.4412L6.529 9.7193L6.44489 9.6466C6.15132 9.4287 5.73466 9.4529 5.46834 9.7191C5.17539 10.0119 5.1753 10.4868 5.46814 10.7797L9.4681 14.7813L9.5523 14.8539C9.8459 15.0718 10.2626 15.0477 10.5289 14.7814L14.5297 10.7805L14.6023 10.6964C14.8202 10.4028 14.796 9.9862 14.5297 9.7199ZM-0.000976562 10C-0.000976562 15.5228 4.47617 20 9.999 20C15.5219 20 19.999 15.5228 19.999 10C19.999 4.47715 15.5219 0 9.999 0C4.47618 0 -0.000976562 4.47715 -0.000976562 10ZM18.499 10C18.499 14.6944 14.6934 18.5 9.999 18.5C5.3046 18.5 1.49902 14.6944 1.49902 10C1.49902 5.30558 5.3046 1.5 9.999 1.5C14.6934 1.5 18.499 5.30558 18.499 10Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-dropdown-form {
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='currentColor' stroke-width='1.66667' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* ========================================
   COMMUNICATION ICONS
======================================== */

.icon-email {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='16' viewBox='0 0 20 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.25 0H16.75C18.483 0 19.8992 1.35645 19.9949 3.06558L20 3.25V12.75C20 14.483 18.6435 15.8992 16.9344 15.9949L16.75 16H3.25C1.51697 16 0.10075 14.6435 0.00514007 12.9344L0 12.75V3.25C0 1.51697 1.35645 0.10075 3.06558 0.00513983L3.25 0ZM18.5 5.373L10.3493 9.6637C10.1619 9.7623 9.9431 9.7764 9.7468 9.706L9.6507 9.6637L1.5 5.374V12.75C1.5 13.6682 2.20711 14.4212 3.10647 14.4942L3.25 14.5H16.75C17.6682 14.5 18.4212 13.7929 18.4942 12.8935L18.5 12.75V5.373ZM16.75 1.5H3.25C2.33183 1.5 1.57881 2.20711 1.5058 3.10647L1.5 3.25V3.679L10 8.1525L18.5 3.678V3.25C18.5 2.33183 17.7929 1.57881 16.8935 1.5058L16.75 1.5Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-mobile {
    background-image: url("data:image/svg+xml,%3Csvg width='15' height='22' viewBox='0 0 15 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.72727 -0.00665283C1.22301 -0.00665283 0 1.22655 0 2.74335V19.2433C0 20.7601 1.22301 21.9933 2.72727 21.9933H12.2727C13.777 21.9933 15 20.7601 15 19.2433V2.74335C15 1.22655 13.777 -0.00665283 12.2727 -0.00665283H2.72727ZM7.5 17.1808C7.86166 17.1808 8.2085 17.3257 8.46424 17.5836C8.71997 17.8414 8.86364 18.1912 8.86364 18.5558C8.86364 18.9205 8.71997 19.2703 8.46424 19.5281C8.2085 19.786 7.86166 19.9308 7.5 19.9308C7.13834 19.9308 6.7915 19.786 6.53576 19.5281C6.28003 19.2703 6.13636 18.9205 6.13636 18.5558C6.13636 18.1912 6.28003 17.8414 6.53576 17.5836C6.7915 17.3257 7.13834 17.1808 7.5 17.1808Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-phone {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.0312 -0.00617226C17.5355 -0.00617226 22 4.45828 22 9.96258C22 10.5341 21.5402 10.9938 20.9688 10.9938C20.3973 10.9938 19.9375 10.5341 19.9375 9.96258C19.9375 5.59695 16.3969 2.05633 12.0312 2.05633C11.4598 2.05633 11 1.59656 11 1.02508C11 0.453593 11.4598 -0.00617226 12.0312 -0.00617226ZM12.375 8.24383C12.7397 8.24383 13.0894 8.38869 13.3473 8.64656C13.6051 8.90442 13.75 9.25416 13.75 9.61883C13.75 9.9835 13.6051 10.3332 13.3473 10.5911C13.0894 10.849 12.7397 10.9938 12.375 10.9938C12.0103 10.9938 11.6606 10.849 11.4027 10.5911C11.1449 10.3332 11 9.9835 11 9.61883C11 9.25416 11.1449 8.90442 11.4027 8.64656C11.6606 8.38869 12.0103 8.24383 12.375 8.24383ZM11 5.15008C11 4.57859 11.4598 4.11883 12.0312 4.11883C15.2582 4.11883 17.875 6.73562 17.875 9.96258C17.875 10.5341 17.4152 10.9938 16.8438 10.9938C16.2723 10.9938 15.8125 10.5341 15.8125 9.96258C15.8125 7.8743 14.1195 6.18133 12.0312 6.18133C11.4598 6.18133 11 5.72156 11 5.15008ZM5.04883 0.053984C5.88242 -0.17375 6.75469 0.25164 7.08555 1.05086L8.8043 5.17586C9.09648 5.87625 8.89453 6.68836 8.30586 7.16531L6.1875 8.90125C7.61836 11.9263 10.0676 14.3755 13.0926 15.8063L14.8242 13.688C15.3055 13.0993 16.1133 12.8973 16.8137 13.1895L20.9387 14.9083C21.7379 15.2391 22.1633 16.1114 21.9355 16.945L20.9043 20.7262C20.7023 21.4739 20.0234 21.9938 19.25 21.9938C8.61953 21.9938 0 13.3743 0 2.74383C0 1.97039 0.519922 1.29148 1.26758 1.08523L5.04883 0.053984Z' fill='currentColor'/%3E%3C/svg%3E");
}

.icon-send-mail {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.4032 0.231848C21.8372 0.532629 22.0649 1.05255 21.9833 1.57247L19.2333 19.4475C19.1688 19.8643 18.9153 20.2295 18.5458 20.4358C18.1762 20.642 17.7337 20.6678 17.3426 20.5045L12.2036 18.369L9.26021 21.5529C8.87779 21.9697 8.27623 22.1072 7.74771 21.901C7.2192 21.6947 6.87545 21.1834 6.87545 20.6162V17.024C6.87545 16.8522 6.9399 16.6889 7.05592 16.56L14.2575 8.70529C14.5067 8.43458 14.4981 8.01779 14.2403 7.75997C13.9825 7.50216 13.5657 7.48497 13.295 7.7299L4.55513 15.4943L0.760994 13.5951C0.305526 13.3674 0.0133382 12.9119 0.000447543 12.4049C-0.0124431 11.8979 0.253963 11.4252 0.692244 11.1717L19.9422 0.171691C20.402 -0.090418 20.9692 -0.0646367 21.4032 0.231848Z' fill='currentColor'/%3E%3C/svg%3E");
}

/* ========================================
   SPECIAL ICONS WITH GRADIENTS
======================================== */

.icon-play-button {
    background-image: url("data:image/svg+xml,%3Csvg width='138' height='163' viewBox='0 0 138 163' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3ClinearGradient id='playGradient' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' stop-color='%23E3001B'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg filter='url(%23filter0_dddd_897_79)'%3E%3Cpath d='M14.8164 58C14.8164 27.8544 39.2542 3.41666 69.3997 3.41666C99.545 3.41666 123.983 27.8544 123.983 58C123.983 88.1453 99.545 112.583 69.3997 112.583C39.2542 112.583 14.8164 88.1453 14.8164 58ZM63.1532 37.0126C58.6059 34.4939 53.0247 37.7828 53.0247 42.9812V73.0191C53.0247 78.2177 58.6059 81.5063 63.1532 78.9878L94.5812 61.5812C95.8836 60.8602 96.6914 59.4885 96.6914 58C96.6914 56.5115 95.8836 55.1404 94.5812 54.4188L63.1532 37.0126Z' fill='url(%23playGradient)'/%3E%3C/g%3E%3C/svg%3E");
}

.icon-trust-1 {
    background-image: url("data:image/svg+xml,%3Csvg width='95' height='77' viewBox='0 0 95 77' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3ClinearGradient id='trustGradient1' x1='0%25' y1='50%25' x2='100%25' y2='50%25'%3E%3Cstop offset='0%25' stop-color='%238A2387'/%3E%3Cstop offset='50%25' stop-color='%23E94057'/%3E%3Cstop offset='100%25' stop-color='%23F27121'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M55.6111 8.55556C55.6111 10.8241 54.7282 12.8864 53.2874 14.4176L64.5119 28.4481C64.8267 28.8419 65.3738 28.9621 65.8252 28.7366L77.1647 23.0669C77.0565 22.5243 77 21.9632 77 21.3889C77 16.6638 80.8303 12.8333 85.5556 12.8333C90.2808 12.8333 94.1111 16.6638 94.1111 21.3889C94.1111 25.4609 91.2664 28.8684 87.4562 29.7326L79.7382 70.8935C79.0743 74.4342 75.9827 77 72.3804 77H21.7309C18.1285 77 15.0369 74.4342 14.373 70.8935L6.65537 29.7327C2.84476 28.8685 0 25.4609 0 21.3889C0 16.6638 3.83045 12.8333 8.55556 12.8333C13.2807 12.8333 17.1111 16.6638 17.1111 21.3889C17.1111 21.9632 17.0545 22.5242 16.9466 23.0668L28.2862 28.7366C28.7373 28.9621 29.2846 28.8419 29.5996 28.4481L40.8241 14.4177C39.3829 12.8865 38.5 10.8241 38.5 8.55556C38.5 3.83045 42.3303 0 47.0556 0C51.7808 0 55.6111 3.83045 55.6111 8.55556ZM47.0556 59.8889C51.7808 59.8889 55.6111 56.0586 55.6111 51.3333C55.6111 46.6081 51.7808 42.7778 47.0556 42.7778C42.3303 42.7778 38.5 46.6081 38.5 51.3333C38.5 56.0586 42.3303 59.8889 47.0556 59.8889Z' fill='url(%23trustGradient1)'/%3E%3C/svg%3E");
}

.icon-trust-2 {
    background-image: url("data:image/svg+xml,%3Csvg width='79' height='79' viewBox='0 0 79 79' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3ClinearGradient id='trustGradient2' x1='0%25' y1='50%25' x2='100%25' y2='50%25'%3E%3Cstop offset='0%25' stop-color='%238A2387'/%3E%3Cstop offset='50%25' stop-color='%23E94057'/%3E%3Cstop offset='100%25' stop-color='%23F27121'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M33.5555 49.379L33.5523 78.9961H21.7226L21.7256 49.379H33.5555ZM60.2552 43.454H46.4253C44.7892 43.454 43.4629 44.7804 43.4629 46.4165V60.2494C43.4629 61.8854 44.7892 63.2119 46.4253 63.2119H60.2552C61.8913 63.2119 63.2176 61.8854 63.2176 60.2494V46.4165C63.2176 44.7804 61.8913 43.454 60.2552 43.454ZM57.2901 49.379V57.2868H49.3865V49.379H57.2901ZM24.3562 19.7579H5.9302L5.9306 24.3586C5.9306 29.0231 9.3967 32.8782 13.8937 33.4881L14.5131 33.5509L15.1439 33.5722C20.0202 33.5722 24.0118 29.7838 24.336 24.9894L24.3572 24.3586L24.3562 19.7579ZM48.7071 19.7579H30.281L30.282 24.3586C30.282 29.0231 33.7482 32.8782 38.2451 33.4881L38.8645 33.5509L39.4953 33.5722C44.3717 33.5722 48.363 29.7838 48.6873 24.9894L48.7087 24.3586L48.7071 19.7579ZM73.0658 19.7579H54.6397L54.6425 24.3586C54.6425 29.0231 58.1089 32.8782 62.6058 33.4881L63.2251 33.5509L63.8559 33.5722C68.7324 33.5722 72.7237 29.7838 73.048 24.9894L73.0693 24.3586L73.0658 19.7579ZM27.8898 5.925H17.0885L9.75365 13.8329H25.4607L27.8898 5.925ZM44.9058 5.925H34.0911L31.658 13.8329H47.3389L44.9058 5.925ZM61.9075 5.925H51.107L53.5362 13.8329H69.2423L61.9075 5.925ZM0.796511 14.7806L13.6291 0.947644C14.0963 0.444098 14.7206 0.121699 15.3927 0.0282422L15.8009 0H63.1991C63.8859 0 64.5467 0.238461 65.0725 0.667629L65.3707 0.947644L78.2957 14.8845L78.4166 15.0382C78.8187 15.5741 79 16.1818 79 16.7786L78.9941 24.3586C78.9941 28.2856 77.4987 31.8635 75.0466 34.5538L75.0434 76.0375C75.0434 77.5373 73.9292 78.7768 72.4832 78.9731L72.0811 79L39.481 78.9961L39.4838 46.4165C39.4838 44.7804 38.1574 43.454 36.5214 43.454H18.7632C17.1272 43.454 15.8009 44.7804 15.8009 46.4165L15.7979 78.9961L6.91861 79C5.41889 79 4.17943 77.8853 3.98328 76.4396L3.95623 76.0375L3.95315 34.5538C1.66417 32.0424 0.209051 28.7578 0.0255411 25.1376L0.00583196 24.3586L0.00508142 16.9493C-0.0267938 16.407 0.0903185 15.8489 0.383989 15.3384L0.580613 15.0377L0.796511 14.7806Z' fill='url(%23trustGradient2)'/%3E%3C/svg%3E");
}

.icon-trust-3 {
    background-image: url("data:image/svg+xml,%3Csvg width='82' height='90' viewBox='0 0 82 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3ClinearGradient id='trustGradient3' x1='0%25' y1='50%25' x2='100%25' y2='50%25'%3E%3Cstop offset='0%25' stop-color='%238A2387'/%3E%3Cstop offset='50%25' stop-color='%23E94057'/%3E%3Cstop offset='100%25' stop-color='%23F27121'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M12.8571 21.4286V12.8571C12.8571 5.75636 18.6135 0 25.7143 0C29.0074 0 32.0109 1.23797 34.2857 3.27386C36.5606 1.23797 39.5644 0 42.8571 0C49.9581 0 55.7143 5.75636 55.7143 12.8571V21.4286H62.1429C65.6931 21.4286 68.5714 24.3067 68.5714 27.8571V40.7066C65.2731 39.3309 61.6539 38.5714 57.8571 38.5714C53.2196 38.5714 48.8464 39.7046 45 41.7094V21.4286H49.2857V12.8571C49.2857 9.30673 46.4074 6.42857 42.8571 6.42857C40.8643 6.42857 39.0836 7.33526 37.9041 8.75859C38.337 10.0458 38.5714 11.4241 38.5714 12.8571V46.3269C33.2884 51.3964 30 58.5283 30 66.4286C30 73.9136 32.952 80.709 37.7554 85.7143H17.1429C7.67511 85.7143 0 78.039 0 68.5714V27.8571C0 24.3067 2.87816 21.4286 6.42857 21.4286H12.8571ZM19.2857 12.8571V21.4286H32.1429V12.8571C32.1429 9.30673 29.2646 6.42857 25.7143 6.42857C22.1639 6.42857 19.2857 9.30673 19.2857 12.8571ZM57.8571 42.8571C70.8754 42.8571 81.4286 53.4103 81.4286 66.4286C81.4286 79.4469 70.8754 90 57.8571 90C44.8389 90 34.2857 79.4469 34.2857 66.4286C34.2857 53.4103 44.8389 42.8571 57.8571 42.8571ZM60.0047 79.3007L60.0026 68.5714H70.6997C71.8821 68.5714 72.8404 67.6123 72.8404 66.4286C72.8404 65.2453 71.8821 64.2857 70.6997 64.2857H60.0021L60 53.5684C60 52.3847 59.0404 51.4256 57.8571 51.4256C56.6739 51.4256 55.7143 52.3847 55.7143 53.5684L55.7164 64.2857H44.9811C43.7987 64.2857 42.8404 65.2453 42.8404 66.4286C42.8404 67.6123 43.7987 68.5714 44.9811 68.5714H55.7169L55.719 79.3007C55.719 80.4844 56.6786 81.4436 57.8619 81.4436C59.0456 81.4436 60.0047 80.4844 60.0047 79.3007Z' fill='url(%23trustGradient3)'/%3E%3C/svg%3E");
}

.icon-trust-4 {
    background-image: url("data:image/svg+xml,%3Csvg width='81' height='90' viewBox='0 0 81 90' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3ClinearGradient id='trustGradient4' x1='0%25' y1='50%25' x2='100%25' y2='50%25'%3E%3Cstop offset='0%25' stop-color='%238A2387'/%3E%3Cstop offset='50%25' stop-color='%23E94057'/%3E%3Cstop offset='100%25' stop-color='%23F27121'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M77.625 13.5C65.6397 13.5 53.964 9.25434 42.525 0.675C41.3248 -0.225 39.6752 -0.225 38.475 0.675C27.0359 9.25434 15.3603 13.5 3.375 13.5C1.51105 13.5 0 15.0111 0 16.875V40.5C0 63.0054 13.309 79.5406 39.2629 89.7651C40.0581 90.0783 40.9419 90.0783 41.7371 89.7651C67.6908 79.5406 81 63.0054 81 40.5V16.875C81 15.0111 79.4889 13.5 77.625 13.5ZM61.9056 32.8629L34.9056 57.6131C33.5736 58.8339 31.5162 58.7894 30.2385 57.5114L18.9885 46.2614C17.6705 44.9433 17.6705 42.8067 18.9885 41.4886C20.3065 40.1706 22.4435 40.1706 23.7615 41.4886L32.7267 50.4535L57.3444 27.8871C58.7183 26.6276 60.8535 26.7204 62.1131 28.0944C63.3726 29.4685 63.2794 31.6034 61.9056 32.8629Z' fill='url(%23trustGradient4)'/%3E%3C/svg%3E");
}

/* ========================================
   ICON BASE SYSTEM
======================================== */

.icon {
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    flex-shrink: 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
  will-change: transform, opacity;
}

/* ========================================
   SIZE CLASSES
======================================== */

/* Standard Sizes */
.icon--xs { width: 16px; height: 16px; }
.icon--sm { width: 20px; height: 20px; }
.icon--md { width: 24px; height: 24px; }
.icon--lg { width: 32px; height: 32px; }
.icon--xl { width: 48px; height: 48px; }
.icon--xxl { width: 64px; height: 64px; }
.icon--jumbo { width: 80px; height: 80px; }

/* Default Icon Sizes (can be overridden by size classes) */
.icon-youtube,
.icon-linkedin,
.icon-instagram,
.icon-facebook,
.icon-google { 
    width: 48px; 
    height: 48px; 
}

.icon-whatsapp { 
    width: 24px; 
    height: 24px; 
}

.icon-x-twitter { 
    width: 22px; 
    height: 21px; 
}

.icon-menu-arrow { 
    width: 72px; 
    height: 72px; 
}

.icon-left-arrow,
.icon-right-arrow { 
    width: 34px; 
    height: 34px; 
}

.icon-close { 
    width: 80px; 
    height: 80px; 
}

.icon-play-button { 
    width: 138px; 
    height: 163px; 
}

.icon-down-arrow { 
    width: 20px; 
    height: 20px; 
}

.icon-dropdown-form { 
    width: 12px; 
    height: 8px; 
}

.icon-email { 
    width: 20px; 
    height: 16px; 
}

.icon-mobile { 
    width: 15px; 
    height: 22px; 
}

.icon-phone { 
    width: 22px; 
    height: 22px; 
}

.icon-send-mail { 
    width: 22px; 
    height: 22px;
}

/* Trust icons with aspect ratio preserved */
.icon-trust-1 { 
    width: 95px; 
    height: 77px; 
}

.icon-trust-2 { 
    width: 79px; 
    height: 79px; 
}

.icon-trust-3 { 
    width: 82px; 
    height: 90px; 
}

.icon-trust-4 { 
    width: 81px; 
    height: 90px; 
}


/* ========================================
   SIZE OVERRIDE SYSTEM (Higher Specificity)
======================================== */

/* Standard size overrides for all icons */
.icon.icon--xs { 
    width: 16px !important; 
    height: 16px !important; 
}

.icon.icon--sm { 
    width: 20px !important; 
    height: 20px !important; 
}

.icon.icon--md { 
    width: 24px !important; 
    height: 24px !important; 
}

.icon.icon--lg { 
    width: 32px !important; 
    height: 32px !important; 
}

.icon.icon--xl { 
    width: 48px !important; 
    height: 48px !important; 
}

.icon.icon--xxl { 
    width: 64px !important; 
    height: 64px !important; 
}

.icon.icon--jumbo { 
    width: 80px !important; 
    height: 80px !important; 
}


* Down arrow icon size overrides */
.icon-down-arrow.icon--xs { width: 12px !important; height: 12px !important; }
.icon-down-arrow.icon--sm { width: 16px !important; height: 16px !important; }
.icon-down-arrow.icon--md { width: 20px !important; height: 20px !important; }
.icon-down-arrow.icon--lg { width: 26px !important; height: 26px !important; }
.icon-down-arrow.icon--xl { width: 40px !important; height: 40px !important; }
.icon-down-arrow.icon--xxl { width: 52px !important; height: 52px !important; }
.icon-down-arrow.icon--jumbo { width: 64px !important; height: 64px !important; }

/* Dropdown form icon size overrides */
.icon-dropdown-form.icon--xs { width: 8px !important; height: 5px !important; }
.icon-dropdown-form.icon--sm { width: 10px !important; height: 7px !important; }
.icon-dropdown-form.icon--md { width: 12px !important; height: 8px !important; }
.icon-dropdown-form.icon--lg { width: 16px !important; height: 11px !important; }
.icon-dropdown-form.icon--xl { width: 24px !important; height: 16px !important; }
.icon-dropdown-form.icon--xxl { width: 32px !important; height: 21px !important; }
.icon-dropdown-form.icon--jumbo { width: 40px !important; height: 27px !important; }

/* Email icon size overrides */
.icon-email.icon--xs { width: 13px !important; height: 10px !important; }
.icon-email.icon--sm { width: 16px !important; height: 13px !important; }
.icon-email.icon--md { width: 20px !important; height: 16px !important; }
.icon-email.icon--lg { width: 26px !important; height: 21px !important; }
.icon-email.icon--xl { width: 38px !important; height: 30px !important; }
.icon-email.icon--xxl { width: 50px !important; height: 40px !important; }
.icon-email.icon--jumbo { width: 63px !important; height: 50px !important; }

/* Mobile icon size overrides */
.icon-mobile.icon--xs { width: 11px !important; height: 16px !important; }
.icon-mobile.icon--sm { width: 14px !important; height: 20px !important; }
.icon-mobile.icon--md { width: 17px !important; height: 24px !important; }
.icon-mobile.icon--lg { width: 22px !important; height: 32px !important; }
.icon-mobile.icon--xl { width: 33px !important; height: 48px !important; }
.icon-mobile.icon--xxl { width: 44px !important; height: 64px !important; }
.icon-mobile.icon--jumbo { width: 55px !important; height: 80px !important; }

/* Phone and send-mail icons (square) maintain aspect ratios */
.icon-phone.icon--xs,
.icon-send-mail.icon--xs { width: 16px !important; height: 16px !important; }
.icon-phone.icon--sm,
.icon-send-mail.icon--sm { width: 20px !important; height: 20px !important; }
.icon-phone.icon--md,
.icon-send-mail.icon--md { width: 24px !important; height: 24px !important; }
.icon-phone.icon--lg,
.icon-send-mail.icon--lg { width: 32px !important; height: 32px !important; }
.icon-phone.icon--xl,
.icon-send-mail.icon--xl { width: 48px !important; height: 48px !important; }
.icon-phone.icon--xxl,
.icon-send-mail.icon--xxl { width: 64px !important; height: 64px !important; }
.icon-phone.icon--jumbo,
.icon-send-mail.icon--jumbo { width: 80px !important; height: 80px !important; }




/* Special size overrides for non-square icons */
.icon-x-twitter.icon--xs { width: 14px !important; height: 13px !important; }
.icon-x-twitter.icon--sm { width: 18px !important; height: 17px !important; }
.icon-x-twitter.icon--md { width: 22px !important; height: 21px !important; }
.icon-x-twitter.icon--lg { width: 28px !important; height: 27px !important; }
.icon-x-twitter.icon--xl { width: 44px !important; height: 42px !important; }
.icon-x-twitter.icon--xxl { width: 58px !important; height: 55px !important; }
.icon-x-twitter.icon--jumbo { width: 72px !important; height: 69px !important; }

/* Trust icons size overrides (maintain aspect ratios) */
.icon-trust-1.icon--xs { width: 19px !important; height: 15px !important; }
.icon-trust-1.icon--sm { width: 24px !important; height: 19px !important; }
.icon-trust-1.icon--md { width: 29px !important; height: 23px !important; }
.icon-trust-1.icon--lg { width: 38px !important; height: 31px !important; }
.icon-trust-1.icon--xl { width: 57px !important; height: 46px !important; }
.icon-trust-1.icon--xxl { width: 76px !important; height: 62px !important; }
.icon-trust-1.icon--jumbo { width: 95px !important; height: 77px !important; }

.icon-trust-2.icon--xs { width: 16px !important; height: 16px !important; }
.icon-trust-2.icon--sm { width: 20px !important; height: 20px !important; }
.icon-trust-2.icon--md { width: 24px !important; height: 24px !important; }
.icon-trust-2.icon--lg { width: 32px !important; height: 32px !important; }
.icon-trust-2.icon--xl { width: 47px !important; height: 47px !important; }
.icon-trust-2.icon--xxl { width: 63px !important; height: 63px !important; }
.icon-trust-2.icon--jumbo { width: 79px !important; height: 79px !important; }

.icon-trust-3.icon--xs { width: 15px !important; height: 16px !important; }
.icon-trust-3.icon--sm { width: 18px !important; height: 20px !important; }
.icon-trust-3.icon--md { width: 22px !important; height: 24px !important; }
.icon-trust-3.icon--lg { width: 29px !important; height: 32px !important; }
.icon-trust-3.icon--xl { width: 44px !important; height: 48px !important; }
.icon-trust-3.icon--xxl { width: 58px !important; height: 64px !important; }
.icon-trust-3.icon--jumbo { width: 73px !important; height: 80px !important; }

.icon-trust-4.icon--xs { width: 14px !important; height: 16px !important; }
.icon-trust-4.icon--sm { width: 18px !important; height: 20px !important; }
.icon-trust-4.icon--md { width: 22px !important; height: 24px !important; }
.icon-trust-4.icon--lg { width: 29px !important; height: 32px !important; }
.icon-trust-4.icon--xl { width: 43px !important; height: 48px !important; }
.icon-trust-4.icon--xxl { width: 58px !important; height: 64px !important; }
.icon-trust-4.icon--jumbo { width: 72px !important; height: 80px !important; }

.icon-play-button.icon--xs { width: 28px !important; height: 33px !important; }
.icon-play-button.icon--sm { width: 35px !important; height: 41px !important; }
.icon-play-button.icon--md { width: 41px !important; height: 49px !important; }
.icon-play-button.icon--lg { width: 55px !important; height: 65px !important; }
.icon-play-button.icon--xl { width: 83px !important; height: 98px !important; }
.icon-play-button.icon--xxl { width: 110px !important; height: 130px !important; }
.icon-play-button.icon--jumbo { width: 138px !important; height: 163px !important; }

/* ========================================
   COLOR FILTERS FOR CUSTOMIZATION
======================================== */

/* Primary Color */
.icon--primary {
    filter: invert(8%) sepia(100%) saturate(7290%) hue-rotate(352deg) brightness(97%) contrast(107%);
}

/* Gray Color */
.icon--gray {
    filter: brightness(0) saturate(100%) invert(78%) sepia(0%) saturate(3425%) hue-rotate(190deg) brightness(95%) contrast(87%);
}

/* White Color */
.icon--white {
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(116deg) brightness(111%) contrast(111%);
}

/* Dark Color */
.icon--dark {
    filter: brightness(0) saturate(100%) invert(0%) sepia(0%) saturate(7500%) hue-rotate(116deg) brightness(0%) contrast(100%);
}

/* Secondary Color */
.icon--secondary {
    filter: brightness(0) saturate(100%) invert(45%) sepia(17%) saturate(380%) hue-rotate(179deg) brightness(94%) contrast(87%);
}

/* Success Color */
.icon--success {
    filter: brightness(0) saturate(100%) invert(64%) sepia(55%) saturate(2932%) hue-rotate(115deg) brightness(101%) contrast(85%);
}

/* Warning Color */
.icon--warning {
    filter: brightness(0) saturate(100%) invert(75%) sepia(32%) saturate(1734%) hue-rotate(16deg) brightness(103%) contrast(96%);
}

/* Error Color */
.icon--error {
    filter: brightness(0) saturate(100%) invert(39%) sepia(57%) saturate(4787%) hue-rotate(346deg) brightness(98%) contrast(94%);
}

/* ========================================
   HOVER EFFECTS
======================================== */
/*
.icon--hover-primary:hover {
    filter: brightness(0) saturate(100%) invert(8%) sepia(100%) saturate(7290%) hue-rotate(352deg) brightness(97%) contrast(107%) !important;
    transform: translateY(-2px);
}*/

.fries-social-link:hover .icon {
    filter: hue-rotate(0deg) saturate(0%) brightness(0) invert(8%) sepia(100%) saturate(7290%) hue-rotate(352deg) brightness(97%) contrast(107%);
    transform: translateY(-2px);
}
.icon--hover-white:hover {
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(116deg) brightness(111%) contrast(111%);
    transform: translateY(-2px);
}

.icon--hover-dark:hover {
    filter: brightness(0) saturate(100%) invert(0%) sepia(0%) saturate(7500%) hue-rotate(116deg) brightness(0%) contrast(100%);
    transform: translateY(-2px);
}

/* ========================================
   ANIMATIONS
======================================== */

.icon--spin {
    animation: iconSpin 1s linear infinite;
}

.icon--pulse {
    animation: iconPulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

.icon--bounce {
    animation: iconBounce 1s infinite;
}

@keyframes iconSpin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

@keyframes iconPulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

@keyframes iconBounce {
    0%, 20%, 53%, 80%, 100% { transform: translateY(0); }
    40%, 43% { transform: translateY(-8px); }
    70% { transform: translateY(-4px); }
    90% { transform: translateY(-2px); }
}

/* ========================================
   SOCIAL ICON EFFECTS
======================================== */

.icon-social {
    transition: transform 0.3s ease, opacity 0.3s ease;
    will-change: transform, opacity;
    cursor: pointer;
}

.icon-social:hover {
    transform: translateY(-3px) scale(1.05);
    opacity: 0.8;
}

/* ========================================
   BUTTON INTEGRATION
======================================== */

.btn .icon {
    margin-right: var(--spacing-xs, 8px);
}

.btn .icon:last-child {
    margin-right: 0;
    margin-left: var(--spacing-xs, 8px);
}

.btn .icon:only-child {
    margin: 0;
}

/* ========================================
   RESPONSIVE SIZE OVERRIDES
======================================== */

.icon.icon--responsive-sm,
.icon.icon--responsive-md,
.icon.icon--responsive-lg {
     transition: transform 0.3s ease, opacity 0.3s ease;
     will-change: transform, opacity;
}

@media screen and (max-width: 767px) {
    .icon.icon--responsive-sm { 
        width: 20px !important; 
        height: 20px !important; 
    }
    
    .icon.icon--responsive-md { 
        width: 24px !important; 
        height: 24px !important; 
    }
    
    .icon.icon--responsive-lg { 
        width: 32px !important; 
        height: 32px !important; 
    }
    
    /* Special responsive handling for non-square icons */
    .icon-x-twitter.icon--responsive-sm { width: 18px !important; height: 17px !important; }
    .icon-x-twitter.icon--responsive-md { width: 22px !important; height: 21px !important; }
    .icon-x-twitter.icon--responsive-lg { width: 28px !important; height: 27px !important; }
    /*new icons*/
    .icon-down-arrow.icon--responsive-sm { width: 16px !important; height: 16px !important; }
    .icon-down-arrow.icon--responsive-md { width: 20px !important; height: 20px !important; }
    .icon-down-arrow.icon--responsive-lg { width: 26px !important; height: 26px !important; }
    
    .icon-email.icon--responsive-sm { width: 16px !important; height: 13px !important; }
    .icon-email.icon--responsive-md { width: 20px !important; height: 16px !important; }
    .icon-email.icon--responsive-lg { width: 26px !important; height: 21px !important; }
    
    .icon-mobile.icon--responsive-sm { width: 14px !important; height: 20px !important; }
    .icon-mobile.icon--responsive-md { width: 17px !important; height: 24px !important; }
    .icon-mobile.icon--responsive-lg { width: 22px !important; height: 32px !important; }
    
    .icon-dropdown-form.icon--responsive-sm { width: 10px !important; height: 7px !important; }
    .icon-dropdown-form.icon--responsive-md { width: 12px !important; height: 8px !important; }
    .icon-dropdown-form.icon--responsive-lg { width: 16px !important; height: 11px !important; }
    
    .icon-phone.icon--responsive-sm,
    .icon-send-mail.icon--responsive-sm { width: 20px !important; height: 20px !important; }
    .icon-phone.icon--responsive-md,
    .icon-send-mail.icon--responsive-md { width: 24px !important; height: 24px !important; }
    .icon-phone.icon--responsive-lg,
    .icon-send-mail.icon--responsive-lg { width: 32px !important; height: 32px !important; }
}

@media screen and (min-width: 768px) {
    .icon.icon--responsive-sm { 
        width: 24px !important; 
        height: 24px !important; 
    }
    
    .icon.icon--responsive-md { 
        width: 32px !important; 
        height: 32px !important; 
    }
    
    .icon.icon--responsive-lg { 
        width: 48px !important; 
        height: 48px !important; 
    }
    
    /* Special responsive handling for non-square icons */
    .icon-x-twitter.icon--responsive-sm { width: 22px !important; height: 21px !important; }
    .icon-x-twitter.icon--responsive-md { width: 28px !important; height: 27px !important; }
    .icon-x-twitter.icon--responsive-lg { width: 44px !important; height: 42px !important; }
    /*new icons*/
    .icon-down-arrow.icon--responsive-sm { width: 20px !important; height: 20px !important; }
    .icon-down-arrow.icon--responsive-md { width: 26px !important; height: 26px !important; }
    .icon-down-arrow.icon--responsive-lg { width: 40px !important; height: 40px !important; }
    
    .icon-email.icon--responsive-sm { width: 20px !important; height: 16px !important; }
    .icon-email.icon--responsive-md { width: 26px !important; height: 21px !important; }
    .icon-email.icon--responsive-lg { width: 38px !important; height: 30px !important; }
    
    .icon-mobile.icon--responsive-sm { width: 17px !important; height: 24px !important; }
    .icon-mobile.icon--responsive-md { width: 22px !important; height: 32px !important; }
    .icon-mobile.icon--responsive-lg { width: 33px !important; height: 48px !important; }
    
    .icon-dropdown-form.icon--responsive-sm { width: 12px !important; height: 8px !important; }
    .icon-dropdown-form.icon--responsive-md { width: 16px !important; height: 11px !important; }
    .icon-dropdown-form.icon--responsive-lg { width: 24px !important; height: 16px !important; }
    
    .icon-phone.icon--responsive-sm,
    .icon-send-mail.icon--responsive-sm { width: 24px !important; height: 24px !important; }
    .icon-phone.icon--responsive-md,
    .icon-send-mail.icon--responsive-md { width: 32px !important; height: 32px !important; }
    .icon-phone.icon--responsive-lg,
    .icon-send-mail.icon--responsive-lg { width: 48px !important; height: 48px !important; }
}


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

.icon[aria-hidden="true"] {
    pointer-events: none;
}

.icon:focus {
    outline: 2px solid var(--color-primary, #e3001b);
    outline-offset: 2px;
    border-radius: 4px;
}

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

@media print {
    .icon {
        -webkit-print-color-adjust: exact;
        color-adjust: exact;
    }
    
    .icon--spin,
    .icon--pulse,
    .icon--bounce {
        animation: none;
    }
}

.icon-email-newsletter {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='16' viewBox='0 0 20 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.25 0H16.75C18.483 0 19.8992 1.35645 19.9949 3.06558L20 3.25V12.75C20 14.483 18.6435 15.8992 16.9344 15.9949L16.75 16H3.25C1.51697 16 0.10075 14.6435 0.00514007 12.9344L0 12.75V3.25C0 1.51697 1.35645 0.10075 3.06558 0.00513983L3.25 0ZM18.5 5.373L10.3493 9.6637C10.1619 9.7623 9.9431 9.7764 9.7468 9.706L9.6507 9.6637L1.5 5.374V12.75C1.5 13.6682 2.20711 14.4212 3.10647 14.4942L3.25 14.5H16.75C17.6682 14.5 18.4212 13.7929 18.4942 12.8935L18.5 12.75V5.373ZM16.75 1.5H3.25C2.33183 1.5 1.57881 2.20711 1.5058 3.10647L1.5 3.25V3.679L10 8.1525L18.5 3.678V3.25C18.5 2.33183 17.7929 1.57881 16.8935 1.5058L16.75 1.5Z' fill='%23D0D5DD'/%3E%3C/svg%3E");
    width: 20px;
    height: 16px;
}

/* Size overrides for newsletter email icon */
.icon-email-newsletter.icon--xs { width: 12px !important; height: 10px !important; }
.icon-email-newsletter.icon--sm { width: 16px !important; height: 13px !important; }
.icon-email-newsletter.icon--md { width: 20px !important; height: 16px !important; }
.icon-email-newsletter.icon--lg { width: 24px !important; height: 19px !important; }
.icon-email-newsletter.icon--xl { width: 30px !important; height: 24px !important; }
.icon-email-newsletter.icon--xxl { width: 40px !important; height: 32px !important; }
.icon-email-newsletter.icon--jumbo { width: 50px !important; height: 40px !important; }

/* ========================================
   ICON ROTATION ANIMATIONS - GLOBAL CLASSES
======================================== */

/* Base class for rotatable icons */
.icon--rotatable {
    transition: transform 0.3s ease !important;
    will-change: transform;
    transform: rotate(0deg) !important;
    display: inline-block !important;
}

/* Rotation angles */
.icon--rotate-45 {
    transform: rotate(-45deg) !important;
}

.icon--rotate-90 {
    transform: rotate(90deg) !important;
}

.icon--rotate-135 {
    transform: rotate(135deg) !important;
}

.icon--rotate-180 {
    transform: rotate(180deg) !important;
}

.icon--rotate-225 {
    transform: rotate(225deg) !important;
}

.icon--rotate-270 {
    transform: rotate(270deg) !important;
}

.icon--rotate-315 {
    transform: rotate(315deg) !important;
}

/* Hover rotation effects - parent container based */
.rotate-on-hover .icon--rotatable:hover,
.rotate-on-hover:hover .icon--rotatable {
    transform: rotate(-45deg) !important;
}

.rotate-on-hover-90 .icon--rotatable:hover,
.rotate-on-hover-90:hover .icon--rotatable {
    transform: rotate(90deg) !important;
}

.rotate-on-hover-180 .icon--rotatable:hover,
.rotate-on-hover-180:hover .icon--rotatable {
    transform: rotate(180deg) !important;
}

.rotate-on-hover-270 .icon--rotatable:hover,
.rotate-on-hover-270:hover .icon--rotatable {
    transform: rotate(270deg) !important;
}

/* Smooth rotation variants */
.icon--rotate-smooth {
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.icon--rotate-fast {
    transition: transform 0.15s ease !important;
}

.icon--rotate-slow {
    transition: transform 0.6s ease !important;
}

/* Continuous rotation animation */
.icon--rotate-continuous {
    animation: iconRotateContinuous 2s linear infinite !important;
}

@keyframes iconRotateContinuous {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Reverse continuous rotation */
.icon--rotate-continuous-reverse {
    animation: iconRotateContinuousReverse 2s linear infinite !important;
}

@keyframes iconRotateContinuousReverse {
    from { transform: rotate(360deg); }
    to { transform: rotate(0deg); }
}

/* ========================================
   BUTTONS
======================================== */
/*.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 16px 32px;
    font-family: var(--font-family-primary);
    font-size: 16px;
    line-height: 24px;
    font-weight: var(--font-weight-medium);
    text-decoration: none;
    border-radius: 50px;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
    min-height: 56px;
}

.btn-primary {
    background-color: var(--color-primary);
    color: white;
    border-color: var(--color-primary);
}

.btn-primary:hover {
    background-color: #c20019;
    border-color: #c20019;
}

.btn-secondary {
    background: var(--gradient-secondary);
    color: white;
    border: none;
}

.btn-secondary:hover {
    opacity: 0.9;
}

.btn-outline {
    background-color: transparent;
    color: var(--color-primary);
    border-color: var(--color-button-stroke);
}

.btn-outline:hover {
    background-color: var(--color-primary);
    color: white;
}*/

.btn-ghost {
    background-color: transparent;
    color: var(--color-primary);
    border: 2px solid var(--color-primary);
    position: relative;
    overflow: hidden;
}

.btn-ghost:hover {
    background-color: var(--color-primary);
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(227, 0, 27, 0.3);
}

.btn-ghost:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

.btn-ghost:active {
    transform: scale(0.98);
}

/* Icon color change on ghost button hover */
.btn-ghost:hover .icon {
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(116deg) brightness(111%) contrast(111%);
}

/* Ghost button white variant (for dark backgrounds) */
.btn-ghost-white {
    background-color: transparent;
    color: var(--color-text-white);
    border: 2px solid var(--color-text-white);
}

.btn-ghost-white:hover {
    background-color: var(--color-text-white);
    color: var(--color-primary);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 255, 255, 0.3);
}

.btn-ghost-white:focus {
    outline: 2px solid var(--color-text-white);
    outline-offset: 2px;
}

.btn-ghost-white:active {
    transform: scale(0.98);
}

/* Icon color change on white ghost button hover */
.btn-ghost-white:hover .icon {
    filter: brightness(0) saturate(100%) invert(8%) sepia(100%) saturate(7290%) hue-rotate(352deg) brightness(97%) contrast(107%);
}