/* Extraordinary premium finish.
   This file intentionally changes visual treatment only; responsive sizing and grids
   remain controlled by Bootstrap and responsive.css. */
:root {
    --luxury-burgundy: #72001d;
    --luxury-burgundy-deep: #27070f;
    --luxury-gold: #c9a65f;
    --luxury-gold-light: #ecd7a4;
    --luxury-cream: #fffdf8;
    --luxury-ink: #1b1316;
    --luxury-hairline: rgba(201, 166, 95, .32);
    --luxury-card-shadow: 0 16px 38px rgba(46, 8, 19, .1), inset 0 1px 0 rgba(255, 255, 255, .92);
}

body {
    background-color: #fbf7f1;
    background-image:
        radial-gradient(circle at 5% 12%, rgba(201, 166, 95, .09), transparent 20rem),
        radial-gradient(circle at 95% 58%, rgba(114, 0, 29, .055), transparent 26rem),
        linear-gradient(180deg, #fff 0%, #fbf7f1 55%, #fffaf4 100%);
}

h1,
h2,
h3,
.display-1,
.display-2,
.display-3,
.display-4,
.display-5,
.display-6 {
    text-wrap: balance;
}

p {
    text-wrap: pretty;
}

.container-fluid.bg-light.px-0 {
    position: relative;
    background:
        linear-gradient(90deg, rgba(201, 166, 95, .08), transparent 25%, transparent 75%, rgba(201, 166, 95, .08)),
        linear-gradient(100deg, #140b0e, #390b17 60%, #1d0b10) !important;
}

.container-fluid.bg-light.px-0::after {
    position: absolute;
    content: "";
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--luxury-gold), transparent);
}

.navbar {
    outline: 1px solid rgba(255, 255, 255, .72);
    outline-offset: -2px;
}

@media (min-width: 992px) {
    .navbar .navbar-nav {
        position: relative;
    }

    .navbar .navbar-nav::before,
    .navbar .navbar-nav::after {
        align-self: center;
        content: "";
        width: 20px;
        height: 1px;
        margin: 0 .55rem;
        background: linear-gradient(90deg, transparent, var(--luxury-gold));
    }

    .navbar .navbar-nav::after {
        background: linear-gradient(90deg, var(--luxury-gold), transparent);
    }

    .navbar .navbar-nav .nav-link {
        position: relative;
        letter-spacing: .025em;
    }

    .navbar .navbar-nav .nav-link.active {
        text-shadow: 0 0 20px rgba(114, 0, 29, .12);
    }
}

.btn-primary,
.back-to-top {
    border: 1px solid rgba(236, 215, 164, .62) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .14), transparent 48%),
        linear-gradient(130deg, #a30d36, var(--luxury-burgundy) 52%, var(--luxury-burgundy-deep)) !important;
    box-shadow:
        0 12px 26px rgba(86, 0, 23, .25),
        inset 0 1px 0 rgba(255, 255, 255, .32),
        inset 0 -1px 0 rgba(0, 0, 0, .18) !important;
}

.btn-light {
    color: var(--luxury-burgundy) !important;
    border: 1px solid rgba(201, 166, 95, .52) !important;
    background: linear-gradient(145deg, #fff, #f4eadb) !important;
    box-shadow: 0 10px 22px rgba(26, 5, 11, .13), inset 0 1px 0 #fff;
}

#header-carousel .carousel-caption {
    background:
        linear-gradient(90deg, rgba(7, 4, 5, .87), rgba(46, 4, 16, .57) 56%, rgba(10, 5, 7, .74)),
        radial-gradient(circle at 50% 42%, rgba(201, 166, 95, .12), transparent 30rem);
}

#header-carousel .carousel-caption > div {
    text-shadow: 0 5px 24px rgba(0, 0, 0, .34);
}

#header-carousel .hero-title,
.page-header h1 {
    color: #fff !important;
    background: linear-gradient(180deg, #fff 15%, #f7edda 68%, #ddc388 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

#header-carousel .carousel-caption h4 {
    color: var(--luxury-gold-light) !important;
}

#header-carousel .carousel-indicators [data-bs-target] {
    border-color: rgba(236, 215, 164, .85);
    box-shadow: 0 7px 18px rgba(0, 0, 0, .25);
}

