 :root {
     --euor-navy: #171b35;
     --euor-navy2: #24294a;
     --euor-gold: #d8b46a;
     --euor-gold-dark: #bd9445;
     --euor-cream: #f7f5ef;
     --euor-text: #292c3c;
     --euor-muted: #6d7080;
     --euor-border: #e8e5dd
 }

 * {
     box-sizing: border-box
 }

 html {
     scroll-behavior: smooth;
     scroll-padding-top: 88px
 }

 body {
     font-family: "DM Sans", sans-serif;
     color: var(--euor-text);
     margin: 0
 }

 h1,
 h2,
 h3,
 h4,
 .brand-name,
 .footer-brand {
     font-family: "Manrope", sans-serif
 }

 a {
     text-decoration: none
 }

 .topbar {
     background: var(--euor-navy);
     color: #e9e8ed;
     font-size: 12px;
     padding: 10px 0
 }

 .topbar a {
     color: #e9e8ed
 }

 .topbar i {
     color: var(--euor-gold);
     margin-right: 5px
 }

 .main-nav {
     background: rgba(255, 255, 255, .97);
     box-shadow: 0 5px 25px rgba(18, 20, 40, .06);
     padding: 0px 0
 }

 .brand-logo {
     width: 104px;
     /* height: 58px; */
     object-fit: contain
 }

 .brand-name {
     font-size: 20px;
     line-height: 1;
     font-weight: 800;
     letter-spacing: 1px;
     color: var(--euor-navy)
 }

 .brand-name small {
     display: block;
     font-family: "DM Sans", sans-serif;
     font-size: 9px;
     letter-spacing: 3px;
     margin-top: 5px
 }

 .nav-link {
     font-size: 18px;
     font-weight: 800;
     color: #33364b !important;
     padding: 12px !important
 }

 .nav-link:hover,
 .nav-link.active {
     color: var(--euor-gold-dark) !important
 }

 .btn {
     font-weight: 800;
     border-radius: 4px;
     font-size: 18px;
     padding: 13px 20px;
     transition: .25s
 }

 .btn-gold {
     background: var(--euor-gold);
     color: #191a2b;
     border: 1px solid var(--euor-gold)
 }

 .btn-gold:hover {
     background: var(--euor-gold-dark);
     border-color: var(--euor-gold-dark);
     color: #fff;
     transform: translateY(-2px)
 }

 .btn-outline-light:hover {
     color: var(--euor-navy);
     background: #fff
 }

 .hero {
     position: relative;
     overflow: hidden;
     background: var(--euor-navy);
     color: #fff;
     padding: 100px 0 82px;
     min-height: 620px
 }

 .hero:before {
     content: "";
     position: absolute;
     inset: 0;
     background: radial-gradient(circle at 75% 35%, rgba(216, 180, 106, .16), transparent 32%), linear-gradient(115deg, #171b35 0%, #222746 100%)
 }

 .hero-shape {
     position: absolute;
     border: 1px solid rgba(216, 180, 106, .15);
     border-radius: 50%;
     pointer-events: none
 }

 .hero-shape-one {
     width: 560px;
     height: 560px;
     right: -120px;
     top: -180px
 }

 .hero-shape-two {
     width: 390px;
     height: 390px;
     right: -35px;
     top: -95px
 }

 .hero .container {
     z-index: 1
 }

 .eyebrow {
     display: flex;
     align-items: center;
     gap: 10px;
     color: var(--euor-gold);
     font-size: 15px;
     font-weight: 800;
     letter-spacing: 2.1px;
     margin-bottom: 22px
 }

 .eyebrow>span {
     width: 28px;
     height: 2px;
     background: var(--euor-gold);
     display: inline-block
 }

 .eyebrow.dark {
     color: var(--euor-gold-dark)
 }

 .hero h1 {
     font-size: clamp(40px, 5vw, 66px);
     font-weight: 800;
     line-height: 1.12;
     letter-spacing: -2.3px;
     max-width: 640px
 }

 .hero h1 em,
 .section-title em {
     font-style: normal;
     color: var(--euor-gold)
 }

 .hero-copy {
     font-size: 15px;
     line-height: 1.9;
     color: #d2d3df;
     max-width: 540px;
     margin-top: 22px
 }

 .hero-trust {
     display: flex;
     gap: 38px;
     margin-top: 44px;
     padding-top: 22px;
     border-top: 1px solid rgba(255, 255, 255, .14);
     max-width: 510px
 }

 .hero-trust div {
     display: flex;
     flex-direction: column;
     gap: 5px
 }

 .hero-trust strong {
     font: 800 22px "Manrope";
     color: var(--euor-gold)
 }

 .hero-trust span {
     font-size: 11px;
     color: #c6c8d4
 }

 .hero-visual {
     position: relative;
     max-width: 490px;
     margin: 0 auto;
     padding: 16px 22px 26px
 }

 .visual-card-main {
     position: relative;
     height: 435px;
     border-radius: 48% 48% 8px 8px;
     overflow: hidden;
     background: #383a46;
     border: 7px solid rgba(255, 255, 255, .08);
     box-shadow: 0 25px 65px #0c0e20
 }

 .visual-card-main:after {
     content: "";
     position: absolute;
     inset: 45% 0 0;
     background: linear-gradient(transparent, rgba(16, 18, 35, .85))
 }

 .visual-card-main img {
     width: 100%;
     height: 100%;
     object-fit: cover
 }

 .visual-label {
     position: absolute;
     bottom: 20px;
     left: 20px;
     right: 20px;
     display: flex;
     align-items: center;
     gap: 12px;
     z-index: 1
 }

 .label-icon {
     width: 42px;
     height: 42px;
     border-radius: 50%;
     background: var(--euor-gold);
     color: var(--euor-navy);
     display: grid;
     place-items: center;
     font-size: 19px
 }

 .visual-label b,
 .visual-label small,
 .floating-note b,
 .floating-note small {
     display: block
 }

 .visual-label b {
     font-size: 13px
 }

 .visual-label small {
     font-size: 11px;
     color: #d9d9e1;
     margin-top: 3px
 }

 .floating-note {
     position: absolute;
     right: -12px;
     top: 65px;
     display: flex;
     align-items: center;
     gap: 12px;
     background: #fff;
     color: var(--euor-navy);
     padding: 15px 18px;
     border-radius: 6px;
     box-shadow: 0 14px 35px #11152b55
 }

 .floating-note>i {
     font-size: 23px;
     color: var(--euor-gold-dark)
 }

 .floating-note b {
     font-size: 12px
 }

 .floating-note small {
     font-size: 10px;
     color: var(--euor-muted);
     margin-top: 4px
 }

 .visual-stamp {
     position: absolute;
     bottom: 6px;
     left: -5px;
     width: 96px;
     height: 96px;
     border-radius: 50%;
     display: grid;
     place-content: center;
     text-align: center;
     background: var(--euor-gold);
     color: var(--euor-navy);
     font: 800 21px "Manrope";
     transform: rotate(-12deg);
     border: 5px solid var(--euor-navy)
 }

 .visual-stamp small {
     font: 700 7px "DM Sans";
     letter-spacing: 1px
 }

 .intro-strip {
     background: var(--euor-cream);
     padding: 27px 0;
     border-bottom: 1px solid var(--euor-border)
 }

 .strip-item {
     display: flex;
     align-items: center;
     gap: 15px;
     padding: 5px 18px;
     border-right: 1px solid #dedbd2
 }

 .col-md-4:last-child .strip-item {
     border: 0
 }

 .strip-item>i {
     font-size: 28px;
     color: var(--euor-gold-dark)
 }

 .strip-item b,
 .strip-item small {
     display: block
 }

 .strip-item b {
     font-size: 13px;
     color: var(--euor-navy)
 }

 .strip-item small {
     font-size: 11px;
     color: var(--euor-muted);
     margin-top: 4px
 }

 .section-padding {
     padding: 100px 0
 }

 .about-visual {
     position: relative;
     padding: 0 28px 28px 0
 }

 .about-visual:before {
     content: "";
     position: absolute;
     left: 28px;
     right: 0;
     top: 28px;
     bottom: 0;
     background: var(--euor-gold);
     border-radius: 5px
 }

 .about-visual img {
     position: relative;
     width: 100%;
     height: 440px;
     object-fit: cover;
     border-radius: 5px;
     box-shadow: 0 20px 45px #171b351b
 }

 .about-badge {
     position: absolute;
     right: 0;
     bottom: 0;
     background: var(--euor-navy);
     color: #fff;
     padding: 19px 24px;
     display: flex;
     flex-direction: column;
     gap: 4px
 }

 .about-badge b {
     font: 800 20px "Manrope";
     color: var(--euor-gold)
 }

 .about-badge span {
     font-size: 10px
 }

 .section-title {
     font-size: clamp(30px, 3.7vw, 45px);
     font-weight: 800;
     line-height: 1.2;
     letter-spacing: -1.5px;
     color: var(--euor-navy);
     margin-bottom: 22px
 }

 .section-title em {
     color: var(--euor-gold-dark)
 }

 .section-copy {
     font-size: 14px;
     line-height: 1.9;
     color: var(--euor-muted);
     max-width: 680px
 }

 .about-points {
     display: grid;
     gap: 12px;
     margin: 24px 0
 }

 .about-points div {
     font-size: 13px;
     font-weight: 700;
     color: var(--euor-navy)
 }

 .about-points i {
     color: var(--euor-gold-dark);
     margin-right: 9px
 }

 .text-link {
     display: inline-flex;
     gap: 9px;
     align-items: center;
     color: var(--euor-navy);
     font-size: 12px;
     font-weight: 800;
     border-bottom: 1px solid var(--euor-gold);
     padding-bottom: 7px
 }

 .text-link:hover {
     color: var(--euor-gold-dark)
 }

 .products-section {
     background: var(--euor-cream)
 }

 .section-heading {
     max-width: 780px;
     margin: 0 auto
 }

 .section-heading .section-title {
     margin-bottom: 14px
 }

 .product-card {
     height: 100%;
     background: #fff;
     border: 1px solid #eeece6;
     transition: transform .3s, box-shadow .3s
 }

 .product-card:hover {
     transform: translateY(-7px);
     box-shadow: 0 22px 45px #20213b12
 }

 .product-image {
     height: 285px;
     position: relative;
     overflow: hidden;
     background: #e8e2d5
 }

 .product-image img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     transition: transform .5s
 }

 .product-card:hover .product-image img {
     transform: scale(1.05)
 }

 .product-number {
     position: absolute;
     top: 17px;
     left: 17px;
     background: var(--euor-gold);
     color: var(--euor-navy);
     font: 800 14px "Manrope";
     padding: 9px 12px
 }

 .product-content {
     padding: 28px 30px 32px
 }

 .product-kicker {
     font-size: 9px;
     letter-spacing: 1.5px;
     color: var(--euor-gold-dark);
     font-weight: 800
 }

 .product-content h3 {
     font-size: 25px;
     font-weight: 800;
     color: var(--euor-navy);
     margin: 10px 0
 }

 .product-content p {
     font-size: 13px;
     line-height: 1.8;
     color: var(--euor-muted);
     min-height: 70px
 }

 .product-link {
     margin-top: 8px
 }

 .why-section {
     background: var(--euor-navy);
     position: relative;
     overflow: hidden
 }

 .why-section:after {
     content: "";
     position: absolute;
     width: 500px;
     height: 500px;
     border: 1px solid #ffffff0c;
     border-radius: 50%;
     right: -150px;
     top: -170px
 }

 .why-section .container {
     position: relative;
     z-index: 1
 }

 .why-section .section-title {
     line-height: 1.25
 }

 .why-copy {
     font-size: 14px;
     line-height: 1.9;
     color: #c6c8d4;
     max-width: 410px
 }

 .feature-grid {
     display: grid;
     grid-template-columns: repeat(2, 1fr);
     gap: 16px
 }

 .feature-box {
     border: 1px solid #ffffff1c;
     padding: 28px 25px;
     min-height: 190px;
     background: #ffffff06
 }

 .feature-box>i {
     font-size: 25px;
     color: var(--euor-gold)
 }

 .feature-box h3 {
     font-size: 16px;
     color: #fff;
     font-weight: 800;
     margin: 18px 0 9px
 }

 .feature-box p {
     font-size: 12px;
     line-height: 1.8;
     color: #c6c8d4;
     margin: 0
 }

 .contact-section {
     background: #fff
 }

 .contact-info {
     background: var(--euor-navy);
     color: #fff;
     padding: 38px 32px;
     height: 100%
 }

 .contact-info h3,
 .enquiry-form h3 {
     font-size: 25px;
     font-weight: 800;
     margin-bottom: 12px
 }

 .contact-info>p,
 .enquiry-form>p {
     font-size: 12px;
     line-height: 1.8;
     color: #c8c9d4;
     margin-bottom: 28px
 }

 .contact-line {
     display: flex;
     gap: 14px;
     align-items: flex-start;
     margin: 23px 0;
     color: #fff
 }

 .contact-line>span {
     flex: 0 0 42px;
     width: 42px;
     height: 42px;
     background: #ffffff0d;
     border: 1px solid #ffffff20;
     display: grid;
     place-items: center;
     color: var(--euor-gold);
     font-size: 18px
 }

 .contact-line small,
 .contact-line b {
     display: block
 }

 .contact-line small {
     font-size: 10px;
     color: #b7bac9;
     margin-bottom: 5px
 }

 .contact-line b {
     font-size: 12px;
     line-height: 1.7;
     overflow-wrap: anywhere
 }

 .contact-bottom {
     border-top: 1px solid #ffffff1c;
     padding-top: 20px;
     margin-top: 25px;
     font-size: 11px;
     color: #d1d2dc
 }

 .contact-bottom i {
     color: var(--euor-gold);
     margin-right: 7px
 }

 .enquiry-form {
     padding: 38px 35px;
     border: 1px solid var(--euor-border);
     height: 100%;
     box-shadow: 0 14px 40px #171b3508
 }

 .enquiry-form>p {
     color: var(--euor-muted)
 }

 .form-label {
     font-size: 11px;
     font-weight: 800;
     color: var(--euor-navy)
 }

 .form-control,
 .form-select {
     border-radius: 3px;
     border: 1px solid #e4e3e0;
     padding: 12px 13px;
     font-size: 12px;
     min-height: 46px
 }

 .form-control:focus,
 .form-select:focus {
     border-color: var(--euor-gold);
     box-shadow: 0 0 0 .2rem #d8b46a22
 }

 .form-control::placeholder {
     color: #a5a6af
 }

 .form-status {
     font-size: 12px;
     margin-top: 12px;
     color: var(--euor-gold-dark)
 }


 

 @media(max-width:991px) {
     .hero {
         padding: 75px 0 65px
     }

     .hero-visual {
         max-width: 420px
     }

     .hero h1 {
         letter-spacing: -1.5px
     }

     .nav-cta {
         margin: 7px 0 12px
     }

     .section-padding {
         padding: 75px 0
     }

     .strip-item {
         border: 0;
         padding-left: 0
     }

     .about-visual img {
         height: 390px
     }
 }

 @media(max-width:767px) {
     .topbar .container {
         justify-content: center !important;
         text-align: center
     }

     .topbar .container>div {
         justify-content: center
     }

     .topbar {
         font-size: 10px
     }

     .brand-logo {
         width: 48px;
         height: 48px
     }

     .brand-name {
         font-size: 17px
     }

     .hero {
         padding: 65px 0 50px
     }

     .hero h1 {
         font-size: 43px
     }

     .hero-copy {
         font-size: 13px
     }

     .hero-trust {
         gap: 20px
     }

     .hero-trust strong {
         font-size: 18px
     }

     .hero-trust span {
         font-size: 9px
     }

     .hero-visual {
         max-width: 390px;
         margin-top: 5px
     }

     .visual-card-main {
         height: 360px
     }

     .floating-note {
         right: 0;
         top: 45px;
         padding: 12px
     }

     .visual-stamp {
         width: 78px;
         height: 78px;
         font-size: 17px
     }

     .visual-stamp small {
         font-size: 6px
     }

     .section-padding {
         padding: 62px 0
     }

     .about-visual {
         margin-bottom: 8px
     }

     .about-visual img {
         height: 330px
     }

     .section-title {
         font-size: 34px
     }

     .section-copy {
         font-size: 13px
     }

     .product-image {
         height: 245px
     }

     .product-content {
         padding: 24px
     }

     .product-content p {
         min-height: 0
     }

     .feature-grid {
         gap: 10px
     }

     .feature-box {
         padding: 20px 16px;
         min-height: 0
     }

     .feature-box h3 {
         font-size: 14px
     }

     .feature-box p {
         font-size: 11px
     }

     .contact-info,
     .enquiry-form {
         padding: 28px 22px
     }

     .footer-bottom {
         flex-direction: column
     }

     .intro-strip {
         padding: 20px 0
     }

     .strip-item {
         padding: 7px 0
     }

     .col-md-4:last-child .strip-item {
         border: 0
     }
 }

 @media(max-width:380px) {
     .hero h1 {
         font-size: 37px
     }

     .hero-trust {
         gap: 13px
     }

     .hero-trust strong {
         font-size: 16px
     }

     .visual-card-main {
         height: 315px
     }

     .feature-grid {
         grid-template-columns: 1fr
     }

     .brand-name {
         font-size: 15px
     }
 }


