:root {
    --glass-ink: #172a35;
    --glass-muted: #526873;
    --glass-edge: rgba(255, 255, 255, .66);
    --glass-surface: rgba(255, 255, 255, .68);
    --glass-shadow: 0 18px 54px rgba(17, 44, 54, .12);
}

html {
    scroll-behavior: smooth;
}

body {
    color: var(--glass-ink);
    font-family: "DM Sans", "Segoe UI", sans-serif;
}

.header-survey {
    position: sticky;
    top: 0;
    z-index: 999;
    background: rgba(13, 35, 48, .76);
    border-bottom: 1px solid rgba(255, 255, 255, .16);
    box-shadow: 0 12px 38px rgba(8, 24, 35, .14);
    -webkit-backdrop-filter: saturate(170%) blur(22px);
    backdrop-filter: saturate(170%) blur(22px);
}

.header-survey .header-top,
.header-survey .navbar {
    background: transparent;
}

.header-survey .header-top {
    border-color: rgba(255, 255, 255, .12);
}

.header-survey .dropdown-menu,
.mobile-offcanvas {
    background: rgba(15, 39, 53, .9);
    border: 1px solid rgba(255, 255, 255, .16);
    box-shadow: 0 20px 50px rgba(8, 24, 35, .24);
    -webkit-backdrop-filter: blur(24px);
    backdrop-filter: blur(24px);
}

.header-survey .mobile-card {
    background: rgba(255, 255, 255, .07);
    border-color: rgba(255, 255, 255, .14);
}

.header-survey .navbar-nav .nav-link {
    border-radius: 999px;
}

.header-survey .navbar-nav .nav-link:hover,
.header-survey .dropdown-menu .dropdown-item:hover {
    background: rgba(219, 171, 106, .16);
}

.header-survey .mobile-menu-btn {
    background: rgba(255, 255, 255, .09);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
}