.section-title {
    color: var(--luxury-burgundy) !important;
    border-color: rgba(201, 166, 95, .44) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(249, 241, 229, .9)) !important;
    box-shadow:
        0 8px 20px rgba(60, 10, 23, .07),
        inset 0 0 0 1px rgba(255, 255, 255, .8);
}

.text-center > .section-title + h1::after,
.text-center > .section-title + h2::after,
.text-center > .section-title + .display-6::after {
    width: 92px;
    height: 3px;
    background:
        radial-gradient(circle, var(--luxury-burgundy) 0 2px, transparent 3px) center / 10px 3px no-repeat,
        linear-gradient(90deg, transparent, var(--luxury-gold), var(--luxury-burgundy), var(--luxury-gold), transparent);
}

.fact-item,
.service-item,
.project-item,
#industries .row > div > div,
.profile-card,
.service-detail,
.sector-card,
.process-card,
.testimonial-item,
.contact-card,
.vision-card {
    border: 1px solid rgba(114, 0, 29, .11) !important;
    border-top-color: rgba(201, 166, 95, .7) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .99), rgba(251, 246, 237, .94)) !important;
    box-shadow:
        var(--luxury-card-shadow),
        inset 0 0 0 1px rgba(255, 255, 255, .58) !important;
}

.fact-icon,
.profile-icon,
.service-icon,
.sector-icon,
.process-number,
.contact-icon {
    color: var(--luxury-burgundy);
    border: 1px solid rgba(201, 166, 95, .52);
    background:
        radial-gradient(circle at 35% 25%, #fff, transparent 45%),
        linear-gradient(145deg, #fffaf1, #ead8c7);
    box-shadow:
        0 10px 20px rgba(85, 9, 28, .12),
        inset 0 0 0 3px rgba(255, 255, 255, .5);
}

.fact-value {
    color: var(--luxury-burgundy);
    background: linear-gradient(110deg, var(--luxury-burgundy), #a51b42 55%, #8c6a2d);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.service-item h4,
.service-detail h3,
.project-item h6,
.profile-card h3,
.sector-card h3,
.process-card h3 {
    color: var(--luxury-ink);
}

/* Compact inner service cards */
.service-detail {
    padding: 1.25rem 1.35rem !important;
}

.service-detail .service-icon {
    width: 50px;
    height: 50px;
    margin-bottom: .8rem !important;
    border-radius: 14px;
    font-size: 1.25rem;
}

.service-detail h3 {
    margin-bottom: .55rem;
    font-size: 1.08rem;
    line-height: 1.25;
}

.service-detail ul {
    padding-left: 1.05rem;
}

.service-detail li {
    margin-bottom: .22rem;
    font-size: .84rem;
    line-height: 1.35;
}

.service-detail li:last-child {
    margin-bottom: 0;
}

.service-item img,
.project-item img,
.portfolio-image,
.img-border img {
    border-color: rgba(201, 166, 95, .42) !important;
    box-shadow:
        0 13px 28px rgba(42, 6, 16, .13),
        0 0 0 1px rgba(255, 255, 255, .76) inset;
}

.img-border::before {
    border-color: var(--luxury-gold) !important;
    background: linear-gradient(135deg, rgba(201, 166, 95, .08), transparent 52%);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .5);
}

.portfolio-section,
.industries-section,
.commitment-section {
    border-color: rgba(201, 166, 95, .3) !important;
    background:
        radial-gradient(circle at 8% 15%, rgba(201, 166, 95, .12), transparent 18rem),
        radial-gradient(circle at 92% 84%, rgba(114, 0, 29, .06), transparent 22rem),
        linear-gradient(145deg, rgba(255, 254, 250, .98), rgba(247, 238, 231, .94)) !important;
    outline: 1px solid rgba(255, 255, 255, .86);
    outline-offset: -5px;
}

.vision-card {
    position: relative;
    overflow: hidden;
}

.vision-card h5 i {
    color: var(--luxury-burgundy) !important;
}

.brand-panel,
.cta-panel,
.quote-strip {
    border: 1px solid rgba(236, 215, 164, .55) !important;
    background:
        radial-gradient(circle at 90% 8%, rgba(236, 215, 164, .18), transparent 16rem),
        linear-gradient(130deg, #90092f, var(--luxury-burgundy) 52%, var(--luxury-burgundy-deep)) !important;
    box-shadow:
        0 20px 44px rgba(67, 0, 18, .25),
        inset 0 1px 0 rgba(255, 255, 255, .2),
        inset 0 0 0 5px rgba(255, 255, 255, .025) !important;
}

.brand-panel p,
.quote-strip p,
.cta-panel p {
    color: rgba(255, 255, 255, .78) !important;
}

.page-header {
    background:
        linear-gradient(105deg, rgba(10, 5, 7, .88), rgba(91, 0, 27, .63), rgba(13, 7, 9, .78)),
        url(../img/carousel-1.jpg) center center / cover no-repeat;
}

.page-header::before {
    border-color: rgba(236, 215, 164, .28);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .035);
}

.page-header-subtitle {
    color: rgba(255, 255, 255, .86);
}

.page-header .breadcrumb {
    border-color: rgba(236, 215, 164, .27);
    background: rgba(24, 7, 12, .54);
    box-shadow: 0 10px 24px rgba(0, 0, 0, .16), inset 0 1px 0 rgba(255, 255, 255, .09);
}

.commitment-section .testimonial-carousel .owl-item.center .testimonial-item {
    border-color: rgba(236, 215, 164, .7) !important;
    background:
        radial-gradient(circle at 85% 8%, rgba(236, 215, 164, .23), transparent 12rem),
        linear-gradient(140deg, #920b31, #650019 64%, #2d080f) !important;
}

.contact-shell {
    border-color: rgba(201, 166, 95, .35);
    outline: 1px solid rgba(255, 255, 255, .86);
    outline-offset: -5px;
}

.contact-details-panel {
    background:
        radial-gradient(circle at 88% 8%, rgba(236, 215, 164, .26), transparent 14rem),
        linear-gradient(145deg, #2b0812, #76001e 60%, #350811);
}

.contact-form-panel {
    background:
        radial-gradient(circle at 100% 0, rgba(201, 166, 95, .12), transparent 18rem),
        linear-gradient(145deg, #fff, #fffbf4);
}

.contact-form .form-control,
.contact-form .form-select {
    border-color: rgba(114, 0, 29, .14);
    background-color: rgba(255, 253, 249, .92);
    box-shadow: inset 0 1px 2px rgba(42, 6, 16, .035), 0 1px 0 #fff;
}

.contact-form .form-control:focus,
.contact-form .form-select:focus {
    border-color: rgba(201, 166, 95, .78);
    box-shadow: 0 0 0 .2rem rgba(201, 166, 95, .12), inset 0 1px 2px rgba(42, 6, 16, .03);
}

.contact-action-card {
    border-color: rgba(201, 166, 95, .32);
    background: linear-gradient(145deg, #fff, #fbf4e9);
    box-shadow: var(--luxury-card-shadow);
}

.footer-brand,
.footer.bg-dark {
    background:
        radial-gradient(circle at 12% 0, rgba(114, 0, 29, .46), transparent 28rem),
        radial-gradient(circle at 90% 100%, rgba(201, 166, 95, .08), transparent 22rem),
        linear-gradient(135deg, #1d1014, #0d0b0c 64%, #260610) !important;
}

.footer-brand .footer-logo {
    border-color: rgba(201, 166, 95, .52);
    background: linear-gradient(145deg, #fff, #f5ebdc);
    box-shadow: 0 14px 28px rgba(0, 0, 0, .23), inset 0 0 0 4px rgba(255, 255, 255, .55);
}

.footer-brand h4,
.footer-brand h5 {
    color: #fff9ec !important;
}

.footer-brand .copyright {
    background: rgba(0, 0, 0, .08);
}

.back-to-top {
    outline: 1px solid rgba(201, 166, 95, .44);
    outline-offset: 3px;
}

@media (hover: hover) {
    .fact-item:hover,
    .service-item:hover,
    .project-item:hover,
    .profile-card:hover,
    .service-detail:hover,
    .sector-card:hover,
    .process-card:hover,
    .contact-action-card:hover {
        border-color: rgba(201, 166, 95, .68) !important;
        box-shadow: 0 24px 48px rgba(57, 7, 21, .15), inset 0 1px 0 #fff !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .navbar-logo,
    .btn,
    .fact-item,
    .service-item,
    .project-item,
    .profile-card,
    .service-detail,
    .sector-card,
    .process-card,
    .contact-action-card {
        transition: none !important;
    }
}