/* EUOR ENQUIRY POPUP */
#euorEnquiryModal .modal-content {
    border: none;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 20px 70px rgba(0, 0, 0, 0.25);
}

#euorEnquiryModal .modal-header {
    background: #222746;
    color: #fff;
    padding: 24px 26px;
    border-bottom: 2px solid #d8b46a;
}

#euorEnquiryModal .modal-title {
    font-size: 25px;
    font-weight: 800;
    margin-top: 5px;
}

.euor-modal-kicker {
    color: #d8b46a;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2px;
}

#euorEnquiryModal .modal-body {
    padding: 26px;
}

.euor-modal-description {
    color: #666;
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 22px;
}

#euorEnquiryModal .form-label {
    color: #222746;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 7px;
}

#euorEnquiryModal .form-control,
#euorEnquiryModal .form-select {
    min-height: 46px;
    border: 1px solid #e0e2e8;
    border-radius: 8px;
    font-size: 14px;
    padding: 11px 13px;
}

#euorEnquiryModal textarea.form-control {
    min-height: 100px;
}

#euorEnquiryModal .form-control:focus,
#euorEnquiryModal .form-select:focus {
    border-color: #d8b46a;
    box-shadow: 0 0 0 3px rgba(216, 180, 106, 0.15);
}

.euor-submit-btn {
    background: #d8b46a;
    color: #222746;
    border: none;
    border-radius: 8px;
    padding: 13px 20px;
    font-weight: 800;
    transition: .3s;
}