.bdp {
    color: #1a3037;
    background:
        radial-gradient(ellipse at 82% 9%, rgba(116, 164, 157, .2), transparent 34%),
        radial-gradient(ellipse at 8% 52%, rgba(218, 180, 130, .16), transparent 30%),
        linear-gradient(145deg, #f3f5ef, #e8eee8 52%, #f5f2e9);
}

.bdp-hero-media {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 30px;
    box-shadow: 0 30px 80px rgba(18, 45, 46, .22);
}

.bdp-photo-label {
    border: 1px solid rgba(255, 255, 255, .38);
    border-radius: 999px;
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
}

.bdp-topline {
    border-color: rgba(43, 73, 72, .18);
}

.bdp-proof,
.bdp-drawing,
.bdp-sector,
.bdp-service-list details,
.bdp-faq-list details,
.bdp-news-item,
.bdp-brief {
    border: 1px solid var(--glass-edge);
    border-radius: 22px;
    background: var(--glass-surface);
    box-shadow: var(--glass-shadow);
    -webkit-backdrop-filter: saturate(155%) blur(20px);
    backdrop-filter: saturate(155%) blur(20px);
}

.bdp-proof {
    margin: 12px 8px;
}

.bdp-drawing {
    overflow: hidden;
    padding: 20px;
}

.bdp-service-list details {
    margin-bottom: 12px;
    padding: 0 20px;
    border-color: rgba(255, 255, 255, .78);
    background: rgba(255, 255, 255, .48);
    box-shadow: 0 12px 36px rgba(26, 54, 51, .07);
}

.bdp-service-list details[open] {
    background: rgba(255, 255, 255, .76);
}

.bdp-service-list summary {
    border: 0;
}

.bdp-sector {
    overflow: hidden;
}

.bdp-faq-list details {
    margin: 8px 0;
    padding: 0 18px;
    border: 1px solid rgba(255, 255, 255, .75);
    background: rgba(255, 255, 255, .48);
}

.bdp-faq-list details p {
    padding-bottom: 20px;
}

.bdp-news-item {
    overflow: hidden;
    padding-bottom: 18px;
    box-shadow: 0 14px 40px rgba(26, 54, 51, .09);
}

.bdp-news-item img,
.bdp-news-placeholder {
    border-radius: 20px 20px 0 0;
}

.bdp-news-item small,
.bdp-news-item h3,
.bdp-news-item time {
    margin-right: 20px;
    margin-left: 20px;
}

.bdp-brief {
    border-color: rgba(255, 255, 255, .82);
    background: rgba(247, 250, 245, .8);
}

.bdp-field input,
.bdp-field select {
    border-radius: 12px;
    background: rgba(255, 255, 255, .84);
    box-shadow: inset 0 1px 2px rgba(28, 54, 49, .04);
}

.bdp-btn {
    border-radius: 999px;
    box-shadow: 0 10px 24px rgba(157, 69, 38, .2);
}

.bdp-contact {
    background:
        radial-gradient(ellipse at 88% 0%, rgba(255, 210, 170, .22), transparent 38%),
        linear-gradient(135deg, #b9472c, #8f3828);
}

.bdp-mobile-contact {
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 999px;
    background: rgba(250, 251, 247, .82);
    box-shadow: 0 16px 42px rgba(18, 45, 46, .2);
    -webkit-backdrop-filter: blur(22px);
    backdrop-filter: blur(22px);
}

.bdp-mobile-contact a:first-child {
    border-radius: 999px;
}

.bdp-mobile-contact a:last-child {
    border-radius: 999px;
}

.survey-request-section {
    background:
        radial-gradient(ellipse at 80% 10%, rgba(119, 168, 157, .15), transparent 35%),
        linear-gradient(145deg, #f3f5ef, #e9efea);
}

.survey-form-card,
.news-details-wrap article,
.info-box,
.news-card,
.team-card,
.product-card {
    border: 1px solid rgba(255, 255, 255, .75);
    border-radius: 22px;
    background: rgba(255, 255, 255, .74);
    box-shadow: var(--glass-shadow);
    -webkit-backdrop-filter: saturate(150%) blur(18px);
    backdrop-filter: saturate(150%) blur(18px);
}

.news-card {
    overflow: hidden;
}

.news-card-info {
    border-top-color: rgba(185, 139, 62, .55);
}

.info-box:hover,
.news-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 24px 58px rgba(17, 44, 54, .18);
}

.bdp-contact-page-link {
    margin-top: 15px;
    font-size: 11px;
}

.video-card {
    width: 300px;
    height: 225px;
    overflow: hidden;
}

.video-card > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.survey-map-embed {
    border: 0;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}

.header-survey {
    top: 10px;
    width: min(1320px, calc(100% - 32px));
    margin: 10px auto 0;
    overflow: visible;
    border: 1px solid rgba(255, 255, 255, .84);
    border-radius: 17px;
    background: rgba(248, 250, 247, .78);
    box-shadow: 0 12px 36px rgba(28, 48, 41, .09), inset 0 1px rgba(255, 255, 255, .88);
    -webkit-backdrop-filter: saturate(155%) blur(20px);
    backdrop-filter: saturate(155%) blur(20px);
}

.header-survey .header-top,
.header-survey .navbar {
    background: transparent;
}

.header-survey .header-top {
    border-color: rgba(38, 75, 60, .09);
}

.header-survey .header-top .container-fluid {
    min-height: 70px;
    padding-right: clamp(18px, 3vw, 38px);
    padding-left: clamp(18px, 3vw, 38px);
}

.header-survey .logo-img {
    width: auto;
    max-width: min(230px, 24vw);
    height: 54px;
    object-fit: contain;
}

.header-survey .brand-name {
    color: #264b3c !important;
    font-family: Manrope, "Segoe UI", sans-serif;
    font-size: clamp(15px, 1.8vw, 21px) !important;
    letter-spacing: -.035em;
}

.header-survey .navbar {
    padding: 3px 12px 8px;
}

.header-survey .navbar-nav .nav-link {
    color: #40564a !important;
    font-size: 12px;
    padding: 8px 12px;
}

.header-survey .navbar-nav .category-nav-toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 0;
    background: transparent;
    font: inherit;
    cursor: default;
}

.header-survey .navbar-nav .category-nav-label {
    cursor: default;
}

.header-survey .category-dropdown-menu {
    top: 100%;
    min-width: 210px;
    margin-top: 0;
    padding: 7px;
    border-color: rgba(255, 255, 255, .88);
    border-radius: 10px;
    background: rgba(248, 250, 247, .9);
    box-shadow: 0 18px 42px rgba(28, 48, 41, .13);
    -webkit-backdrop-filter: saturate(150%) blur(22px);
    backdrop-filter: saturate(150%) blur(22px);
}

.header-survey .category-dropdown-menu[hidden] {
    display: none;
}

.header-survey .category-dropdown-menu .dropdown-item {
    padding: 9px 12px;
    color: #40564a;
    font-size: 12px;
    white-space: normal;
}

.header-survey .navbar-nav .nav-link:hover {
    background: rgba(71, 111, 84, .09);
    color: #264b3c !important;
}

.header-survey .dropdown-toggle-btn {
    color: #607466;
}

.header-survey .dropdown-menu,
.mobile-offcanvas {
    border: 1px solid rgba(255, 255, 255, .88);
    background: rgba(248, 250, 247, .9);
    box-shadow: 0 18px 42px rgba(28, 48, 41, .13);
    -webkit-backdrop-filter: saturate(150%) blur(22px);
    backdrop-filter: saturate(150%) blur(22px);
}

.header-survey .dropdown-menu .dropdown-item {
    color: #40564a;
    border-radius: 7px;
}

.header-survey .dropdown-menu .dropdown-item:hover {
    background: rgba(71, 111, 84, .09);
    color: #264b3c;
}

.header-survey .mobile-menu-btn {
    border-color: rgba(38, 75, 60, .16);
    background: rgba(255, 255, 255, .62);
    color: #264b3c;
}

.mobile-offcanvas .offcanvas-header {
    border-color: rgba(38, 75, 60, .1);
    background: transparent;
    color: #264b3c;
}

.mobile-offcanvas .offcanvas-header .btn-close {
    filter: none;
}

.mobile-offcanvas .mobile-card {
    border-color: rgba(38, 75, 60, .1);
    background: rgba(255, 255, 255, .52);
}

.mobile-offcanvas .mobile-menu a,
.mobile-offcanvas .mobile-toggle,
.mobile-offcanvas .mobile-card-link {
    color: #40564a;
}

.mobile-offcanvas .submenu {
    background: rgba(38, 75, 60, .045);
}

.mobile-offcanvas .submenu a {
    color: #5b7062;
}

.mobile-offcanvas .mobile-card-link {
    cursor: default;
}

.mobile-offcanvas {
    color: #264b3c;
    border-color: rgba(38, 75, 60, .12);
    background: rgba(248, 250, 247, .96);
}

.mobile-offcanvas .offcanvas-header {
    padding: 18px 20px;
}

.mobile-offcanvas .offcanvas-header .fw-bold {
    color: #264b3c;
    font-size: 1rem !important;
    line-height: 1.35;
}

.mobile-offcanvas .mobile-menu {
    gap: 8px;
}

.mobile-offcanvas .mobile-card {
    border-radius: 14px;
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 4px 14px rgba(28, 48, 41, .045);
}

.mobile-offcanvas .mobile-menu a,
.mobile-offcanvas .mobile-toggle,
.mobile-offcanvas .mobile-card-link {
    min-height: 54px;
    padding: 14px 16px;
    color: #354d41;
    font-size: 14px;
}

.mobile-offcanvas .mobile-toggle:hover,
.mobile-offcanvas .mobile-menu a:hover {
    color: #264b3c;
    background: rgba(71, 111, 84, .07);
}

.mobile-offcanvas .mobile-toggle .arrow {
    color: #66836c;
}

.mobile-offcanvas .submenu {
    border-top: 1px solid rgba(38, 75, 60, .09);
    background: rgba(71, 111, 84, .035);
}

.mobile-offcanvas .submenu a {
    min-height: 0;
    padding: 11px 20px;
    font-size: 13px;
}

@media (max-width: 760px) {
    .header-survey {
        top: 8px;
        width: calc(100% - 20px);
        margin-top: 8px;
        border-radius: 14px;
    }

    .header-survey .header-top .container-fluid {
        min-height: 62px;
        padding-right: 16px;
        padding-left: 16px;
    }

    .header-survey .logo-img {
        max-width: min(180px, 38vw);
        height: 46px;
    }

    .header-survey .navbar {
        padding: 2px 6px 6px;
    }

}