.euor-submit-btn:hover {
    background: #222746;
    color: #fff;
}

@media (max-width: 575px) {
    #euorEnquiryModal .modal-dialog {
        margin: 12px;
    }

    #euorEnquiryModal .modal-header,
    #euorEnquiryModal .modal-body {
        padding: 20px;
    }

    #euorEnquiryModal .modal-title {
        font-size: 22px;
    }
}



/* =====================================
   EUOR HERO BACKGROUND IMAGE SLIDER
===================================== */

.hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: var(--euor-navy);
    color: #fff;
    padding: 100px 0 82px;
    min-height: 620px;
}

/* Background Slider Container */
.euor-bg-slider {
    /* position: absolute; */
    inset: 0;
    z-index: -2;
    overflow: hidden;
}

/* Individual Slides */
.euor-bg-slide {
    position: absolute;
    inset: 0;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    opacity: 0;
    transform: scale(1.04);

    transition:
        opacity 1.2s ease-in-out,
        transform 6s ease;
}

.euor-bg-slide.active {
    opacity: 1;
    transform: scale(1);
}

/* Dark Overlay for Text Readability */
.euor-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            rgba(17, 21, 43, 0.94) 0%,
            rgba(23, 27, 53, 0.78) 48%,
            rgba(23, 27, 53, 0.40) 100%
        ),
        linear-gradient(
            0deg,
            rgba(15, 18, 36, 0.40),
            transparent
        );
}

/* Decorative Shapes */
.hero-shape {
    z-index: -1;
    position: absolute;
    border: 1px solid rgba(216, 180, 106, 0.20);
    border-radius: 50%;
    pointer-events: none;
}

.hero-shape-one {
    width: 560px;
    height: 560px;
    right: -120px;
    top: -180px;
}

.hero-shape-two {
    width: 390px;
    height: 390px;
    right: -35px;
    top: -95px;
}

/* Keep Content Above Background */
.hero .container {
    position: relative;
    z-index: 2;
}

.hero h1 {
    font-size: clamp(40px, 5vw, 66px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -2.3px;
    max-width: 640px;
}

.hero h1 em,
.section-title em {
    font-style: normal;
    color: var(--euor-gold);
}

.hero-copy {
    font-size: 15px;
    line-height: 1.9;
    color: #e0e1e8;
    max-width: 540px;
    margin-top: 22px;
}

.hero-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 38px;
    margin-top: 44px;
    padding-top: 22px;
    border-top: 1px solid rgba(255, 255, 255, 0.25);
    max-width: 510px;
}

.hero-trust div {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.hero-trust strong {
    font: 800 22px "Manrope", sans-serif;
    color: var(--euor-gold);
}

.hero-trust span {
    font-size: 11px;
    color: #e0e1e8;
}

/* Slider Dots */
.euor-slider-dots {
    position: absolute;
    z-index: 5;
    bottom: 24px;
    right: 7%;
    display: flex;
    gap: 10px;
    align-items: center;
}

.euor-slider-dot {
    width: 10px;
    height: 10px;
    padding: 0;
    border: 1px solid #fff;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    transition: all 0.3s ease;
}

.euor-slider-dot.active {
    width: 30px;
    border-radius: 20px;
    background: var(--euor-gold);
    border-color: var(--euor-gold);
}

/* Mobile Responsive */
@media (max-width: 767px) {
    .hero {
        min-height: 650px;
        padding: 75px 0 90px;
    }

    .hero h1 {
        font-size: clamp(36px, 9vw, 48px);
        letter-spacing: -1.2px;
    }

    .hero-trust {
        gap: 22px;
        margin-top: 32px;
    }

    .hero-trust strong {
        font-size: 19px;
    }

    .hero-trust span {
        font-size: 10px;
    }

    .euor-hero-overlay {
        background: rgba(17, 21, 43, 0.78);
    }

    .hero-shape-one {
        right: -300px;
    }

    .hero-shape-two {
        right: -200px;
    }

    .euor-slider-dots {
        right: auto;
        left: 50%;
        transform: translateX(-50%);
        bottom: 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .euor-bg-slide {
        transition: none;
    }
}


.form-status {
    margin-top: 15px;
    text-align: center;
    font-size: 15px;
}

.form-status.success {
    color: #198754;
    background: #d1e7dd;
    padding: 12px;
    border-radius: 6px;
    font-weight: 600;
}





