/* ================================
   REV SLIDER HERO STYLES
   ================================ */

/* Hero Title Styling */
.home-hero .tp-caption {
    font-family: 'Albert Sans', sans-serif !important;
}

.home-hero .tp-caption em {
    font-style: italic;
    font-weight: 300;
}

/* Hero Buttons */
.hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 32px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    border-radius: 50px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.hero-btn--primary {
    background: #FFFFFF;
    color: #000000;
    border: none;
}

.hero-btn--primary:hover {
    background: #F5F5F5;
    transform: translateY(-2px);
}

.hero-btn--primary::after {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M7 17L17 7M17 7H7M17 7V17"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
}

.hero-btn--secondary {
    background: #FFFFFF;
    color: #000000;
    border: none;
}

.hero-btn--secondary:hover {
    background: #F5F5F5;
    transform: translateY(-2px);
}

/* Navigation Arrows - Right Side Circular */
.home-hero .tp-leftarrow,
.home-hero .tp-rightarrow {
    width: 60px !important;
    height: 60px !important;
    background: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important;
    border-radius: 50% !important;
    transition: all 0.3s ease !important;
}

.home-hero .tp-leftarrow:hover,
.home-hero .tp-rightarrow:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: #FFFFFF !important;
}

.home-hero .tp-leftarrow::before,
.home-hero .tp-rightarrow::before {
    color: #FFFFFF !important;
    font-size: 16px !important;
}

/* Stack arrows vertically on right side */
.home-hero .tp-leftarrow {
    right: 80px !important;
    left: auto !important;
    top: calc(50% + 40px) !important;
}

.home-hero .tp-rightarrow {
    right: 80px !important;
    left: auto !important;
    top: calc(50% - 40px) !important;
}

/* Navigation Bullets - Bottom Center */
.home-hero .tp-bullets {
    bottom: 40px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

.home-hero .tp-bullet {
    width: 10px !important;
    height: 10px !important;
    background: rgba(255, 255, 255, 0.4) !important;
    border: none !important;
    border-radius: 50% !important;
    margin: 0 6px !important;
    transition: all 0.3s ease !important;
}

.home-hero .tp-bullet.selected,
.home-hero .tp-bullet:hover {
    background: #FFFFFF !important;
}

/* Rev Slider Responsive */

/* ================================
   HEADER SECTION
   ================================ */

:root {
    --header-height: 192px;
}

.site-header {
    background: #ffffff;
    width: 100%;
    z-index: 1000;
}

.site-header--top {
    position: relative;
}

.site-header--sticky {
    position: fixed;
    top: 0;
    left: 0;
    transform: translateY(-100%);
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08);
    animation: slideDown 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Compact sticky: hide logo row, show single nav row with inline logo */
.site-header--sticky .header-top {
    display: none;
}

.site-header--sticky .header-nav {
    gap: 24px;
}

.site-header--sticky .header-nav__logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.site-header--sticky .header-nav__logo img {
    height: 36px;
}

.site-header--sticky .main-nav {
    flex: 1;
    min-width: 0;
    display: flex;
    justify-content: center;
}

.site-header--sticky .nav-list {
    gap: 20px;
}

@media (max-width: 1439px) {
    .site-header--sticky .header-cta {
        display: none;
    }
}

@keyframes slideDown {
    from { transform: translateY(-100%); }
    to   { transform: translateY(0); }
}

@keyframes slideUp {
    from { transform: translateY(0); }
    to   { transform: translateY(-100%); }
}

/* Logo Row */
.header-top {
    height: 108.69px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.header-top::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 1px;
    background: #F3F3F3;
}

.site-logo img {
    height: 52px;
}

/* Nav Logo — hidden by default, visible in sticky */
.header-nav__logo {
    display: none;
    align-items: center;
}

/* Navigation Row */
.header-nav {
    height: 83px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Reset WordPress default menu styles */
.nav-list,
.nav-list ul,
.dropdown {
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-list {
    display: flex;
    align-items: center;
    gap: 29px;
}

.nav-item {
    position: relative;
}

.nav-item>a {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 16px;
    text-transform: capitalize;
    color: #000000;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: color 0.2s ease;
}

.nav-item>a:hover {
    color: #000000;
}

/* Dropdown arrow */
.has-dropdown>a::after {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    border-right: 1.5px solid #1A1A1A;
    border-bottom: 1.5px solid #1A1A1A;
    transform: rotate(45deg);
    margin-top: -2px;
    margin-left: 2px;
    transition: transform 0.25s ease, margin-top 0.25s ease;
}

/* Rotate arrow on hover */
.has-dropdown:hover>a::after {
    transform: rotate(-135deg);
    margin-top: 2px;
}

/* Invisible bridge to maintain hover state */
.has-dropdown::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 20px;
    background: transparent;
}

/* Dropdown Panel */
.dropdown {
    position: absolute;
    top: calc(100% + 12px);
    left: 0;
    background: #ffffff;
    border-radius: 8px;
    padding: 16px 0;
    min-width: 220px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    pointer-events: none;
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
    z-index: 1000;
}

.dropdown li {
    list-style: none;
}

.dropdown a {
    display: block;
    padding: 10px 20px;
    font-size: 14px;
    color: #6F6F6F;
    text-decoration: none;
    white-space: nowrap;
    transition: background 0.2s ease, color 0.2s ease;
}

.dropdown a:hover {
    background: #F7F7F7;
    color: #000000;
    border-radius: 8px;
}

/* Show dropdown on hover */
.nav-item:hover>.dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

/* Header CTA */
.header-cta {
    flex-shrink: 0;
    background: transparent;
    border: 1px solid #CFCFCF;
    color: #5B5B5B;
    padding: 19px 18px;
    border-radius: 324px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-decoration: none;
    box-shadow: 0 1px 4px 0 rgba(25, 33, 61, 0.08);
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.header-cta:hover {
    background: #1A1A1A;
    color: #ffffff;
    box-shadow: 0 2px 8px 0 rgba(25, 33, 61, 0.15);
}

/* Header CTA in top row — hidden on desktop, shown at smaller breakpoints */
.header-cta--top {
    display: none;
}

/* Short text hidden by default, shown on mobile */
.header-cta__short {
    display: none;
}

/* Arrow hidden by default, shown on mobile */
.header-cta__arrow {
    display: none;
}

/* Breadcrumb Row */
.header-context {
    display: none;
    padding: 12px 0;
    border-top: 1px solid #F3F3F3;
}

.has-breadcrumbs .header-context {
    display: block;
}

.breadcrumbs {
    font-size: 14px;
    color: #8A8A8A;
}

.breadcrumbs a {
    color: #8A8A8A;
    text-decoration: none;
}

.breadcrumbs a:hover {
    color: #000000;
}

.breadcrumbs span {
    margin: 0 8px;
}

/* ================================
   HERO SECTION
   ================================ */

.hero {
    position: relative;
    width: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* Hero Media (Background) */
.hero-media {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.hero-media--video video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.hero-media--image {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.hero-media--image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Hero Overlay */
.hero-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 2;
}

/* Hero Content */
.hero-content {
    position: relative;
    z-index: 3;
    flex: 1;
    width: 100%;

    display: flex;
    flex-direction: column;
    justify-content: flex-end;

    padding-top: var(--header-height);
    padding-bottom: 80px;
    text-align: left;
}

.hero-content .text-display {
    color: var(--color-heading-inverse);
}

/* Hero Actions */
.hero-actions {
    display: flex;
    gap: 16px;
    margin-top: 32px;
}

/* Hero Variants */
.hero--full {
    min-height: calc(100svh - var(--header-height));
}

.hero--compact {
    min-height: 630px;
}

/* Production & Quality hero – same layout as kitchen-style (Trend Kitchen): bottom + left within page width */
.production-hero {
    position: relative;
    min-height: calc(100svh - var(--header-height));
    display: flex;
    align-items: flex-end;
    overflow: hidden;
}

.production-hero__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.production-hero__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 1;
}

.production-hero__content.container {
    position: relative;
    z-index: 2;
    padding-bottom: 80px;
    max-width: var(--site-max-width);
    width: 100%;
    text-align: left;
}

.production-hero__title {
    font-family: 'Inter', sans-serif;
    font-size: 42px;
    font-weight: 500;
    line-height: normal;
    color: #fff;
    margin: 0;
}

@media (max-width: 768px) {
    .production-hero__title {
        font-size: 32px;
        line-height: 1.2;
    }

    .production-hero__content.container {
        padding-bottom: 48px;
    }
}

@media (max-width: 480px) {
    .production-hero__title {
        font-size: 26px;
    }
}

/* ================================
   KITCHENS SECTION
   ================================ */

.kitchens {
    padding: 140px 0;
    background: #fff;
}

.kitchens__header {
    max-width: 1160px;
}

.kitchens__title {
    margin: 0;
}

.kitchens__desc {
    margin-top: 24px;
    max-width: 1160px;
    display: none;
    /* Hidden by default, enable via ACF if needed */
}

/* Kitchen Cards Grid */
.kitchens__grid {
    margin-top: 56px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 74px;
}

/* ================================
   KITCHEN CARD
   ================================ */

.kitchen-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.kitchen-card__media {
    position: relative;
    width: 100%;
    height: 557px;
    overflow: hidden;
    background: #eee;
}

.kitchen-card__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.4s ease;
}

.kitchen-card:hover .kitchen-card__img {
    transform: scale(1.03);
}

/* ================================
   KITCHEN CARD OVERLAYS
   ================================ */

/* Default Title Overlay (Always Visible) */
.kitchen-card__default {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 48px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.4), transparent);
    transition: opacity 0.4s ease;
    pointer-events: none;
}

.kitchen-card__default-title {
    font-family: "Albert Sans", sans-serif;
    font-size: 32px;
    font-weight: 400;
    line-height: 1.3;
    color: #fff;
    margin: 0;
}

/* Hide default title on hover */
.kitchen-card:hover .kitchen-card__default {
    opacity: 0;
}

/* Hover Overlay - Hidden by default */
.kitchen-card__overlay {
    position: absolute;
    inset: 0;
    background: rgba(255, 249, 246, 0.7);
    backdrop-filter: blur(2px);
    opacity: 0;
    pointer-events: none;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    padding: 48px;
    transition: opacity 0.4s ease;
}

.kitchen-card:hover .kitchen-card__overlay {
    opacity: 1;
    pointer-events: auto;
}

/* Overlay Content */
.kitchen-card__content {
    text-align: left;
    color: #000;
    transform: translateY(20px);
    transition: transform 0.4s ease 0.1s;
    max-width: 480px;
}

.kitchen-card:hover .kitchen-card__content {
    transform: translateY(0);
}

/* Title */
.kitchen-card__title {
    font-family: "Albert Sans", sans-serif;
    font-size: 32px;
    font-weight: 400;
    line-height: 1.3;
    color: #000;
    margin: 0 0 16px 0;
}

/* Description */
.kitchen-card__desc {
    font-family: "Inter", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: rgba(0, 0, 0, 0.8);
    margin: 0 0 24px 0;
}

/* CTA Button */
.kitchen-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: #2F2622;
    color: #fff;
    border-radius: 50px;
    font-family: "Inter", sans-serif;
    font-size: 14px;
    font-weight: 500;
    transition: transform 0.3s ease, background 0.3s ease;
    cursor: pointer;
}

.kitchen-card__cta svg {
    transition: transform 0.3s ease;
}

.kitchen-card:hover .kitchen-card__cta {
    transform: translateX(4px);
}

.kitchen-card__cta:hover svg {
    transform: translateX(4px);
}

/* ================================
   HOMEPAGE RESPONSIVE STYLES
   ================================ */

/* Hero Responsive */

/* Kitchens Section Responsive */

/* Projects Slider Responsive */

/* Discover Section Responsive */

/* Contact CTA Responsive */

/* ================================
   FOOTER SECTION
   ================================ */

/* ---- Footer ---- */
.site-footer {
    background: #191817;
    color: #929292;
    padding: 74px 0px 0px 0px;
}

/* ROW 1: Logo */
.footer__logo-row {
    padding-bottom: 48px;
}

.footer__logo {
    display: inline-block;
}

.footer__logo img {
    height: 50px;
    width: auto;
    /* filter: brightness(0) invert(1); */
}

/* ROW 2: 3-column grid — Showrooms + Newsletter */
.footer__main {
    display: grid;
    grid-template-columns: 1fr 1fr 1.3fr;
    gap: 68px;
    padding-bottom: 107px;
}

/* Showroom columns */
.footer__showroom-col {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.footer__showroom-title {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #ffffff;
    line-height: 24px;
    margin: 0;
}

.footer__showroom-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.footer__showroom-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    color: rgba(255, 255, 255, 0.7);
}

.footer__showroom-list li span {
    max-width: 310px;
}

.footer__showroom-list li svg {
    flex-shrink: 0;
    margin-top: 3px;
    color: #ffffff;
    width: 24px;
    height: 24px;
}

.footer__showroom-list li a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    transition: color 0.2s ease;
}

.footer__showroom-list li a:hover {
    color: #ffffff;
}

/* Social icons */
.footer__social {
    display: flex;
    gap: 14px;
}

.footer__social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-color: #ffffff;
    border: none;
    border-radius: 50%;
    color: #000000;
    text-decoration: none;
    transition: background-color 0.2s ease, opacity 0.2s ease;
}

.footer__social-link:hover {
    opacity: 0.8;
}

/* Get Directions */
.footer__directions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'Albert Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 19.43px;
    color: #ffffff;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.footer__directions span {
    border-bottom: 1px solid #ffffff;
    padding-bottom: 7px;
}

.footer__directions:hover {
    opacity: 0.7;
}

/* Newsletter column */
.footer__newsletter-col {
    display: flex;
    flex-direction: column;
}

.footer__newsletter-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #ffffff;
    line-height: 28px;
    margin: 0 0 25px;
}

.footer__newsletter-form {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 28px;
}

.footer__newsletter-field {
    width: 100%;
}

.footer__newsletter-field input {
    width: 100%;
    background: transparent;
    border: 1.44px solid #828282;
    padding: 12px 16px;
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 37.43px;
    color: #ffffff;
    outline: none;
    transition: border-color 0.2s ease;
    box-sizing: border-box;
}

.footer__newsletter-field input::placeholder {
    color: #828282;
}

.footer__newsletter-field input:focus {
    border-color: #ffffff;
}

.footer__newsletter-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #ffffff;
    color: #000000;
    border: none;
    border-radius: 97px;
    padding: 14px 16px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 19.43px;
    cursor: pointer;
    box-shadow: 0 1px 4px rgba(25, 33, 61, 0.08);
    transition: background 0.2s ease, color 0.2s ease;
}

.footer__newsletter-btn:hover {
    background: transparent;
    color: #ffffff;
    outline: 1px solid #ffffff;
}

/* ROW 3: Bottom Bar */
.footer__bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px 0;
    border-top: 1px solid #333333;
}

.footer__copyright {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 14px;
    color: #929292;
    margin: 0;
}

.footer__legal {
    display: flex;
    align-items: center;
    gap: 16px;
}

.footer__legal-link {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 14px;
    color: #929292;
    text-decoration: none;
    transition: color 0.2s ease;
}

.footer__legal-link:hover {
    color: #ffffff;
}

.footer__legal-sep {
    color: #929292;
    font-size: 18px;
}

/* ================================
   PROJECTS SLIDER SECTION
   ================================ */

/* Section Header */
.projects-slider__header {
    margin-bottom: 40px;
}

.projects-slider__title {
    margin: 0;
}

/* Decorative line under title */
.projects-slider__line {
    display: block;
    width: 40px;
    height: 2px;
    background: #000000;
    margin-top: 24px;
}

/* Slider Container - fits within viewport accounting for header/title */
.projects-slider__viewport {
    position: relative;
    width: 100%;
    height: calc(100vh - 160px);
    min-height: 550px;
    max-height: 850px;
    overflow: hidden;
}

/* Decorative grid lines aligned to card */
.projects-slider__lines {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}

.projects-slider__grid-line {
    position: absolute;
    background: rgba(255, 255, 255, 0.15);
}

/* 3 vertical lines: card left, center, right */
.projects-slider__grid-line--v-left,
.projects-slider__grid-line--v-right {
    width: 1px;
    top: 0;
    bottom: 0;
}

/* Center vertical split into two segments so it doesn't overlap the card */
.projects-slider__grid-line--v-center-top,
.projects-slider__grid-line--v-center-bottom {
    width: 1px;
    left: 50%;
}

.projects-slider__grid-line--v-center-top {
    top: 0;
    bottom: calc(50% + 200px);
}

.projects-slider__grid-line--v-center-bottom {
    top: calc(50% + 200px);
    bottom: 0;
}

.projects-slider__grid-line--v-left {
    left: calc(50% - 300px);
}

.projects-slider__grid-line--v-right {
    left: calc(50% + 300px);
}

/* 2 horizontal lines: card top, card bottom */
.projects-slider__grid-line--h-top,
.projects-slider__grid-line--h-bottom {
    height: 1px;
    left: 0;
    right: 0;
}

.projects-slider__grid-line--h-top {
    top: calc(50% - 200px);
}

.projects-slider__grid-line--h-bottom {
    top: calc(50% + 200px);
}

/* Slider Track (holds all slides) */
.projects-slider__track {
    display: flex;
    height: 100%;
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Individual Slide */
.projects-slider__slide {
    position: relative;
    flex: 0 0 100%;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* Slide Background Image */
.projects-slider__bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.projects-slider__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

/* Optional dark overlay on image */
.projects-slider__bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.1);
    pointer-events: none;
}

/* Centered Frosted Glass Card */
.projects-slider__card {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 600px;
    height: 400px;
    padding: 60px 50px;
    background: rgba(0, 0, 0, 0.24);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    /* border: 1px solid rgba(255, 255, 255, 0.3); */
}

/* Content wrapper inside the card */
.projects-slider__card-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    width: 75%;
    text-align: center;
}

/* Text wrapper inside content */
.projects-slider__card-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

/* Project Title */
.projects-slider__card-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 32px;
    font-weight: 400;
    line-height: 1.3;
    color: #ffffff;
    margin: 0;
    text-align: center;
}

/* Project Description */
.projects-slider__card-desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: #ffffff;
    margin: 0;
    text-align: center;
}

/* CTA Button */
.projects-slider__card-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: var(--btn-height);
    padding: 0 26px;
    background: #F1ECE7;
    color: #000000;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 20px;
    text-decoration: none;
    border-radius: 100px;
    box-shadow: 0px 1px 4px rgba(25, 33, 61, 0.08);
    transition: all 0.3s ease;
}

.projects-slider__card-btn:hover {
    background: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0px 4px 12px rgba(25, 33, 61, 0.12);
}

.projects-slider__card-btn svg {
    width: 16px;
    height: 16px;
}

/* Navigation Arrows - Fixed size, won't stretch on zoom */
.projects-slider__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 20;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #ffffff;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: #000;
    transition: opacity 0.2s;
    box-shadow: none;
}

.projects-slider__nav:hover:not(:disabled) {
    opacity: 0.85;
}

/* Position arrows at container edges (1728px max-width, 160px padding) */
.projects-slider__nav--prev {
    left: max(20px, calc(50vw - 864px + 180px));
}

.projects-slider__nav--next {
    right: max(20px, calc(50vw - 864px + 180px));
}

/* Disabled state */
.projects-slider__nav:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

/* ================================
   PROJECTS SLIDER - WordPress Ready
   Data attributes for category filtering:
   - data-category="featured"
   - data-category="residential"
   - data-category="commercial"
   ================================ */

/* Hide slides not matching filter (JS will handle) */
.projects-slider__slide[data-hidden="true"] {
    display: none;
}

/* ================================
   BRANDS SECTION
   ================================ */

.brands {
    padding: 114px 0;
    background: #fff;
}

/* Header */
.brands__header {
    margin-bottom: 37px;
    text-align: left;
}

.brands__title {
    margin: 0;
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    letter-spacing: 0.1em;
    color: #1A1A1E;
}

/* Full-width border rail */
.brands__rail {
    border-top: 1px solid rgba(57, 72, 84, 0.15);
    border-bottom: 1px solid rgba(57, 72, 84, 0.15);
    overflow: hidden;
    background: transparent;
}

/* Animated track (holds two copies of the list) */
.brands__track {
    display: flex;
    width: max-content;
    animation: brands-scroll 100s linear infinite;
}

.brands__track:hover {
    animation-play-state: paused;
}

@keyframes brands-scroll {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
    .brands__track {
        animation: none;
        overflow-x: auto;
    }
}

/* Logo list */
.brands__list {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0;
    list-style: none;
    margin: 0;
    padding: 30px 0;
    flex-shrink: 0;
}

/* Item */
.brands__item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: calc(100vw / 6);
}

/* Logo */
.brands__item img {
    max-height: 160px;
    max-width: 160px;
    width: auto;
    height: auto;
    object-fit: contain;
    filter: grayscale(100%) brightness(0.7);
    opacity: 1;
    transition:
        opacity 0.3s ease,
        filter 0.3s ease,
        transform 0.3s ease;
}

.brands__item:hover img {
    opacity: 1;
    filter: grayscale(0%);
    transform: scale(1.05);
}

/* Responsive: Tablet */

/* Responsive: Mobile */

/* Responsive: Small mobile */

/* ================================
   TESTIMONIALS SECTION
   ================================ */

.testimonials {
    padding: 0 0 140px;
}

.testimonials>.container {
    position: relative;
}

/* Header */
.testimonials__header {
    margin-bottom: 40px;
}

.testimonials__eyebrow {
    margin-bottom: 16px;
}

.testimonials__title {
    margin: 0;
}

/* Slider wrapper */
.testimonials__slider {
    position: relative;
    /* width: 95%; */
    margin: 0 auto;
}

/* Single testimonial */
.testimonials__item {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

/* Glass card */
.testimonials__card {
    width: 100%;
    padding: 114px 0;
    background: #F1ECE7;
    margin: 0 auto;

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

/* Author */
.testimonials__author {
    text-align: center;
}

.testimonials__name {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    line-height: 30px;
    font-weight: 400;
    color: #000;
    margin: 0;
}

.testimonials__role {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 37px;
    font-weight: 400;
    color: #696362;
    margin: 0;
}

/* Quote */
.testimonials__quote {
    position: relative;
    max-width: 60%;
    text-align: center;
}

.testimonials__quote-text {
    font-family: 'Albert Sans', sans-serif;
    font-size: 20px;
    line-height: 34px;
    font-weight: 400;
    color: #000;
    margin: 5px 15px;
}

/* Decorative quote marks */
.testimonials__quote-mark {
    position: absolute;
    width: 60px;
    height: 60px;
}

.testimonials__quote-mark img {
    width: 100%;
    height: 100%;
    opacity: 0.15;
}

.testimonials__quote-mark--start {
    top: -20px;
    left: -80px;
}

.testimonials__quote-mark--end {
    bottom: -20px;
    right: -80px;
}

/* Pagination dots */
.testimonials__pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 32px;
}

.testimonials__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #D5D5D5;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: width 0.3s ease, border-radius 0.3s ease, background 0.3s ease;
}

.testimonials__dot--active {
    width: 24px;
    border-radius: 4px;
    background: #333;
}

/* Navigation arrows */
.testimonials__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #F1ECE7;
    border: none;
    cursor: pointer;
    color: #000;

    display: flex;
    align-items: center;
    justify-content: center;

    transition: opacity 0.25s ease;
    z-index: 10;
}

.testimonials__nav:disabled {
    opacity: 0.5;
    cursor: default;
}

/* Left */
.testimonials__nav--prev {
    left: 20px;
}

/* Right */
.testimonials__nav--next {
    right: 20px;
}

.testimonials__slider {
    position: relative;
    overflow: hidden;
}

.testimonials__track {
    display: flex;
    transition: transform 0.6s ease;
    will-change: transform;
}

.testimonials__item {
    flex: 0 0 100%;
}

/* Testimonials Responsive - After base styles */

/* =========================
   Discover More
========================= */

.discover {
    padding: 96px 0;
    background: #faf6f3;
}

.discover__header {
    margin-bottom: 48px;
}

.discover__eyebrow {
    margin-bottom: 16px;
}

.discover__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

/* Tile */
.discover__item {
    position: relative;
    display: block;
    /* aspect-ratio: 4 / 3; */
    overflow: hidden;
    text-decoration: none;
}

/* Background image */
.discover__bg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

/* Overlay */
.discover__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.45),
            rgba(0, 0, 0, 0.05));
    z-index: 1;
}

/* Logo Container — centered */
.discover__logo-container {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

/* Logo */
.discover__logo {
    display: block;
    max-width: 160px;
    height: auto;
}

/* Hover Effects */
.discover__item:hover .discover__bg {
    transform: scale(1.05);
}

.discover__item:hover .discover__logo-container {
    opacity: 0.85;
}

/* Placeholder styles */
.discover__bg--placeholder {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #1a1a1a 0%, #333 100%);
}

.discover__placeholder-title {
    display: block;
    font-size: 1.25rem;
    font-weight: 500;
    color: #fff;
    letter-spacing: 0.05em;
}

/* Discover Responsive - After base styles */

/* =========================
   Experience Center (Video)
========================= */

.experience {
    padding: 60px;
}

.experience__card {
    position: relative;
    overflow: hidden;
    min-height: 720px;
}

/* Video */
.experience__video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Overlay */
.experience__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right,
            rgba(0, 0, 0, 0.55),
            rgba(0, 0, 0, 0.2),
            rgba(0, 0, 0, 0));
    z-index: 1;
}

/* Inner wrapper for container */
.experience__inner {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: flex-end;
}

.experience__inner .container {
    width: 100%;
    padding-bottom: 80px;
}

/* Content */
.experience__content {
    color: #fff;
    max-width: 500px;
}

/* Title */
.experience__title {
    font-size: 40px;
    font-weight: 400;
    margin-bottom: 24px;
    font-family: 'Albert Sans', sans-serif;
}

/* Actions */
.experience__actions {
    display: flex;
    gap: 12px;
    /* flex-wrap: wrap; */
}

/* Buttons */
.experience__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: var(--btn-height);
    padding: 0 16px;
    font-size: 16px;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: transform 0.25s ease, opacity 0.25s ease;
}

/* Light */
.experience__btn--light {
    background: #fff;
    color: #000;
}

/* Dark */
.experience__btn--dark {
    background: rgba(0, 0, 0, 0.85);
    color: #fff;
}

/* Hover */
.experience__btn:hover {
    transform: translateY(-1px);
    opacity: 0.9;
}

/* Experience Responsive */

/* =========================
   Contact CTA
========================= */

.contact-cta {
    background: #faf6f3;
    /* margin-top: 80px; */
}

/* For Owners page - add top margin to contact-cta */
.owners .contact-cta {
    margin-top: 40px;
}

/* Full-width visual */
.contact-cta__card {
    position: relative;
    width: 100%;
    min-height: 600px;
    overflow: hidden;
}

/* TRUE center layer */
.contact-cta__inner {
    position: relative;
    z-index: 2;
    min-height: 600px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

/* Content block */
.contact-cta__content {
    max-width: 620px;
    color: #fff;
    text-align: left;
}

/* Buttons alignment */
.contact-cta__actions {
    display: flex;
    gap: 12px;
    margin-top: 24px;
}

/* Background */
.contact-cta__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Gradient fallback background */
.contact-cta__bg--gradient {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1a1a1a 100%);
}

/* Overlay */
.contact-cta__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right,
            rgba(0, 0, 0, 0.6),
            rgba(0, 0, 0, 0.25),
            rgba(0, 0, 0, 0));
    z-index: 1;
}

/* Content */
.contact-cta__content {
    position: relative;
    z-index: 2;
    padding: 96px 0;
    max-width: 520px;
    color: #fff;
    text-align: left;
}

/* Contact CTA – container alignment fix */
.contact-cta__inner.container {
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding-left: var(--site-padding-x);
    padding-right: var(--site-padding-x);
}

/* Title */
.contact-cta__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    margin-bottom: 24px;
    text-align: left;
}

/* Actions */
.contact-cta__actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-start;
}

/* Buttons */
.contact-cta__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: var(--btn-height);
    padding: 0 18px;
    font-size: 16px;
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    border-radius: 100px;
    border: none;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    transition: transform 0.25s ease, opacity 0.25s ease;
}

/* Light button */
.contact-cta__btn--light {
    background: #fff;
    color: #000;
}

/* Dark button */
.contact-cta__btn--dark {
    background: #fff;
    color: #000;
}

/* Hover */
.contact-cta__btn:hover {
    transform: translateY(-1px);
    opacity: 0.9;
}

/* Contact CTA Responsive - After base styles */

/* =========================
   KITCHEN STYLE ARCHIVE PAGE
========================= */
.kitchen-style-archive {
    background-color: var(--color-bg-primary);
}

/* Hero Section */
.ks-hero {
    position: relative;
    min-height: calc(100svh - var(--header-height) - 60px);
    display: flex;
    align-items: flex-end;
    overflow: hidden;
}

.ks-hero__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.ks-hero__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ks-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.25) 50%, rgba(0, 0, 0, 0) 100%);
    z-index: 1;
}

.ks-hero__content.container {
    position: relative;
    z-index: 2;
    padding-bottom: 80px;
    max-width: var(--site-max-width);
    width: 100%;
    text-align: left;
}

.ks-hero__content .ks-hero__title,
.ks-hero__content .ks-hero__desc {
    max-width: 60%;
}

.ks-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 42px;
    font-weight: 500;
    color: #fff;
    margin-bottom: 20px;
    line-height: 1.2;
}

.ks-hero__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.75;
}

/* Content Section */
.ks-content {
    /* background-color: #FAF6F3; */
    padding: 64px 0;
}

.ks-content__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #1A1A1A;
    margin-bottom: 24px;
    line-height: 1.3;
}

.ks-content__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #666;
    line-height: 1.8;
    /* max-width: 900px; */
}

.ks-content__text p {
    margin-bottom: 16px;
}

.ks-content__text p:last-child {
    margin-bottom: 0;
}

/* Ranges/Projects Section */
.ks-ranges {
    padding: 80px 0;
    background-color: #F1ECE7;
}

.ks-ranges__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #1A1A1A;
    margin-bottom: 40px;
}

.ks-ranges__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 74px;
    column-gap: 32px;
}

.ks-ranges__empty {
    grid-column: 1 / -1;
    text-align: center;
    color: #666;
    padding: 40px;
}

/* Kitchen Style Archive Responsive */

/* =========================
   ABOUT PAGE
========================= */
.about-page {
    background-color: var(--color-bg-primary);
}

/* =========================
   ABOUT HERO (Split Layout)
========================= */
.about-hero {
    background-color: #F1ECE7;
    display: flex;
    align-items: center;
    justify-content: center;
}

.about-hero__grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: clamp(40px, 6vw, 80px);
    align-items: center;
    width: 100%;
}

.about-hero__content {
    max-width: 100%;
}

.about-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.3;
    color: #000;
    margin: 0 0 20px;
}

.about-hero__text {
    font-size: 16px;
    line-height: 1.8;
    color: #000000;
    margin: 0;
    max-width: 100%;
}

.about-hero__text p {
    margin: 0 0 16px;
}

.about-hero__text p:last-child {
    margin-bottom: 0;
}

.about-hero__media {
    position: relative;
}

.about-hero__media img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    object-position: center center;
}

.about-hero--home {
    padding: clamp(48px, 5.5vw, 96px) 0;
}

.about-hero--home .about-hero__media img {
    max-height: clamp(380px, 40vw, 580px);
}

/* =========================
   ABOUT SECTIONS (Company, Sustainability, Production)
========================= */
.about-section {
    padding: clamp(60px, 8vw, 100px) 0;
    position: relative;
}

.about-section__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(32px, 5vw, 48px);
    align-items: center;
}

.about-section__media {
    order: -1;
}

.about-section__media img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

.about-section__content {
    order: 1;
}

.about-section__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 16px;
}

.about-section__text {
    margin: 0 0 24px;
    font-size: 14px;
    line-height: 1.75;
    color: #000000;
}

.about-section__text p {
    margin: 0 0 16px;
}

.about-section__text p:last-child {
    margin-bottom: 0;
}

.about-section__content .btn {
    display: inline-flex;
}

/* Desktop layout for About Sections */
@media (min-width: 1024px) {
    .about-section__grid {
        grid-template-columns: 1.2fr 1fr;
        gap: 80px;
    }

    .about-section__media {
        order: 0;
    }

    .about-section__media img {
        max-height: 420px;
    }

    .about-section__content {
        order: 0;
    }

    /* Reverse layout - content first, then media */
    .about-section--reverse .about-section__grid {
        grid-template-columns: 1fr 1.2fr;
    }

    .about-section--reverse .about-section__content {
        order: -1;
    }

    .about-section--reverse .about-section__media {
        order: 0;
    }
}

/* Background modifiers */
.about-section--alt {
    background-color: #F1ECE7;
}

/* =========================
   ABOUT COMPANY (Two Column Layout)
========================= */
.about-company {
    padding: clamp(60px, 6.6vw, 114px) 0 clamp(48px, 4.6vw, 80px);
    background-color: #FFFFFF;
}

/* About Us page: section-specific padding */
.about-company--the-company {
    padding-bottom: 0;
}

.about-company--alt.about-company--reverse {
    padding: 114px 0;
}

.about-company--production {
    padding-top: 0;
}

.about-company__wrapper {
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding: 0 var(--site-padding-x);
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
    align-items: center;
}

.about-company__media {
    align-self: stretch;
}

.about-company__media img {
    width: 100%;
    min-height: clamp(300px, 32.1vw, 555px);
    height: 100%;
    display: block;
    object-fit: cover;
}

.about-company__card {
    background: #FFFFFF;
}

.about-company__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 20px;
}

.about-company__text {
    margin: 0 0 28px;
    font-size: 16px;
    line-height: 1.75;
    color: #000000;
}

.about-company__text p {
    margin: 0 0 16px;
}

.about-company__text p:last-child {
    margin-bottom: 0;
}

.about-company__card .btn {
    display: inline-flex;
}

.about-company__card .btn img[src*="arrow"] {
    transform: rotate(-45deg);
}

.about-company__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.about-company__buttons .btn {
    display: inline-flex;
}

/* Desktop layout - Simple two column */
@media (min-width: 1024px) {
    .about-company__wrapper {
        grid-template-columns: 1fr 1fr;
        gap: clamp(60px, 6.7vw, 115px);
    }

    /* Reverse layout - content first, then image */
    .about-company--reverse .about-company__card {
        order: -1;
    }
}

/* Background modifier */


.about-company--alt .about-company__card {
    background: transparent;
}

/* =========================
   WHY CHOOSE NOLTE
========================= */
.about-why {
    padding: 74px 0;
    background-color: #F1ECE7;
    overflow: hidden;
}

.about-why__header {
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding: 0 var(--site-padding-x);
    margin-bottom: 56px;
}

.about-why__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.3;
    color: #2C2B2B;
    margin: 0 0 28px;
}

.about-why__intro {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    max-width: 929px;
    margin: 0;
}

/* Slider wrapper - starts aligned with container, extends to right edge */
.about-why__slider-wrapper {
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding-left: var(--site-padding-x);
}

.about-why__slider {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding-right: var(--site-padding-x);
    padding-bottom: 20px;
    cursor: grab;
    user-select: none;
}

.about-why__slider:active {
    cursor: grabbing;
    scroll-behavior: auto;
}

.about-why__slider::-webkit-scrollbar {
    display: none;
}

/* Cards */
.about-why__card {
    flex: 0 0 456px;
    min-width: 456px;
    background: #FFFFFF;
    border: 1px solid #D5D5D5;
    padding: 26px 24px 42px;
    display: flex;
    flex-direction: column;
    gap: 42px;
}

.about-why__card-media {
    width: 100%;
    height: 333px;
    overflow: hidden;
}

.about-why__card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
    pointer-events: none;
    user-select: none;
    -webkit-user-drag: none;
}

.about-why__card:hover .about-why__card-media img {
    transform: scale(1.05);
}

.about-why__card-content {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.about-why__card-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 36px;
    color: #0D0D0D;
    margin: 0;
}

.about-why__card-text {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.42px;
    color: #353535;
    margin: 0;
}

/* =========================
   OUR TEAM
========================= */
.about-team {
    padding: clamp(60px, 8vw, 100px) 0;
    background-color: #F8F8F8;
}

.about-team__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: clamp(32px, 5vw, 60px);
    align-items: start;
}

.about-team__media {
    order: -1;
    display: flex;
    justify-content: flex-end;
}

.about-team__media img {
    width: auto;
    height: auto;
    max-width: 440px;
    max-height: 400px;
    display: block;
    object-fit: cover;
}

.about-team__content {
    order: 1;
    align-self: center;
}

.about-team__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 20px;
}

.about-team__text {
    margin: 0 0 28px;
    font-size: 16px;
    line-height: 1.75;
    color: #000000;
}

.about-team__text p {
    margin: 0;
}

.about-team__content .btn {
    display: inline-flex;
}

.about-team__content .btn img[src*="arrow"] {
    transform: rotate(-45deg);
}

/* Desktop layout - Content left, Image right */
@media (min-width: 1024px) {
    .about-team__grid {
        grid-template-columns: 1.5fr 1fr;
        gap: clamp(40px, 5vw, 60px);
    }

    .about-team__content {
        order: 0;
    }

    .about-team__media {
        order: 0;
    }

    .about-team__media img {
        max-width: 440px;
        max-height: 400px;
    }
}

/* 1024px only - wider text, smaller image */
@media (min-width: 1024px) and (max-width: 1199px) {
    .about-team__grid {
        grid-template-columns: 7fr 3fr;
    }

    .about-team__media {
        min-width: 0;
    }

    .about-team__media img {
        width: 100%;
        max-width: 100%;
    }
}

/* =========================
   PAGE HERO
========================= */
.page-hero {
    position: relative;
    height: 420px;
}

.page-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.page-hero__content {
    position: absolute;
    bottom: 32px;
}

.page-hero__title {
    color: #ffffff;
}

/* =========================
   BREADCRUMB
========================= */
.breadcrumb {
    padding: 16px 0;
    font-size: 14px;
    opacity: 0.7;
    /* max-height: 60px; */
}

.breadcrumb a {
    text-decoration: none;
}

/* =========================
   SUSTAINABILITY PAGE
========================= */
.sustainability-page {
    background: #fff;
}

/* Breadcrumb Section */
.sust-breadcrumb {
    background: #fff;
}

.sust-breadcrumb .breadcrumb {
    padding: 24px 0;
}

.sust-breadcrumb .breadcrumb a {
    color: #000000;
    font-size: 14px;
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    text-decoration: none;
}

.sust-breadcrumb .breadcrumb a:hover {
    color: #000;
}

.sust-breadcrumb .breadcrumb__separator {
    color: #000000;
    margin: 0 8px;
}

.sust-breadcrumb .breadcrumb__current {
    color: #000000;
    font-size: 14px;
    font-family: 'Inter', sans-serif;
    font-weight: 400;
}

/* Video Hero Section (Full-screen video background) */
.sust-video-hero {
    position: relative;
    width: 100%;
    min-height: calc(100svh - var(--header-height));
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sust-video-hero__video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.sust-video-hero__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    z-index: 0;
}

.sust-video-hero__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.35);
    z-index: 1;
}

.sust-video-hero__content {
    position: relative;
    z-index: 2;
    text-align: center;
    max-width: 900px;
    padding: 0 var(--site-padding-x);
}

.sust-video-hero__title {
    color: #fff;
    font-size: clamp(32px, 4vw, 64px);
    font-family: 'Albert Sans', sans-serif;
    font-weight: 300;
    line-height: 1.2;
    margin: 0;
}

/* Hero Section (Original - beige background with title, description, image) – side-by-side on desktop */
.sust-hero {
    padding: clamp(40px, 4.63vw, 80px) 0;
    background: #F1ECE7;
}

/* Production & Quality page only: no background on intro section */
.production-page .sust-hero {
    background: transparent;
}

.sust-hero .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    gap: clamp(40px, 4.63vw, 80px);
}

.sust-hero__content {
    display: flex;
    flex-direction: column;
    gap: clamp(16px, 1.85vw, 32px);
    margin-bottom: 0;
    justify-content: center;
}

.sust-hero__title {
    color: #1A1A1E;
    font-size: clamp(24px, 2.08vw, 36px);
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
}

.sust-hero__desc {
    max-width: 1202px;
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
    margin: 0;
}

.sust-hero__image {
    min-height: clamp(300px, 32vw, 555px);
}

.sust-hero__image img {
    width: 100%;
    height: 100%;
    min-height: clamp(300px, 32vw, 555px);
    object-fit: cover;
    display: block;
}

@media (max-width: 767px) {
    .sust-hero .container {
        grid-template-columns: 1fr;
        gap: clamp(24px, 4vw, 40px);
    }

    .sust-hero__content {
        margin-bottom: 0;
    }

    .sust-hero__image {
        min-height: 0;
    }

    .sust-hero__image img {
        height: auto;
        min-height: 0;
        max-height: 400px;
    }
}

/* Sustainability Pillars Section */
.sust-pillars {
    padding: clamp(60px, 6.6vw, 114px) 0;
    background: #fff;
}

.sust-pillars__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.3;
    color: #1A1A1E;
    margin: 0 0 clamp(30px, 3.47vw, 60px);
}

.sust-pillars__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: clamp(24px, 2.78vw, 48px);
}

.sust-pillars__item {
    padding: clamp(24px, 2.31vw, 40px);
    background: #F1ECE7;
    border-radius: 4px;
}

.sust-pillars__item-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: clamp(18px, 1.39vw, 24px);
    font-weight: 500;
    line-height: 1.3;
    color: #1A1A1E;
    margin: 0 0 16px;
}

.sust-pillars__item-desc {
    font-family: 'Inter', sans-serif;
    font-size: clamp(14px, 0.93vw, 16px);
    line-height: 26px;
    color: #000000;
    margin: 0;
}

/* Generic Section (Responsible Design & Made in Germany) */
.sust-section {
    padding: clamp(60px, 6.6vw, 114px) 0;
}

.sust-section--white {
    background: #fff;
}

/* Production & Quality page: Production Overview – contained beige card like owners-scheme */
.production-page .sust-section--white {
    background: #FFFFFF;
    padding: clamp(24px, 2.5vw, 40px) 0;
}

.production-page .sust-section--white .sust-section__grid {
    align-items: center;
    gap: 74px;
    padding: 74px;
    background: #F1ECE7;
    overflow: hidden;
}

.production-page .sust-section--white .sust-section__media {
    flex: 1 1 0;
    max-width: none;
    height: 555px;
}

.production-page .sust-section--white .sust-section__media img {
    min-height: auto;
    height: 100%;
}

.production-page .sust-section--white .sust-section__content {
    flex: 1 1 0;
    min-width: 0;
    gap: 47px;
}

@media (max-width: 767px) {
    .production-page .sust-section--white .sust-section__grid {
        flex-direction: column;
        padding: 24px;
        gap: 32px;
    }

    .production-page .sust-section--white .sust-section__media {
        height: auto;
    }

    .production-page .sust-section--white .sust-section__media img {
        height: auto;
        max-height: 400px;
    }
}

/* Contained beige card layout (owners-scheme style) for sust-section--beige */
.production-page .sust-section--beige,
.sustainability-page .sust-section--beige {
    background: #FFFFFF;
    padding: 0;
}

.production-page .sust-section--beige .sust-section__grid,
.sustainability-page .sust-section--beige .sust-section__grid {
    align-items: center;
    gap: 74px;
    padding: 74px;
    background: #F1ECE7;
    overflow: hidden;
}

.production-page .sust-section--beige .sust-section__media,
.sustainability-page .sust-section--beige .sust-section__media {
    flex: 1 1 0;
    max-width: none;
    height: 555px;
}

.production-page .sust-section--beige .sust-section__media img,
.sustainability-page .sust-section--beige .sust-section__media img {
    min-height: auto;
    height: 100%;
}

.production-page .sust-section--beige .sust-section__content,
.sustainability-page .sust-section--beige .sust-section__content {
    flex: 1 1 0;
    min-width: 0;
    gap: 47px;
}

@media (max-width: 767px) {
    .production-page .sust-section--beige .sust-section__grid,
    .sustainability-page .sust-section--beige .sust-section__grid {
        flex-direction: column;
        padding: 24px;
        gap: 32px;
    }

    .production-page .sust-section--beige .sust-section__media,
    .sustainability-page .sust-section--beige .sust-section__media {
        height: auto;
    }

    .production-page .sust-section--beige .sust-section__media img,
    .sustainability-page .sust-section--beige .sust-section__media img {
        height: auto;
        max-height: 400px;
    }
}

.sust-section--beige {
    background: #F1ECE7;
}

.sust-section__grid {
    display: flex;
    align-items: stretch;
    gap: clamp(40px, 5.79vw, 100px);
}

.sust-section__grid--reverse {
    flex-direction: row-reverse;
}

.sust-section__media {
    flex: 0 0 45%;
    max-width: 620px;
}

.sust-section__media img {
    width: 100%;
    height: 100%;
    min-height: clamp(300px, 32.12vw, 555px);
    object-fit: cover;
    display: block;
}

.sust-section__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: clamp(24px, 2.72vw, 47px);
}

.sust-section__title {
    color: #1A1A1E;
    font-size: 40px;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
    max-width: 80%;
}

.sust-section__desc {
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
}

.sust-section__desc p {
    margin: 0 0 1em;
}

.sust-section__desc p:last-child {
    margin-bottom: 0;
}

@media (max-width: 767px) {

    .sust-section__grid,
    .sust-section__grid--reverse {
        flex-direction: column;
    }

    .sust-section__media {
        flex: none;
        max-width: 100%;
        width: 100%;
    }

    .sust-section__media img {
        height: auto;
        max-height: 400px;
    }
}

/* Quality Section */
.sust-quality {
    padding: 114px 0;
    /* background: #FEFCFB; */
}

.sust-quality__title {
    color: #1A1A1E;
    font-size: 40px;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0 0 clamp(30px, 3.36vw, 58px);
}

.sust-quality__grid {
    display: flex;
    align-items: flex-start;
    gap: clamp(30px, 4.28vw, 74px);
}

.sust-quality__desc {
    flex: 1;
}

.sust-quality__desc p {
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
    margin: 0;
}

.sust-quality__quote {
    max-width: 805px;
    flex: 1.5;
    flex-shrink: 0;
}

.sust-quality__quote p {
    color: #000;
    font-size: clamp(22px, 2.08vw, 36px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
}

@media (max-width: 767px) {
    .sust-quality__grid {
        flex-direction: column;
    }

    .sust-quality__quote {
        max-width: 100%;
    }
}

/* Testimonial/Quote Banner */
.sust-testimonial {
    padding: 100px 0 120px;
    background: #F1ECE7;
}

.sust-testimonial__card {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

.sust-testimonial__quote {
    position: relative;
    margin: 0;
    padding: 0 60px;
}

.sust-testimonial__text {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    line-height: 1.6;
    font-weight: 400;
    color: #000000;
    margin: 0;
    text-align: center;
}

.sust-testimonial__mark {
    position: absolute;
    width: 39px;
    height: 40px;
}

.sust-testimonial__mark--start {
    top: -10px;
    left: 0;
}

.sust-testimonial__mark--end {
    bottom: -10px;
    right: 0;
}

.sust-testimonial__mark img {
    width: 39px;
    height: 40px;
    object-fit: contain;
    opacity: 0.15;
}

/* Responsibility Section */
.sust-responsibility {
    padding: clamp(60px, 6.6vw, 114px) 0;
    background: #fff;
}

.sust-responsibility__grid {
    display: flex;
    align-items: stretch;
    gap: clamp(24px, 2.31vw, 40px);
}

.sust-responsibility__gallery {
    position: relative;
    width: 50%;
    flex-shrink: 0;
}

.sust-responsibility__gallery-item {
    position: absolute;
}

.sust-responsibility__gallery-item--top-left {
    top: 0;
    left: 0;
    width: 42.4%;
    height: 49%;
}

.sust-responsibility__gallery-item--bottom-left {
    bottom: 0;
    left: 0;
    width: 42.4%;
    height: 49%;
}

.sust-responsibility__gallery-item--right {
    top: 0;
    right: 0;
    width: 56%;
    height: 100%;
}

.sust-responsibility__gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.sust-responsibility__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: clamp(24px, 2.72vw, 47px);
    width: 50%;
}

.sust-responsibility__title {
    color: #1A1A1E;
    font-size: 40px;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}

.sust-responsibility__desc {
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
    margin: 0;
}

.sust-responsibility__bullets {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: clamp(14px, 1.27vw, 22px);
}

.sust-responsibility__bullet {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
}

.sust-responsibility__bullet-icon {
    width: 24px;
    height: 24px;
    background-image: url('../images/check-circle.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
    margin-top: 2px;
}

.sust-responsibility__footer {
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
    margin: 0;
}

@media (max-width: 767px) {
    .sust-responsibility__grid {
        flex-direction: column;
    }

    .sust-responsibility__content {
        width: 100%;
        order: -1;
    }

    .sust-responsibility__gallery {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }

    .sust-responsibility__gallery-item {
        position: static;
    }

    .sust-responsibility__gallery-item--top-left,
    .sust-responsibility__gallery-item--bottom-left {
        width: 100%;
        height: 180px;
    }

    .sust-responsibility__gallery-item--right {
        width: 100%;
        height: 220px;
        grid-column: span 2;
    }

    .sust-responsibility__gallery-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

/* Long Life Section */
.sust-longlife {
    padding: clamp(40px, 4.63vw, 80px) 0;
    background: #F1ECE7;
}

.sust-longlife__content {
    display: flex;
    flex-direction: column;
    gap: clamp(16px, 1.85vw, 32px);
    margin-bottom: clamp(20px, 2.31vw, 40px);
}

.sust-longlife__title {
    color: #1A1A1E;
    font-size: 40px;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
}

.sust-longlife__desc {
    max-width: 1202px;
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
    margin: 0;
}

.sust-longlife__image img {
    width: 100%;
    max-height: clamp(300px, 40vw, 553px);
    object-fit: cover;
}

/* =========================
   AWARDS
========================= */
.awards {
    padding: 96px 0;
}

.awards__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
}

.awards__logos {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    align-items: center;
    justify-items: center;
    gap: 48px;
    padding: 48px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.awards__logos img {
    max-height: 120px;
    max-width: 100%;
    object-fit: contain;
}

/* Production & Quality – Awards slider (follows site globals) */
.prod-awards--slider {
    padding: clamp(60px, 6.6vw, 114px) 0;
}

.prod-awards--slider .container {
    display: flex;
    flex-direction: column;
    gap: clamp(32px, 3.7vw, 56px);
}

.prod-awards__heading {
    margin: 0;
}

.prod-awards-slider {
    position: relative;
    width: 100%;
}

/* Full-width image area; height limited to viewport; arrows sit outside this area */
.prod-awards-slider__viewport {
    position: relative;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 16 / 10;
    max-height: 70vh;
    min-height: clamp(240px, 30vw, 400px);
    background: #555555;
}

.prod-awards-slider__track {
    display: flex;
    position: absolute;
    inset: 0;
    transition: transform 0.5s ease;
    will-change: transform;
}

.prod-awards-slider__slide {
    flex: 0 0 100%;
    width: 100%;
    min-width: 0;
    height: 100%;
}

.prod-awards-slider__media {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #555555;
}

.prod-awards-slider__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.prod-awards-slider__gradient {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 60%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.80) 100%);
    pointer-events: none;
    z-index: 0;
}

.prod-awards-slider__desc {
    position: absolute;
    left: 30px;
    right: 0;
    bottom: 0;
    max-width: 65ch;
    padding: 0 clamp(24px, 3.5vw, 50px) clamp(24px, 3.5vw, 50px) 0;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(16px, 1.5vw, 20px);
    font-weight: 400;
    line-height: 26px;
    word-wrap: break-word;
    z-index: 2;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}

/* Arrows outside the image width: positioned in container padding, not inside viewport */
.prod-awards-slider__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: none;
    background: #F1ECE7;
    color: #000;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.25s ease;
}

.prod-awards-slider__nav--prev {
    left: -56px;
}

.prod-awards-slider__nav--next {
    right: -56px;
}

.prod-awards-slider__nav:hover:not(:disabled) {
    opacity: 0.8;
}

.prod-awards-slider__nav:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.prod-awards-slider--single .prod-awards-slider__nav {
    display: none;
}

.prod-awards__section-desc {
    margin-top: 0;
}

@media (max-width: 768px) {
    .prod-awards-slider__viewport {
        min-height: 220px;
        max-height: 55vh;
    }

    .prod-awards-slider__desc {
        font-size: 12px;
        line-height: 16px;
        padding: 0 15px 15px 0;
    }

    .prod-awards-slider__nav {
        width: 36px;
        height: 36px;
        padding: 6px;
    }

    /* On small screens arrows sit just inside so they don’t overflow */
    .prod-awards-slider__nav--prev {
        left: 8px;
    }

    .prod-awards-slider__nav--next {
        right: 8px;
    }
}

/* Old Company Hero styles removed - see THE COMPANY PAGE section at end of file */

/* Company Page Breadcrumb */
.company .breadcrumb {
    padding: 20px 0;
    font-size: 14px;
    color: #8A8A8A;
    border-bottom: 1px solid #F3F3F3;
}

.company .breadcrumb a {
    color: #8A8A8A;
    text-decoration: none;
    transition: color 0.2s ease;
}

.company .breadcrumb a:hover {
    color: #000000;
}

/* =========================
   MISSION & VISION SECTION
========================= */
.mission-vision {
    position: relative;
    padding: 114px 0;
    overflow: hidden;
}

.mission-vision>.container {
    position: relative;
}

/* Background Text */
.mission-vision__bg-text {
    position: absolute;
    top: 65%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    pointer-events: none;
    z-index: 1;
}

.mission-vision__bg-text-item {
    font-family: 'Albert Sans', sans-serif;
    font-size: 145px;
    font-weight: 400;
    color: rgba(0, 0, 0, 0.05);
    line-height: 1;
    user-select: none;
    text-transform: capitalize;
    transition: all 0.6s ease;
}

.mission-vision__bg-text-item.is-active {
    color: rgba(0, 0, 0, 0.12);
    font-weight: 500;
    transform: scale(1.02);
}

.mission-vision__bg-text-item--left {
    text-align: right;
    padding-left: 0;
    font-weight: 900;
}

.mission-vision__bg-text-item--right {
    text-align: right;
    padding-right: 0;
    font-weight: 900;
}

/* Positioning Wrapper */
.mission-vision__wrapper {
    position: relative;
    width: 1600px;
    max-width: 100%;
    height: 667px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Circular Container */
.mission-vision__circle {
    position: relative;
    width: 550px;
    height: 550px;
    border: 1px solid #C8C8C8;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

/* Logo at Top */
.mission-vision__logo {
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translate(-50%, -100px);
    width: 201px;
    height: 201px;
    background: #ffffff;
    border-radius: 50%;
    border: 1px solid #C8C8C8;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 35px;
    z-index: 3;
}

.mission-vision__logo img {
    width: 100%;
    height: auto;
}

/* Content Container */
.mission-vision__content {
    position: relative;
    width: 100%;
    max-width: 419px;
    text-align: center;
    overflow: visible;
    height: 300px;
}

.mission-vision__item {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 0 30px;
    opacity: 0;
    visibility: hidden;
    transition: none;
}

.mission-vision__item.is-active {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, -50%);
}

/* Swap Animation Classes */
.mission-vision__item.swapping-out {
    animation: swapOut 0.6s ease-in-out forwards;
}

.mission-vision__item.swapping-in {
    animation: swapIn 0.6s ease-in-out forwards;
}

@keyframes swapOut {
    0% {
        opacity: 1;
        transform: translate(-50%, -50%) translateY(0);
    }

    100% {
        opacity: 0;
        transform: translate(-50%, -50%) translateY(-80px);
    }
}

@keyframes swapIn {
    0% {
        opacity: 0;
        visibility: visible;
        transform: translate(-50%, -50%) translateY(80px);
    }

    100% {
        opacity: 1;
        visibility: visible;
        transform: translate(-50%, -50%) translateY(0);
    }
}

.mission-vision__heading {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 55.64px;
    margin: 0 0 30px;
    color: #1A1A1E;
}

.mission-vision__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    margin: 0;
    text-align: center;
}

/* Navigation Arrows */
.mission-vision__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border: 1px solid rgba(0, 0, 0, 0.20);
    border-radius: 50%;
    background: #F1ECE7;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 4;
    color: #000000;
    padding: 8.4px;
}

.mission-vision__nav:hover {
    border-color: rgba(0, 0, 0, 0.4);
    transform: translateY(-50%) scale(1.05);
}

.mission-vision__nav.is-inactive {
    opacity: 0.3;
    cursor: not-allowed;
    pointer-events: none;
}

.mission-vision__nav.is-inactive:hover {
    border-color: rgba(0, 0, 0, 0.20);
    transform: translateY(-50%) scale(1);
}

.mission-vision__nav--prev {
    left: 405px;
    transform: translateY(-50%) rotate(0deg);
}

.mission-vision__nav--prev:hover {
    transform: translateY(-50%) rotate(0deg) scale(1.05);
}

.mission-vision__nav--next {
    right: 405px;
}

.mission-vision__nav svg {
    width: 18px;
    height: 16px;
}

/* Decorator Dots */
.mission-vision__dot {
    position: absolute;
    top: 50%;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    z-index: 3;
    transform: translateY(-50%);
}

.mission-vision__dot--left {
    left: 521.5px;
    background: #ffffff;
    border: 1px solid #C8C8C8;
}

.mission-vision__dot--right {
    right: 521.5px;
    background: #C7C7C7;
}

/*  =========================
    OUR JOURNEY
    ========================= */

.journey {
    padding: 120px 0;
    background: #F1ECE7;
}

.journey__layout {
    display: flex;
    flex-direction: column;
    gap: 64px;
}

/* Header */
.journey__header {
    max-width: 680px;
}

.journey__heading {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    color: #1A1A1E;
    margin: 0 0 12px;
}

.journey__intro {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
    color: rgba(26, 26, 30, 0.65);
    margin: 0;
}

/* Timeline */
.journey__timeline {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid rgba(0, 0, 0, 0.10);
    padding-bottom: 16px;
}

.journey__year {
    appearance: none;
    background: none;
    border: 0;
    padding: 0 0 16px;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 400;
    cursor: pointer;
    color: rgba(26, 26, 30, 0.35);
    position: relative;
    transition: color 0.3s ease;
}

.journey__year:hover {
    color: rgba(26, 26, 30, 0.6);
}

.journey__year.is-active {
    color: #1A1A1E;
}

.journey__year::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 2px;
    background: #1A1A1E;
    transform: scaleX(0);
    transition: transform 0.3s ease;
}

.journey__year.is-active::after {
    transform: scaleX(1);
}

/* Content */
.journey__content {
    display: grid;
    grid-template-columns: 380px 1fr;
    gap: 80px;
    align-items: flex-start;
    margin-top: 24px;
}

.journey__media {
    width: 100%;
}

.journey__media img {
    width: 100%;
    height: auto;
    display: block;
}

.journey__text {
    max-width: 640px;
}

.journey__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 1.25;
    color: #1A1A1E;
    margin: 0 0 28px;
    letter-spacing: -0.01em;
}

.journey__description {
    width: 100%;
}

.journey__description p {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.75;
    color: rgba(26, 26, 30, 0.72);
    margin: 0 0 20px;
}

.journey__description p:last-child {
    margin-bottom: 0;
}

/* =========================
   PROJECT DETAIL PAGE
   ========================= */

/* ----- Project Hero ----- */
.project-hero {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.project-hero__media {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.project-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.project-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.65) 0%,
            rgba(0, 0, 0, 0.3) 50%,
            rgba(0, 0, 0, 0.1) 100%);
    z-index: 2;
}

.project-hero__content {
    position: relative;
    z-index: 3;
    padding-bottom: 80px;
    margin-top: auto;
}

.project-hero__eyebrow {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 26px;
}

.project-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 1.2;
    color: #ffffff;
    margin: 0 0 32px;
}

.project-hero__actions {
    display: flex;
    gap: 16px;
    margin-bottom: 48px;
}

.project-hero__btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 13px 32px;
    background: #ffffff;
    color: #000000;
    border-radius: 50px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-decoration: none;
    transition: transform 0.3s ease, background 0.3s ease;
}

.project-hero__btn:hover {
    background: rgba(255, 255, 255, 0.95);
    transform: translateY(-2px);
}

.project-hero__btn img {
    width: 16px;
    height: 16px;
    transition: transform 0.3s ease;
}

.project-hero__btn:hover img {
    transform: translateX(4px);
}

.project-hero__scroll {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: #ffffff;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    transition: transform 0.3s ease, background 0.3s ease;
    color: #000000;
}

.project-hero__scroll:hover {
    background: rgba(255, 255, 255, 0.95);
    transform: translateY(4px);
}

.project-hero__scroll svg {
    width: 24px;
    height: 24px;
}

/* ----- Breadcrumb (Project Page) ----- */
.project-detail .breadcrumb {
    padding: 25px 0;
    font-size: 14px;
    color: #8A8A8A;
    border-bottom: 1px solid #F3F3F3;
}

.project-detail .breadcrumb a {
    color: #8A8A8A;
    text-decoration: none;
    transition: color 0.2s ease;
}

.project-detail .breadcrumb a:hover {
    color: #000000;
}

.breadcrumb__separator {
    margin: 0 10px;
    color: #CCCCCC;
}

.breadcrumb__current {
    color: #000000;
}

/* Breadcrumb inside hero */
.breadcrumb--hero {
    position: relative;
    z-index: 3;
    padding: 24px 0;
    border-bottom: none;
    background: transparent;
}

.breadcrumb--hero,
.breadcrumb--hero a,
.breadcrumb--hero .breadcrumb__separator,
.breadcrumb--hero .breadcrumb__current {
    color: rgba(255, 255, 255, 0.8);
}

.breadcrumb--hero a:hover {
    color: #ffffff;
}

/* Breadcrumb light (For Owners - above hero on white background) */
.breadcrumb--light {
    /* padding: 24px 0; */
    background: #ffffff;
    border-bottom: none;
}

.breadcrumb--light,
.breadcrumb--light a,
.breadcrumb--light .breadcrumb__separator,
.breadcrumb--light .breadcrumb__current {
    color: #000000;
}

.breadcrumb--light .breadcrumb__separator {
    margin: 0 8px;
}

.breadcrumb--light a:hover {
    color: #000000;
}

/* Compact hero (For Owners) - same height as For Owners page hero */
.project-hero--compact {
    min-height: 75vh;
    justify-content: flex-end;
}

/* ----- Project Overview ----- */
.project-overview {
    padding: 80px 0 120px;
}

.project-overview__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin-bottom: 40px;
}

.project-overview__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: stretch;
}

/* Left Content Column */
.project-overview__content {
    display: flex;
    flex-direction: column;
    gap: 48px;
}

/* Partner Logo */
.project-overview__partner {
    display: block;
}

.project-overview__partner img {
    max-width: 280px;
    height: auto;
    object-fit: contain;
    object-position: left center;
}

/* Description */
.project-overview__desc {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.project-overview__desc p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    color: #000000;
    margin: 0;
}

/* Right: Metadata Box */
.project-overview__meta {
    padding: 48px;
    border: 1px solid #E5E5E5;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px 40px;
    align-content: start;
}

/* Individual Meta Item */
.project-meta {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.project-meta__label {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #999999;
}

.project-meta__value {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: #000000;
}

/* ----- Project Gallery ----- */
.project-gallery {
    padding: 74px 0;
}

.project-gallery__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 48px;
}

.project-gallery__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

/* Large images span full column */
.project-gallery__item {
    overflow: hidden;
}

.project-gallery__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.project-gallery__item:hover img {
    transform: scale(1.03);
}

/* First row: 2 large images */
.project-gallery__item--large {
    height: 400px;
}

/* Second row: 3 images - override grid for this row */
.project-gallery__item:nth-child(n+3) {
    height: 280px;
}

/* Make row 2 have 3 columns */
.project-gallery__grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 24px;
}

.project-gallery__item--large:nth-child(1) {
    grid-column: span 3;
}

.project-gallery__item--large:nth-child(2) {
    grid-column: span 3;
}

.project-gallery__item:nth-child(3),
.project-gallery__item:nth-child(4),
.project-gallery__item:nth-child(5) {
    grid-column: span 2;
}

/* ----- Project Testimonial ----- */
.project-testimonial {
    padding: 0 91px;
    background: #F1ECE7;
    width: calc(100% - 2 * var(--site-padding-x));
    max-width: calc(var(--site-max-width) - 2 * var(--site-padding-x));
    margin: 0 auto;
}

.project-testimonial__card {
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    text-align: center;
    padding: 74px;
}

.project-testimonial__author {
    text-align: center;
}

.project-testimonial__name {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    color: #000000;
    margin: 0;
}

.project-testimonial__role {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #000000;
    margin: 4px 0 0;
}

.project-testimonial__quote {
    position: relative;
    margin: 0;
    padding: 0 60px;
}

.project-testimonial__text {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    line-height: 1.6;
    font-weight: 400;
    color: #000000;
    margin: 0;
    text-align: center;
}

.project-testimonial__mark {
    position: absolute;
    width: 39px;
    height: 40px;
}

.project-testimonial__mark--start {
    top: -10px;
    left: 0;
}

.project-testimonial__mark--end {
    bottom: -10px;
    right: 0;
}

.project-testimonial__mark img {
    width: 39px;
    height: 40px;
    object-fit: contain;
    opacity: 0.15;
}

/* ----- Reusable Testimonial Block ----- */
.testimonial-block {
    padding: 100px 0 120px;
    background: #F1ECE7;
    width: calc(100% - 2 * var(--site-padding-x));
    max-width: calc(var(--site-max-width) - 2 * var(--site-padding-x));
    margin: 0 auto;
}

.testimonial-block__card {
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    text-align: center;
}

.testimonial-block__author {
    text-align: center;
}

.testimonial-block__name {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    color: #000000;
    margin: 0;
}

.testimonial-block__role {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #000000;
    margin: 4px 0 0;
}

.testimonial-block__quote {
    position: relative;
    margin: 0;
    padding: 0 60px;
}

.testimonial-block__text {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    line-height: 1.6;
    font-weight: 400;
    color: #000000;
    margin: 0;
    text-align: center;
}

.testimonial-block__mark {
    position: absolute;
    width: 39px;
    height: 40px;
}

.testimonial-block__mark--start {
    top: -10px;
    left: 0;
}

.testimonial-block__mark--end {
    bottom: -10px;
    right: 0;
}

.testimonial-block__mark img {
    width: 39px;
    height: 40px;
    object-fit: contain;
    opacity: 0.15;
}

/* ----- Reusable Two Column Block ----- */
.two-col-block {
    background: #F1ECE7;
    padding: 74px;
    overflow: hidden;
    width: calc(100% - 2 * var(--site-padding-x));
    max-width: calc(var(--site-max-width) - 2 * var(--site-padding-x));
    margin: 0 auto;
}

.two-col-block__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 50px;
    color: #000000;
    text-transform: capitalize;
    margin: 0 0 58px;
}

.two-col-block__grid {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0;
}

.two-col-block__desc {
    flex: 0 0 calc(50% - 20px);
}

.two-col-block__desc p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    margin: 0 0 16px;
}

.two-col-block__desc p:last-child {
    margin-bottom: 0;
}

.two-col-block__highlight {
    flex: 0 0 calc(50% - 20px);
    max-width: calc(50% - 20px);
    padding-top: 4px;
}

.two-col-block__highlight p {
    font-family: 'Inter', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 45px;
    text-transform: none;
    color: #000000;
    margin: 0;
}

/* ----- Related Projects Slider ----- */
.related-projects {
    padding: 74px 0;
}

.related-projects--fk {
    background: #F1ECE7;
}

.related-projects--fk .project-card__media::before {
    display: none;
}

.related-projects__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* margin-bottom: 64px; */
}

.related-projects__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 clamp(24px, 2.31vw, 40px);
}

.related-projects__slider-wrapper {
    position: relative;
}

.related-projects__viewport {
    overflow: hidden;
}

.related-projects__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    transition: opacity 0.2s, background 0.2s;
    z-index: 2;
}

.related-projects__arrow--prev {
    left: -64px;
    right: auto;
    background: #E8D6CD;
}

.related-projects__arrow--prev img {
    transform: rotate(180deg);
}

.related-projects__arrow--next {
    right: -64px;
    left: auto;
    background: #E8D6CD;
}

.related-projects__arrow:hover:not(:disabled) {
    opacity: 1;
}

.related-projects__arrow:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

.related-projects__arrow svg,
.related-projects__arrow img {
    width: 20px;
    height: 20px;
}

.related-projects__slider {
    display: flex;
    gap: 32px;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.related-projects__slider .project-card {
    flex: 0 0 calc((100% - 64px) / 3);
    max-width: calc((100% - 64px) / 3);
}

/* Dot pagination for mobile swipe */
.related-projects__dots {
    display: none;
    justify-content: center;
    gap: 6px;
    padding-top: 24px;
}

.related-projects__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: #D9D9D9;
    padding: 0;
    cursor: pointer;
    transition: width 0.3s ease, border-radius 0.3s ease, background 0.3s ease;
}

.related-projects__dot.is-active {
    width: 24px;
    border-radius: 4px;
    background: #333;
}

.related-projects__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 74px;
    column-gap: 32px;
}

/* Related Project Card */
.related-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.related-card__media {
    position: relative;
    width: 100%;
    /* aspect-ratio: 16 / 10; */
    overflow: hidden;
    margin-bottom: 24px;
}

.related-card__media img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.related-card:hover .related-card__media img {
    transform: scale(1.05);
}

.related-card__content {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 16px;
    border-bottom: 1px solid #E0E0E0;
}

.related-card__content::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #000000;
    transition: width 0.7s ease;
}

.related-card:hover .related-card__content::after {
    width: 100%;
}

.related-card__title {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0;
}

.related-card__arrow {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
    flex-shrink: 0;
}

.related-card__arrow img {
    width: 20px;
    height: 20px;
}

.related-card:hover .related-card__arrow {
    transform: translateX(6px);
}

/* =============================================
   PROFESSIONAL PROJECT DETAIL V2 - Split Hero
   ============================================= */

.project-hero-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: calc(100svh - var(--header-height));
    max-height: calc(100svh - var(--header-height));
    background: #1A1A1A;
}

/* Left Panel - Dark Content */
.project-hero-split__content {
    background: #1A1A1A;
    display: flex;
    align-items: center;
    padding: 114px 60px 114px max(var(--site-padding-x), calc((100vw - var(--site-max-width)) / 2 + var(--site-padding-x)));
    overflow: hidden;
}

.project-hero-split__inner {
    max-width: 500px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 95px;
}

.project-hero-split__header {
    display: flex;
    flex-direction: column;
    gap: 46px;
}

.project-hero-split__eyebrow {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 20.74px;
    color: rgba(255, 255, 255, 0.54);
    margin: 0;
}

.project-hero-split__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    color: #ffffff;
    margin: 0;
}

/* 2x2 Metadata Grid */
.project-hero-split__meta-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 21px;
    max-width: 495px;
    width: 100%;
}

.project-hero-split__meta-item {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.project-hero-split__meta-label {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 20.74px;
    color: rgba(255, 255, 255, 0.54);
}

.project-hero-split__meta-value {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 26px;
    color: #ffffff;
}

/* Hero CTA Button */
.project-hero-split__actions .project-hero__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 26px;
    background: #ffffff;
    color: #000000;
    border-radius: 97px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 19.43px;
    text-decoration: none;
    box-shadow: 0px 1px 4px rgba(25, 33, 61, 0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.project-hero-split__actions .project-hero__btn:hover {
    transform: translateY(-2px);
    box-shadow: 0px 2px 8px rgba(25, 33, 61, 0.12);
}

.project-hero-split__actions .project-hero__btn img {
    width: 24px;
    height: 24px;
}

/* Right Panel - Image Carousel */
.project-hero-split__slider {
    position: relative;
    overflow: hidden;
}

.project-hero-split__viewport {
    height: 100%;
    overflow: hidden;
}

.project-hero-split__track {
    display: flex;
    height: 100%;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.project-hero-split__slide {
    flex: 0 0 100%;
    min-width: 0;
    height: 100%;
}

.project-hero-split__slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Hero Slider Navigation Arrows */
.project-hero-split__nav {
    position: absolute;
    width: 64px;
    height: 64px;
    border-radius: 1000px;
    border: none;
    outline: 0.5px solid #F1ECE7;
    outline-offset: -0.5px;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #F1ECE7;
    transition: background 0.2s ease, opacity 0.2s ease;
    z-index: 2;
}

.project-hero-split__nav:hover {
    background: rgba(255, 255, 255, 0.1);
}

.project-hero-split__nav:disabled {
    opacity: 0.3;
    cursor: default;
}

.project-hero-split__nav svg {
    width: 19px;
    height: 19px;
}

.project-hero-split__nav--next {
    right: 24px;
    bottom: 98px;
}

.project-hero-split__nav--prev {
    right: 24px;
    bottom: 24px;
}

/* Hero Dot Pagination */
.project-hero-split__pagination {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 15px;
    z-index: 2;
}

.project-hero-split__dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: none;
    background: rgba(255, 255, 255, 0.23);
    padding: 0;
    cursor: pointer;
    transition: background 0.3s ease, box-shadow 0.3s ease;
}

.project-hero-split__dot.is-active {
    width: 20px;
    height: 20px;
    background: transparent;
    outline: 0.5px solid #ffffff;
    outline-offset: -0.5px;
    position: relative;
}

.project-hero-split__dot.is-active::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 12px;
    height: 12px;
    background: #ffffff;
    border-radius: 50%;
}

/* =============================================
   PROFESSIONAL PROJECT OVERVIEW V2
   ============================================= */

.project-overview--pro-v2 {
    padding: 74px 0 0;
}

.project-overview__desc--full {
    max-width: 80%;
}

.project-overview__desc--full p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    color: #000000;
    margin: 0 0 16px;
}

/* Overview Gallery Slider */
.project-overview-slider {
    position: relative;
    padding: 58px 0 114px;
}

.project-overview-slider__viewport {
    overflow: hidden;
}

.project-overview-slider__track {
    display: flex;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.project-overview-slider__slide {
    flex: 0 0 100%;
    min-width: 0;
}

.project-overview-slider__slide img {
    width: 100%;
    height: auto;
    max-height: 600px;
    object-fit: cover;
    display: block;
}

/* Overview Slider Navigation */
.project-overview-slider__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid #D5D5D5;
    background: #ffffff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0D0D0D;
    transition: background 0.2s ease, opacity 0.2s ease;
    z-index: 2;
}

.project-overview-slider__nav:hover {
    background: #F5F5F5;
}

.project-overview-slider__nav:disabled {
    opacity: 0.3;
    cursor: default;
}

.project-overview-slider__nav--prev {
    left: 60px;
}

.project-overview-slider__nav--next {
    right: 60px;
}

/* Overview Slider Dots */
.project-overview-slider__pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 24px;
}

.project-overview-slider__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #D5D5D5;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: width 0.3s ease, border-radius 0.3s ease, background 0.3s ease;
}

.project-overview-slider__dot.is-active {
    width: 24px;
    border-radius: 4px;
    background: #333;
}

/* =============================================
   PROJECT VIDEO SECTION
   ============================================= */

.project-video {
    padding: 0 0 74px;
}

.project-video__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 30px;
}

.project-video__player {
    position: relative;
    overflow: hidden;
    background: #000;
    cursor: pointer;
    max-height: 70vh;
}

.project-video__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.project-video__thumb-placeholder {
    width: 100%;
    height: 100%;
    background: #222;
}

.project-video__play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    transition: transform 0.2s ease;
}

.project-video__play:hover {
    transform: translate(-50%, -50%) scale(1.1);
}

.project-video__player--embed {
    aspect-ratio: 22 / 9;
    position: relative;
}

.project-video__player iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* Self-hosted video */
.project-video__player--native {
    cursor: default;
}

.project-video__player--native video {
    width: 100%;
    max-height: 70vh;
    object-fit: cover;
    display: block;
}

.project-video__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    color: #000000;
    margin: 32px 0 0;
}

/* =========================
   FOR PROFESSIONALS PAGE
   ========================= */

/* ----- Professionals Hero ----- */
.professionals-hero {
    background-color: #F1ECE7;
    display: flex;
    align-items: center;
    justify-content: center;
}

.professionals-hero__grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: clamp(40px, 6vw, 80px);
    align-items: center;
    width: 100%;
}

.professionals-hero__content {
    max-width: 480px;
}

.professionals-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.3;
    color: #000000;
    margin: 0 0 20px;
}

.professionals-hero__text {
    font-size: 16px;
    line-height: 1.8;
    color: #000000;
    margin: 0 0 32px;
}

.professionals-hero__actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.professionals-hero__actions .btn {
    padding: 0 20px;
    font-size: 16px;
    height: 46px;
}

.professionals-hero__media {
    position: relative;
}

.professionals-hero__media img {
    width: 100%;
    height: 65vh;
    display: block;
    object-fit: cover;
    object-position: center center;
}

.professionals-hero__brochure-tab {
    position: absolute;
    right: -1px;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    transform-origin: center center;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: #2F2622;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    white-space: nowrap;
    border-radius: 6px 6px 0 0;
    transition: opacity 0.2s;
}

.professionals-hero__brochure-tab:hover {
    opacity: 0.85;
}

/* ----- Projects Section ----- */
.projects-section {
    padding: 100px 0 120px;
    background: #ffffff;
}

.projects-section--alt {
    background: #F5F0EB;
}

.projects-section__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 64px;
}

.projects-section__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0;
}

.btn-explore {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    height: var(--btn-height);
    padding: 0 32px;
    background: #000000;
    color: #ffffff;
    border-radius: 50px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    transition: transform 0.3s ease, background 0.3s ease;
}

.btn-explore:hover {
    background: #1a1a1a;
    transform: translateY(-2px);
}

.btn-explore img {
    width: 16px;
    height: 16px;
    transition: transform 0.3s ease;
}

.btn-explore:hover img {
    transform: translateX(4px);
}

.btn-explore__short {
    display: none;
}

/* ----- Projects Grid ----- */
.projects-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 74px;
    column-gap: 32px;
}

/* ----- Project Card ----- */
.project-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.project-card__media {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 17;
    overflow: hidden;
    margin-bottom: 24px;
}

.project-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Image zoom on hover */
.project-card__media:hover img {
    transform: scale(1.03);
}

/* Marble effect: only when card has .has-marble-effect (opt-in per card/section) */
.project-card.has-marble-effect .project-card__media {
    --mask-x: 50%;
    --mask-y: 50%;
    --marble-opacity: 0;
}

.project-card.has-marble-effect .project-card__media::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: var(--marble-bg);
    background-size: cover;
    background-position: center;
    opacity: var(--marble-opacity, 0);
    z-index: 5;
    pointer-events: none;
    transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    mask-image: radial-gradient(circle 80px at var(--mask-x, 50%) var(--mask-y, 50%),
            black 100%,
            transparent 100%);
    -webkit-mask-image: radial-gradient(circle 80px at var(--mask-x, 50%) var(--mask-y, 50%),
            black 100%,
            transparent 100%);
}

/* Subtle dark overlay on hover */
.project-card__media::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0);
    z-index: 2;
    pointer-events: none;
    transition: background 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.project-card__media:hover::after {
    background: rgba(0, 0, 0, 0.12);
}

.project-card__content {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 16px;
    border-bottom: 1px solid #E0E0E0;
}

.project-card__content::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #000000;
    transition: width 0.7s ease;
}

.project-card:hover .project-card__content::after {
    width: 100%;
}

.project-card__title {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0;
}

.project-card__arrow {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
    flex-shrink: 0;
}

.project-card__arrow img {
    width: 20px;
    height: 20px;
}

.project-card:hover .project-card__arrow {
    transform: translateX(6px);
}

/* View button on card */
.project-card__view {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #ffffff;
    color: #000000;
    padding: 12px 28px;
    border-radius: 50px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 10;
}

.project-card:hover .project-card__view {
    opacity: 1;
}

/* ---------- Talk To Our Expert Form ---------- */
.expert-form {
    padding: 0 0 clamp(60px, 6.94vw, 120px);
    background: #FFFFFF;
}

.expert-form__card {
    max-width: 807px;
    margin: 0 auto;
    padding: 56px;
    background: #F5F0EB;
    border: none;
}

.expert-form__title {
    font-family: 'Inter', sans-serif;
    font-size: 32px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 28.79px;
    color: #000000;
    margin: 0 0 56px;
}

.expert-form__form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.expert-form__field {
    width: 100%;
}

.expert-form__field input,
.expert-form__field select,
.expert-form__field textarea {
    width: 100%;
    height: 72px;
    padding: 17px 16px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 37.43px;
    color: #313131;
    background: transparent;
    border: 1.44px solid #D5D5D5;
    border-radius: 0;
    outline: none;
    transition: border-color 0.25s ease;
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
}

.expert-form__field input::placeholder,
.expert-form__field textarea::placeholder {
    color: #828282;
}

.expert-form__field select {
    color: #828282;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg width='13' height='7' viewBox='0 0 13 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6.5 6L12 1' stroke='%23828282' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 48px;
}

.expert-form__field select.has-value,
.expert-form__field select:valid {
    color: #313131;
}

.expert-form__field input:focus,
.expert-form__field select:focus,
.expert-form__field textarea:focus {
    border-color: #313131;
}

.expert-form__field textarea {
    height: 136px;
    resize: vertical;
    min-height: 136px;
    line-height: 1.5;
}

/* Phone field: country code + number side by side */
.expert-form__field--phone {
    display: flex;
    gap: 12px;
}

.expert-form__field--phone .expert-form__country-code,
.expert-form__field--phone select {
    flex: 0 0 auto;
    width: auto;
    color: #313131;
    padding-right: 56px;
}

.expert-form__field--phone input {
    flex: 1;
}

/* Submit button */
.expert-form__actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
}

/* CF7 form styling within expert-form */
.expert-form__card .wpcf7-form {
    display: flex;
    flex-direction: column;
}

.expert-form__card .wpcf7-form p {
    margin: 0;
}

.expert-form__card .wpcf7-form .expert-form__form {
    gap: 15px;
}

.expert-form__card .wpcf7-form input[type="text"],
.expert-form__card .wpcf7-form input[type="email"],
.expert-form__card .wpcf7-form input[type="tel"],
.expert-form__card .wpcf7-form select,
.expert-form__card .wpcf7-form textarea {
    width: 100%;
    height: 72px;
    padding: 17px 16px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 37.43px;
    color: #313131;
    background: #FFFFFF;
    border: 1.44px solid #D5D5D5;
    border-radius: 0;
    outline: none;
    transition: border-color 0.25s ease;
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
}

.expert-form__card .wpcf7-form input::placeholder,
.expert-form__card .wpcf7-form textarea::placeholder {
    color: #828282;
}

.expert-form__card .wpcf7-form select {
    color: #828282;
    background-image: url("data:image/svg+xml,%3Csvg width='13' height='7' viewBox='0 0 13 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6.5 6L12 1' stroke='%23828282' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 48px;
}

.expert-form__card .wpcf7-form textarea {
    height: 136px;
    min-height: 136px;
    line-height: 1.5;
}

.expert-form__card .wpcf7-form input:focus,
.expert-form__card .wpcf7-form select:focus,
.expert-form__card .wpcf7-form textarea:focus {
    border-color: #313131;
}

/* CF7 wrap spans — make them transparent to flex layout */
.expert-form__field .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.expert-form__field--phone .wpcf7-form-control-wrap {
    display: contents;
}

/* CF7 autop inserts <br> and wraps in <p> — neutralize them inside phone row */
.expert-form__field--phone br {
    display: none;
}

.expert-form__field--phone p {
    display: flex;
    gap: 12px;
    margin: 0;
    width: 100%;
}

.expert-form__field--phone p .wpcf7-form-control-wrap {
    display: contents;
}

/* CF7 phone row */
.expert-form__field--phone select,
.expert-form__card .expert-form__field--phone select {
    flex: 0 0 auto;
    width: auto;
    color: #313131;
    padding-right: 56px;
}

.expert-form__field--phone input[type="tel"],
.expert-form__card .expert-form__field--phone input[type="tel"] {
    flex: 1;
    min-width: 0;
}

/* CF7 submit - wrap in container for arrow icon */
.expert-form__card .wpcf7-form .expert-form__actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
    clear: both;
}

.expert-form__card .wpcf7-submit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: var(--btn-height);
    padding: 0 26px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 20px;
    color: #FFFFFF;
    background-color: #2F2622;
    border: none;
    border-radius: 100px;
    box-shadow: 0px 1px 4px rgba(25, 33, 61, 0.08);
    cursor: pointer;
    float: right;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
    background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 12L12 4M12 4H6M12 4V10' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 20px center;
    padding-right: 46px;
}

.expert-form__card .wpcf7-submit:hover {
    transform: translateY(-1px);
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.12);
}

/* CF7 validation messages */
.expert-form__card .wpcf7-not-valid-tip {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: #dc3545;
    margin-top: 4px;
}

.expert-form__card .wpcf7-response-output {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    margin: 16px 0 0;
    padding: 12px 16px;
    border-radius: 0;
}

/* Success state */
.expert-form__success {
    text-align: center;
    padding: 40px 0;
}

.expert-form__success svg {
    margin-bottom: 16px;
}

.expert-form__success p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: #000000;
}

/* Responsive */
@media (max-width: 767px) {
    .expert-form {
        padding: 40px 0;
    }

    .expert-form__card {
        padding: 32px 20px;
    }

    .expert-form__title {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 32px;
    }

    .expert-form__field--phone {
        flex-direction: column;
        gap: 15px;
    }

    .expert-form__field--phone .expert-form__country-code,
    .expert-form__field--phone select,
    .expert-form__card .expert-form__field--phone select {
        flex: none;
        width: 100%;
    }
}

/* =========================
   ARCHIVE HERO (Listing Pages)
   ========================= */
.archive-hero {
    position: relative;
    min-height: 400px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* For Owners archive hero - matches detail page style */
.archive-hero--for-owners {
    min-height: calc(100svh - var(--header-height) - 60px);
    justify-content: flex-end;
}

.archive-hero__media {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.archive-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.archive-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.6) 0%,
            rgba(0, 0, 0, 0.3) 50%,
            rgba(0, 0, 0, 0.1) 100%);
    z-index: 2;
}

.archive-hero .breadcrumb--hero {
    position: relative;
    z-index: 3;
}

.archive-hero__content {
    position: relative;
    z-index: 3;
    padding-bottom: 60px;
}

.archive-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 42px;
    font-weight: 500;
    line-height: 1.3;
    color: #ffffff;
    margin: 0;
}

.archive-hero__subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: rgba(255, 255, 255, 0.8);
    margin: 16px 0 0;
}

/* ================================
   COMING SOON PAGE
   ================================ */
.coming-soon-page {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.coming-soon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - var(--header-height, 192px));
    width: 100%;
    background: #F1ECE7;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.coming-soon--has-bg {
    background-color: #000;
}

.coming-soon__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    z-index: 1;
}

.coming-soon__content {
    position: relative;
    z-index: 2;
    text-align: center;
    max-width: 650px;
    padding: 80px 24px;
}

.coming-soon__label {
    display: inline-block;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #9A9A9A;
    margin-bottom: 20px;
}

.coming-soon--has-bg .coming-soon__label {
    color: rgba(255, 255, 255, 0.7);
}

.coming-soon__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 72px;
    font-weight: 400;
    color: #000;
    margin-bottom: 24px;
    letter-spacing: -0.02em;
    line-height: 1.1;
}

.coming-soon--has-bg .coming-soon__title {
    color: #fff;
}

.coming-soon__line {
    width: 60px;
    height: 2px;
    background: #000;
    margin: 0 auto 28px;
}

.coming-soon--has-bg .coming-soon__line {
    background: rgba(255, 255, 255, 0.5);
}

.coming-soon__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: #5B5B5B;
    margin-bottom: 44px;
}

.coming-soon--has-bg .coming-soon__text {
    color: rgba(255, 255, 255, 0.8);
}

.coming-soon--has-bg .coming-soon__btn {
    background: #fff;
    color: #000;
}

.coming-soon--has-bg .coming-soon__btn:hover {
    background: #F1ECE7;
}

/* Listing Archive Grid (News, Blog, Nolte Talks) */
.archive-page--news .archive-grid-section,
.archive-page--blog .archive-grid-section,
.archive-page--insights .archive-grid-section {
    padding: 74px 0;
}

.archive-page--news .archive-grid,
.archive-page--blog .archive-grid,
.archive-page--insights .archive-grid {
    gap: 43px;
}

.archive-page--news .archive-card,
.archive-page--blog .archive-card,
.archive-page--insights .archive-card {
    background: #F1ECE7;
    border: none;
    display: flex;
    flex-direction: column;
}

.archive-page--news .archive-card__media,
.archive-page--blog .archive-card__media,
.archive-page--insights .archive-card__media {
    aspect-ratio: 435 / 350;
    margin-bottom: 0;
    overflow: hidden;
}

.archive-page--news .archive-card__media img,
.archive-page--blog .archive-card__media img,
.archive-page--insights .archive-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.archive-page--news .archive-card__title,
.archive-page--blog .archive-card__title,
.archive-page--insights .archive-card__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    color: #0D0D0D;
    margin: 0;
    line-height: 32.24px;
    padding: 20px 22px 0;
}

.archive-page--news .archive-card__meta,
.archive-page--blog .archive-card__meta,
.archive-page--insights .archive-card__meta {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #9A9A9A;
    line-height: 27px;
    padding: 12px 22px 20px;
}

/* Famous Kitchen Archive */
.archive-page--famous-kitchen .mfn-hero {
    align-items: center;
}

.archive-page--famous-kitchen .mfn-hero__content {
    padding-bottom: 0;
    text-align: center;
}

.archive-page--famous-kitchen .archive-grid-section {
    padding: 64px 0 96px;
}

.archive-page--famous-kitchen .archive-grid {
    gap: 74px 32px;
}

/* Famous Kitchen Card */
.fk-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.fk-card__media {
    position: relative;
    width: 100%;
    overflow: hidden;
    margin-bottom: 24px;
}

.fk-card__media img {
    width: 100%;
    height: 440px;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.fk-card:hover .fk-card__media img {
    transform: scale(1.03);
}

.fk-card__footer {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 16px;
    border-bottom: 1px solid #E0E0E0;
}

.fk-card__footer::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #000000;
    transition: width 0.7s ease;
}

.fk-card:hover .fk-card__footer::after {
    width: 100%;
}

.fk-card__title {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0;
}

.fk-card__arrow {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    color: #000;
}

.fk-card:hover .fk-card__arrow {
    transform: translateX(6px);
}

/* Famous Kitchen Image Slider */
/* Famous Kitchen Slider Header */
.fk-slider-header {
    margin-bottom: 24px;
}

.fk-slider-header__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 46px;
    color: #000000;
    margin-bottom: 12px;
}

.fk-slider-header__desc {
    font-size: 16px;
    line-height: 24px;
    color: #000000;
}

/* Famous Kitchen Slider */
.fk-slider {
    position: relative;
    margin: 0 auto 114px;
    width: 100%;
}

.fk-slider__viewport {
    overflow: hidden;
}

.fk-slider__track {
    display: flex;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fk-slider__slide {
    flex: 0 0 100%;
    min-width: 0;
}

.fk-slider__slide img {
    width: 100%;
    height: auto;
    display: block;
    max-height: 70vh;
    object-fit: cover;
}

.fk-slider__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #F1ECE7;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0D0D0D;
    transition: background 0.2s ease, opacity 0.2s ease;
    z-index: 2;
}

.fk-slider__nav:hover {
    background: #E5DED7;
}

.fk-slider__nav:disabled {
    opacity: 0.3;
    cursor: default;
}

.fk-slider__nav--prev {
    left: -56px;
}

.fk-slider__nav--next {
    right: -56px;
}

.fk-slider__pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
}

.fk-slider__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #D5D5D5;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: width 0.3s ease, border-radius 0.3s ease, background 0.3s ease;
}

.fk-slider__dot--active {
    width: 24px;
    border-radius: 4px;
    background: #333;
}

/* Famous Kitchen Video Block */
.fk-video-block {
    margin: 40px 0;
}

.fk-video-block__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 32px;
    font-weight: 400;
    color: #0D0D0D;
    margin: 0 0 24px;
    line-height: 1.3;
}

.fk-video-block__player {
    position: relative;
    width: 100%;
    height: 550px;
    overflow: hidden;
    background: #000;
    cursor: pointer;
}

.fk-video-block__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.fk-video-block__play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    transition: transform 0.2s ease;
}

.fk-video-block__play:hover {
    transform: translate(-50%, -50%) scale(1.1);
}

.fk-video-block__player iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.fk-video-block__video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.fk-video-block__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    line-height: 24px;
    margin: 20px 0 0;
}

/* ================================
   FAMOUS KITCHEN DETAIL PAGE
   ================================ */

/* Hero Banner */
.fk-hero {
    position: relative;
    width: 100%;
    height: calc(100svh - var(--header-height));
    overflow: hidden;
}

.fk-hero__media {
    width: 100%;
    height: 100%;
}

.fk-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.fk-hero__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    background: linear-gradient(180deg,
        rgba(0, 0, 0, 0.15) 0%,
        rgba(0, 0, 0, 0.10) 50%,
        rgba(0, 0, 0, 0.60) 100%);
}

.fk-hero__overlay .container {
    width: 100%;
    padding-bottom: 60px;
}

.fk-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 52px;
    color: #FFFFFF;
    margin: 0;
    text-align: left;
}

/* Excerpt */
.fk-excerpt {
    padding: 40px 0;
}

.fk-excerpt__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #000000;
    margin: 0;
    width: 80%;
}

/* Text blocks */
.single-post--famous-kitchen .single-post__text-block h2 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 36px;
    font-weight: 400;
    color: #000000;
    margin: 32px 0 12px;
    line-height: 46px;
    text-transform: capitalize;
}

.single-post--famous-kitchen .single-post__text-block h3 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #000000;
    margin: 28px 0 10px;
    line-height: 1.4;
}

.single-post--famous-kitchen .single-post__text-block p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #000000;
    margin: 0 0 20px;
}

.single-post--famous-kitchen .single-post__text-block ul {
    margin: 0 0 20px;
    padding-left: 20px;
}

.single-post--famous-kitchen .single-post__text-block ul li {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 24px;
    color: #000000;
    margin-bottom: 4px;
}

.single-post--famous-kitchen .single-post__text-block ul li strong {
    color: #000000;
}

/* Two-column text — famous kitchen highlight style */
.single-post--famous-kitchen .single-post__two-col {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 74px;
    margin: 0;
    padding: 74px;
    box-sizing: border-box;
    background: #F1ECE7;
    max-width: 1408px;
    overflow: hidden;
}

.single-post--famous-kitchen .single-post__two-col-left {
    width: 593px;
    max-width: 593px;
    flex: 0 0 593px;
}

.single-post--famous-kitchen .single-post__two-col-right {
    flex: 1 1 0;
    min-width: 0;
}

.single-post--famous-kitchen .single-post__two-col-text {
    padding: 0;
}

.single-post--famous-kitchen .single-post__two-col-text h2 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 50px;
    color: #000000;
    text-transform: capitalize;
    word-wrap: break-word;
    margin: 0 0 16px;
}

.single-post--famous-kitchen .single-post__two-col-text p {
    margin: 0;
    color: #000000;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    word-wrap: break-word;
}

.single-post--famous-kitchen .single-post__two-col-text p + p {
    margin-top: 16px;
}

.single-post--famous-kitchen .single-post__two-col-right .single-post__two-col-text {
    display: block;
}

.single-post--famous-kitchen .single-post__two-col-right .single-post__two-col-text p {
    font-family: 'Inter', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 45px;
    color: #000000;
    margin: 0;
}

/* Feature split sections */
.single-post--famous-kitchen .feature-split__title {
    font-size: 36px;
    font-weight: 400;
    line-height: 46px;
    color: #000000;
    text-transform: capitalize;
}

.single-post--famous-kitchen .feature-split__desc,
.single-post--famous-kitchen .feature-split__desc p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #000000;
}

/* Feature columns (beige highlight) */
/* Break the two-col-block container out of the article's nested container */
.single-post--famous-kitchen .single-post__article > .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.single-post--famous-kitchen .feature-columns--blog {
    width: 100%;
    margin: 0 auto;
    padding: 74px;
    box-sizing: border-box;
    background: #F1ECE7;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 58px;
}

.single-post--famous-kitchen .feature-columns--blog > .feature-columns__title {
    width: 50%;
    max-width: 100%;
    margin: 0;
}

.single-post--famous-kitchen .feature-columns--blog .feature-columns__grid {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 74px;
}

.single-post--famous-kitchen .feature-columns--blog .feature-columns__col--left {
    flex: 1 1 0;
    min-width: 0;
}

.single-post--famous-kitchen .feature-columns--blog .feature-columns__col--right {
    flex: 1 1 0;
    min-width: 0;
}

.single-post--famous-kitchen .feature-columns__title {
    color: #000000;
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 50px;
    text-transform: capitalize;
    word-wrap: break-word;
    margin: 0;
}

.single-post--famous-kitchen .feature-columns__title--large {
    margin: 0;
    color: #000000;
    font-family: 'Inter', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 45px;
    text-transform: none;
    word-wrap: break-word;
}

.single-post--famous-kitchen .feature-columns__desc,
.single-post--famous-kitchen .feature-columns__desc p {
    margin: 0;
    color: #000000;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    word-wrap: break-word;
}

.single-post--famous-kitchen .feature-columns__desc p + p {
    margin-top: 16px;
}

/* Gallery + text sections */
.single-post--famous-kitchen .blog-gallery-split__title {
    font-size: 36px;
    font-weight: 400;
    line-height: 46px;
    color: #000000;
    text-transform: capitalize;
}

.single-post--famous-kitchen .blog-gallery-split__desc,
.single-post--famous-kitchen .blog-gallery-split__desc p {
    font-size: 16px;
    line-height: 24px;
    color: #000000;
}

/* Quote block */
.single-post--famous-kitchen .feature-quote--blog {
    padding: 48px 40px;
    width: 100%;
    box-sizing: border-box;
    background: #F1ECE7;
}

/* Famous Kitchen — Figma spacing overrides */
/* .single-post--famous-kitchen .single-post__body {
    padding: 114px 0;
} */

.single-post--famous-kitchen .fk-slider-header {
    margin-bottom: 33px;
}

.single-post--famous-kitchen .feature-split--blog {
    padding: 114px 0;
}

.single-post--famous-kitchen .feature-columns--blog {
    padding: 74px;
}

.single-post--famous-kitchen .blog-gallery-split {
    padding: 114px 0;
}

.single-post--famous-kitchen .fk-video-block {
    padding: 0;
    margin: 0;
}

.single-post--famous-kitchen .also-like {
    padding: 74px 0;
    background: #F1ECE7;
}

.single-post--famous-kitchen .also-like .archive-grid {
    gap: 56px;
}

/* Video block */
.single-post--famous-kitchen .fk-video-block__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 46px;
    color: #000000;
    text-transform: capitalize;
    margin: 0 0 49px;
}

.single-post--famous-kitchen .fk-video-block__desc {
    margin-top: 49px;
}

/* Load More Button */
.load-more-wrap {
    display: flex;
    justify-content: center;
    margin-top: 56px;
}

.load-more-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0px 32px;
    height: 52px;
    border-radius: 100px;
    border: none;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    text-transform: capitalize;
    color: #FFFFFF;
    background-color: #0D0D0D;
    cursor: pointer;
    overflow: hidden;
    box-shadow: 0px 1px 4px rgba(24.73, 32.61, 60.56, 0.08);
    transition: transform 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease;
}

.load-more-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.12);
}

.load-more-btn.is-loading {
    pointer-events: none;
}

.load-more-btn.is-loading .load-more-btn__text {
    opacity: 0;
}

.load-more-btn__spinner {
    position: absolute;
    width: 20px;
    height: 20px;
    border: 2px solid transparent;
    border-top-color: #FFFFFF;
    border-radius: 50%;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.load-more-btn.is-loading .load-more-btn__spinner {
    opacity: 1;
    animation: loadMoreSpin 0.7s linear infinite;
}

@keyframes loadMoreSpin {
    to {
        transform: rotate(360deg);
    }
}

/* Archive Tabs Section (standalone below hero) */
.archive-tabs-section {
    padding: 40px 0 0;
}

/* Projects listing section */
.projects-listing {
    padding: 74px 0;
}

/* Responsive archive hero */

/* =========================
   TEAM PAGE
   ========================= */

/* Breadcrumb */
.team-page .breadcrumb {
    padding: 20px 0;
    font-size: 14px;
    color: #8A8A8A;
}

.team-page .breadcrumb a {
    color: #8A8A8A;
    text-decoration: none;
    transition: color 0.2s ease;
}

.team-page .breadcrumb a:hover {
    color: #000000;
}

/* Team Hero (Split Layout) - Mobile First */
.team-hero {
    padding: clamp(60px, 8vw, 96px) 0;
    background-color: #F1ECE7;
}

.team-hero__grid {
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    gap: 115px;
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding: 0 var(--site-padding-x);
}

.team-hero__content {
    order: 1;
}

.team-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: clamp(26px, 3vw, 32px);
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 20px;
}

.team-hero__text {
    font-size: 16px;
    line-height: 1.8;
    color: #000000;
    margin: 0;
}

.team-hero__media {
    order: -1;
}

.team-hero__media img {
    width: 100%;
    height: 65vh;
    object-fit: cover;
    display: block;
}

/* Tablet and up (768px+) */

/* Team Department Section */
.team-department {
    padding: 0;
}

.hero--split + .team-department {
    padding-top: 74px;
}

.team-department + .team-careers {
    margin-top: 74px;
}

.team-department + .team-department {
    margin-top: 74px;
}

.team-department__title {
    margin: 0 0 40px;
}

/* Team Grid */
.team-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 24px;
    row-gap: 36px;
}

/* Team Card */
.team-card {
    border: 1px solid #E5E5E5;
    padding: 24px;
    background: #F1ECE7;
}

.team-card__country {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #5B5B5B;
    margin-bottom: 16px;
}

.team-card__media {
    margin-bottom: 20px;
    aspect-ratio: 1 / 1.15;
    overflow: hidden;
}

.team-card__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: top center;
}

.team-card__name {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 4px;
}

.team-card__role {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    color: #8A8A8A;
    margin: 0;
}

.team-card__email,
.team-card__phone,
.team-card__linkedin {
    display: none;
}

/* Team Careers CTA */
.team-careers {
    position: relative;
    padding: 120px 0;
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.team-careers__bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.team-careers__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.team-careers__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgb(0 0 0 / 10%) 0%, rgba(0, 0, 0, 0.6) 100%);
    z-index: 2;
}

.team-careers__content {
    position: relative;
    z-index: 3;
    text-align: center;
    max-width: 1040px;
    margin: 0 auto;
}

.team-careers__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 1.4;
    color: #ffffff;
    margin: 0 0 32px;
    text-transform: capitalize;
}

.team-careers__btn {
    display: inline-flex;
}

/* =========================
   MORE FROM NOLTE PAGE
   ========================= */

/* Hero Banner */
.mfn-hero {
    position: relative;
    min-height: clamp(250px, 25vw, 400px);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.mfn-hero__media {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.mfn-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.mfn-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.45) 0%,
            rgba(0, 0, 0, 0.15) 100%);
    z-index: 2;
}

.mfn-hero__content {
    position: relative;
    z-index: 3;
    width: 100%;
    padding-bottom: 0;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mfn-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 42px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0;
    color: #ffffff;
    margin: 0;
}

/* Archive hero – center title */
.archive-page--blog .mfn-hero,
.archive-page--insights .mfn-hero,
.archive-page--news .mfn-hero {
    align-items: center;
}

.archive-page--blog .mfn-hero__content,
.archive-page--insights .mfn-hero__content,
.archive-page--news .mfn-hero__content {
    padding-bottom: 0;
    text-align: center;
}

/* Book Consultation hero – center title */
.consultation-page .mfn-hero {
    align-items: center;
    justify-content: center;
}

.consultation-page .mfn-hero__content {
    padding-bottom: 0;
    text-align: center;
}

/* Content Blocks */
.mfn-block {
    padding: 96px 0;
}

.mfn-block__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    gap: 80px;
}

.mfn-block__media {
    display: flex;
}

.mfn-block__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.mfn-block__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.mfn-block__logo {
    display: block;
    max-height: 48px;
    width: auto;
    align-self: flex-start;
    margin-bottom: 24px;
}

.mfn-block__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 1.3;
    margin: 0 0 16px;
}

.mfn-block__text {
    margin: 0 0 32px;
    line-height: 1.7;
    /* max-width: 480px; */
}

.mfn-block__content .btn {
    display: inline-flex;
    align-self: flex-start;
}

.mfn-block__content .btn img {
    transform: rotate(-45deg);
}

/* Reverse layout (content left, media right) */
.mfn-block--reverse .mfn-block__content {
    order: 1;
}

.mfn-block--reverse .mfn-block__media {
    order: 2;
}

/* =========================
   NOLTE NEO PAGE
   ========================= */

.neo-hero {
    background-color: #F1ECE7;
    display: flex;
}

/* Hero */
.neo-hero__grid {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    align-items: center;
    gap: 80px;
}

.neo-hero__logo {
    display: block;
    max-height: 48px;
    width: auto;
    margin-bottom: 32px;
}

.neo-hero__text {
    margin: 0;
    max-width: 480px;
    line-height: 1.7;
    opacity: 0.85;
}

.neo-hero__media img {
    width: 100%;
    height: auto;
    display: block;
}

/* nolteneo Kitchens */
.neo-kitchens {
    padding: 96px 0;
}

.neo-kitchens__header {
    margin-bottom: 48px;
}

.neo-kitchens__title {
    margin: 0 0 12px;
}

.neo-kitchens__desc {
    margin: 0;
    opacity: 0.85;
    max-width: 640px;
}

.neo-kitchens__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.neo-kitchen-card {
    border: 1px solid #E5E5E5;
    padding: 32px;
    background: #ffffff;
}

.neo-kitchen-card__tag {
    display: inline-block;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #000000;
    border: 1px solid #E5E5E5;
    border-radius: 20px;
    padding: 8px 16px;
    margin-bottom: 24px;
}

.neo-kitchen-card__media {
    margin-bottom: 24px;
    aspect-ratio: 4 / 3;
    overflow: hidden;
}

.neo-kitchen-card__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.neo-kitchen-card__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.3;
    color: #000000;
    margin: 0 0 12px;
}

.neo-kitchen-card__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: #5B5B5B;
    margin: 0;
}

.neo-kitchen-card__desc p {
    margin: 0 0 16px;
}

.neo-kitchen-card__desc p:last-child {
    margin-bottom: 0;
}

.neo-kitchens__cta {
    margin-top: 48px;
    text-align: center;
}

.neo-kitchens__cta .btn {
    display: inline-flex;
}

/* Experience nolteneo */
.neo-experience {
    padding: 96px 0;
    background-color: #F1ECE7;
}

.neo-experience__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 80px;
}

.neo-experience__media img {
    width: 100%;
    height: auto;
    display: block;
}

.neo-experience__title {
    margin: 0 0 24px;
}

.neo-experience__text {
    margin: 0 0 32px;
    line-height: 1.7;
    opacity: 0.85;
    max-width: 480px;
}

.neo-experience__content .btn {
    display: inline-flex;
}

/* =========================
   BOOK CONSULTATION PAGE
   ========================= */

.consult-form {
    padding: 80px 0;
    /* background-color: #F1ECE7; */
}

.consult-form__card {
    max-width: 700px;
    margin: 0 auto;
    background: #F1ECE7;
    padding: 56px 48px;
}

.consult-form__form {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.consult-form__field {
    position: relative;
}

.consult-form__field input,
.consult-form__field select,
.consult-form__field textarea {
    width: 100%;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    background: transparent;
    border: none;
    border-bottom: 1px solid #E5E5E5;
    padding: 12px 0;
    outline: none;
    transition: border-color 0.2s ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.consult-form__field input:focus,
.consult-form__field select:focus,
.consult-form__field textarea:focus {
    border-bottom-color: #000000;
}

.consult-form__field input::placeholder,
.consult-form__field textarea::placeholder {
    color: #9A9A9A;
}

.consult-form__field select {
    color: #9A9A9A;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%239A9A9A' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0 center;
    padding-right: 28px;
}

.consult-form__field select:has(option:checked:not([disabled])) {
    color: #000000;
}

/* Phone field: country code + number side by side */
.consult-form__field--phone {
    display: flex;
    gap: 32px;
}

.consult-form__field--phone select {
    width: auto;
    min-width: 130px;
    flex-shrink: 0;
    color: #000000;
}

.consult-form__field--phone input {
    flex: 1;
}

/* Date + Time side by side */
.consult-form__field--half {
    display: flex;
    gap: 32px;
}

.consult-form__field--half .consult-form__input-wrapper {
    flex: 1;
    position: relative;
}

.consult-form__field--half input {
    width: 100%;
    color: #9A9A9A;
    padding-right: 32px;
    cursor: pointer;
}

.consult-form__field--half input.has-value {
    color: #000000;
}

/* Ensure placeholder color stays consistent */
.consult-form__field--half input::placeholder {
    color: #9A9A9A;
}

/* Calendar icon for date field */
.consult-form__input-wrapper--date::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%239A9A9A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
}

/* Clock icon for time field */
.consult-form__input-wrapper--time::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%239A9A9A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
}

/* Textarea */
.consult-form__field textarea {
    resize: vertical;
    min-height: 100px;
    border-bottom: 1px solid #E5E5E5;
    border-radius: 0;
}

.consult-form__field textarea:focus {
    border-color: #000000;
}

/* Submit */
.consult-form__submit {
    display: flex;
    justify-content: center;
    margin-top: 16px;
}

.consult-form__btn {
    min-width: 200px;
}

/* =========================
   CONTACT FORM 7 STYLING
   ========================= */

/* CF7 Form wrapper */
.consult-form__card .wpcf7 {
    width: 100%;
}

.consult-form__card .wpcf7-form {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Reset default margins */
.consult-form__card .wpcf7-form p {
    margin: 0;
    padding: 0;
}

/* Custom wrapper divs */
.consult-form__card .cf7-field {
    display: block;
}

/* Base input styling */
.consult-form__card .wpcf7-form-control:not(.wpcf7-submit) {
    width: 100%;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #1a1a1a;
    background: #FFFFFF;
    border: 1.44px solid #D5D5D5;
    padding: 12px 16px;
    height: 52px;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.3s ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
}

.consult-form__card .wpcf7-form-control:not(.wpcf7-submit):focus {
    border-color: #1a1a1a;
    box-shadow: none;
}

/* Remove browser autofill blue background */
.consult-form__card input:-webkit-autofill,
.consult-form__card input:-webkit-autofill:hover,
.consult-form__card input:-webkit-autofill:focus,
.consult-form__card select:-webkit-autofill,
.consult-form__card textarea:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #F1ECE7 inset !important;
    -webkit-text-fill-color: #1a1a1a !important;
    transition: background-color 5000s ease-in-out 0s;
}

/* Remove text selection blue highlight */
.consult-form__card ::selection {
    background: rgba(26, 26, 26, 0.12);
    color: #1a1a1a;
}

/* Placeholder styling - unified gray color */
.consult-form__card .wpcf7-form-control::placeholder {
    color: #9A9A9A !important;
    font-weight: 400;
    opacity: 1;
}

/* Select dropdown styling */
.consult-form__card .wpcf7-select {
    color: #9A9A9A !important;
    cursor: pointer;
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239A9A9A' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0 center;
    padding-right: 28px;
}

/* Select option text inside dropdown */
.consult-form__card .wpcf7-select option {
    color: #1a1a1a;
}

/* When a real value is selected (not placeholder), change to dark */
.consult-form__card .wpcf7-select:not(.wpcf7-not-valid):focus,
.consult-form__card .wpcf7-select.has-value {
    color: #1a1a1a !important;
}

/* Also handle selects that have a non-empty value selected (non-placeholder) */
.consult-form__card .wpcf7-select:not([data-placeholder-active="true"]) {
    color: #1a1a1a !important;
}

/* ========== PHONE ROW: Side by Side ========== */
.consult-form__card .cf7-row--phone {
    display: flex !important;
    flex-direction: row !important;
    gap: 24px;
    align-items: flex-end;
    padding-bottom: 4px;
}

.consult-form__card .cf7-row--phone .cf7-col--country {
    width: 140px;
    flex-shrink: 0;
    position: relative;
}

.consult-form__card .cf7-row--phone .cf7-col--country .wpcf7-form-control-wrap {
    display: block;
}

.consult-form__card .cf7-row--phone .cf7-col--country .wpcf7-select {
    color: #1a1a1a;
}

.consult-form__card .cf7-row--phone .cf7-col--phone {
    flex: 1;
    min-width: 0;
    position: relative;
}

.consult-form__card .cf7-row--phone .cf7-col--phone .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

/* Keep validation tips from breaking phone row alignment */
.consult-form__card .cf7-row--phone .wpcf7-not-valid-tip {
    position: absolute;
    bottom: -22px;
    left: 0;
    white-space: nowrap;
}

/* ========== DATE/TIME ROW: Side by Side ========== */
.consult-form__card .cf7-row--datetime {
    display: flex !important;
    flex-direction: row !important;
    gap: 24px;
}

.consult-form__card .cf7-row--datetime .cf7-col--date,
.consult-form__card .cf7-row--datetime .cf7-col--time {
    flex: 1;
    position: relative;
    min-width: 0;
}

.consult-form__card .cf7-row--datetime .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

/* Date field - use text input for custom placeholder */
.consult-form__card .cf7-col--date input {
    padding-right: 32px;
    cursor: pointer;
}

/* Calendar icon */
.consult-form__card .cf7-col--date::after {
    content: '';
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%239A9A9A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
}

/* Time field */
.consult-form__card .cf7-col--time input,
.consult-form__card .cf7-col--time input[type="time"],
.consult-form__card .cf7-col--time .wpcf7-form-control {
    padding-right: 40px;
    background: #FFFFFF !important;
    border: 1.44px solid #D5D5D5 !important;
    height: 52px;
    box-sizing: border-box;
    border-radius: 0;
}

/* Clock icon */
.consult-form__card .cf7-col--time::after {
    content: '';
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%239A9A9A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
}

/* Textarea */
.consult-form__card .wpcf7-textarea {
    resize: none;
    height: 150px !important;
    /* min-height: unset !important; */
    line-height: 1.6;
}

/* Submit button wrapper */
.consult-form__card .cf7-submit {
    display: flex;
    justify-content: center;
    padding-top: 24px;
}

/* Submit button with arrow */
.consult-form__card .wpcf7-submit {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #ffffff;
    background-color: #1a1a1a;
    border: none;
    border-radius: 100px;
    height: var(--btn-height);
    padding: 0 48px;
    min-width: 220px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.consult-form__card .wpcf7-submit:hover {
    background-color: #333333;
}

/* Arrow icon after submit text */
.consult-form__card .wpcf7-submit::after {
    content: '';
    width: 18px;
    height: 10px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='10' viewBox='0 0 18 10'%3E%3Cpath d='M1 5h15M12 1l4 4-4 4' stroke='white' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}

/* Validation errors */
.consult-form__card .wpcf7-not-valid-tip {
    color: #dc3545;
    font-size: 12px;
    margin-top: 6px;
    display: block;
}

.consult-form__card .wpcf7-not-valid {
    border-bottom-color: #dc3545 !important;
}

/* Response messages */
.consult-form__card .wpcf7-response-output {
    margin: 20px 0 0 0;
    padding: 16px;
    text-align: center;
    font-size: 14px;
    border-radius: 4px;
    border: none;
}

.consult-form__card .wpcf7-form.sent .wpcf7-response-output {
    background-color: #d4edda;
    color: #155724;
}

.consult-form__card .wpcf7-form.invalid .wpcf7-response-output,
.consult-form__card .wpcf7-form.failed .wpcf7-response-output {
    background-color: #f8d7da;
    color: #721c24;
}

/* Hide spinner */
.consult-form__card .wpcf7-spinner {
    display: none;
}

/* Responsive */

/* Visually hidden for screen readers */
.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* =========================
   CUSTOM SELECT DROPDOWN
   ========================= */

.custom-select {
    position: relative;
    width: 100%;
}

.custom-select__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 12px 0;
    border-bottom: 1px solid #E5E5E5;
    cursor: pointer;
    transition: border-color 0.2s ease;
}

.custom-select__trigger:hover {
    border-bottom-color: #000000;
}

.custom-select__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #9A9A9A;
}

.custom-select.has-value .custom-select__text {
    color: #000000;
}

.custom-select__arrow {
    width: 14px;
    height: 14px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%239A9A9A' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: transform 0.3s ease;
}

.custom-select.is-open .custom-select__arrow {
    transform: rotate(180deg);
}

.custom-select__dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #ffffff;
    border: 1px solid #E5E5E5;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: all 0.2s ease;
    margin-top: 8px;
    max-height: 280px;
    overflow-y: auto;
}

.custom-select.is-open .custom-select__dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.custom-select__options {
    padding: 8px 0;
}

.custom-select__option {
    padding: 12px 16px;
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    color: #5B5B5B;
    cursor: pointer;
    transition: all 0.15s ease;
}

.custom-select__option:hover {
    background: #F8F8F8;
    color: #000000;
}

.custom-select__option.is-selected {
    background: #0D0D0D;
    color: #ffffff;
}

/* =========================
   CUSTOM TIME PICKER (Premium)
   ========================= */

.time-picker {
    position: relative;
    width: 100%;
}

.time-picker__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 12px 12px;
    border-bottom: 1px solid #E5E5E5;
    cursor: pointer;
    transition: border-color 0.2s ease;
    background: white;
}

.time-picker__trigger:hover {
    border-bottom-color: #000000;
}

.time-picker__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #9A9A9A;
}

.time-picker.has-value .time-picker__text {
    color: #000000;
}

.time-picker__icon {
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%239A9A9A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.time-picker__dropdown {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.05);
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px) scale(0.96);
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.3s ease,
        visibility 0.4s;
    padding: 16px;
    max-height: 300px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #ddd transparent;
}

.time-picker__dropdown::-webkit-scrollbar {
    width: 4px;
}

.time-picker__dropdown::-webkit-scrollbar-track {
    background: transparent;
}

.time-picker__dropdown::-webkit-scrollbar-thumb {
    background: #ddd;
    border-radius: 4px;
}

.time-picker.is-open .time-picker__dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}

.time-picker__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.time-picker__slot {
    padding: 11px 8px;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #2d3436;
    background: #fafafa;
    border: 1.5px solid #ebebeb;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    text-align: center;
    opacity: 0;
    transform: translateY(6px);
}

/* Stagger slots appearing */
.time-picker.is-open .time-picker__slot {
    opacity: 1;
    transform: translateY(0);
}

.time-picker.is-open .time-picker__slot:nth-child(3n+1) {
    transition-delay: 0.04s;
}

.time-picker.is-open .time-picker__slot:nth-child(3n+2) {
    transition-delay: 0.06s;
}

.time-picker.is-open .time-picker__slot:nth-child(3n+3) {
    transition-delay: 0.08s;
}

.time-picker__slot:hover {
    border-color: #0D0D0D;
    background: rgba(13, 13, 13, 0.04);
    color: #000000;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.time-picker__slot.is-selected {
    background: #0D0D0D;
    color: #ffffff;
    border-color: #0D0D0D;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
    transform: translateY(-1px);
}

.time-picker__slot:active {
    transform: scale(0.96);
}

/* Hide the original ::after icon when time picker is active */
.consult-form__input-wrapper--time:has(.time-picker)::after {
    display: none;
}

/* =========================
   FLATPICKR CALENDAR (Premium)
   ========================= */

.flatpickr-calendar {
    font-family: 'Inter', sans-serif !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.05) !important;
    border: none !important;
    padding: 16px !important;
    width: 320px !important;
    animation: calendarSlideIn 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes calendarSlideIn {
    from {
        opacity: 0;
        transform: translateY(-10px) scale(0.96);
    }

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

.flatpickr-calendar.arrowTop::before,
.flatpickr-calendar.arrowTop::after,
.flatpickr-calendar.arrowBottom::before,
.flatpickr-calendar.arrowBottom::after {
    display: none !important;
}

/* Month Navigation */
.flatpickr-months {
    margin-bottom: 12px !important;
}

.flatpickr-months .flatpickr-month {
    height: 40px !important;
}

.flatpickr-current-month {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #2d3436 !important;
    padding-top: 8px !important;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
    font-weight: 600 !important;
    font-size: 16px !important;
}

.flatpickr-current-month input.cur-year {
    font-weight: 600 !important;
    font-size: 16px !important;
}

/* Navigation Arrows */
.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
    top: 8px !important;
}

.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
    background: rgba(13, 13, 13, 0.1) !important;
}

.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg {
    fill: #2d3436 !important;
}

/* Weekday Headers */
.flatpickr-weekdays {
    margin-bottom: 8px !important;
}

.flatpickr-weekday {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #636e72 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Day Cells */
.flatpickr-days {
    width: 100% !important;
}

.dayContainer {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
}

.flatpickr-day {
    width: 38px !important;
    height: 38px !important;
    line-height: 38px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #2d3436 !important;
    border: none !important;
    margin: 2px !important;
    transition: all 0.2s ease !important;
}

.flatpickr-day:hover {
    background: rgba(13, 13, 13, 0.1) !important;
    border: none !important;
}

.flatpickr-day.today {
    border: 2px solid #0D0D0D !important;
    background: transparent !important;
}

.flatpickr-day.today:hover {
    background: rgba(13, 13, 13, 0.1) !important;
}

.flatpickr-day.selected,
.flatpickr-day.selected:hover {
    background: #0D0D0D !important;
    color: #fff !important;
    font-weight: 600 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
    border: none !important;
}

.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay {
    color: #ccc !important;
}

.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover {
    background: transparent !important;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
    color: #ccc !important;
    background: transparent !important;
    cursor: not-allowed !important;
}

/* Time Picker in Flatpickr (if used) */
.flatpickr-time {
    border-top: 1px solid #e8e8e8 !important;
    margin-top: 12px !important;
    padding-top: 12px !important;
}

.flatpickr-time input {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
}

.flatpickr-am-pm {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
}

/* =========================
   CONTACT US PAGE
   ========================= */

/* Map */
.contact-map {
    width: 100%;
}

.contact-map__canvas {
    width: 100%;
    height: 600px;
}

/* FAQ */
.faq {
    padding: 96px 0;
}

.faq__title {
    text-align: center;
    margin: 0 0 48px;
}

.faq__list {
    max-width: 960px;
    margin: 0 auto;
}

.faq__item {
    border-bottom: 1px solid #E5E5E5;
}

.faq__question {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 24px 0;
    background: none;
    border: none;
    cursor: pointer;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #000000;
    text-align: left;
    line-height: 1.5;
}

.faq__icon {
    position: relative;
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    border-radius: 50%;
    background-color: #5B5B5B;
    transition: background-color 0.2s ease;
}

.faq__icon::before,
.faq__icon::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    background: #ffffff;
    border-radius: 1px;
    transition: transform 0.3s ease;
}

.faq__icon::before {
    width: 14px;
    height: 2px;
    transform: translate(-50%, -50%);
}

.faq__icon::after {
    width: 2px;
    height: 14px;
    transform: translate(-50%, -50%);
}

.faq__item.is-open .faq__icon {
    background-color: #000000;
}

.faq__item.is-open .faq__icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.faq__answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.faq__answer p {
    margin: 0;
    padding: 0 0 24px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    color: #5B5B5B;
    max-width: 800px;
}

/* =========================
   AWARDS PAGE
========================= */

/* Breadcrumb */
.awards-page .breadcrumb {
    padding: 20px 0;
    font-size: 14px;
    color: #8A8A8A;
}

.awards-page .breadcrumb a {
    color: #8A8A8A;
    text-decoration: none;
}

.awards-page .breadcrumb a:hover {
    color: #000000;
}

/* Awards Grid */
.awards {
    padding: 80px 0;
}

.awards__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 69px;
}

.awards__card {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.awards__card-media {
    width: 100%;
    height: 281px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(57, 72, 84, 0.15);
    background: #ffffff;
}

.awards__card-media img {
    max-width: 80%;
    max-height: 90%;
    width: auto;
    height: auto;
    object-fit: contain;
}

.awards__card-body {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.awards__card-date {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #9A9A9A;
    line-height: 27px;
}

.awards__card-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    color: #0D0D0D;
    margin: 0;
    line-height: 32px;
}

.awards__card-title a {
    color: inherit;
    text-decoration: none;
}

.awards__card-title a:hover {
    text-decoration: underline;
}

.awards__card-desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #0D0D0D;
    margin: 11px 0 0;
}

/* Commitment Section — contained beige card */
.awards-commitment {
    padding: 0 0 74px 0;
    background: #fff;
}

.awards-commitment__grid {
    display: flex;
    gap: 74px;
    align-items: center;
    padding: 74px;
    background: #F1ECE7;
    overflow: hidden;
}

.awards-commitment__content {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 47px;
}

.awards-commitment__content .text-heading {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 50px;
    text-transform: capitalize;
    margin: 0;
}

.awards-commitment__content .text-body {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000;
}

.awards-commitment__media {
    flex: 1 1 0;
    min-width: 0;
    height: 555px;
    overflow: hidden;
}

.awards-commitment__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

@media (max-width: 767px) {
    .awards-commitment__grid {
        flex-direction: column;
        padding: 24px;
        gap: 32px;
    }

    .awards-commitment__media {
        flex: none;
        width: 100%;
        height: auto;
        order: -1;
    }

    .awards-commitment__media img {
        height: auto;
        max-height: 400px;
    }
}

/* =========================
   ARCHIVE / LISTING PAGES
   (News, Blog, Nolte Talks)
========================= */

/* Breadcrumb */
.archive-page .breadcrumb {
    padding: 20px 0;
    font-size: 14px;
    color: #8A8A8A;
}

.archive-page .breadcrumb a {
    color: #8A8A8A;
    text-decoration: none;
}

.archive-page .breadcrumb a:hover {
    color: #000000;
}

/* Header + Tabs */
.archive-header {
    padding: 0 0 40px;
}

.archive-header__title {
    margin: 0;
}

.archive-header__row {
    display: flex;
    align-items: baseline;
    gap: 48px;
}

.archive-tabs {
    display: flex;
    gap: 48px;
    border-bottom: 1px solid #E0E0E0;
    position: relative;
}

.archive-tabs__item {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #8A8A8A;
    text-decoration: none;
    padding: 0 0 12px;
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    cursor: pointer;
    transition: color 0.2s ease, border-color 0.2s ease;
}

.archive-tabs__item:hover {
    color: #000000;
}

.archive-tabs__item.is-active {
    color: #000000;
    font-weight: 500;
    border-bottom-color: #000000;
}

/* Featured Post */
.archive-featured {
    padding: 0 0 64px;
}

.archive-featured__grid {
    display: grid;
    grid-template-columns: 0.9fr 1fr;
    gap: 48px;
    align-items: center;
}

.archive-featured__media {
    overflow: hidden;
}

.archive-featured__media img {
    width: 100%;
    height: 400px;
    display: block;
    object-fit: cover;
}

.archive-featured__date {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: #8A8A8A;
    display: block;
    margin-bottom: 12px;
}

.archive-featured__heading {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 500;
    color: #000000;
    margin: 0 0 16px;
    line-height: 1.3;
}

.archive-featured__excerpt {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    color: #5B5B5B;
    margin: 0 0 24px;
}

/* Post Grid */
.archive-grid-section {
    padding: 74px 0;
}

.archive-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 65px;
}

.archive-card {
    text-decoration: none;
    display: block;
}

.archive-card__media {
    overflow: hidden;
    margin-bottom: 16px;
}

.archive-card__media img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.archive-card:hover .archive-card__media img {
    transform: scale(1.03);
}

.archive-card__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 17px;
    font-weight: 500;
    color: #000000;
    margin: 0 0 6px;
    line-height: 1.4;
}

.archive-card__meta {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: #8A8A8A;
}

/* =========================
   SINGLE POST DETAIL
   (News, Blog, Nolte Talks)
========================= */

/* Breadcrumb */
.single-post .breadcrumb {
    padding: 20px 0;
    font-size: 14px;
    color: #8A8A8A;
}

.single-post .breadcrumb a {
    color: #8A8A8A;
    text-decoration: none;
}

.single-post .breadcrumb a:hover {
    color: #000000;
}

/* Grid: article + sidebar */
.single-post__body {
    padding: 74px 0 0;
    overflow: visible;
}

.single-post--blog .single-post__body {
    padding-bottom: 0;
}

.single-post--blog .single-post__header {
    background: #F1ECE7;
    padding: 74px 0;
}

.single-post__grid {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 140px;
    align-items: start;
}

/* Article */
.single-post__label {
    display: block;
    margin-bottom: 4px;
}

.single-post__date {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #8A8A8A;
    display: block;
    margin-bottom: 12px;
}

.single-post__title {
    margin: 0 0 32px;
}

.single-post__featured-img {
    margin-bottom: 32px;
}

.single-post__featured-img img {
    width: 100%;
    height: auto;
    display: block;
}

/* Content typography */
.single-post__content p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #000000;
    margin: 0 0 20px;
}

.single-post__content h2 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 36px;
    font-weight: 400;
    color: #000000;
    margin: 32px 0 12px;
    line-height: 46px;
}

.single-post__content h3 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #000000;
    margin: 28px 0 10px;
    line-height: 1.4;
}

.single-post__content ul {
    margin: 0 0 20px;
    padding-left: 20px;
}

.single-post__content ul li {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 24px;
    color: #000000;
    margin-bottom: 4px;
}

.single-post__content ul li strong {
    color: #000000;
}

/* Excerpt */
.single-post__excerpt {
    margin-bottom: 32px;
}

.single-post__excerpt p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
    color: #000000;
    margin: 0;
}

/* Blockquote */
.single-post__quote,
.single-post__quote-block {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-style: normal;
    line-height: 1.7;
    color: #000000;
    text-align: left;
    margin: 40px 0;
    padding: 40px 48px;
    border: none;
    background: #F1ECE7;
}

.single-post__quote-block strong {
    display: block;
    font-family: 'Albert Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: #000000;
    margin-bottom: 16px;
}

.single-post__quote-block p {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.7;
    color: #5B5B5B;
    margin: 0;
}

/* Text-only quote (no title) — centered, larger */
.single-post__quote-block p:first-child {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    color: #000000;
    text-align: center;
    line-height: 34px;
}

.single-post__quote-block cite {
    display: block;
    margin-top: 16px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    color: #5B5B5B;
}

/* Dark Quote Card */
.single-post__quote-card {
    background: #1A1A1A;
    color: #FFFFFF;
    padding: 48px;
    margin: 32px 0;
    text-align: center;
}

.single-post__quote-card-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #FFFFFF;
    margin: 0 0 20px;
}

.single-post__quote-card-text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    color: #CCCCCC;
    margin: 0;
}

.single-post__quote-card-cite {
    display: block;
    margin-top: 16px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-style: normal;
    color: #999999;
}

/* Full Width Image */
.single-post__full-image {
    margin: 32px 0;
}

.single-post__full-image img {
    width: 100%;
    height: auto;
    display: block;
}

/* Gallery (2 images side by side) */
.single-post__gallery {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin: 32px 0;
}

.single-post__gallery img {
    width: 100%;
    height: auto;
    display: block;
}

/* Flexible Content Blocks (Blog posts) */
.single-post__text-block {
    margin-bottom: 24px;
}

.single-post__text-block h2 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 36px;
    font-weight: 400;
    color: #000000;
    margin: 32px 0 12px;
    line-height: 46px;
}

.single-post__text-block h3 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #000000;
    margin: 28px 0 10px;
    line-height: 1.4;
}

.single-post__text-block p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #000000;
    margin: 0 0 20px;
}

.single-post__text-block p:last-child {
    margin-bottom: 0;
}

.single-post__text-block ul {
    margin: 0 0 20px;
    padding-left: 20px;
}

.single-post__text-block ul li {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 24px;
    color: #000000;
    margin-bottom: 4px;
}

.single-post__text-block ul li strong {
    color: #000000;
}

.single-post__image-block {
    margin: 32px 0;
}

.single-post__image-block img {
    width: 100%;
    height: auto;
    display: block;
}

.single-post__image-block figcaption {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: #8A8A8A;
    margin-top: 10px;
    text-align: center;
}

.single-post__gallery-block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin: 32px 0;
}

.single-post__gallery-block img {
    width: 100%;
    height: auto;
    display: block;
}

/* Inline image */
.single-post__inline-img {
    margin: 32px 0;
}

.single-post__inline-img img {
    width: 100%;
    height: auto;
    display: block;
}

/* Highlight / CTA Block - Base */
.single-post__banner {
    padding: 40px 48px;
    margin: 40px 0;
}

.single-post__banner-label {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 3px;
    text-transform: uppercase;
    display: block;
    margin-bottom: 16px;
}

.single-post__banner p {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}

/* Light Style (Beige background) */
.single-post__banner--light {
    background: #F7F5F3;
    text-align: left;
}

.single-post__banner--light .single-post__banner-label {
    color: #000000;
    font-size: 14px;
    letter-spacing: 4px;
    margin-bottom: 12px;
}

.single-post__banner--light p {
    color: #5B5B5B;
    max-width: none;
}

/* Dark Style (Black background with CTA) */
.single-post__banner--dark {
    background: #1A1A1A;
    color: #ffffff;
    text-align: center;
}

.single-post__banner--dark .single-post__banner-label {
    color: #ffffff;
}

.single-post__banner--dark p {
    color: #CCCCCC;
    margin-bottom: 20px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.single-post__banner--dark .btn {
    margin-top: 8px;
}

/* ---- Blog Single (Full-width, no sidebar) ---- */
.single-post--blog .container {
    max-width: calc(1280px + 2 * var(--site-padding-x));
}

.single-post--blog .single-post__article {
    width: 100%;
}

.single-post--blog .single-post__label {
    display: block;
    margin-bottom: 4px;
}

.single-post--blog .single-post__date {
    margin-bottom: 12px;
}

.single-post--blog .single-post__title {
    margin-bottom: 32px;
}

.single-post--blog .single-post__excerpt {
    margin-bottom: 40px;
}

.single-post--blog .single-post__excerpt p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
    color: #000000;
    margin: 0;
}

.single-post--blog .single-post__featured-img {
    margin-bottom: 48px;
}

.single-post--blog .single-post__featured-img img {
    width: 100%;
    height: auto;
    display: block;
}

/* Two-column block */
.single-post__two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin: 48px 0;
    align-items: stretch;
}

.single-post__two-col img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.single-post__two-col-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 24px 0;
}

.single-post__two-col-text h2 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 28px;
    font-weight: 500;
    color: #000000;
    margin: 0 0 16px;
    line-height: 1.3;
}

.single-post__two-col-text h3 {
    font-family: 'Albert Sans', sans-serif;
    font-size: 22px;
    font-weight: 500;
    color: #000000;
    margin: 0 0 12px;
    line-height: 1.3;
}

.single-post__two-col-text p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
    color: #5B5B5B;
    margin: 0 0 16px;
}

.single-post__two-col-text p:last-child {
    margin-bottom: 0;
}

/* Blog text block spacing */
.single-post--blog .single-post__text-block {
    margin-bottom: 32px;
}

/* Blog image block full width */
.single-post--blog .single-post__image-block {
    margin: 48px 0;
}

/* Blog gallery block */
.single-post--blog .single-post__gallery-block {
    margin: 48px 0;
    gap: 24px;
}

/* Blog quote block – reuses .feature-quote pattern */
.feature-quote.feature-quote--blog {
    padding: 0 0 114px 0;
    width: 100%;
    box-sizing: border-box;
    background: #FFFFFF;
}

.feature-quote--blog .feature-quote__card {
    background: #F1ECE7;
    padding: 91px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin: 0 auto;
    gap: 10px;
}

.feature-quote--blog .feature-quote__author {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    margin-bottom: 24px;
}

/* Blog banner block */
.single-post--blog .single-post__banner {
    margin: 48px 0;
}

/* Sidebar */
.single-post__sidebar {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.single-post__sidebar-section {
    display: flex;
    flex-direction: column;
    padding: 15px;
    border: 1px solid #E5E5E5;
}

/* .single-post__sidebar-section:last-child {
    padding-bottom: 0;
    border-bottom: none;
} */

.single-post__sidebar-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 20px;
    font-weight: 500;
    color: #000000;
    margin: 0 0 20px;
    padding-bottom: 12px;
    /* border-bottom: 1px solid #E0E0E0; */
}

.single-post__related {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.single-post__related-card {
    text-decoration: none;
    display: block;
}

.single-post__related-media {
    overflow: hidden;
    margin-bottom: 10px;
}

.single-post__related-media img {
    width: 100%;
    height: auto;
    display: block;
}

.single-post__related-date {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: #8A8A8A;
    display: block;
    margin-bottom: 4px;
}

.single-post__related-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #000000;
    margin: 0;
    line-height: 1.4;
}

/* Tags Section */

.single-post__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.single-post__tag {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: #5B5B5B;
    text-decoration: none;
    padding: 8px 16px;
    background: #F1ECE7;
    border: none;
    border-radius: 20px;
    transition: background 0.2s ease, color 0.2s ease;
}

.single-post__tag:hover {
    background: #E8E8E8;
    color: #000000;
}

/* You May Also Like */
.also-like {
    padding: 80px 0 96px;
    background: #F1ECE7;
}

.also-like__title {
    margin: 0 0 40px;
}

.also-like .archive-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

/* .also-like .archive-card {
    background: #ffffff;
} */

.also-like .archive-card__media {
    aspect-ratio: 4/3;
    overflow: hidden;
}

.also-like .archive-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ----- Blog: feature-split / feature-columns overrides ----- */
.single-post--blog .feature-split__title {
    font-size: 36px;
    font-weight: 400;
    line-height: 46px;
    color: #000000;
}

.single-post--blog .feature-split__title,
.blog-gallery-split__title {
    text-transform: capitalize;
}

.single-post--blog .feature-split--blog,
.single-post--blog .feature-columns--blog {
    margin: 0;
    padding: 114px 0;
}

/* Collapse double spacing between consecutive white-bg blog sections */
.feature-split--blog+.feature-split--blog,
.feature-split--blog+.blog-gallery-split,
.blog-gallery-split+.feature-split--blog,
.blog-gallery-split+.blog-gallery-split {
    padding-top: 0;
}

.single-post--blog .feature-columns--blog {
    width: 100%;
    padding: 74px;
    box-sizing: border-box;
    background: #F1ECE7;
    gap: 58px;
    display: grid;
}

.single-post--blog .feature-columns--blog .feature-columns__grid {
    gap: 74px;
}

.single-post--blog .feature-columns--blog .feature-columns__col--left,
.single-post--blog .feature-columns--blog .feature-columns__col--right {
    flex: 1 1 0;
    width: 0;
    max-width: none;
}

/* ----- Blog: Gallery Grid + Text Section ----- */
.blog-gallery-split {
    margin: 0;
    padding: 114px 0;
}

.blog-gallery-split__inner {
    display: flex;
    gap: clamp(32px, 4.63vw, 80px);
    align-items: stretch;
}

.blog-gallery-split--reverse .blog-gallery-split__inner {
    flex-direction: row-reverse;
}

.blog-gallery-split__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: clamp(16px, 1.85vw, 32px);
}

.blog-gallery-split__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 36px;
    font-weight: 400;
    color: #000000;
    line-height: 46px;
    margin: 0;
}

.blog-gallery-split__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #000000;
}

.blog-gallery-split__desc p {
    margin: 0 0 1em;
}

.blog-gallery-split__desc p:last-child {
    margin-bottom: 0;
}

.blog-gallery-split__grid {
    flex: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 12px;
    max-height: clamp(350px, 35vw, 520px);
}

.blog-gallery-split__item {
    overflow: hidden;
}

.blog-gallery-split__item:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
}

.blog-gallery-split__item:nth-child(2) {
    grid-column: 2;
    grid-row: 1 / -1;
}

.blog-gallery-split__item:nth-child(3) {
    grid-column: 1;
    grid-row: 2;
}

.blog-gallery-split__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ================================
   PRODUCTION & QUALITY PAGE
   ================================ */

/* Hero Intro */
.prod-intro {
    background: #F1ECE7;
    padding: 100px 0;
}

.prod-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 80px;
    align-items: center;
}

.prod-intro__title {
    margin: 0 0 24px;
}

.prod-intro__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: #5B5B5B;
    margin: 0 0 16px;
}

.prod-intro__text:last-child {
    margin-bottom: 0;
}

.prod-intro__media img {
    width: 100%;
    height: auto;
    display: block;
}

/* Production & Quality – Statistics section (3rd section) */
.prod-stats-section {
    padding: 0 0 74px 0;
    background: #fff;
}

.prod-stats__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #000;
    text-transform: capitalize;
    line-height: 55.64px;
    margin: 0 0 51px;
}

.prod-stats__grid {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 51px 0;
    position: relative;
}

.prod-stats__grid::before,
.prod-stats__grid::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 1px;
    background: rgba(57, 72, 84, 0.15);
}

.prod-stats__grid::before {
    top: 0;
}

.prod-stats__grid::after {
    bottom: 0;
}

.prod-stats__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 28px;
}

.prod-stats__value {
    font-family: 'Albert Sans', sans-serif;
    font-size: 48px;
    font-weight: 700;
    color: #000;
    line-height: 48px;
}

.prod-stats__label {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    color: #5D5D5D;
    text-transform: capitalize;
    line-height: 20.23px;
}

@media (min-width: 768px) and (max-width: 1023px) {
    .prod-stats__title {
        font-size: 36px;
        line-height: 42px;
    }

    .prod-stats__value {
        font-size: 32px;
        line-height: 32px;
    }

    .prod-stats__label {
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .prod-stats__title {
        font-size: 28px;
        line-height: 34px;
        margin-bottom: 32px;
    }

    .prod-stats__grid {
        flex-wrap: wrap;
        gap: 40px 32px;
        justify-content: center;
        padding: 32px 0;
    }

    .prod-stats__item {
        width: calc(50% - 16px);
    }

    .prod-stats__value {
        font-size: 28px;
        line-height: 28px;
    }

    .prod-stats__label {
        font-size: 14px;
    }
}

/* Insight into Production (Video) – heading left, description right, full-width video below */
.prod-insight {
    padding: clamp(60px, 6.6vw, 114px) 0;
    background: #fff;
}

.prod-insight__header {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(40px, 5.79vw, 100px);
    align-items: start;
    margin-bottom: clamp(40px, 4vw, 64px);
}

.prod-insight__title {
    color: #1A1A1E;
    font-size: 40px;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0 0 30px;
    text-transform: capitalize;
}

.prod-insight__desc {
    color: #000000;
    font-size: 16px;
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
    margin: 24px 0 0;
}

.prod-insight__desc p {
    margin: 0 0 1em;
}

.prod-insight__desc p:last-child {
    margin-bottom: 0;
}

/* Video area: same width as header, fill full width of .container */
.prod-insight__media {
    width: 100%;
    max-width: 100%;
    max-height: 70vh;
    display: block;
}

/* Force every child and the iframe to fill the container width (overrides embed wrappers / inline styles) */
.prod-insight__media .prod-insight__embed,
.prod-insight__media .prod-insight__embed *,
.prod-insight__media iframe {
    width: 100% !important;
    max-width: 100% !important;
    display: block;
    box-sizing: border-box;
}

.prod-insight__media video {
    width: 100% !important;
    max-width: 100% !important;
    max-height: 70vh;
    height: auto;
    display: block;
    object-fit: contain;
    min-height: 200px;
}

.prod-insight__embed {
    position: relative;
    max-height: 70vh;
}

.prod-insight__media iframe {
    height: min(56.25vw, 70vh) !important;
    min-height: 200px;
}

@media (max-width: 767px) {
    .prod-insight__header {
        grid-template-columns: 1fr;
        gap: 24px;
        margin-bottom: 32px;
    }
}

/* Pillars */
.prod-pillars {
    padding: 80px 0;
}

.prod-pillars__title {
    margin: 0 0 48px;
}

.prod-pillars__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    /* gap: 24px; */
}

.prod-pillar {
    background: #F1ECE7;
    padding: 42px 24px;
}

.prod-pillar:nth-child(even) {
    background: #F9F2EF;
}

.prod-pillar__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    color: #2C2B2B;
    text-transform: capitalize;
    line-height: 33px;
    margin: 0 0 22px;
}

.prod-pillar__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    margin: 0;
}

/* Awards Strip — reusable component */
.awards-strip {
    padding: 64px 0 80px;
}

.awards-strip__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 28px;
    font-weight: 400;
    color: #1A1A1E;
    margin: 0 0 32px;
    letter-spacing: 1px;
}

.awards-strip__divider {
    width: 100%;
    height: 1px;
    background: #C5C5A0;
    margin-bottom: 48px;
}

.awards-strip__logos {
    background: #ffffff;
    border: 1px solid #E5E5E5;
    padding: 48px 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 32px;
}

.awards-strip__logos img {
    height: 100px;
    width: auto;
    object-fit: contain;
}

/* =========================
   FLUENT FORMS CUSTOM STYLING
   (Matches existing consultation form design)
   ========================= */

.consult-form__card .fluentform {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.consult-form__card .fluentform .ff-el-group {
    margin-bottom: 0;
}

.consult-form__card .fluentform .ff-el-form-control {
    width: 100%;
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 400;
    color: #000000;
    background: transparent;
    border: none;
    border-bottom: 1px solid #D9D9D9;
    border-radius: 0;
    padding: 12px 0;
    outline: none;
    transition: border-color 0.2s ease;
    box-shadow: none !important;
}

.consult-form__card .fluentform .ff-el-form-control:focus {
    border-bottom-color: #000000;
    box-shadow: none !important;
}

.consult-form__card .fluentform .ff-el-form-control::placeholder {
    color: #8A8A8A;
}

/* Labels */
.consult-form__card .fluentform .ff-el-input--label {
    display: none;
}

/* Select dropdowns */
.consult-form__card .fluentform select.ff-el-form-control {
    color: #8A8A8A;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238A8A8A' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 4px center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.consult-form__card .fluentform select.ff-el-form-control:has(option:checked:not([value=""])) {
    color: #000000;
}

/* Textarea */
.consult-form__card .fluentform textarea.ff-el-form-control {
    resize: vertical;
    min-height: 80px;
    border: 1px solid #E5E5E5;
    padding: 16px;
    border-radius: 0;
}

.consult-form__card .fluentform textarea.ff-el-form-control:focus {
    border-color: #000000;
}

/* Two-column fields (phone, date/time) */
.consult-form__card .fluentform .ff-t-container {
    display: flex;
    gap: 24px;
}

.consult-form__card .fluentform .ff-t-container .ff-t-cell {
    flex: 1;
    padding: 0;
}

/* Submit button */
.consult-form__card .fluentform .ff-btn-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 32px;
    height: 52px;
    border-radius: 100px;
    border: none;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 20px;
    text-transform: capitalize;
    cursor: pointer;
    text-decoration: none;
    box-shadow: 0px 1px 4px rgba(24.73, 32.61, 60.56, 0.08);
    background-color: #0D0D0D;
    color: #FFFFFF;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.consult-form__card .fluentform .ff-btn-submit:hover {
    transform: translateY(-1px);
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.12);
}

/* Center submit button */
.consult-form__card .fluentform .ff-el-group.ff_submit_btn_wrapper {
    display: flex;
    justify-content: center;
    margin-top: 8px;
}

/* Error messages */
.consult-form__card .fluentform .ff-el-is-error .ff-el-form-control {
    border-bottom-color: #dc3545;
}

.consult-form__card .fluentform .error.text-danger {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    color: #dc3545;
    margin-top: 4px;
}

/* Success message */
.consult-form__card .fluentform .ff-message-success {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: #28a745;
    text-align: center;
    padding: 24px;
    background: #f8f9fa;
}

/* =========================
   CUSTOM CONSULTATION FORM
   (Success/Error Messages)
   ========================= */

.consult-form__success {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 48px 24px;
    gap: 24px;
}

.consult-form__success svg {
    width: 64px;
    height: 64px;
}

.consult-form__success p {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.6;
    color: #000000;
    max-width: 400px;
}

.consult-form__error {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: #dc3545;
    background: #fff5f5;
    border: 1px solid #dc3545;
    padding: 12px 16px;
    margin-bottom: 24px;
    border-radius: 4px;
}

/* Flatpickr Custom Styling */
.flatpickr-calendar {
    font-family: 'Inter', sans-serif;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.flatpickr-day.selected,
.flatpickr-day.selected:hover {
    background: #0D0D0D;
    border-color: #0D0D0D;
}

.flatpickr-day:hover {
    background: #f5f5f5;
}

.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
    font-family: 'Inter', sans-serif;
    font-weight: 500;
}

/* Time picker styling */
.flatpickr-time {
    border-top: 1px solid #e5e5e5;
}

.flatpickr-time input {
    font-family: 'Inter', sans-serif;
}

.flatpickr-am-pm {
    font-family: 'Inter', sans-serif;
}

/* =========================
   CONTACT US PAGE
   ========================= */

.contact-page {
    background: #FFFFFF;
}

/* Map Hero */
.contact-map-hero {
    width: 100%;
    background: #E8E0D8;
}

.contact-map-hero__canvas {
    width: 100%;
    height: calc(100vh - var(--header-height, 192px));
    overflow: hidden;
}

.contact-map-hero__canvas iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

/* Contact Content */
.contact-content {
    padding: 114px 0px;
    scroll-margin-top: 100px;
}

.contact-content__grid {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: 40px;
}

.contact-content__left {
    width: calc(50% - 20px);
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.contact-content__right {
    width: calc(50% - 20px);
    display: flex;
    flex-direction: column;
    gap: 56px;
}

/* =========================
   SHOWROOM DROPDOWN SELECTOR
   ========================= */

.showroom-select {
    position: relative;
}

.showroom-select__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 72px;
    padding: 17px 16px;
    background: #2F2622;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.showroom-select__trigger:hover {
    background: #3a2f2a;
}

.showroom-select__text {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    color: #FFFFFF;
}

.showroom-select__chevron {
    flex-shrink: 0;
    color: #FFFFFF;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.showroom-select.is-open .showroom-select__chevron {
    transform: rotate(180deg);
}

/* Dropdown Menu */
.showroom-select__menu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #FFFFFF;
    border: 1px solid #E5E5E5;
    /* border-radius: 0 0 4px 4px; */
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
    z-index: 10;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-4px);
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
}

.showroom-select.is-open .showroom-select__menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.showroom-select__option {
    display: block;
    width: 100%;
    padding: 14px 24px;
    background: none;
    border: none;
    border-bottom: 1px solid #F0F0F0;
    text-align: left;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #434343;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.showroom-select__option:last-child {
    border-bottom: none;
}

.showroom-select__option:hover {
    background: #F5F5F5;
}

.showroom-select__option.is-active {
    color: #0D0D0D;
    font-weight: 500;
    background: #F9F7F4;
}

/* =========================
   SHOWROOM DETAIL CARD
   ========================= */

.showroom-detail {
    display: none;
    background: #F1ECE7;
    padding: 58px 44px;
}

.showroom-detail.is-active {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1;
    gap: 30px;
}

.showroom-detail__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 26px;
    font-weight: 400;
    line-height: 32px;
    color: #000;
    margin: 0;
}

.showroom-detail__rows {
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.showroom-detail__row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.showroom-detail__icon {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #2F2622;
    border: none;
    border-radius: 140px;
    padding: 6px;
}

.showroom-detail__icon svg {
    width: 24px;
    height: 24px;
}

.showroom-detail__icon svg path {
    stroke: #FFFFFF;
}

.showroom-detail__text {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 30px;
    color: #434343;
    padding-top: 2px;
}

.showroom-detail__text a {
    color: #434343;
    text-decoration: none;
    transition: color 0.2s ease;
}

.showroom-detail__text a:hover {
    color: #0D0D0D;
    text-decoration: underline;
}

/* Get Directions Button */
.showroom-detail__directions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 0;
    padding: 14px 26px;
    background: #2F2622;
    color: #FFFFFF;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 20px;
    text-decoration: none;
    box-shadow: 0 1px 4px rgba(25, 33, 61, 0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    width: fit-content;
}

.showroom-detail__directions:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
}

/* =========================
   CONTACT FORM (RIGHT COL)
   ========================= */

/* "Get In Touch" heading */
.contact-form__heading {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 50px;
    text-transform: capitalize;
    color: #000;
    margin: 0;
    align-self: stretch;
}

/* Contact Form Success */
.contact-form__success {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 80px 24px;
    gap: 24px;
}

.contact-form__success svg {
    width: 64px;
    height: 64px;
}

.contact-form__success p {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.6;
    color: #1A1A1E;
    max-width: 400px;
    margin: 0;
}

/* =========================
   CF7 FORMS ON CONTACT PAGE
   ========================= */

/* Form wrapper toggle (per showroom) */
.contact-form-wrapper {
    display: none;
}

.contact-form-wrapper.is-active {
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* CF7 wrapper inside contact page */
.contact-content__right .wpcf7 {
    width: 100%;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.contact-content__right .wpcf7-form {
    display: flex;
    flex-direction: column;
    gap: 0;
    justify-content: space-between;
    flex: 1;
}

.contact-content__right .wpcf7-form p {
    margin: 0;
    padding: 0;
}

/* Base input styling */
.contact-content__right .wpcf7-form-control:not(.wpcf7-submit) {
    width: 100%;
    height: 72px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    color: #1A1A1E;
    background: transparent;
    border: 1.44px solid #E6E6E6;
    padding: 17px 16px;
    outline: none;
    transition: border-color 0.3s ease, background-color 0.3s ease, color 0.3s ease;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
}

.contact-content__right .wpcf7-form-control:not(.wpcf7-submit):focus {
    border-color: #2F2622;
    background: #2F2622;
    color: #FFFFFF;
    box-shadow: none;
}

.contact-content__right .wpcf7-form-control:not(.wpcf7-submit):focus::placeholder {
    color: rgba(255, 255, 255, 0.5);
}

.contact-content__right .wpcf7-form-control::placeholder {
    color: #828282;
    font-weight: 400;
    opacity: 1;
}

/* Textarea */
.contact-content__right .wpcf7-textarea {
    resize: vertical;
    height: 136px;
    min-height: 136px;
}

/* Remove browser autofill blue background */
.contact-content__right input:-webkit-autofill,
.contact-content__right input:-webkit-autofill:hover,
.contact-content__right input:-webkit-autofill:focus,
.contact-content__right select:-webkit-autofill,
.contact-content__right textarea:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #FFFFFF inset !important;
    -webkit-text-fill-color: #1A1A1E !important;
    transition: background-color 5000s ease-in-out 0s;
}

.contact-content__right ::selection {
    background: rgba(26, 26, 26, 0.12);
    color: #1A1A1E;
}

/* Select dropdown */
.contact-content__right .wpcf7-select {
    color: #828282;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23828282' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 48px;
}

.contact-content__right .wpcf7-select option {
    color: #FFFFFF;
    background: #2F2622;
}

.contact-content__right .wpcf7-select.has-value {
    color: #1A1A1E;
}

/* Phone row: country code + phone side by side */
.contact-content__right .cf7-row--phone {
    display: flex;
    gap: 22px;
    align-items: flex-start;
    position: relative;
}

.contact-content__right .cf7-row--phone .cf7-col--country {
    width: 120px;
    flex-shrink: 0;
    position: relative;
}

.contact-content__right .cf7-row--phone .cf7-col--country .wpcf7-form-control-wrap {
    display: block;
}

.contact-content__right .cf7-row--phone .cf7-col--country .wpcf7-select {
    color: #1A1A1E;
}

.contact-content__right .cf7-row--phone .cf7-col--phone {
    flex: 1;
    min-width: 0;
    position: relative;
}

.contact-content__right .cf7-row--phone .cf7-col--phone .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.contact-content__right .cf7-row--phone .wpcf7-not-valid-tip {
    position: absolute;
    bottom: -22px;
    left: 0;
    white-space: nowrap;
}

/* Submit button — right-aligned */
.contact-content__right .wpcf7-form p:last-of-type {
    text-align: right;
}

.contact-content__right .wpcf7-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px 26px;
    height: 52px;
    background: #2F2622;
    color: #FFFFFF;
    border: none;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 20px;
    cursor: pointer;
    box-shadow: 0 1px 4px rgba(25, 33, 61, 0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    -webkit-appearance: none;
    appearance: none;
}

.contact-content__right .wpcf7-submit::after {
    content: '';
    width: 18px;
    height: 10px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='10' viewBox='0 0 18 10'%3E%3Cpath d='M1 5h15M12 1l4 4-4 4' stroke='white' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}

.contact-content__right .wpcf7-submit:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
}

.contact-content__right .wpcf7-submit:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
}

/* Validation error text */
.contact-content__right .wpcf7-not-valid-tip {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: #dc3545;
    margin-top: 4px;
}

/* Hide CF7 response output and spinner */
.contact-content__right .wpcf7-response-output:empty,
.contact-content__right .wpcf7 .ajax-loader,
.contact-content__right .wpcf7 .wpcf7-spinner {
    display: none !important;
}

.contact-content__right .wpcf7-response-output {
    border: none !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
}

/* =========================
   FAQ SECTION
   ========================= */

.faq {
    padding: 80px 0;
    background: #F5F5F5;
}

.faq__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    color: #1A1A1E;
    margin: 0 0 48px;
    text-align: center;
}

.faq__list {
    max-width: 900px;
    margin: 0 auto;
}

.faq__item {
    background: #FFFFFF;
    border-radius: 8px;
    margin-bottom: 16px;
    overflow: hidden;
}

.faq__item:last-child {
    margin-bottom: 0;
}

.faq__question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 24px;
    background: none;
    border: none;
    text-align: left;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #1A1A1E;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.faq__question:hover {
    background: #FAFAFA;
}

.faq__icon {
    position: relative;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.faq__icon::before,
.faq__icon::after {
    content: '';
    position: absolute;
    background: #1A1A1E;
    transition: transform 0.3s ease;
}

.faq__icon::before {
    top: 50%;
    left: 4px;
    right: 4px;
    height: 2px;
    transform: translateY(-50%);
}

.faq__icon::after {
    left: 50%;
    top: 4px;
    bottom: 4px;
    width: 2px;
    transform: translateX(-50%);
}

.faq__item.is-open .faq__icon::after {
    transform: translateX(-50%) rotate(90deg);
    opacity: 0;
}

.faq__answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.faq__answer p {
    padding: 0 24px 24px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;
    color: #000000;
    margin: 0;
}

/* =========================
   CONTACT PAGE RESPONSIVE
   ========================= */

/* =========================
   PROJECT PAGE RESPONSIVE
   ========================= */

/* =========================
   PROJECTS ARCHIVE PAGE
   ========================= */

/* ----- Projects Archive Hero ----- */
.projects-archive__hero {
    position: relative;
    min-height: clamp(250px, 25vw, 400px);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.projects-archive__hero-media {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.projects-archive__hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.projects-archive__hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.6) 0%,
            rgba(0, 0, 0, 0.3) 50%,
            rgba(0, 0, 0, 0.1) 100%);
    z-index: 2;
}

.projects-archive__hero-content {
    position: relative;
    z-index: 3;
    width: 100%;
    padding-bottom: 0;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.projects-archive__hero-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 42px;
    font-weight: 500;
    line-height: 1.3;
    color: #ffffff;
    margin: 0;
}

/* ----- Projects Archive Filters ----- */
.projects-archive__filters {
    padding: 40px 0 0;
    position: relative;
    z-index: 10;
}

.projects-archive__filters-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 32px;
}

/* Location Tabs */
.projects-archive__tabs {
    display: flex;
    gap: 48px;
    border-bottom: 1px solid #E0E0E0;
    position: relative;
}

.projects-archive__tab {
    padding: 16px 0;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #8A8A8A;
    text-decoration: none;
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    cursor: pointer;
    transition: color 0.2s ease, border-color 0.2s ease;
}

.projects-archive__tab:hover {
    color: #000000;
}

.projects-archive__tab.active {
    color: #000000;
    font-weight: 500;
    border-bottom-color: #000000;
}

/* Search & Year Filter */
.projects-archive__search-filters {
    display: flex;
    gap: 16px;
}

.projects-archive__search-form {
    display: flex;
    gap: 16px;
}

.projects-archive__search-input {
    position: relative;
    display: flex;
    align-items: center;
}

.projects-archive__search-icon {
    position: absolute;
    left: 16px;
    color: #999999;
    pointer-events: none;
}

.projects-archive__search-input input {
    width: 240px;
    padding: 12px 16px 12px 48px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    border: 1px solid #E5E5E5;
    border-radius: 50px;
    outline: none;
    transition: border-color 0.3s ease;
}

.projects-archive__search-input input:focus {
    border-color: #000000;
}

.projects-archive__search-input input::placeholder {
    color: #999999;
}

/* Year Dropdown */
.year-dropdown {
    position: relative;
    z-index: 100;
}

.year-dropdown__trigger {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 20px;
    background: #ffffff;
    border: 1px solid #E5E5E5;
    border-radius: 50px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #0D0D0D;
    cursor: pointer;
    transition: border-color 0.2s ease;
    white-space: nowrap;
}

.year-dropdown__trigger:hover {
    border-color: #0D0D0D;
}

.year-dropdown.is-open .year-dropdown__trigger {
    border-color: #0D0D0D;
}

.year-dropdown__trigger svg {
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.year-dropdown.is-open .year-dropdown__trigger svg {
    transform: rotate(180deg);
}

.year-dropdown__menu {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    min-width: 100%;
    background: #ffffff;
    border: 1px solid #E5E5E5;
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    display: none;
}

.year-dropdown.is-open .year-dropdown__menu {
    display: block;
}

.year-dropdown__option {
    display: block;
    width: 100%;
    padding: 12px 20px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #0D0D0D;
    text-decoration: none;
    text-align: left;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.year-dropdown__option:first-child {
    border-radius: 8px 8px 0 0;
}

.year-dropdown__option:last-child {
    border-radius: 0 0 8px 8px;
}

.year-dropdown__option:hover {
    background: #F5F5F5;
}

.year-dropdown__option.is-active {
    background: #F0F0F0;
    font-weight: 500;
}

/* ----- Projects Grid ----- */
.projects-archive__grid-section {
    padding: 80px 0 120px;
}

.projects-archive__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px;
}

/* ----- Projects Pagination ----- */
.projects-archive__pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 80px;
}

.projects-archive__pagination .page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 16px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #666666;
    text-decoration: none;
    border: 1px solid #E5E5E5;
    border-radius: 50px;
    transition: all 0.3s ease;
}

.projects-archive__pagination .page-numbers:hover {
    border-color: #000000;
    color: #000000;
}

.projects-archive__pagination .page-numbers.current {
    background: #000000;
    border-color: #000000;
    color: #ffffff;
}

.projects-archive__pagination .page-numbers.prev,
.projects-archive__pagination .page-numbers.next {
    padding: 0;
}

.projects-archive__pagination .page-numbers svg {
    width: 20px;
    height: 20px;
}

/* ----- No Results ----- */
.projects-archive__no-results {
    text-align: center;
    padding: 80px 0;
}

.projects-archive__no-results p {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    color: #666666;
    margin-bottom: 24px;
}

.projects-archive__no-results--inline {
    grid-column: 1 / -1;
    padding: 40px 0;
}

/* ----- Projects Archive Responsive ----- */

/* ================================
   THE COMPANY PAGE
   ================================ */

/* =========================
   COMPANY HERO (Split Layout) - Mobile First
========================= */
.company-hero {
    background-color: #F1ECE7;
    display: flex;
    align-items: center;
    justify-content: center;
}

.company-hero__grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: clamp(40px, 6vw, 80px);
    align-items: center;
    width: 100%;
}

.company-hero__content {
    max-width: 480px;
}

.company-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.3;
    color: #000000;
    margin: 0 0 20px;
}

.company-hero__text {
    font-size: 16px;
    line-height: 1.8;
    color: #000000;
    margin: 0;
}

.company-hero__text p {
    margin: 0 0 16px;
}

.company-hero__text p:last-child {
    margin-bottom: 0;
}

.company-hero__media {
    position: relative;
}

.company-hero__media img {
    width: 100%;
    height: 65vh;
    display: block;
    object-fit: cover;
    object-position: center center;
}


/* Tablet and up (768px+) */

/* Breadcrumb */
.company-breadcrumb {
    padding: 24px 0;
    background: #fff;
    opacity: 0.7;
}

.company-breadcrumb__list {
    display: flex;
    align-items: center;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
}

.company-breadcrumb__list li {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #000000;
}

.company-breadcrumb__list li:not(:last-child)::after {
    content: ">";
    color: #000000;
}

.company-breadcrumb__list li a {
    color: #000000;
    text-decoration: none;
    transition: color 0.2s ease;
}

.company-breadcrumb__list li a:hover {
    color: #000;
}

.company-breadcrumb__list li.active span {
    color: #000000;
    font-weight: 400;
}

/* Mission & Vision Section – Card Layout */
.company-vision {
    padding: 80px 0;
    background: #fff;
}

.company-vision__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.company-vision__card {
    background: #F1ECE7;
    padding: 48px 40px;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.company-vision__card-icon {
    margin-bottom: 24px;
}

.company-vision__card-icon img {
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.company-vision__card-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 32px;
    font-weight: 300;
    line-height: 1.2;
    color: #000;
    margin: 0 0 20px;
}

.company-vision__card-text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    margin: 0;
}

/* Responsive: stack cards on mobile */
@media (max-width: 767px) {
    .company-vision__grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .company-vision__card {
        padding: 32px 24px;
    }

    .company-vision__card-title {
        font-size: 26px;
    }

    .company-vision__card-text {
        font-size: 14px;
        line-height: 24px;
    }
}

/* Message from CEO */
.company-ceo-message {
    padding: 0 0 80px;
    background: #fff;
}

.company-ceo-message__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 300;
    line-height: 1.2;
    color: #000;
    margin: 0 0 32px;
}

.company-ceo-message__player {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #000;
    cursor: pointer;
}

.company-ceo-message__thumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.company-ceo-message__thumb-placeholder {
    width: 100%;
    height: 100%;
    background: #222;
}

.company-ceo-message__play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    transition: transform 0.2s ease;
}

.company-ceo-message__play:hover {
    transform: translate(-50%, -50%) scale(1.1);
}

.company-ceo-message__player iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.company-ceo-message__player--native {
    cursor: default;
}

.company-ceo-message__player--native video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

@media (max-width: 767px) {
    .company-ceo-message {
        padding: 0 0 48px;
    }

    .company-ceo-message__title {
        font-size: 26px;
        margin-bottom: 24px;
    }
}

/* Our Journey Section */
.company-journey {
    padding: 80px 0;
    background: #F1ECE7;
}

.company-journey__header {
    margin-bottom: 48px;
}

.company-journey__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #000;
    margin: 0 0 16px 0;
}

.company-journey__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #000000;
    margin: 0;
    /* max-width: 600px; */
}

.company-journey__timeline {
    position: relative;
    margin-bottom: 60px;
    border-top: 1px solid #E0E0E0;
}

.company-journey__years {
    display: flex;
    justify-content: space-between;
    position: relative;
}

.company-journey__year {
    background: transparent;
    border: none;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #C8C0B8;
    cursor: pointer;
    padding: 16px 0 0 0;
    position: relative;
    border-top: 1px solid transparent;
    margin-top: -1px;
    transition: color 0.3s ease, border-color 0.3s ease;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.3em;
    line-height: 20.74px;
}

.company-journey__year:hover {
    color: #9A876E;
}

.company-journey__year.active {
    color: #9A876E;
    border-top-color: transparent;
}

/* Active: recolor the segment of the timeline line under this year (overlay, not a second line) */
.company-journey__year.active::before {
    content: '';
    position: absolute;
    top: -1px;
    left: -20px;
    right: -20px;
    height: 1px;
    background: linear-gradient(to right, transparent, #9A876E 30%, #9A876E 70%, transparent);
}

/* Keep same 1px line, color and gradient at 1024px+ (no bolder appearance) */
@media (min-width: 1024px) {
    .company-journey__year.active::before {
        height: 1px;
        background: linear-gradient(to right, transparent, #9A876E 30%, #9A876E 70%, transparent);
    }
}

.company-journey__line {
    display: none;
}

.company-journey__content {
    position: relative;
}

.company-journey__item {
    display: none;
}

.company-journey__item.active {
    display: block;
}

/* Hide mobile-only elements on desktop */
.company-journey__mobile-header,
.company-journey__dots {
    display: none;
}

.company-journey__item-card {
    background: transparent;
    padding: 0;
}

.company-journey__item-grid {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 60px;
    align-items: start;
}

.company-journey__item-media img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

.company-journey__item-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 28px;
    font-weight: 400;
    color: #000;
    margin: 0 0 24px 0;
}

.company-journey__item-text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #000000;
}

.company-journey__item-text p {
    margin: 0 0 16px 0;
}

.company-journey__item-text p:last-child {
    margin-bottom: 0;
}

/* Journey Section - Tablet and below */
@media (max-width: 1023px) {
    .company-journey {
        padding: 40px 0;
    }

    .company-journey__title {
        font-size: 24px;
        margin-bottom: 8px;
    }

    .company-journey__desc {
        font-size: 14px;
        line-height: 1.5;
    }

    /* Scrollable year line: same bar style as desktop, only scrollable */
    .company-journey__timeline {
        display: block;
        margin-bottom: 32px;
        border-top: 1px solid #E0E0E0;
        overflow-x: hidden;
        overflow-y: visible;
    }

    /* padding-top: 2px so active ::before (1px above) is not clipped by overflow-x: auto */
    .company-journey__years {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: 0;
        padding-top: 2px;
    }

    .company-journey__years::-webkit-scrollbar {
        display: none;
    }

    /* Years sit on the timeline line; margin-top overlaps so one line, no extra line */
    .company-journey__year {
        flex-shrink: 0;
        white-space: nowrap;
        padding: 16px 20px 0 0;
        border-top: 1px solid transparent;
        margin-top: -1px;
        position: relative;
    }

    /* Recolor segment of timeline line for active year (same as 1024px+: one line, color change only) */
    .company-journey__timeline .company-journey__year.active::before {
        content: '' !important;
        display: block !important;
        position: absolute !important;
        top: -2px !important;
        left: -20px !important;
        right: -20px !important;
        height: 1px !important;
        background: linear-gradient(to right, transparent, #9A876E 30%, #9A876E 70%, transparent) !important;
        z-index: 1;
    }

    .company-journey__item-card {
        background: #F5F5F5;
        border-radius: 12px;
        padding: 24px;
    }

    .company-journey__mobile-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 20px;
    }

    .company-journey__mobile-year {
        font-family: 'Albert Sans', sans-serif;
        font-size: 48px;
        font-weight: 500;
        color: #000;
        line-height: 1;
    }

    .company-journey__mobile-nav {
        display: flex;
        gap: 8px;
    }

    .company-journey__mobile-prev,
    .company-journey__mobile-next {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 1px solid #E0E0E0;
        background: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: all 0.2s ease;
        color: #000;
    }

    .company-journey__mobile-prev:hover:not(.disabled),
    .company-journey__mobile-next:hover:not(.disabled) {
        background: #000;
        color: #fff;
        border-color: #000;
    }

    .company-journey__mobile-prev.disabled,
    .company-journey__mobile-next.disabled {
        opacity: 0.3;
        cursor: not-allowed;
        pointer-events: none;
    }

    .company-journey__item-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .company-journey__item-media {
        order: 1;
    }

    .company-journey__item-media img {
        height: 250px;
        width: 100%;
        object-fit: cover;
        object-position: center center;
        border-radius: 8px;
    }

    .company-journey__item-content {
        order: 2;
    }

    .company-journey__item-title {
        font-size: 22px;
        margin-bottom: 12px;
    }

    .company-journey__item-text {
        font-size: 14px;
        line-height: 1.6;
    }

    .company-journey__dots {
        display: flex;
        justify-content: center;
        gap: 8px;
        margin-top: 24px;
    }

    .company-journey__dot {
        width: 10px;
        height: 10px;
        border-radius: 50%;
        border: none;
        background: #D9D9D9;
        cursor: pointer;
        padding: 0;
        transition: all 0.2s ease;
    }

    .company-journey__dot.active {
        background: #000;
        width: 24px;
        border-radius: 5px;
    }
}

/* Awards Section */
.company-awards {
    padding: 99px 0;
    background: #fff;
}

.company-awards__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #1A1A1E;
    margin: 0 0 37px 0;
    line-height: 1.55;
    text-transform: capitalize;
}

.company-awards__grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: clamp(20px, 4vw, 60px);
    padding: 72px 0;
    border-top: 1px solid rgba(57, 72, 84, 0.15);
    border-bottom: 1px solid rgba(57, 72, 84, 0.15);
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%);
}

.company-awards__item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 0;
    min-width: 0;
}

.company-awards__item img {
    max-height: 168px;
    max-width: 100%;
    width: auto;
    object-fit: contain;
}

/* Awards Section - Responsive */
@media (max-width: 1023px) {
    .company-awards {
        padding: 60px 0;
    }

    .company-awards__title {
        font-size: 28px;
    }

    .company-awards__grid {
        gap: 16px;
        padding: 40px 0;
    }

    .company-awards__item img {
        max-height: 100px;
    }
}

@media (max-width: 767px) {
    .company-awards {
        padding: 40px 0;
    }

    .company-awards__title {
        font-size: 22px;
        margin-bottom: 20px;
    }

    .company-awards__grid {
        gap: 12px;
        padding: 32px 0;
    }

    .company-awards__item img {
        max-height: 50px;
    }
}

@media (max-width: 479px) {
    .company-awards {
        padding: 32px 0;
    }

    .company-awards__title {
        font-size: 20px;
        line-height: 1.4;
        margin-bottom: 16px;
    }

    .company-awards__grid {
        gap: 8px;
        padding: 24px 0;
    }

    .company-awards__item img {
        max-height: 36px;
    }
}

.company-awards__item:hover img {
    opacity: 0.8;
}

/* ==========================================================================
   SUSTAINABILITY CERTIFICATIONS
   ========================================================================== */
.sust-certs {
    padding: 74px 0;
    background: #fff;
}

.sust-certs__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 48px;
}

.sust-certs__grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 37px;
    flex-wrap: wrap;
}

.sust-certs__item {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
    cursor: default;
    transition: opacity 0.2s ease;
}

.sust-certs__item--clickable {
    cursor: pointer;
}

.sust-certs__item--clickable:hover {
    opacity: 0.7;
}

.sust-certs__item img {
    max-height: 168px;
    max-width: 168px;
    width: auto;
    height: auto;
    object-fit: contain;
}

/* Certification Popup */
.cert-popup {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.cert-popup.is-active {
    opacity: 1;
    visibility: visible;
}

.cert-popup__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
}

.cert-popup__card {
    position: relative;
    background: #fff;
    width: 90%;
    max-width: 740px;
    max-height: 90vh;
    overflow-y: auto;
    /* border-radius: 4px; */
    padding: 72px;
    z-index: 1;
    transform: translateY(20px);
    transition: transform 0.3s ease;
}

.cert-popup.is-active .cert-popup__card {
    transform: translateY(0);
}

.cert-popup__close {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 10;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #0D0D0D;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    color: #fff;
    font-size: 20px;
    padding: 0;
    line-height: 1;
    transition: background 0.2s ease;
    display: none;
}

.cert-popup__close:hover {
    background: #333;
}

.cert-popup__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 28px;
}

.cert-popup__image-wrap {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
}

.cert-popup__image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80%;
    min-height: 281px;
    border: 1px solid rgba(57, 72, 84, 0.15);
    background: #fff;
    padding: 27px;
}

.cert-popup__image img {
    max-height: 227px;
    max-width: 316px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.cert-popup__arrows {
    position: absolute;
    bottom: -21px;
    left: -21px;
    right: -21px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    pointer-events: none;
}

.cert-popup__arrow {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F1ECE7;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    color: #000;
    font-size: 22px;
    padding: 0;
    pointer-events: auto;
    transition: background 0.2s ease;
}

.cert-popup__arrow:hover {
    background: #e5ded7;
}

.cert-popup__info {
    text-align: left;
    width: 80%;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cert-popup__date {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 27px;
    color: #9A9A9A;
    display: block;
    margin: 0;
}

.cert-popup__name {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    color: #000;
    margin: 0;
    line-height: 32.24px;
}

.cert-popup__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000;
    margin: 11px 0 0;
}

/* Sustainability Report Section */
.sust-report {
    padding: clamp(30px, 2.84vw, 49px) 0;
    background: #fff;
}

.sust-report__inner {
    max-width: clamp(900px, 90.74vw, 1568px);
    margin: 0 auto;
    background: #F1ECE7;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: clamp(50px, 6.6vw, 114px) clamp(30px, 6.66vw, 115px);
    box-sizing: border-box;
}

.sust-report__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(20px, 1.91vw, 33px);
    flex-shrink: 0;
}

/* Capitalize all sustainability headings */
.sust-video-hero__title,
.sust-hero__title,
.sust-pillars__title,
.sust-pillars__item-title,
.sust-section__title,
.sust-quality__title,
.sust-responsibility__title,
.sust-longlife__title,
.sust-report__title {
    text-transform: capitalize;
}

.sust-report__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: clamp(24px, 2.08vw, 36px);
    font-weight: 400;
    line-height: 1.22;
    color: #1A1A1E;
    margin: 0;
}

.sust-report__desc {
    max-width: clamp(300px, 33.56vw, 580px);
    font-family: 'Inter', sans-serif;
    font-size: clamp(14px, 0.93vw, 16px);
    line-height: 26px;
    color: #000000;
    margin: 0;
}

.sust-report__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 52px;
    padding: 14px 26px;
    background: #0D0D0D;
    color: #fff;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 20px;
    text-transform: capitalize;
    text-decoration: none;
    box-shadow: 0px 1px 4px rgba(25, 33, 61, 0.08);
    transition: opacity 0.3s ease;
}

.sust-report__btn:hover {
    opacity: 0.85;
}

.sust-report__btn svg {
    display: none;
}

.sust-report__image {
    flex-shrink: 0;
}

.sust-report__image img {
    width: clamp(350px, 43.87vw, 758px);
    height: auto;
    object-fit: cover;
}

@media (max-width: 767px) {
    .sust-report__inner {
        flex-direction: column;
        gap: 40px;
        padding: 60px 40px;
    }

    .sust-report__content {
        width: 100%;
    }

    .sust-report__desc {
        max-width: 100%;
    }

    .sust-report__image img {
        width: 100%;
    }
}

@media (max-width: 479px) {
    .sust-report__inner {
        padding: 40px 24px;
        gap: 30px;
    }

    .sust-report__btn {
        height: 46px;
        padding: 12px 22px;
    }
}

/* =========================
   FOR OWNERS PAGE – consistent section padding & container width
========================= */

.owners {
    --owners-section-padding-y: clamp(60px, 6.6vw, 114px);
}

/* Collapse doubled padding when two same-background sections are adjacent */
.kstyles+.owners-why,
.owners-why+.owners-layouts,
.owners-handles+.projects-slider {
    padding-top: 0;
}

/* All sections use same horizontal container width and padding */
.owners .container {
    max-width: var(--site-max-width);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--site-padding-x);
    padding-right: var(--site-padding-x);
}

/* Projects slider (UAE Kitchens) on For Owners page – match Home page flow */
.owners .projects-slider {
    padding: 0;
}

/* Hero Section */
.owners-hero {
    /* padding: 60px 0; */
    background-color: #F1ECE7;
    display: flex;
    align-items: center;
    justify-content: center;
}

.owners-hero__grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: clamp(40px, 6vw, 80px);
    align-items: center;
    width: 100%;
}

.owners-hero__content {
    max-width: 480px;
}

.owners-hero__title {
    margin: 0 0 20px;
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.3;
    color: #000;
}

.owners-hero__text {
    margin: 0 0 32px;
    font-size: 16px;
    line-height: 1.8;
    color: #000000;
}

.owners-hero__actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.owners-hero__actions .btn {
    padding: 0 20px;
    font-size: 16px;
    height: 46px;
}

.owners-hero__actions .btn img {
    width: 16px;
    height: 16px;
}

.owners-hero__media {
    position: relative;
}

.owners-hero__media img {
    width: 100%;
    height: 65vh;
    display: block;
    object-fit: cover;
    object-position: center center;
}

/* =========================
   Kitchen Styles
========================= */

.kstyles {
    padding: var(--owners-section-padding-y) 0;
    /* background: #FAFAF8; */
}

/* ---------- Title ---------- */

.kstyles__title {
    margin: 0 0 24px;
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    color: #1A1A1E;
}

/* ---------- Tabs Row (Categories + CTA) ---------- */

.kstyles__tabrow {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-bottom: 48px;
}

.kstyles__tabs {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #E0E0E0;
    position: relative;
    flex: 1;
    padding-right: 7%;
}

.kstyles__tab {
    background: none;
    border: 0;
    border-bottom: 2px solid transparent;
    padding: 12px 0;
    margin-bottom: -1px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #8A8A8A;
    cursor: pointer;
    text-decoration: none;
    transition: color 180ms ease, border-color 180ms ease;
}

.kstyles__tab:hover {
    color: #000;
}

.kstyles__tab.is-active {
    color: #000;
    font-weight: 500;
    border-bottom-color: #000;
}

/* ---------- CTA Button ---------- */

.kstyles__cta {
    padding: 14px 26px;
    background: #2F2622;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    color: #fff;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    white-space: nowrap;
}

.kstyles__cta img {
    width: 20px;
    height: 20px;
}

@media (max-width: 767px) {
    .kstyles__cta .kstyles__cta-category {
        display: none;
    }
}

/* ---------- Body ---------- */

.kstyles__body {
    position: relative;
}

/* ---------- Gallery ---------- */

.kstyles__gallery-wrap {
    width: 100%;
}

.kstyles__viewport {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.kstyles__track {
    position: relative;
    width: 100%;
}

.kstyles__slide {
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.45s ease, visibility 0.45s ease;
    position: absolute;
    top: 0;
    left: 0;
}

.kstyles__slide.is-active {
    opacity: 1;
    visibility: visible;
    position: relative;
}

/* ---------- Mosaic ---------- */

.kstyles__mosaic {
    display: grid;
    grid-template-columns: 1.35fr 1fr;
    gap: 18px;
    text-decoration: none;
    color: inherit;
    height: 550px;
}

.kstyles__big {
    position: relative;
    overflow: hidden;
    height: 100%;
    min-height: 0;
}

.kstyles__small {
    position: relative;
    overflow: hidden;
    min-height: 0;
    height: 100%;
}

.kstyles__stack {
    display: grid;
    grid-template-rows: 1fr 1fr;
    gap: 18px;
    height: 100%;
    min-height: 0;
}

.kstyles__mosaic img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

/* ---------- Navigation Arrows ---------- */

.kstyles__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: none;
    background: #F1ECE7;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: #000;
    cursor: pointer;
    z-index: 3;
    transition: opacity 0.2s ease;
}

.kstyles__nav:hover:not(:disabled) {
    opacity: 0.85;
}

.kstyles__nav:disabled {
    opacity: 0.5;
    cursor: default;
    pointer-events: none;
}

.kstyles__nav svg {
    width: 20px;
    height: 20px;
    display: block;
}

.kstyles__nav--prev {
    left: -64px;
}

.kstyles__nav--next {
    right: -64px;
}

/* Why Choose Nolte Section */
.owners-why {
    padding: var(--owners-section-padding-y) 0;
}

.owners-why__header {
    margin-bottom: clamp(32px, 3.24vw, 56px);
}

.owners-why__title {
    margin: 0 0 clamp(16px, 1.62vw, 28px);
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.3;
    color: #2C2B2B;
}

.owners-why__lead {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    width: 80%;
}

/* ---------- Desktop: CSS Grid (tabs col-1, active panel col-2) ---------- */
.owners-why__grid {
    display: grid;
    grid-template-columns: minmax(0, 37fr) minmax(0, 63fr);
    gap: 0 clamp(16px, 1.16vw, 20px);
    position: relative;
}

.owners-why__item {
    grid-column: 1;
}

.owners-why__tab {
    display: flex;
    align-items: center;
    gap: clamp(20px, 2.03vw, 35px);
    width: 100%;
    margin-bottom: clamp(12px, 1.16vw, 16px);
    padding: clamp(16px, 1.39vw, 16px);
    background: #F1ECE7;
    border: 1px solid #D5D5D5;
    border-radius: 0;
    cursor: pointer;
    font-family: inherit;
    transition: background 0.35s ease, box-shadow 0.35s ease, transform 0.25s ease;
}

.owners-why__item:last-child .owners-why__tab {
    margin-bottom: 0;
}

.owners-why__tab.is-active {
    background: #2F2622;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

.owners-why__tab.is-active .owners-why__tab-title {
    color: #FFFFFF;
}

.owners-why__tab.is-active .owners-why__tab-icon {
    filter: brightness(0) invert(1);
}

.owners-why__tab:hover:not(.is-active) {
    background: #F0EAE5;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    transform: translateY(-1px);
}

.owners-why__tab-icon {
    width: clamp(36px, 2.89vw, 50px);
    height: clamp(42px, 3.47vw, 60px);
    object-fit: contain;
    flex-shrink: 0;
}

.owners-why__tab-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 36px;
    color: #0D0D0D;
}

/* Chevron: hidden on desktop, shown on mobile */
.owners-why__chevron {
    display: none;
    margin-left: auto;
    flex-shrink: 0;
    color: #555;
    transition: transform 0.3s ease;
}

/* ---------- Panels ---------- */
@keyframes whyPanelIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

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

.owners-why__panel {
    display: none;
}

.owners-why__panel.is-active {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: calc(63% - clamp(8px, 0.58vw, 10px));
    background: #F1ECE7;
    border: 1px solid #D5D5D5;
    padding: clamp(16px, 1.39vw, 24px);
    padding-top: clamp(16px, 1.50vw, 26px);
    padding-bottom: clamp(24px, 2.43vw, 42px);
    animation: whyPanelIn 0.4s ease-out;
}

.owners-why__panel-media {
    display: block;
    width: 100%;
    overflow: hidden;
    flex: 1;
    min-height: 0;
}

.owners-why__panel-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.owners-why__panel-media:hover img {
    transform: scale(1.03);
}

.owners-why__panel-bottom {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-top: clamp(24px, 2.43vw, 42px);
}

.owners-why__panel-desc {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    max-width: 620px;
    flex: 1;
}

.owners-why__panel-btn {
    flex-shrink: 0;
    align-self: flex-end;
}

/* ---------- Tablet & Mobile: full-width lead ---------- */
@media (max-width: 1023px) {
    .owners-why__lead {
        width: 100%;
    }
}

/* ---------- Mobile: Accordion layout ---------- */
@media (max-width: 767px) {
    .owners-why__grid {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .owners-why__item {
        display: block;
        /* border-radius: 8px; */
        overflow: hidden;
        background: #F1ECE7;
        border: 1px solid #E0E0E0;
    }

    .owners-why__tab {
        margin-bottom: 0;
        border: none;
        border-radius: 0;
        padding: 18px 20px;
        gap: 16px;
        background: #F1ECE7;
    }

    .owners-why__item.is-open .owners-why__tab,
    .owners-why__tab.is-active {
        background: #2F2622;
    }

    .owners-why__tab-icon {
        width: 36px;
        height: 42px;
    }

    .owners-why__tab-title {
        font-size: 16px;
        line-height: 1.4;
    }

    .owners-why__chevron {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .owners-why__tab.is-active .owners-why__chevron {
        transform: rotate(180deg);
    }

    .owners-why__panel {
        display: flex;
        flex-direction: column;
        position: static;
        width: auto;
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        border: none;
        background: #F1ECE7;
        padding: 0 20px;
        transition: max-height 0.45s cubic-bezier(0.4, 0, 0.2, 1),
            opacity 0.35s ease,
            padding-bottom 0.35s ease;
    }

    .owners-why__panel.is-active {
        position: static;
        width: auto;
        top: auto;
        right: auto;
        bottom: auto;
        border: none;
        opacity: 1;
        padding: 0 20px 20px;
        animation: none;
    }

    .owners-why__panel-media {
        flex: none;
    }

    .owners-why__panel-media img {
        height: 250px;
    }

    .owners-why__panel-bottom {
        flex-direction: column;
        gap: 16px;
    }

    .owners-why__panel-desc {
        margin-top: 0;
        max-width: none;
    }

    .owners-why__panel-btn {
        align-self: flex-start;
    }
}

/* Kitchen Layouts & Every Detail Matters (For Owners – same layout: navigable cards, arrows outside) */
.owners-layouts,
.owners-handles {
    padding: var(--owners-section-padding-y) 0;
    overflow: visible;
}

.owners-layouts {
    background: #fff;
}

.owners-handles {
    background: #fff;
}

.owners-layouts>.container,
.owners-handles>.container {
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding: 0 var(--site-padding-x);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 25px;
    overflow: visible;
}

.owners-layouts__header,
.owners-handles__header {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 28px;
    align-self: stretch;
}

.owners-layouts__title,
.owners-handles__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #2C2B2B;
    margin: 0;
    word-wrap: break-word;
}

.owners-layouts__desc,
.owners-handles__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    margin: 0;
    max-width: 929px;
    word-wrap: break-word;
}

.owners-layouts__desc p,
.owners-handles__desc p {
    margin: 0 0 1em;
}

.owners-layouts__desc p:last-child,
.owners-handles__desc p:last-child {
    margin-bottom: 0;
}

/* Slider: viewport same width as title/description; arrows outside that width */
.owners-layouts__slider,
.owners-handles__slider {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 42px;
}

.owners-layouts__viewport,
.owners-handles__viewport {
    overflow: hidden;
    width: 100%;
}

.owners-layouts__track,
.owners-handles__track {
    display: flex;
    gap: 41px;
    transition: transform 0.35s ease-out;
    will-change: transform;
}

.owners-layouts__card,
.owners-handles__card {
    flex: 0 0 auto;
    min-width: 0;
    background: #fff;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
}

.owners-layouts__card-media,
.owners-handles__card-media {
    align-self: stretch;
    height: 419px;
    overflow: hidden;
}

.owners-layouts__card-media img,
.owners-handles__card-media img {
    width: 100%;
    height: 419px;
    object-fit: cover;
    display: block;
}

.owners-layouts__card-content,
.owners-handles__card-content {
    align-self: stretch;
    padding-top: 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.owners-layouts__card-title,
.owners-handles__card-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 20px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 1.5;
    color: #000;
    margin: 0;
}

.owners-layouts__card-desc,
.owners-handles__card-desc {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: rgba(0, 0, 0, 0.83);
    margin: 0;
    word-wrap: break-word;
}

.owners-layouts__nav,
.owners-handles__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    padding: 0;
    border-radius: 50%;
    border: none;
    background: #F1ECE7;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: opacity 0.2s ease;
    z-index: 2;
}

.owners-layouts__nav svg,
.owners-handles__nav svg {
    width: 20px;
    height: 20px;
    display: block;
}

.owners-layouts__nav--next,
.owners-handles__nav--next {
    right: -76px;
    left: auto;
}

.owners-layouts__nav--prev,
.owners-handles__nav--prev {
    left: -76px;
    right: auto;
}

.owners-layouts__nav:hover:not(:disabled),
.owners-handles__nav:hover:not(:disabled) {
    opacity: 0.85;
}

.owners-layouts__nav:disabled,
.owners-handles__nav:disabled {
    opacity: 0.5;
    cursor: default;
    pointer-events: none;
}

/* Dot pagination (shown below 1200px, replaces arrows) */
.owners-layouts__dots,
.owners-handles__dots {
    display: none;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding-top: 24px;
}

.owners-layouts__dot,
.owners-handles__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #D5D5D5;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: width 0.3s ease, border-radius 0.3s ease, background 0.3s ease;
}

.owners-layouts__dot.is-active,
.owners-handles__dot.is-active {
    width: 24px;
    border-radius: 4px;
    background: #333;
}

@media (max-width: 1199px) {

    .owners-layouts__nav,
    .owners-handles__nav {
        display: none;
    }

    .owners-layouts__dots,
    .owners-handles__dots {
        display: flex;
        width: 100%;
    }
}

@media (max-width: 767px) {

    .owners-layouts>.container,
    .owners-handles>.container {
        gap: 40px;
    }

    .owners-layouts__title,
    .owners-handles__title {
        font-size: 28px;
    }

    .owners-layouts__header,
    .owners-handles__header {
        gap: 20px;
    }

    .owners-layouts__card-media,
    .owners-layouts__card-media img,
    .owners-handles__card-media,
    .owners-handles__card-media img {
        height: 280px;
    }
}

/* Scheme in Colours (For Owners – image left, text right, contained card) */
.owners-scheme {
    padding: clamp(24px, 2.5vw, 40px) 0;
    background: #FFFFFF;
}

.owners-scheme .container {
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding: 0 var(--site-padding-x);
}

.owners-scheme__card {
    display: flex;
    align-items: center;
    gap: 74px;
    padding: 74px;
    background: #F1ECE7;
    /* border-radius: 16px; */
    overflow: hidden;
}

.owners-scheme__image {
    flex: 1 1 0;
    min-width: 0;
    height: 555px;
}

.owners-scheme__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.owners-scheme__content {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 47px;
}

.owners-scheme__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 55.64px;
    color: #1A1A1E;
    margin: 0;
}

.owners-scheme__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    margin: 0;
}

.owners-scheme__desc p {
    margin: 0 0 1em;
}

.owners-scheme__desc p:last-child {
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .owners-scheme__card {
        flex-direction: column;
        padding: 24px;
        gap: 32px;
    }

    .owners-scheme__image {
        height: auto;
        order: -1;
    }

    .owners-scheme__image img {
        height: auto;
        max-height: 400px;
    }

    .owners-scheme__title {
        font-size: 28px;
        line-height: 1.3;
    }

    .owners-scheme__content {
        gap: 24px;
    }
}

/* For Owners Responsive */

/* ========== TABLET (768px - 1023px) ========== */

/* ========== MOBILE (< 768px) ========== */

/* ========== VERY SMALL MOBILE (< 480px) ========== */

/* Default state - show full label, hide short */
.kstyles__tab .kstyles__tab-full {
    display: inline;
}

.kstyles__tab .kstyles__tab-short {
    display: none;
}

/* Hide elements that only show on certain viewports */
.kstyles__tabs-fade,
.kstyles__bottom-bar,
.kstyles__nav-container {
    display: none;
}

/* =========================
   SOLUTION DETAIL PAGE
   ========================= */

/* ----- Solution Hero (Professional layout) ----- */
.solution-hero {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 70vh;
}

.solution-hero__media {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.solution-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.solution-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.65) 0%,
            rgba(0, 0, 0, 0.3) 50%,
            rgba(0, 0, 0, 0.1) 100%);
    z-index: 2;
}

.solution-hero__content {
    position: relative;
    z-index: 3;
    padding-bottom: 80px;
}

.solution-hero__label {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 16px;
}

.solution-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 56px;
    font-weight: 300;
    line-height: 1.2;
    color: #ffffff;
    margin: 0 0 32px;
}

.solution-hero__actions {
    display: flex;
    gap: 16px;
}

.solution-hero__btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: #ffffff;
    border-radius: 50px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    color: #000000;
    transition: transform 0.3s ease, background 0.3s ease;
}

.solution-hero__btn:hover {
    background: rgba(255, 255, 255, 0.95);
    transform: translateY(-2px);
}

.solution-hero__btn img {
    width: 16px;
    height: 16px;
    transition: transform 0.3s ease;
}

.solution-hero__btn:hover img {
    transform: translateX(4px);
}

/* ----- Breadcrumb (Solution Detail) ----- */
.solution-detail .breadcrumb {
    padding: 20px 0;
    font-size: 14px;
    color: #8A8A8A;
    border-bottom: 1px solid #F3F3F3;
}

.solution-detail .breadcrumb a {
    color: #8A8A8A;
    text-decoration: none;
    transition: color 0.2s ease;
}

.solution-detail .breadcrumb a:hover {
    color: #000000;
}

/* ----- Solution Overview (Professional layout) ----- */
.solution-overview {
    padding: 80px 0 120px;
}

.solution-overview__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin-bottom: 64px;
}

.solution-overview__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: stretch;
}

.solution-overview__content {
    display: flex;
    flex-direction: column;
    gap: 48px;
}

.solution-overview__partner {
    display: block;
}

.solution-overview__partner img {
    max-width: 280px;
    height: auto;
    object-fit: contain;
    object-position: left center;
}

.solution-overview__desc {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.solution-overview__desc p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    color: #000000;
    margin: 0;
}

.solution-overview__meta {
    padding: 48px;
    border: 1px solid #E5E5E5;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px 40px;
    align-content: start;
}

.solution-meta {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.solution-meta__label {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #8A8A8A;
}

.solution-meta__value {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: #000000;
}

/* ----- Product Header (For Owners layout) ----- */
.product-header {
    padding: 74px 0;
    background: #FFFFFF;
}

.product-header__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 74px;
    align-items: center;
}

.product-header__media {
    position: relative;
    width: 100%;
    height: 476px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-header__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.product-header__content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: stretch;
    /* height: 476px; */
    /* gap: 40px; */
}

.product-header__info {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.product-header__bottom {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.product-header__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    /* line-height: 88px; */
    color: #000000;
    margin: 0;
}

.product-header__solution-name {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 4.80px;
    line-height: 20.74px;
    text-transform: uppercase;
    color: #0D0D0D;
    margin: 0;
}

.product-header__subtitle {
    font-family: 'Albert Sans', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 33px;
    color: #929292;
    margin: 0;
}

/* ----- Color Swatches ----- */
.color-swatches {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 0;
}

.color-swatches__label {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1.76px;
    line-height: 20.74px;
    text-transform: uppercase;
    color: #0D0D0D;
}

.color-swatches__active-name {
    font-weight: 400;
}

.color-swatches__list {
    display: flex;
    flex-wrap: wrap;
    gap: 14.66px;
}

.color-swatch {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64.23px;
    height: 64.23px;
    border-radius: 6.84px;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    padding: 0;
    outline: none;
}

.color-swatch:hover {
    transform: scale(1.05);
}

.color-swatch.is-active {
    width: 64px;
    height: 64px;
    outline: 4.88px solid #494949;
    outline-offset: 0px;
}

.color-swatch .screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* ----- Product Header Actions (CTA Buttons) ----- */
.product-header__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    margin-top: 28px;
}

.btn-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: var(--btn-height);
    padding: 0 26px;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 20px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: opacity 0.2s ease, transform 0.2s ease;
    box-shadow: 0px 1px 4px rgba(24.73, 32.61, 60.56, 0.08);
}

.btn-cta--whatsapp {
    background: #0D0D0D;
    color: #ffffff;
}

.btn-cta--whatsapp:hover {
    opacity: 0.85;
}

.btn-cta--whatsapp svg {
    width: 22px;
    height: 28px;
}

.btn-cta--consultation {
    background: #0D0D0D;
    color: #ffffff;
}

.btn-cta--consultation:hover {
    opacity: 0.85;
}

.btn-cta--consultation svg {
    width: 24px;
    height: 24px;
}

.btn-cta--consultation img {
    width: 24px;
    height: 24px;
}

.btn-cta--share {
    width: 32px;
    height: 32px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    color: #000000;
}

.btn-cta--share:hover {
    opacity: 0.7;
}

.btn-cta--share svg {
    width: 22.13px;
    height: 24.79px;
}

/* ----- Solution Description (For Owners layout) ----- */
.solution-description {
    padding: clamp(24px, 2.5vw, 40px) 0;
    background-color: #FFFFFF;
}

.solution-description__card {
    background-color: #F1ECE7;
    padding: 60px 90px;
}

.solution-description__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 74px;
    align-items: flex-start;
}

.solution-description__left {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.solution-description__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 46px;
    color: #000000;
    margin: 0;
}

.solution-description__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #000000;
    max-width: 100%;
}

.solution-description__text p {
    margin: 0 0 24px;
}

.solution-description__text p:last-child {
    margin-bottom: 0;
}

.solution-description__right {
    display: flex;
    align-items: flex-start;
    padding-top: calc(46px + 24px);
}

.solution-description__statement {
    font-family: 'Albert Sans', sans-serif;
    font-size: 36px;
    font-weight: 400;
    line-height: 45px;
    color: #000000;
    margin: 0;
    text-transform: capitalize;
}

.solution-description__statement p {
    margin: 0;
}

/* ----- Project Overview - Home (For Owners) ----- */
.project-overview--home {
    padding: 74px 0 114px;
    background: #FFFFFF;
}

.project-overview__grid--home {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 80px;
    align-items: start;
}

.project-overview--home .project-overview__desc {
    gap: 24px;
}

.project-overview--home .project-overview__desc p {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
    color: #000000;
    margin: 0;
}

.project-overview__highlight {
    display: flex;
    align-items: flex-start;
}

.project-overview__quote {
    font-family: 'Inter', sans-serif;
    font-size: 28px;
    font-weight: 400;
    line-height: 1.6;
    color: #000000;
    margin: 0;
}

.project-overview__quote p {
    margin: 0;
}

/* ----- Home Story Card (For Owners Related) ----- */
.related-projects--for-owners {
    padding: 80px 0 100px;
    background: #FFFFFF;
}

.related-projects--for-owners .related-projects__title {
    margin-bottom: 48px;
}

.home-story-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.home-story-card__media {
    position: relative;
    width: 100%;
    overflow: hidden;
    margin-bottom: 24px;
}

.home-story-card__media img {
    width: 100%;
    height: 320px;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.home-story-card:hover .home-story-card__media img {
    transform: scale(1.05);
}

.home-story-card__view {
    position: absolute;
    bottom: 16px;
    right: 16px;
    padding: 10px 24px;
    background: #FFFFFF;
    border-radius: 50px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #000000;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.home-story-card:hover .home-story-card__view {
    opacity: 1;
    transform: translateY(0);
}

.home-story-card__content {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 16px;
    border-bottom: 1px solid #E0E0E0;
}

.home-story-card__content::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #000000;
    transition: width 0.5s ease;
}

.home-story-card:hover .home-story-card__content::after {
    width: 100%;
}

.home-story-card__title {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #000000;
    margin: 0;
}

.home-story-card__arrow {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
    flex-shrink: 0;
}

.home-story-card__arrow svg {
    width: 20px;
    height: 20px;
}

.home-story-card:hover .home-story-card__arrow {
    transform: translateX(6px);
}

/* ----- Solution Gallery (Shared) ----- */
.solution-gallery {
    padding: 0 0 96px;
}

.solution-gallery__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 48px;
}

.solution-gallery__grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 24px;
}

.solution-gallery__item {
    overflow: hidden;
}

.solution-gallery__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.solution-gallery__item:hover img {
    transform: scale(1.03);
}

/* First row: 2 large images */
.solution-gallery__item--large {
    height: 400px;
}

.solution-gallery__item--large:nth-child(1) {
    grid-column: span 3;
}

.solution-gallery__item--large:nth-child(2) {
    grid-column: span 3;
}

/* Second row: 3 smaller images */
.solution-gallery__item:nth-child(n+3) {
    grid-column: span 2;
    height: 280px;
}

/* ----- Solution Testimonial (Professional layout) ----- */
.solution-testimonial {
    padding: 96px 0;
    background: #F1ECE7;
}

.solution-testimonial__card {
    display: flex;
    gap: 80px;
    align-items: flex-start;
}

.solution-testimonial__author {
    flex-shrink: 0;
    min-width: 200px;
}

.solution-testimonial__name {
    font-family: 'Albert Sans', sans-serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    color: #000000;
    margin: 0 0 8px;
}

.solution-testimonial__role {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    color: #8A8A8A;
    margin: 0;
}

.solution-testimonial__quote {
    flex-grow: 1;
    margin: 0;
    position: relative;
    padding: 0 60px;
}

.solution-testimonial__mark {
    display: block;
    position: absolute;
    width: 32px;
    height: 32px;
}

.solution-testimonial__mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.solution-testimonial__mark--start {
    top: 0;
    left: 0;
}

.solution-testimonial__mark--end {
    bottom: 0;
    right: 0;
}

.solution-testimonial__text {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.8;
    color: #000000;
    font-style: italic;
    margin: 0;
}

/* ----- Related Solutions (Shared) ----- */
.related-solutions {
    padding: 96px 0;
}

.related-solutions__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
    margin-bottom: 64px;
}

.related-solutions__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px;
}

/* Related Card - Category label for For Owners ranges */
.related-card--range .related-card__content {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.related-card__category {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #8A8A8A;
}

.related-card--range .related-card__title {
    font-size: 16px;
}

.related-card--range .related-card__arrow {
    position: absolute;
    right: 0;
    bottom: 16px;
}

/* =========================
   SOLUTION DETAIL RESPONSIVE
   ========================= */

/* ================================
   FEATURE PAGE
   ================================ */

/* ----- Hero Section ----- */
.feature-hero {
    position: relative;
    min-height: calc(100svh - var(--header-height));
    display: flex;
    align-items: flex-end;
    overflow: hidden;
}

.feature-hero__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.feature-hero__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.feature-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.15) 50%, transparent 100%);
    z-index: 1;
}

.feature-hero__content {
    position: relative;
    z-index: 2;
    padding-bottom: clamp(48px, 4.63vw, 80px);
    width: 100%;
}

.feature-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: clamp(32px, 3.94vw, 68px);
    font-weight: 400;
    color: #FFFFFF;
    line-height: 1.2;
    margin: 0;
    max-width: 60%;
}

/* ----- Intro Section ----- */
.feature-intro {
    padding: 74px 0;
    background: #F1ECE7;
}

.production-page .feature-intro {
    background: #FFFFFF;
}

.feature-intro__content {
    display: flex;
    flex-direction: column;
    gap: 37px;
    margin-bottom: 37px;
}

.feature-intro__title {
    color: #1A1A1E;
    font-size: 40px;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
    max-width: 80%;
    text-transform: capitalize;
}

.feature-intro__desc {
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
    max-width: 80%;
}

.feature-intro__desc p {
    margin: 0 0 1em;
}

.feature-intro__desc p:last-child {
    margin-bottom: 0;
}

.feature-intro__image img {
    width: 100%;
    max-height: clamp(300px, 40vw, 553px);
    display: block;
    object-fit: cover;
}

/* ----- Quote Section ----- */
.feature-quote {
    padding: 74px 0 0;
    background: #FFFFFF;
}

.feature-quote__card {
    background: #F1ECE7;
    padding: 91px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
}

.feature-quote__author {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    margin-bottom: 24px;
}

.feature-quote__author-name {
    font-family: 'Albert Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #0D0D0D;
}

.feature-quote__author-desig,
.feature-quote__author-title {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #000000;
}

.feature-quote__body {
    position: relative;
    margin: 0;
    padding: 0 60px;
    width: 75%;
}

.feature-quote__text {
    font-family: 'Albert Sans', sans-serif;
    font-size: clamp(20px, 2.39vw, 25px);
    line-height: 1.6;
    font-weight: 400;
    color: #000000;
    margin: 0;
    text-align: center;
}

.feature-quote__mark {
    position: absolute;
    width: 39px;
    height: 40px;
}

.feature-quote__mark--start {
    top: -10px;
    left: 0;
}

.feature-quote__mark--end {
    bottom: -10px;
    right: 0;
}

.feature-quote__mark img {
    width: 39px;
    height: 40px;
    object-fit: contain;
    opacity: 0.15;
}

/* ----- Split Section (Image + Text) ----- */
.feature-split {
    padding: 74px 0;
    background: #FFFFFF;
}

.feature-split__grid {
    display: flex;
    align-items: stretch;
    gap: 73px;
}

.feature-split__grid--reverse {
    flex-direction: row-reverse;
}

.feature-split__media {
    flex: 0 0 50%;
    max-width: 620px;
}

.feature-split__media img {
    width: 100%;
    height: 100%;
    min-height: clamp(300px, 32.12vw, 555px);
    object-fit: cover;
    display: block;
}

.feature-split__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: clamp(24px, 2.72vw, 47px);
}

.feature-split__title {
    color: #1A1A1E;
    font-size: 40px;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
    text-transform: capitalize;
}

.feature-split__desc {
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
}

.feature-split__desc p {
    margin: 0 0 1em;
}

.feature-split__desc p:last-child {
    margin-bottom: 0;
}

/* ----- Two Column Text Section ----- */
.feature-columns {
    padding: 0;
    background: #FFFFFF;
}

/* Standalone two-col block — beige card with title + left desc + right statement */
.feature-columns.feature-columns--blog {
    width: 100%;
    padding: 74px;
    box-sizing: border-box;
    background: #F1ECE7;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 58px;
    overflow: hidden;
}

.feature-columns__card {
    background: #F1ECE7;
    padding: 91px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 58px;
    overflow: hidden;
}

.feature-columns__card > .feature-columns__title {
    width: 50%;
    max-width: 100%;
    margin: 0;
}

.feature-columns__grid {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 74px;
}

.feature-columns__col--left {
    flex: 1 1 0;
    min-width: 0;
}

.feature-columns__col--right {
    flex: 1 1 0;
    min-width: 0;
}

.feature-columns__title {
    color: #000000;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    font-size: 40px;
    line-height: 50px;
    margin: 0;
    text-transform: capitalize;
    word-wrap: break-word;
}

.feature-columns__title--large {
    font-family: 'Inter', sans-serif;
    font-size: 36px;
    line-height: 45px;
    text-transform: none;
    word-wrap: break-word;
    margin: 0;
}

.feature-columns__desc {
    color: #000000;
    font-size: 16px;
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
    word-wrap: break-word;
}

.feature-columns__desc p {
    margin: 0;
}

.feature-columns__desc p + p {
    margin-top: 16px;
}

/* ----- Gallery Section ----- */
.feature-gallery {
    padding: 74px 0;
    background: #FFFFFF;
}

.feature-gallery__grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 33px;
}

.feature-gallery__item {
    overflow: hidden;
}

.feature-gallery__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.feature-gallery__item:hover img {
    transform: scale(1.05);
}

/* First row: 2 large images */
.feature-gallery__item--large {
    grid-column: span 3;
    height: clamp(280px, 23.15vw, 400px);
}

/* Second row: 3 images */
.feature-gallery__item:nth-child(n+3) {
    grid-column: span 2;
    height: clamp(200px, 16.2vw, 280px);
}

/* ----- Closing Section ----- */
.feature-closing {
    padding: 0 0 74px;
    background: #FFFFFF;
}

.feature-closing__card {
    background: #F1ECE7;
    padding: 74px;
}

.feature-closing__grid {
    display: flex;
    align-items: stretch;
    gap: 30px;
}

.feature-closing__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: clamp(24px, 2.72vw, 47px);
}

.feature-closing__title {
    color: #1A1A1E;
    font-size: 40px;
    font-family: 'Albert Sans', sans-serif;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}

.feature-closing__desc {
    color: #000000;
    font-size: clamp(14px, 0.93vw, 16px);
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    line-height: 26px;
}

.feature-closing__desc p {
    margin: 0 0 1em;
}

.feature-closing__desc p:last-child {
    margin-bottom: 0;
}

.feature-closing__media {
    flex: 0 0 45%;
    max-width: 620px;
}

.feature-closing__media img {
    width: 100%;
    height: 100%;
    min-height: clamp(300px, 32.12vw, 555px);
    object-fit: cover;
    display: block;
}

/* ----- Collection Detail: Product header should not be full screen ----- */
.collection-detail .product-header {
    min-height: auto;
    padding: 114px 0;
}

/* ----- Collection Detail: Collapse spacing between consecutive white sections ----- */
.collection-detail .feature-intro,
.collection-detail .feature-split,
.collection-detail .feature-gallery {
    padding: clamp(60px, 6.6vw, 114px) 0;
}

.collection-detail .feature-intro {
    background: #F1ECE7;
}


.collection-detail .feature-quote {
    padding: clamp(60px, 6.6vw, 114px) 0;
    background: #FFFFFF;
}

/* Remove top padding when same white-bg sections follow each other */
.collection-detail .feature-intro + .feature-split,
.collection-detail .feature-intro + .feature-gallery,
.collection-detail .feature-split + .feature-intro,
.collection-detail .feature-split + .feature-split,
.collection-detail .feature-split + .feature-gallery,
.collection-detail .feature-split + .feature-quote,
.collection-detail .feature-gallery + .feature-intro,
.collection-detail .feature-gallery + .feature-split,
.collection-detail .feature-gallery + .feature-quote,
.collection-detail .feature-quote + .feature-intro,
.collection-detail .feature-quote + .feature-split,
.collection-detail .feature-quote + .feature-gallery {
    padding-top: 0;
}

/* Collection detail: Highlight section — beige card inside container */
.collection-detail .feature-columns .feature-columns__grid {
    background: #F1ECE7;
    /* padding: 60px 90px; */
    align-items: flex-start;
}

.collection-detail .feature-columns .feature-columns__col--left {
    gap: 24px;
}

.collection-detail .feature-columns .feature-columns__title {
    font-size: 40px;
    line-height: 46px;
}

.collection-detail .feature-columns .feature-columns__title--large {
    font-size: 36px;
    line-height: 45px;
    text-transform: capitalize;
}

/* .collection-detail .feature-columns .feature-columns__col--right {
    padding-top: calc(46px + 24px);
} */

.collection-detail .related-projects {
    padding: clamp(60px, 6.6vw, 114px) 0;
}

.collection-detail .related-projects__title {
    font-size: clamp(24px, 2.08vw, 36px);
    color: #1A1A1E;
}

/* Collapse gap when gallery or other white section is right before related-projects */
.collection-detail .feature-gallery + .related-projects,
.collection-detail .feature-split + .related-projects,
.collection-detail .feature-intro + .related-projects,
.collection-detail .feature-quote + .related-projects {
    padding-top: 0;
}

/* ----- Range Detail: Explore Other Ranges beige bg ----- */
.related-projects--ranges {
    padding: 74px 0;
    background: #F1ECE7;
}

.related-projects--collections {
    padding: 74px 0 !important;
    background: #F1ECE7;
}

.related-projects--ranges .related-projects__arrow--prev,
.related-projects--ranges .related-projects__arrow--next,
.related-projects--collections .related-projects__arrow--prev,
.related-projects--collections .related-projects__arrow--next {
    background: #E8D6CD;
    color: #0D0D0D;
}

/* ----- Feature Page Responsive ----- */
@media (max-width: 767px) {
    .feature-hero__title {
        max-width: 100%;
        font-size: clamp(28px, 8vw, 36px);
    }

    .feature-intro__content {
        margin-bottom: clamp(24px, 6vw, 40px);
    }

    .feature-quote__wrapper {
        gap: 12px;
    }

    .feature-split__grid,
    .feature-split__grid--reverse {
        flex-direction: column;
    }

    .feature-split__media {
        flex: none;
        max-width: 100%;
        width: 100%;
    }

    .feature-split__media img {
        height: auto;
        min-height: 0;
        max-height: 400px;
    }

    .feature-columns__grid {
        flex-direction: column;
    }

    .feature-gallery__grid {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .feature-gallery__item--large,
    .feature-gallery__item:nth-child(n+3) {
        grid-column: auto;
        height: 200px;
    }

    .feature-gallery__item:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    .feature-quote__body {
        padding: 0 40px;
    }

    .feature-quote__mark {
        width: 28px;
        height: 29px;
    }

    .feature-quote__mark img {
        width: 28px;
        height: 29px;
    }

    .feature-closing__grid {
        flex-direction: column;
    }

    .feature-closing__media {
        flex: none;
        max-width: 100%;
        width: 100%;
    }

    .feature-closing__media img {
        height: auto;
        min-height: 0;
        max-height: 400px;
    }
}

/* =========================================================
   INTERNATIONAL PROJECTS PAGE
   ========================================================= */

/* Hero */
.intl-hero {
    position: relative;
    min-height: clamp(250px, 25vw, 400px);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.intl-hero__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.intl-hero__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.intl-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.4));
    z-index: 1;
}

.intl-hero__content {
    position: relative;
    z-index: 2;
    text-align: center;
}

.intl-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 42px;
    font-weight: 500;
    color: #fff;
    margin: 0;
}

/* Accordion Section */
.intl-accordion {
    padding: clamp(40px, 4.63vw, 80px) 0;
    background: #fff;
}

.intl-accordion__item {
    border-bottom: 1px solid #E5E5E5;
}

.intl-accordion__item:first-child {
    border-top: none;
}

.intl-accordion__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: clamp(20px, 2.31vw, 40px) 0;
    background: none;
    border: none;
    cursor: pointer;
    font-family: inherit;
}

.intl-accordion__country {
    display: flex;
    align-items: center;
    gap: clamp(12px, 1.16vw, 20px);
}

.intl-accordion__flag {
    width: clamp(50px, 2.78vw, 75px);
    height: clamp(50px, 2.78vw, 75px);
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid rgba(219, 219, 219, 1);
}

.intl-accordion__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
}

.intl-accordion__name {
    font-family: 'Inter', sans-serif;
    font-size: clamp(14px, 1.04vw, 18px);
    font-weight: 500;
    color: #1a1a1a;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.intl-accordion__count {
    font-family: 'Inter', sans-serif;
    font-size: clamp(12px, 0.83vw, 14px);
    color: #999;
}

.intl-accordion__toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #F0F0F0;
    color: #666;
    transition: transform 0.3s ease, background 0.3s ease;
}

.intl-accordion__item.is-open .intl-accordion__toggle {
    transform: rotate(180deg);
    background: #1a1a1a;
    color: #fff;
}

/* Accordion Body */
.intl-accordion__body {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

.intl-accordion__item.is-open .intl-accordion__body {
    max-height: 1000px;
}

.intl-accordion__projects {
    list-style: none;
    margin: 0;
    padding: 0 0 clamp(16px, 1.39vw, 24px) clamp(44px, 3.94vw, 68px);
}

.intl-accordion__project-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: clamp(10px, 0.93vw, 16px) 0;
    background: none;
    border: none;
    cursor: pointer;
    font-family: 'Inter', sans-serif;
    font-size: clamp(14px, 0.93vw, 16px);
    color: #1a1a1a;
    transition: color 0.2s ease;
}

.intl-accordion__project-link:hover {
    color: #666;
}

.intl-accordion__project-link img {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    transform: rotate(-45deg);
    transition: transform 0.2s ease;
}

.intl-accordion__project-link:hover img {
    transform: rotate(-45deg) translate(2px, -2px);
}

/* Popup / Modal */
.intl-popup {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.intl-popup.is-active {
    opacity: 1;
    visibility: visible;
}

.intl-popup__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
}

.intl-popup__card {
    position: relative;
    background: #fff;
    border: 1px solid #E5E5E5;
    border-radius: 4px;
    padding: clamp(24px, 2.78vw, 48px);
    width: 90%;
    max-width: 500px;
    z-index: 1;
    transform: translateY(20px);
    transition: transform 0.3s ease;
}

.intl-popup.is-active .intl-popup__card {
    transform: translateY(0);
}

.intl-popup__close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #0D0D0D;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    color: #fff;
    padding: 0;
    line-height: 0;
    transition: background 0.2s ease;
}

.intl-popup__close:hover {
    background: #333;
}

.intl-popup__title {
    font-family: 'Inter', sans-serif;
    font-size: 32px;
    font-weight: 400;
    color: #1a1a1a;
    margin: 0 0 16px;
    line-height: 42px;
}

.intl-popup__desc {
    font-family: 'Inter', sans-serif;
    font-size: clamp(13px, 0.83vw, 14px);
    line-height: 1.7;
    color: #666;
    margin: 0 0 clamp(24px, 2.08vw, 36px);
}

.intl-popup__stats {
    display: flex;
    gap: 0;
    border-top: 1px solid #E5E5E5;
    padding-top: clamp(16px, 1.39vw, 24px);
}

.intl-popup__stat {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.intl-popup__stat-label {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #999;
}

.intl-popup__stat-value {
    font-family: 'Inter', sans-serif;
    font-size: clamp(14px, 0.93vw, 16px);
    font-weight: 400;
    color: #1a1a1a;
}

/* Mobile responsive */
@media (max-width: 767px) {
    .intl-accordion__projects {
        padding-left: 0;
    }

    .intl-popup__card {
        width: 92%;
        padding: 24px 20px;
    }

    .intl-popup__stats {
        gap: 0;
    }
}


/* ====================================================
   TECHNICAL DETAILS PAGE
   ==================================================== */

/* ---------- Hero Banner ---------- */
.techdetails-hero {
    position: relative;
    min-height: clamp(250px, 25vw, 400px);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.techdetails-hero__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.techdetails-hero__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.techdetails-hero__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    z-index: 1;
}

.techdetails-hero__content {
    position: relative;
    z-index: 2;
    text-align: center;
    padding: clamp(48px, 4.63vw, 80px) 0;
}

.techdetails-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 42px;
    font-weight: 500;
    line-height: 1.2;
    color: #FFFFFF;
    margin: 0;
}

/* ---------- Specification Cards ---------- */
.techdetails-specs {
    padding: clamp(60px, 6.6vw, 114px) 0;
    background: #FFFFFF;
}

.techdetails-specs__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(24px, 2.31vw, 40px);
}

.techdetails-specs__card {
    display: flex;
    flex-direction: column;
    background: #F1ECE7;
    overflow: hidden;
    transition: box-shadow 0.3s ease, transform 0.25s ease;
}

.techdetails-specs__card:hover {
    /* box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08); */
    transform: translateY(-2px);
}

.techdetails-specs__card-media {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
}

.techdetails-specs__card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}

.techdetails-specs__card:hover .techdetails-specs__card-media img {
    transform: scale(1.03);
}

.techdetails-specs__card-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: clamp(20px, 1.85vw, 32px) clamp(16px, 1.39vw, 24px) clamp(24px, 2.08vw, 36px);
    gap: 8px;
    flex: 1;
}

.techdetails-specs__card-label {
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    /* color: #888; */
    margin-bottom: 10px;
    text-decoration: underline;
}

.techdetails-specs__card-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.3;
    color: #1A1A1A;
    margin: 0;
}

.techdetails-specs__card-desc {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    color: #666;
    margin: 0;
    margin-bottom: 15px;
}

.techdetails-specs__card-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: auto;
    padding: 10px 20px;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #FFFFFF;
    background: #1A1A1A;
    border-radius: 999px;
    text-decoration: none;
    transition: background 0.25s ease, transform 0.25s ease;
}

.techdetails-specs__card-btn:hover {
    background: #333;
    transform: translateY(-1px);
}

.techdetails-specs__card-btn svg {
    flex-shrink: 0;
}

/* ---------- Responsive ---------- */
@media (max-width: 1023px) {
    .techdetails-specs__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .techdetails-hero {
        min-height: 220px;
    }

    .techdetails-specs__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .techdetails-specs__card-media {
        aspect-ratio: 16 / 10;
    }
}

@media (max-width: 479px) {
    .techdetails-hero {
        min-height: 180px;
    }
}

/* ================================
   TECHNICAL DETAILS – DOWNLOAD BROCHURE POPUP
   ================================ */

/* Button element reset for card download btn */
button.techdetails-specs__card-btn {
    border: none;
    cursor: pointer;
    font-family: inherit;
    background: #1a1a1a;
    color: #fff;
}

/* Popup container */
.td-popup {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.td-popup.is-active {
    opacity: 1;
    visibility: visible;
}

/* Overlay */
.td-popup__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
}

/* Card */
.td-popup__card {
    position: relative;
    background: #fff;
    width: 90%;
    max-width: 600px;
    max-height: 90vh;
    overflow-y: auto;
    border-radius: 8px;
    padding: 48px 40px;
    z-index: 1;
    transform: translateY(20px);
    transition: transform 0.3s ease;
}

.td-popup.is-active .td-popup__card {
    transform: translateY(0);
}

/* Close button */
.td-popup__close {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 10;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #0D0D0D;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    color: #fff;
    padding: 0;
    line-height: 0;
    transition: background 0.2s ease;
}

.td-popup__close:hover {
    background: #333;
}

/* Title */
.td-popup__title {
    font-family: 'Inter', sans-serif;
    font-size: 32px;
    font-weight: 400;
    color: #000;
    margin: 0 0 32px;
    /* text-align: center; */
}

/* Form rows */
.td-popup__form-row {
    display: flex;
    gap: 12px;
    margin-bottom: 0;
}

.td-popup__form-row--half {
    display: flex;
    gap: 12px;
}

.td-popup__form-row--half .td-popup__field {
    flex: 1;
}

.td-popup__form-row--phone {
    display: flex;
    gap: 12px;
}

.td-popup__field--code {
    display: none;
}

.td-popup__field--tel {
    flex: 1;
}

/* intl-tel-input inside popup: stretch phone input to fill row */
#tdPopup .iti {
    width: 100% !important;
    display: flex !important;
    gap: 12px;
}

#tdPopup .iti input[type="tel"],
#tdPopup .iti .iti__tel-input {
    flex: 1 !important;
    width: 100% !important;
}

#tdPopup .wpcf7-form-control-wrap[data-name*="phone"],
#tdPopup .wpcf7-form-control-wrap[data-name*="tel"],
#tdPopup p:has(.iti) {
    width: 100%;
    display: block;
}

#tdPopup p:has(.iti) .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

/* Field wrapper */
.td-popup__field {
    margin-bottom: 16px;
}

/* CF7 form controls inside popup – fix wrapping */
#tdPopup .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

#tdPopup .td-popup__form-row .wpcf7-form-control-wrap {
    flex: 1;
    min-width: 0;
}

#tdPopup .td-popup__form-row p {
    display: flex;
    gap: 12px;
    margin: 0;
    width: 100%;
}

#tdPopup .td-popup__form-row p .wpcf7-form-control-wrap {
    flex: 1;
    min-width: 0;
}

#tdPopup .td-popup__form-row p br {
    display: none;
}

/* Input & select base styles */
#tdPopup input[type="text"],
#tdPopup input[type="email"],
#tdPopup input[type="tel"],
#tdPopup select {
    width: 100%;
    height: 52px;
    padding: 0 16px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: #313131;
    background: #fff;
    border: 1px solid #E5E5E5;
    border-radius: 0;
    outline: none;
    transition: border-color 0.2s ease;
    box-sizing: border-box;
}

#tdPopup input[type="text"]:focus,
#tdPopup input[type="email"]:focus,
#tdPopup input[type="tel"]:focus,
#tdPopup select:focus {
    border-color: #333;
}

#tdPopup input::placeholder {
    color: #9A9A9A;
}

/* Select dropdown styling */
#tdPopup select {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 40px;
    color: #9A9A9A;
}

#tdPopup select.has-value,
#tdPopup select:not([data-default]) {
    color: #313131;
}

/* Submit button */
#tdPopup .td-popup__field--submit {
    margin-top: 8px;
}

#tdPopup input[type="submit"],
#tdPopup .wpcf7-submit {
    display: block;
    width: 100%;
    height: 52px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background: #0D0D0D;
    border: none;
    border-radius: 100px;
    cursor: pointer;
    transition: background 0.2s ease;
}

#tdPopup input[type="submit"]:hover,
#tdPopup .wpcf7-submit:hover {
    background: #333;
}

/* CF7 validation */
#tdPopup .wpcf7-not-valid {
    border-color: #dc3545 !important;
}

#tdPopup .wpcf7-not-valid-tip {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: #dc3545;
    margin-top: 4px;
}

/* Hide CF7 spinner */
#tdPopup .wpcf7-spinner {
    display: none !important;
}

#tdPopup .wpcf7-response-output:empty {
    display: none !important;
}

#tdPopup .wpcf7-response-output {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    margin: 12px 0 0;
    padding: 10px;
    border-radius: 4px;
}

/* Thank you state */
.td-popup__success {
    text-align: center;
    padding: 40px 20px;
}

.td-popup__success svg {
    margin-bottom: 24px;
}

.td-popup__success-title {
    font-family: 'Inter', sans-serif;
    font-size: 22px;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 12px;
}

.td-popup__success-text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: #666;
    line-height: 1.6;
    max-width: 400px;
    margin: 0 auto;
}

.td-popup__success-text a {
    color: #0D0D0D;
    font-weight: 500;
    text-decoration: underline;
}

/* ---- Responsive ---- */
@media (max-width: 767px) {
    .td-popup__card {
        width: 94%;
        padding: 32px 20px;
    }

    .td-popup__title {
        font-size: 20px;
        margin-bottom: 24px;
    }

    .td-popup__form-row--half,
    .td-popup__form-row--phone {
        flex-direction: column;
        gap: 0;
    }

    .td-popup__field--code {
        flex: none;
    }
}


/* ================================
   OFFERS - Archive Page
   ================================ */

/* Offers Hero - center title */
.offers-archive .mfn-hero {
    align-items: center;
}

.offers-archive .mfn-hero__content {
    padding-bottom: 0;
    text-align: center;
}

.offers-archive__grid-section {
    padding: clamp(60px, 6.94vw, 120px) 0;
}

.offers-archive__section-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: clamp(28px, 2.5vw, 36px);
    font-weight: 400;
    color: #000;
    margin: 0 0 48px;
}

.offers-archive__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 74px;
    column-gap: 32px;
}

/* ----- Offer Card ----- */
.offer-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.offer-card__media {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.offer-card__media img {
    width: 100%;
    height: 344px;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.offer-card:hover .offer-card__media img {
    transform: scale(1.03);
}

.offer-card__content {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 34px 24px;
    background: #F1ECE7;
}

.offer-card__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 36px;
    color: #000000;
}

.offer-card__arrow {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    color: #000;
}

.offer-card:hover .offer-card__arrow {
    transform: translateX(6px);
}

/* ----- Offers Pagination ----- */
.offers-archive__pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 80px;
}

.offers-archive__pagination .page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 16px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #666666;
    text-decoration: none;
    border: 1px solid #E0E0E0;
    border-radius: 8px;
    transition: all 0.25s ease;
}

.offers-archive__pagination .page-numbers.current {
    background: #0D0D0D;
    color: #FFFFFF;
    border-color: #0D0D0D;
}

.offers-archive__pagination .page-numbers:hover:not(.current) {
    border-color: #0D0D0D;
    color: #0D0D0D;
}

.offers-archive__no-results {
    text-align: center;
    padding: 80px 20px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: #666;
}

/* ----- Offers Archive Responsive ----- */
@media (max-width: 1024px) {
    .offers-archive__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 32px;
    }
}

@media (max-width: 767px) {
    .offers-archive__grid-section {
        padding: 40px 0 80px;
    }

    .offers-archive__grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .offer-card__media img {
        height: 240px;
    }
}


/* ================================
   OFFERS - Single Detail Page
   ================================ */

.offer-detail .hero--half .hero__title {
    font-size: 42px;
    font-weight: 500;
}

.offer-detail__body {
    padding: clamp(48px, 5.5vw, 100px) 0;
}

.offer-detail__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: flex-start;
}

/* Left column: Content sections */
.offer-detail__section {
    margin-bottom: 40px;
}

.offer-detail__section:last-child {
    margin-bottom: 0;
}

.offer-detail__section-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 26px;
    font-weight: 400;
    line-height: 1.3;
    color: #000000;
    margin: 0 0 12px;
}

.offer-detail__section-subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: #000000;
    margin: 0 0 18px;
    line-height: 1.6;
}

.offer-detail__section-body {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    color: #000000;
}

.offer-detail__section-body p {
    margin: 0 0 16px;
}

.offer-detail__section-body p:last-child {
    margin-bottom: 0;
}

/* Benefits checkmark bullets */
.offer-detail__benefits ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.offer-detail__benefits ul li {
    position: relative;
    padding-left: 36px;
    margin-bottom: 14px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #000000;
}

.offer-detail__benefits ul li:last-child {
    margin-bottom: 0;
}

.offer-detail__benefits ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 2px;
    width: 22px;
    height: 22px;
    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%3Ccircle cx='11' cy='11' r='11' fill='%230D0D0D'/%3E%3Cpath d='M6.5 11L9.5 14L15.5 8' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
}

/* CTA button */
.offer-detail__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    margin-top: 20px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #FFFFFF;
    background: #0D0D0D;
    border-radius: 100px;
    text-decoration: none;
    transition: background 0.25s ease, transform 0.25s ease;
}

.offer-detail__cta:hover {
    background: #333;
    transform: translateY(-1px);
}

/* Right column: Form card */
.offer-detail__form-col {
    position: sticky;
    top: 100px;
}

.offer-detail__form-card {
    padding: 36px 32px;
    background: #FFFFFF;
    /* border: 1px solid #D5D5D5; */
}

/* CF7 form within offer detail */
.offer-detail__form-card .wpcf7-form p {
    margin: 0 0 16px;
}

.offer-detail__form-card .wpcf7-form p:last-of-type {
    margin-bottom: 0;
}

.offer-detail__form-card input[type="text"],
.offer-detail__form-card input[type="email"],
.offer-detail__form-card input[type="tel"],
.offer-detail__form-card select,
.offer-detail__form-card textarea {
    width: 100%;
    height: 52px;
    padding: 0 16px;
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 400;
    color: #313131;
    background: #FFFFFF;
    border: 1.44px solid #D5D5D5;
    border-radius: 0;
    outline: none;
    transition: border-color 0.25s ease;
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
}

.offer-detail__form-card input::placeholder,
.offer-detail__form-card textarea::placeholder {
    color: #828282;
}

.offer-detail__form-card input:focus,
.offer-detail__form-card select:focus,
.offer-detail__form-card textarea:focus {
    border-color: #313131;
}

.offer-detail__form-card select {
    color: #828282;
    background-image: url("data:image/svg+xml,%3Csvg width='13' height='7' viewBox='0 0 13 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6.5 6L12 1' stroke='%23828282' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 48px;
}

.offer-detail__form-card textarea {
    height: 110px;
    min-height: 110px;
    padding: 14px 16px;
    resize: vertical;
    line-height: 1.5;
}

/* Phone row — CF7 wraps in <p> and <span> */
.offer-detail__form-card .offer-form__phone-row {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
}

.offer-detail__form-card .offer-form__phone-row p {
    display: flex;
    gap: 12px;
    margin: 0;
    width: 100%;
}

.offer-detail__form-card .offer-form__phone-row p br {
    display: none;
}

.offer-detail__form-card .offer-form__phone-code {
    flex: 0 0 140px;
    position: relative;
}

.offer-detail__form-card .offer-form__phone-code select {
    width: 100%;
}

.offer-detail__form-card .offer-form__phone-number {
    flex: 1;
    min-width: 0;
    position: relative;
}

.offer-detail__form-card .offer-form__phone-number input {
    width: 100%;
}

/* Phone row wraps — block display so validation tips stay inside */
.offer-detail__form-card .offer-form__phone-row .wpcf7-form-control-wrap,
.offer-detail__form-card .offer-form__phone-row p .wpcf7-form-control-wrap,
.offer-detail__form-card .offer-form__phone-code .wpcf7-form-control-wrap,
.offer-detail__form-card .offer-form__phone-number .wpcf7-form-control-wrap {
    display: block !important;
    width: 100%;
}

/* Phone row validation tips — absolute so they don't break flex layout */
.offer-detail__form-card .offer-form__phone-code .wpcf7-not-valid-tip,
.offer-detail__form-card .offer-form__phone-number .wpcf7-not-valid-tip {
    position: absolute;
    bottom: -18px;
    left: 0;
    white-space: nowrap;
    font-size: 11px;
}

/* Name row — stacked vertically with consistent spacing */
.offer-detail__form-card .offer-form__name-row {
    display: block;
    margin-bottom: 16px;
}

.offer-detail__form-card .offer-form__name-row .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
    margin-bottom: 16px;
}

.offer-detail__form-card .offer-form__name-row .wpcf7-form-control-wrap:last-child {
    margin-bottom: 0;
}

.offer-detail__form-card .offer-form__name-row p {
    margin: 0;
    width: 100%;
}

.offer-detail__form-card .offer-form__name-row p br {
    display: none;
}

.offer-detail__form-card .offer-form__name-row p .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
    margin-bottom: 16px;
}

.offer-detail__form-card .offer-form__name-row p .wpcf7-form-control-wrap:last-child {
    margin-bottom: 0;
}

.offer-detail__form-card .offer-form__name-row input[type="text"] {
    margin-bottom: 0;
}

/* Submit button */
.offer-detail__form-card .wpcf7-submit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 24px;
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #FFFFFF;
    background: #0D0D0D;
    border: none;
    border-radius: 100px;
    cursor: pointer;
    width: 100%;
    justify-content: center;
    transition: background 0.25s ease;
    background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 12L12 4M12 4H6M12 4V10' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right calc(50% - 30px) center;
    padding-right: 46px;
    margin-top: 4px;
}

.offer-detail__form-card .wpcf7-submit:hover {
    background-color: #333;
}

/* CF7 validation */
.offer-detail__form-card .wpcf7-not-valid {
    border-color: #dc3545 !important;
}

.offer-detail__form-card .wpcf7-not-valid-tip {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    color: #dc3545;
    margin-top: 4px;
    line-height: 1.4;
}

.offer-detail__form-card .wpcf7-response-output {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    margin: 12px 0 0;
    padding: 12px 16px;
    border-radius: 0;
    border-width: 1.44px;
}

.offer-detail__form-card .wpcf7-response-output:empty {
    display: none;
}

.offer-detail__form-card .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

/* ----- Single Offer Responsive ----- */
@media (max-width: 1024px) {
    .offer-detail__grid {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .offer-detail__form-col {
        position: static;
    }
}

@media (max-width: 767px) {
    .offer-detail__body {
        padding: 40px 0 60px;
    }

    .offer-detail__section-title {
        font-size: 22px;
    }

    .offer-detail__form-card {
        padding: 24px 20px;
    }

    .offer-detail__form-card .offer-form__phone-row {
        flex-direction: column;
        gap: 0;
    }

    .offer-detail__form-card .offer-form__phone-row p {
        flex-direction: column;
        gap: 0;
    }

    .offer-detail__form-card .offer-form__phone-code {
        flex: none;
        margin-bottom: 16px;
    }
}


/* ================================
   CAREERS PAGE
   ================================ */

/* --- Section 1: Hero --- */
.careers-hero {
    padding: 0;
    background-color: #F1ECE7;
    display: flex;
    align-items: center;
}

.careers-hero__grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: clamp(40px, 6vw, 80px);
    align-items: center;
    width: 100%;
}

.careers-hero__content {
    max-width: 480px;
}

.careers-hero__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: clamp(24px, 3vw, 36px);
    font-weight: 400;
    line-height: 1.3;
    color: #000;
    margin: 0 0 20px;
}

.careers-hero__text {
    font-size: 16px;
    line-height: 1.8;
    color: #000000;
    margin: 0;
}

.careers-hero__text p {
    margin: 0 0 16px;
}

.careers-hero__text p:last-child {
    margin-bottom: 0;
}

.careers-hero__media {
    position: relative;
}

.careers-hero__media img {
    width: 100%;
    height: auto;
    min-height: 400px;
    max-height: 600px;
    display: block;
    object-fit: cover;
}

/* --- Section 2: Why Join Us --- */
.careers-why {
    padding: clamp(60px, 6.6vw, 114px) 0;
}

.careers-why__wrapper {
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding: 0 var(--site-padding-x);
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
    align-items: center;
}

.careers-why__media img {
    width: 100%;
    min-height: 300px;
    height: 100%;
    display: block;
    object-fit: cover;
}

.careers-why__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.4;
    color: #000;
    margin: 0 0 20px;
}

.careers-why__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 1.75;
    color: #000000;
    margin: 0 0 24px;
}

.careers-why__subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #000;
    margin: 0 0 16px;
}

.careers-why__benefits {
    list-style: none;
    padding: 0;
    margin: 0;
}

.careers-why__benefits li {
    position: relative;
    padding-left: 36px;
    margin-bottom: 14px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #000000;
}

.careers-why__benefits li:last-child {
    margin-bottom: 0;
}

.careers-why__benefits li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 2px;
    width: 22px;
    height: 22px;
    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%3Ccircle cx='11' cy='11' r='11' fill='%230D0D0D'/%3E%3Cpath d='M6.5 11L9.5 14L15.5 8' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
}

@media (min-width: 1024px) {
    .careers-why__wrapper {
        grid-template-columns: 1fr 1fr;
        gap: clamp(60px, 6.7vw, 115px);
    }

    .careers-why__media img {
        min-height: clamp(400px, 32.1vw, 555px);
    }
}

/* --- Section 3: Opportunities --- */
.careers-opportunities {
    padding: 0 var(--site-padding-x);
    max-width: var(--site-max-width);
    margin: 0 auto clamp(60px, 6.6vw, 114px);
}

.careers-opportunities__card {
    position: relative;
    overflow: hidden;
    min-height: 813px;
}

.careers-opportunities__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.careers-opportunities__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.64) 0%, rgba(0, 0, 0, 0) 100%);
    z-index: 1;
}

.careers-opportunities__inner {
    position: relative;
    z-index: 2;
    min-height: 813px;
    display: flex;
    align-items: flex-end;
    padding: 0 50px 50px;
}

.careers-opportunities__content {
    color: #fff;
    max-width: 972px;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.careers-opportunities__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 55px;
    margin: 0;
}

.careers-opportunities__text {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 26px;
    color: #fff;
    margin: 0;
}

/* --- Section 4: Apply Now CTA --- */
.careers-cta {
    padding: 0;
}

.careers-cta__card {
    position: relative;
    width: 100%;
    min-height: 500px;
    overflow: hidden;
    background: #0D0D0D;
}

.careers-cta__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.careers-cta__bg--gradient {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1a1a1a 100%);
}

.careers-cta__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #000 0%, rgba(0, 0, 0, 0) 100%);
    z-index: 1;
}

.careers-cta__inner {
    position: relative;
    z-index: 2;
    min-height: 500px;
    display: flex;
    align-items: center;
    /* align-items: flex-end; */
    /* padding-bottom: 50px; */
}

.careers-cta__content {
    max-width: 625px;
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.careers-cta__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 56px;
    text-transform: capitalize;
    margin: 0;
}

.careers-cta__subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 26px;
    color: #fff;
    margin: 0;
}

.careers-cta__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 26px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #000;
    background: #fff;
    border-radius: 100px;
    box-shadow: 0px 1px 4px rgba(25, 33, 61, 0.08);
    text-decoration: none;
    transition: transform 0.25s ease, opacity 0.25s ease;
    width: fit-content;
}

.careers-cta__btn:hover {
    transform: translateY(-1px);
    opacity: 0.9;
}

.careers-cta__btn svg {
    width: 24px;
    height: 24px;
}

.careers-cta__note {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 26px;
    color: #fff;
    margin: 0;
}

/* --- Careers Responsive --- */
@media (max-width: 767px) {
    .careers-opportunities {
        padding: 0 16px;
        margin-bottom: 48px;
    }

    .careers-opportunities__card,
    .careers-opportunities__inner {
        min-height: 400px;
    }

    .careers-opportunities__inner {
        padding: 0 24px 32px;
    }

    .careers-opportunities__content {
        gap: 20px;
    }

    .careers-opportunities__title {
        font-size: 24px;
        line-height: 1.4;
    }

    .careers-opportunities__text {
        font-size: 14px;
        line-height: 1.6;
    }

    .careers-cta__card,
    .careers-cta__inner {
        min-height: 400px;
    }

    .careers-cta__inner {
        padding-bottom: 32px;
    }

    .careers-cta__content {
        gap: 28px;
    }

    .careers-cta__title {
        font-size: 28px;
        line-height: 1.3;
    }

    .careers-cta__subtitle,
    .careers-cta__note {
        font-size: 14px;
        line-height: 1.6;
    }

    .careers-cta__btn {
        font-size: 16px;
        padding: 12px 22px;
    }
}


/* ================================================
   COLLECTION ARCHIVE
   ================================================ */

.collection-archive__intro-section {
    padding: clamp(60px, 6.94vw, 120px) 0 0 0;
    background: #FFFFFF;
}

.collection-archive__intro {
    max-width: 840px;
}

.collection-archive__grid-section {
    padding: clamp(60px, 6.94vw, 120px) 0;
    /* background: #F1ECE7; */
}

.collection-archive__section-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #000;
    margin: 0 0 16px;
}

.collection-archive__section-desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    color: #666666;
    margin: 0;
}

.collection-archive__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 74px;
    column-gap: 32px;
}

/* ----- Collection Card ----- */
.collection-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.collection-card__media {
    position: relative;
    width: 100%;
    overflow: hidden;
    margin-bottom: 24px;
}

.collection-card__media img {
    width: 100%;
    height: 440px;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.collection-card:hover .collection-card__media img {
    transform: scale(1.03);
}

.collection-card__content {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 16px;
    border-bottom: 1px solid #E0E0E0;
}

.collection-card__content::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #000000;
    transition: width 0.7s ease;
}

.collection-card:hover .collection-card__content::after {
    width: 100%;
}

.collection-card__title {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
}

.collection-card__arrow {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    color: #000;
}

.collection-card:hover .collection-card__arrow {
    transform: translateX(6px);
}

/* ----- Collection Pagination ----- */
.collection-archive__pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 80px;
}

.collection-archive__pagination .page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 16px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #666666;
    text-decoration: none;
    border: 1px solid #E0E0E0;
    border-radius: 8px;
    transition: all 0.25s ease;
}

.collection-archive__pagination .page-numbers.current {
    background: #0D0D0D;
    color: #FFFFFF;
    border-color: #0D0D0D;
}

.collection-archive__pagination .page-numbers:hover:not(.current) {
    border-color: #0D0D0D;
    color: #0D0D0D;
}

.collection-archive__no-results {
    text-align: center;
    padding: 80px 20px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    color: #666;
}

/* ----- Collection Archive Responsive ----- */
@media (max-width: 1024px) {
    .collection-archive__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px;
    }
}

@media (max-width: 767px) {
    .collection-archive__grid-section {
        padding: 40px 0 80px;
    }

    .collection-archive__intro {
        margin-bottom: 40px;
    }

    .collection-archive__grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .collection-card__media img {
        height: 280px;
    }
}


/* ================================================
   SINGLE COLLECTION DETAIL
   ================================================ */

/* Full-width hero — video or image */
.collection-hero {
    position: relative;
    width: 100%;
    height: calc(100vh - var(--header-height));
    overflow: hidden;
}

.collection-hero__video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.collection-hero__media {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.collection-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Description section (beige background, single-column) */
.collection-description {
    padding: 80px 0;
    background-color: #F1ECE7;
}

.collection-description__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #1a1a1a;
    margin: 0 0 32px;
    letter-spacing: -0.02em;
}

.collection-description__content {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    color: #4A4A4A;
    max-width: 840px;
}

.collection-description__content p {
    margin: 0 0 24px;
}

.collection-description__content p:last-child {
    margin-bottom: 0;
}

/* Gallery section title (reused in feature-gallery) */
.feature-gallery__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: clamp(24px, 2.08vw, 36px);
    font-weight: 400;
    color: #1A1A1E;
    margin: 0 0 clamp(24px, 2.31vw, 40px);
}

/* =========================
   BRAND DETAIL (SUB) PAGES
   ========================= */

/* Page-level dark theme */
.brand-detail-page--dark {
    background-color: #202020;
}
.brand-detail-page--dark .bdp-brand,
.brand-detail-page--dark .bdp-highlights,
.brand-detail-page--dark .bdp-feature,
.brand-detail-page--dark .bdp-collection,
.brand-detail-page--dark .bdp-designed,
.brand-detail-page--dark .bdp-experience {
    background-color: #202020;
    color: #fff;
}
.brand-detail-page--dark .bdp-experience {
    padding: 0;
}
.brand-detail-page--dark .bdp-brand__text,
.brand-detail-page--dark .bdp-brand__text p,
.brand-detail-page--dark .bdp-highlights__title,
.brand-detail-page--dark .bdp-feature__title,
.brand-detail-page--dark .bdp-collection__title,
.brand-detail-page--dark .bdp-designed__title,
.brand-detail-page--dark .bdp-experience__title {
    color: #fff;
}
.brand-detail-page--dark .bdp-feature__desc {
    color: rgba(255, 255, 255, 0.85);
}
.brand-detail-page--dark .bdp-highlights__tab {
    color: rgba(255, 255, 255, 0.6);
}
.brand-detail-page--dark .bdp-highlights__tab--active {
    color: #fff;
    border-bottom-color: #fff;
}
.brand-detail-page--dark .bdp-highlights__tabs {
    border-bottom-color: rgba(255, 255, 255, 0.2);
}
.brand-detail-page--dark .bdp-highlights__dot,
.brand-detail-page--dark .bdp-collection__dot {
    background-color: rgba(255, 255, 255, 0.3);
}
.brand-detail-page--dark .bdp-highlights__dot.is-active,
.brand-detail-page--dark .bdp-collection__dot.is-active {
    background-color: #fff;
}
.brand-detail-page--dark .bdp-highlights__card-title {
    color: #fff;
}
.brand-detail-page--dark .bdp-highlights__card-desc {
    color: rgba(255, 255, 255, 0.7);
    border-bottom-color: rgba(255, 255, 255, 0.15);
}
.brand-detail-page--dark .bdp-designed {
    padding: 0;
}
.brand-detail-page--dark .bdp-designed__desc {
    color: #fff;
}
.brand-detail-page--dark .bdp-experience__text,
.brand-detail-page--dark .bdp-experience__text p,
.brand-detail-page--dark .bdp-experience__desc {
    color: rgba(255, 255, 255, 0.85);
}
.brand-detail-page--dark .bdp-collection {
    background-color: #202020;
}
.brand-detail-page--dark .bdp-collection__title {
    font-size: 40px;
    line-height: 50px;
    text-transform: capitalize;
    color: #fff;
}
.brand-detail-page--dark .bdp-collection__desc {
    color: #fff;
}
.brand-detail-page--dark .bdp-collection__card {
    background: #4C4948;
}
.brand-detail-page--dark .bdp-collection__card-content {
    padding: 42px 24px;
}
.brand-detail-page--dark .bdp-collection__slider .bdp-slider__arrow {
    background: #E8D6CD;
    border: none;
    color: #000;
    opacity: 1;
    box-shadow: none;
}
.brand-detail-page--dark .bdp-collection__slider .bdp-slider__arrow:disabled {
    opacity: 0.4;
    cursor: default;
}
.brand-detail-page--dark .bdp-collection__slider .bdp-slider__arrow:hover:not(:disabled) {
    background: #E8D6CD;
    opacity: 0.85;
}
.brand-detail-page--dark .bdp-experience__content .btn {
    border-color: #fff;
    color: #fff;
}

/* Hero Overrides – full viewport like homepage */
.bdp-hero {
    min-height: calc(100svh - var(--header-height));
    align-items: flex-end;
}

.bdp-hero .mfn-hero__content {
    padding-bottom: 80px;
    /* text-align: left;
    align-items: flex-start; */
    justify-content: flex-start;
}

.bdp-hero .mfn-hero__media video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.bdp-hero__ctas {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

.bdp-hero__btn {
    gap: 12px;
}

.bdp-hero__btn-arrow {
    width: 17px;
    height: 16px;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.bdp-hero__btn:hover .bdp-hero__btn-arrow {
    transform: translateX(4px);
}

/* Brand Introduction */
.bdp-brand {
    padding: 114px 0;
}

.bdp-brand__logo {
    display: block;
    max-height: 56px;
    width: auto;
    margin-bottom: 24px;
}

.bdp-brand__heading {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 50px;
    letter-spacing: 0;
    color: #000000;
    margin: 0 0 24px;
}

.bdp-brand__text {
    max-width: 75%;
    line-height: 1.7;
    color: var(--color-body);
}

.bdp-brand__text p {
    margin: 0 0 16px;
}

.bdp-brand__text p:last-child {
    margin-bottom: 0;
}

/* ── Highlights Section ── */
.bdp-highlights {
    padding: 0 0 114px;
}

.bdp-highlights__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 50px;
    text-transform: capitalize;
    margin: 0 0 56px;
}

.bdp-highlights__tabs {
    display: inline-flex;
    gap: 72px;
    border-bottom: 1px solid #BABABA;
    margin-bottom: 32px;
}

.bdp-highlights__tab {
    background: none;
    border: none;
    padding: 17px 0;
    font-family: 'Albert Sans', sans-serif;
    font-size: 20px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 20px;
    color: rgba(0, 0, 0, 0.6);
    cursor: pointer;
    position: relative;
    transition: color 0.2s;
}

.bdp-highlights__tab::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: 2px;
    background: #000;
    transform: scaleX(0);
    transition: transform 0.2s;
}

.bdp-highlights__tab--active {
    color: #000;
}

.bdp-highlights__tab--active::after {
    transform: scaleX(1);
}

/* Panels */
.bdp-highlights__panel {
    display: none;
}

.bdp-highlights__panel--active {
    display: block;
}

/* Slider */
.bdp-highlights__slider,
.bdp-collection__slider {
    position: relative;
}

/* Highlights – transform-based slider with viewport */
.bdp-highlights__viewport {
    overflow: hidden;
}

.bdp-highlights__track {
    display: flex;
    gap: 41px;
    align-items: stretch;
    transition: transform 0.35s ease-out;
}

/* Collection – transform-based slider with viewport */
.bdp-collection__viewport {
    overflow: hidden;
}

.bdp-collection__track {
    display: flex;
    transition: transform 0.35s ease-out;
}

/* Slider Arrows */
.bdp-slider__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border-radius: 21px;
    border: none;
    background: #E8D6CD;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 2;
    transition: opacity 0.2s;
    box-shadow: none;
}

.bdp-slider__arrow:hover:not(:disabled) {
    opacity: 0.85;
}

.bdp-slider__arrow:disabled {
    opacity: 0.4;
    cursor: default;
}

.bdp-slider__arrow--prev {
    left: -90px;
}

.bdp-slider__arrow--next {
    right: -90px;
}

/* Highlights – Dot pagination (shown below 1200px, replaces arrows) */
.bdp-highlights__dots {
    display: none;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding-top: 24px;
}

.bdp-highlights__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #D5D5D5;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: width 0.3s ease, border-radius 0.3s ease, background 0.3s ease;
}

.bdp-highlights__dot.is-active {
    width: 24px;
    border-radius: 4px;
    background: #333;
}

/* Highlight Cards */
.bdp-highlights__card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
}

.bdp-highlights__card--clickable {
    cursor: pointer;
}

.bdp-highlights__card-media {
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
}

.bdp-highlights__card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s;
}

.bdp-highlights__card--clickable:hover .bdp-highlights__card-media img {
    transform: scale(1.03);
}

.bdp-highlights__card-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 32px;
    margin: 16px 0 0;
    color: #1A1A1E;
}

.bdp-highlights__card-desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #5D5D5D;
    margin: 8px 0 0;
    flex: 1;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}

/* ── Modal — fullscreen ── */
.bdp-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}

.bdp-modal--open {
    opacity: 1;
    visibility: visible;
}

.bdp-modal__inner {
    background: #fff;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    border-radius: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: none;
}

.bdp-modal__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 32px 48px;
    flex-shrink: 0;
}

.bdp-modal__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 28px;
    font-weight: 400;
    margin: 0;
    color: #1a1a1a;
}

.bdp-modal__close {
    background: #1a1a1a;
    border: none;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #ffffff;
    flex-shrink: 0;
    transition: opacity 0.2s;
}

.bdp-modal__close:hover {
    opacity: 0.75;
}

.bdp-modal__body {
    flex: 1;
    min-height: 0;
    overflow: hidden;
    padding: 0 48px 48px;
    display: flex;
    flex-direction: column;
    position: relative;
}

/* Variant Panels */
.bdp-modal__variant-panel {
    display: none;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    width: 100%;
}

.bdp-modal__variant-panel--active {
    display: flex;
}

/* Image fills the panel */
.bdp-modal__image-wrap {
    position: relative;
    flex: 1;
    min-height: 0;
    border-radius: 12px;
    overflow: hidden;
}

.bdp-modal__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Variant Buttons — overlaid on image bottom-center */
.bdp-modal__variants {
    position: absolute;
    bottom: 70px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px;
    background: rgba(255, 255, 255, 0.19);
    border-radius: 934px;
    z-index: 10;
    white-space: nowrap;
}

.bdp-modal__variant-btn {
    height: 49px;
    padding: 13px 24px;
    border-radius: 93px;
    border: none;
    background: transparent;
    box-shadow: 0px 1px 4px rgba(25, 33, 61, 0.08);
    font-family: 'Inter', sans-serif;
    font-size: 17px;
    font-weight: 400;
    color: #ffffff;
    text-transform: capitalize;
    line-height: 1.11;
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
}

.bdp-modal__variant-btn--active {
    background: #ffffff;
    color: #000000;
    box-shadow: 0px 1px 4px rgba(25, 33, 61, 0.08);
}

.bdp-modal__variant-btn:hover:not(.bdp-modal__variant-btn--active) {
    background: rgba(255, 255, 255, 0.12);
}

/* ── Hotspots ── */
@keyframes bdp-hotspot-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.55); }
    70%  { box-shadow: 0 0 0 12px rgba(255, 255, 255, 0); }
    100% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); }
}

.bdp-hotspot {
    position: absolute;
    transform: translate(-50%, -50%);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    z-index: 5;
}

.bdp-hotspot__marker {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #ffffff;
    animation: bdp-hotspot-pulse 2s ease-out infinite;
    flex-shrink: 0;
}

/* Horizontal bar — always visible */
.bdp-hotspot__marker::before {
    content: '';
    position: absolute;
    width: 12px;
    height: 1.5px;
    background: #000000;
    border-radius: 1px;
}

/* Vertical bar — visible when closed (+), hidden when open (−) */
.bdp-hotspot__marker::after {
    content: '';
    position: absolute;
    width: 1.5px;
    height: 12px;
    background: #000000;
    border-radius: 1px;
    transition: opacity 0.2s;
}

.bdp-hotspot--active .bdp-hotspot__marker {
    animation: none;
}

.bdp-hotspot--active .bdp-hotspot__marker::after {
    opacity: 0;
}

/* Tooltips */
.bdp-hotspot__tooltip {
    position: absolute;
    width: 255px;
    background: rgba(0, 0, 0, 0.21);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    border-radius: 0;
    padding: 24px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s, visibility 0.25s;
    z-index: 10;
    text-align: left;
}

.bdp-hotspot--active .bdp-hotspot__tooltip {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* Tooltip Directions + connector lines */
.bdp-hotspot__tooltip--right {
    left: calc(100% + 32px);
    top: 50%;
    transform: translateY(-50%);
}

.bdp-hotspot__tooltip--right::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 100%;
    width: 32px;
    height: 1px;
    background: rgba(255, 255, 255, 0.5);
}

.bdp-hotspot__tooltip--left {
    right: calc(100% + 32px);
    top: 50%;
    transform: translateY(-50%);
}

.bdp-hotspot__tooltip--left::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 100%;
    width: 32px;
    height: 1px;
    background: rgba(255, 255, 255, 0.5);
}

.bdp-hotspot__tooltip--top {
    bottom: calc(100% + 32px);
    left: 50%;
    transform: translateX(-50%);
}

.bdp-hotspot__tooltip--top::before {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    width: 1px;
    height: 32px;
    background: rgba(255, 255, 255, 0.5);
}

.bdp-hotspot__tooltip--bottom {
    top: calc(100% + 32px);
    left: 50%;
    transform: translateX(-50%);
}

.bdp-hotspot__tooltip--bottom::before {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%;
    width: 1px;
    height: 32px;
    background: rgba(255, 255, 255, 0.5);
}

.bdp-hotspot__details {
    list-style: disc;
    padding-left: 18px;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 11px;
}

.bdp-hotspot__details li {
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    word-wrap: break-word;
}

.bdp-hotspot__details li::marker {
    color: #ffffff;
}

.bdp-hotspot__details strong {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    color: #ffffff;
}

/* ── Mobile Hotspot Info Panel
   Slides up from the bottom of the image on small screens.
   Shown only on mobile (responsive.css sets display: block at ≤767px).
────────────────────────────── */
.bdp-mobile-info {
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px 44px 28px 20px;
    background: rgba(0, 0, 0, 0.72);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 15;
}

.bdp-mobile-info--active {
    transform: translateY(0);
}

.bdp-mobile-info__close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 28px;
    height: 28px;
    background: rgba(255, 255, 255, 0.15);
    border: none;
    border-radius: 50%;
    color: #ffffff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    flex-shrink: 0;
}

.bdp-mobile-info__close:hover {
    background: rgba(255, 255, 255, 0.25);
}

.bdp-mobile-info__content .bdp-hotspot__details {
    list-style: none;
    margin: 0;
    padding: 0;
}


/* ── Feature Banner (card layout like Scheme in Colours) ── */
.bdp-feature {
    padding: 0;
    background: #FFFFFF;
}

.bdp-feature__card {
    display: flex;
    align-items: center;
    gap: 74px;
    padding: 74px;
    background: #F1ECE7;
    overflow: hidden;
}

.bdp-feature__image {
    flex: 1 1 0;
    min-width: 0;
    height: 555px;
}

.bdp-feature__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.bdp-feature__content {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 47px;
}

.bdp-feature__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 55.64px;
    color: #1A1A1E;
    margin: 0;
}

.bdp-feature__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    margin: 0;
}

.bdp-feature__desc p {
    margin: 0 0 1em;
}

.bdp-feature__desc p:last-child {
    margin-bottom: 0;
}

/* ── Collection / Product Showcase ── */
.bdp-collection {
    padding: 114px 0;
    background: #fff;
    position: relative;
}

.bdp-collection__header {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 56px;
}

.bdp-collection__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #2C2B2B;
    margin: 0;
}

.bdp-collection__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    max-width: 929px;
    margin: 0;
}

.bdp-collection__track {
    gap: 46px;
}

.bdp-collection__card {
    background: #2F2622;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.bdp-collection__card-media {
    width: 100%;
    height: 300px;
    flex-shrink: 0;
    overflow: hidden;
}

.bdp-collection__card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.bdp-collection__card-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 24px;
}

.bdp-collection__card-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 36px;
    color: #fff;
    margin: 0;
}

.bdp-collection__card-desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #fff;
    margin: 0;
}

/* Collection slider arrows – positioned outside container */
.bdp-collection__slider .bdp-slider__arrow {
    width: 42px;
    height: 42px;
    border: none;
}

.bdp-collection__slider .bdp-slider__arrow--next {
    right: -90px;
    background: #F1ECE7;
    color: #2F2622;
}

.bdp-collection__slider .bdp-slider__arrow--prev {
    left: -90px;
    background: #2F2622;
    color: #fff;
    opacity: 0.2;
}

.bdp-collection__slider .bdp-slider__arrow--prev:hover {
    opacity: 0.5;
}

/* Collection – Dot pagination (shown below 1200px, replaces arrows) */
.bdp-collection__dots {
    display: none;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding-top: 24px;
}

.bdp-collection__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #D5D5D5;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: width 0.3s ease, border-radius 0.3s ease, background 0.3s ease;
}

.bdp-collection__dot.is-active {
    width: 24px;
    border-radius: 4px;
    background: #333;
}

/* ── Designed For Section ── */
.bdp-designed {
    padding: clamp(48px, 5vw, 96px) 0 0;
    background: #fff;
}

/* When collection section sits directly above, keep flush (Express Küchen layout) */
.bdp-collection + .bdp-designed {
    padding-top: 0;
}

.bdp-designed__grid {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* padding: 74px; */
    /* background: #4C4948; */
    overflow: hidden;
}

.bdp-designed__content {
    width: 46%;
    max-width: 649px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 47px;
}

.bdp-designed__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 50px;
    color: #1A1A1E;
    margin: 0;
}

.bdp-designed__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    margin: 0;
}

.bdp-designed__desc p {
    margin: 0 0 16px;
}

.bdp-designed__desc p:last-child {
    margin-bottom: 0;
}

/* Gallery */
.bdp-designed__gallery {
    width: 46%;
    max-width: 649px;
    position: relative;
}

/* 3-image layout (primary design) */
.bdp-designed__gallery--3 {
    display: grid;
    grid-template-columns: 277fr 10fr 366fr;
    grid-template-rows: 1fr 10px 1fr;
    aspect-ratio: 649 / 513;
}

.bdp-designed__gallery--3 .bdp-designed__gallery-item:nth-child(1) {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
}

.bdp-designed__gallery--3 .bdp-designed__gallery-item:nth-child(2) {
    grid-column: 1 / 2;
    grid-row: 3 / 4;
}

.bdp-designed__gallery--3 .bdp-designed__gallery-item:nth-child(3) {
    grid-column: 3 / 4;
    grid-row: 1 / -1;
}

/* Fallback layouts */
.bdp-designed__gallery--1 {
    display: grid;
    grid-template-columns: 1fr;
}

.bdp-designed__gallery--2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.bdp-designed__gallery--4 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.bdp-designed__gallery-item {
    overflow: hidden;
}

.bdp-designed__gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ── Testimonial ── */
.bdp-testimonial {
    padding: 80px 0;
    background: #3C3226;
    text-align: center;
}

.bdp-testimonial__author {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    margin-bottom: 32px;
}

.bdp-testimonial__name {
    font-family: 'Albert Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #fff;
}

.bdp-testimonial__designation {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.6);
}

.bdp-testimonial__quote {
    font-family: 'Albert Sans', sans-serif;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.7;
    color: #fff;
    max-width: 800px;
    margin: 0 auto;
}

.bdp-testimonial__mark {
    font-size: 48px;
    line-height: 0;
    vertical-align: middle;
    color: rgba(255, 255, 255, 0.3);
}

/* ── Experience CTA ── */
.bdp-experience {
    padding: 114px 0;
    background: #fff;
}

.bdp-experience__grid {
    display: flex;
    gap: 74px;
    align-items: center;
    padding-top: 0;
    padding-bottom: 0;
    overflow: hidden;
}

.bdp-experience__media {
    flex: 1 1 0;
    min-width: 0;
}

.bdp-experience__media img {
    width: 100%;
    height: 555px;
    object-fit: cover;
    object-position: center;
    display: block;
}

.bdp-experience__content {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 47px;
}

.bdp-experience__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 50px;
    color: #1A1A1E;
    margin: 0;
}

.bdp-experience__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #000000;
    margin: 0;
}

.bdp-experience__content .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: var(--btn-height);
    padding: 0 26px;
    background: #2F2622;
    color: #fff;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 20px;
    text-decoration: none;
    border: none;
    box-shadow: 0px 1px 4px rgba(25, 33, 61, 0.08);
    transition: background 0.2s;
}

.bdp-experience__content .btn:hover {
    background: #1a1510;
}

.bdp-experience__content .btn img {
    display: none;
}

@media (max-width: 767px) {
    .bdp-experience__grid {
        flex-direction: column;
        padding: 24px;
        gap: 32px;
    }

    .bdp-experience__media img {
        height: auto;
        max-height: 400px;
    }
}

/* ==========================================================================
   DARK THEME MODIFIERS
   ========================================================================== */

/* Brand Intro – Dark */
.bdp-brand--dark {
    background: #1A1A1E;
}

.bdp-brand--dark .bdp-brand__text,
.bdp-brand--dark .bdp-brand__text p {
    color: #ccc;
}

/* Highlights – Dark */
.bdp-highlights--dark {
    background: #1A1A1E;
}

.bdp-highlights--dark .bdp-highlights__title {
    color: #fff;
}

.bdp-highlights--dark .bdp-highlights__tabs {
    border-bottom-color: #515151;
}

.bdp-highlights--dark .bdp-highlights__tab {
    color: rgba(255, 255, 255, 0.6);
}

.bdp-highlights--dark .bdp-highlights__tab--active {
    color: #fff;
}

.bdp-highlights--dark .bdp-highlights__tab::after {
    background: #fff;
}

.bdp-highlights--dark .bdp-highlights__card-title {
    color: #fff;
}

.bdp-highlights--dark .bdp-highlights__card-desc {
    color: rgba(255, 255, 255, 0.83);
    border-bottom-color: rgba(255, 255, 255, 0.15);
}

.bdp-highlights--dark .bdp-highlights__dot {
    background: #555;
}

.bdp-highlights--dark .bdp-highlights__dot.is-active {
    background: #fff;
}

/* Collection – Light variant */
.bdp-collection--light {
    background: #fff;
}

.bdp-collection--light .bdp-collection__card {
    background: #F1ECE7;
}

.bdp-collection--light .bdp-collection__card-title,
.bdp-collection--light .bdp-collection__card-desc {
    color: #2C2B2B;
}

/* Designed For – Dark */
.bdp-designed--dark {
    background: #1A1A1E;
}

.bdp-designed--dark .bdp-designed__title {
    color: #fff;
}

.bdp-designed--dark .bdp-designed__desc {
    color: #ffffff;
}

/* Feature Banner – Reverse (image right, text left) */
.bdp-feature--reverse .bdp-feature__card {
    flex-direction: row-reverse;
}

/* Feature Banner – Dark */
.bdp-feature--dark {
    background: #1A1A1E;
}

.bdp-feature--dark .bdp-feature__card {
    background: #2A2A2E;
}

.bdp-feature--dark .bdp-feature__title {
    color: #fff;
}

.bdp-feature--dark .bdp-feature__desc {
    color: #aaa;
}

/* ==========================================================================
   GET INSPIRED – Gallery Grid
   ========================================================================== */
.bdp-inspired {
    padding: 114px 0;
    background: #202020;
}

.bdp-inspired__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    color: #fff;
    margin: 0 0 48px;
}

.bdp-inspired__grid {
    display: grid;
    gap: 18px;
}

/* 5 images: 2 top + 3 bottom */
.bdp-inspired__grid--5 {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
}

/* .bdp-inspired__grid--5 .bdp-inspired__item:nth-child(n+3) {
    Items 3, 4, 5 go in 2nd row – switch to 3-col
} */

.bdp-inspired__grid--5 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 18px;
}

.bdp-inspired__grid--5 .bdp-inspired__item:nth-child(1) {
    grid-column: 1 / 4;
}

.bdp-inspired__grid--5 .bdp-inspired__item:nth-child(2) {
    grid-column: 4 / 7;
}

.bdp-inspired__grid--5 .bdp-inspired__item:nth-child(3) {
    grid-column: 1 / 3;
}

.bdp-inspired__grid--5 .bdp-inspired__item:nth-child(4) {
    grid-column: 3 / 5;
}

.bdp-inspired__grid--5 .bdp-inspired__item:nth-child(5) {
    grid-column: 5 / 7;
}

/* Fallback for other counts */
.bdp-inspired__grid--3 {
    grid-template-columns: repeat(3, 1fr);
}

.bdp-inspired__grid--4 {
    grid-template-columns: repeat(2, 1fr);
}

.bdp-inspired__item {
    overflow: hidden;
}

.bdp-inspired__item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.bdp-inspired__grid--5 .bdp-inspired__item:nth-child(-n+2) img {
    height: 340px;
}

.bdp-inspired__grid--5 .bdp-inspired__item:nth-child(n+3) img {
    height: 280px;
}

/* ==========================================================================
   PRODUCTION VIDEO
   ========================================================================== */
.bdp-production {
    padding: 0 0 114px;
    background: #202020;
}

.bdp-production__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    text-transform: capitalize;
    line-height: 50px;
    color: #fff;
    margin: 0 0 30px;
    max-width: 1200px;
}

.bdp-production__video {
    position: relative;
    overflow: hidden;
    margin-bottom: 18px;
    /* aspect-ratio: 16 / 7; */
    background: #000;
}

.bdp-production__poster {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.bdp-production__player {
    width: 100%;
    max-height: 70vh;
    object-fit: cover;
}

.bdp-production__video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.bdp-production__desc {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 26px;
    color: #fff;
    margin: 0;
    max-width: 1200px;
}

/* ==========================================================================
   DREAM KITCHEN CTA
   ========================================================================== */
.bdp-dream-cta__card {
    position: relative;
    width: 100%;
    min-height: 500px;
    overflow: hidden;
}

.bdp-dream-cta__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bdp-dream-cta__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right,
        rgba(0,0,0,0.55),
        rgba(0,0,0,0.2),
        rgba(0,0,0,0));
    z-index: 1;
}

.bdp-dream-cta__inner {
    position: relative;
    z-index: 2;
    min-height: 500px;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
}

.bdp-dream-cta__content {
    padding: 80px 0;
    max-width: 520px;
    color: #fff;
}

.bdp-dream-cta__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    color: #fff;
    margin: 0 0 24px;
}

.bdp-dream-cta__actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.bdp-dream-cta__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 22px;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    border-radius: 999px;
    text-decoration: none;
    white-space: nowrap;
    transition: transform 0.25s ease, opacity 0.25s ease;
}

.bdp-dream-cta__btn:hover {
    transform: translateY(-1px);
    opacity: 0.9;
}

.bdp-dream-cta__btn--light {
    background: #fff;
    color: #000;
}

.bdp-dream-cta__btn--dark {
    background: rgba(0,0,0,0.85);
    color: #fff;
}

/* =========================
   GET 10% OFF — SIDEBAR TAB
   ========================= */

.refer-sidebar {
    position: fixed;
    top: 82%;
    right: 0 !important;
    left: auto !important;
    transform: translateY(-60%);
    z-index: 9999;
    width: 50px !important;
    max-width: 50px !important;
    transition: opacity 0.35s ease, visibility 0.35s ease;
}

.refer-sidebar.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.refer-sidebar__wrap {
    position: relative;
    width: 50px;
}

.refer-sidebar__close {
    position: absolute;
    top: -10px;
    left: -10px;
    background: #FFFFFF;
    border: 1px solid #000000;
    border-radius: 1000px;
    padding: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 1;
    transition: background 0.2s;
}

.refer-sidebar__close:hover {
    background: #f0f0f0;
}

.refer-sidebar__tab {
    width: 50px;
    background: #000000;
    border: none;
    cursor: pointer;
    padding: 23.32px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}

.refer-sidebar__tab:hover {
    background: #1a1a1a;
}

.refer-sidebar__tab span {
    font-family: 'Albert Sans', sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #FFFFFF;
    text-transform: capitalize;
    line-height: 19.43px;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transform: rotate(180deg);
    white-space: nowrap;
}

/* Download Brochure variant */
.refer-sidebar__tab--brochure {
    background: #2F2622;
    text-decoration: none;
    padding: 23.32px 0;
    box-shadow: 0px 0.97px 3.89px rgba(25, 33, 61, 0.08);
}

.refer-sidebar__tab--brochure:hover {
    background: #3d322d;
}

/* =========================
   REFER A FRIEND — MODAL
   ========================= */

.refer-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.refer-modal.is-open {
    opacity: 1;
    visibility: visible;
}

.refer-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(2px);
}

.refer-modal__card {
    position: relative;
    background: #000;
    width: 100%;
    max-width: 700px;
    padding: 40px 60px 40px;
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    transform: translateY(24px);
    transition: transform 0.35s ease;
}

.refer-modal.is-open .refer-modal__card {
    transform: translateY(0);
}

.refer-modal__close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 36px;
    height: 36px;
    background: rgba(255,255,255,0.08);
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s;
}

.refer-modal__close:hover {
    background: rgba(255,255,255,0.15);
}

.refer-modal__logo {
    margin-bottom: 32px;
}

.refer-modal__logo img {
    height: 44px;
    width: auto;
}

.refer-modal__title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 30px;
    font-weight: 600;
    color: #FFFFFF;
    margin: 0 0 12px;
    text-align: center;
}

.refer-modal__desc {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.65);
    text-align: center;
    margin: 0 0 36px;
    max-width: 70%;
}

.refer-modal__form {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.refer-modal__field input {
    width: 100%;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.25);
    padding: 16px 18px;
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 400;
    color: #FFFFFF;
    border-radius: 2px;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}

.refer-modal__field input::placeholder {
    color: rgba(255, 255, 255, 0.4);
}

.refer-modal__field input:focus {
    border-color: rgba(255, 255, 255, 0.6);
}

.refer-modal__submit-row {
    display: flex;
    justify-content: center;
    margin-top: 8px;
}

.refer-modal__submit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 40px;
    background: #FFFFFF;
    color: #000;
    border: none;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    cursor: pointer;
    transition: opacity 0.2s, transform 0.2s;
}

.refer-modal__submit:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

.refer-modal__success {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding: 20px 0;
    text-align: center;
}

.refer-modal__success p {
    font-family: 'Inter', sans-serif;
    font-size: 17px;
    color: rgba(255, 255, 255, 0.85);
    margin: 0;
    line-height: 1.6;
}

.refer-modal__no-form {
    color: rgba(255,255,255,0.5);
    font-size: 14px;
    text-align: center;
    padding: 20px 0;
}

/* ── CF7 inside Refer a Friend modal ── */
.refer-modal__form-wrap .wpcf7 {
    width: 100%;
}

.refer-modal__form-wrap .wpcf7-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.refer-modal__form-wrap .wpcf7-form p {
    margin: 0;
}

.refer-modal__form-wrap .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.refer-modal__form-wrap .wpcf7-text,
.refer-modal__form-wrap .wpcf7-tel,
.refer-modal__form-wrap .wpcf7-email {
    width: 100%;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.3);
    padding: 18px 20px;
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    color: #FFFFFF;
    border-radius: 4px;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
    height: 58px;
}

.refer-modal__form-wrap .wpcf7-text::placeholder,
.refer-modal__form-wrap .wpcf7-tel::placeholder,
.refer-modal__form-wrap .wpcf7-email::placeholder {
    color: rgba(255, 255, 255, 0.45);
}

.refer-modal__form-wrap .wpcf7-text:focus,
.refer-modal__form-wrap .wpcf7-tel:focus,
.refer-modal__form-wrap .wpcf7-email:focus {
    border-color: rgba(255, 255, 255, 0.7);
}

.refer-modal__form-wrap .wpcf7-submit {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    width: 1px;
    height: 1px;
}

.refer-modal__submit-fake {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 16px auto 0;
    padding: 16px 40px;
    background: #FFFFFF;
    color: #000000;
    border: none;
    border-radius: 100px;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: opacity 0.2s, transform 0.2s;
}

.refer-modal__form-wrap p:has(.wpcf7-submit) {
    display: flex;
    justify-content: center;
    margin-top: 8px;
}

.refer-modal__submit-fake:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

.refer-modal__form-wrap .wpcf7-not-valid-tip {
    color: #ff6b6b;
    font-size: 12px;
    margin-top: 4px;
}

.refer-modal__form-wrap .wpcf7-response-output {
    color: rgba(255, 255, 255, 0.7);
    font-size: 13px;
    border: none !important;
    margin: 8px 0 0;
    padding: 0;
    text-align: center;
}

/* ================================
   Heading Word-by-Word Reveal
   ================================ */
.word-reveal {
    display: inline-block;
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.heading-reveal.is-visible .word-reveal {
    opacity: 1;
    transform: translateY(0);
}

/* ================================
   LIGHTBOX
   ================================ */
/* Lightbox gallery hover effect — slight zoom + overlay */
.feature-gallery__grid img,
.project-gallery__grid img,
.single-post__gallery img,
.single-post__gallery-block img,
.blog-gallery-split__grid img,
.fk-slider__track img,
.neo-hero__media img,
.neo-experience__media img,
.bdp-experience__media img,
.bdp-designed__gallery img,
.bdp-inspired__grid img,
.sust-responsibility__gallery-item img {
    transition: transform 0.35s ease;
}

.feature-gallery__item,
.project-gallery__grid > div,
.single-post__gallery > div,
.single-post__gallery-block > div,
.blog-gallery-split__grid > div,
.neo-hero__media,
.neo-experience__media,
.bdp-experience__media,
.bdp-designed__gallery-item,
.bdp-inspired__item {
    overflow: hidden;
    position: relative;
}

.sust-responsibility__gallery-item {
    overflow: hidden;
}

.feature-gallery__item::after,
.project-gallery__grid > div::after,
.single-post__gallery > div::after,
.single-post__gallery-block > div::after,
.blog-gallery-split__grid > div::after,
.neo-hero__media::after,
.neo-experience__media::after,
.bdp-experience__media::after,
.bdp-designed__gallery-item::after,
.bdp-inspired__item::after,
.sust-responsibility__gallery-item::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0);
    transition: background 0.35s ease;
    pointer-events: none;
    z-index: 1;
}

.feature-gallery__item:hover::after,
.project-gallery__grid > div:hover::after,
.single-post__gallery > div:hover::after,
.single-post__gallery-block > div:hover::after,
.blog-gallery-split__grid > div:hover::after,
.neo-hero__media:hover::after,
.neo-experience__media:hover::after,
.bdp-experience__media:hover::after,
.bdp-designed__gallery-item:hover::after,
.bdp-inspired__item:hover::after,
.sust-responsibility__gallery-item:hover::after {
    background: rgba(0, 0, 0, 0.08);
}

.feature-gallery__item:hover img,
.project-gallery__grid > div:hover img,
.single-post__gallery > div:hover img,
.single-post__gallery-block > div:hover img,
.blog-gallery-split__grid > div:hover img,
.neo-hero__media:hover img,
.neo-experience__media:hover img,
.bdp-experience__media:hover img,
.bdp-designed__gallery-item:hover img,
.bdp-inspired__item:hover img,
.sust-responsibility__gallery-item:hover img {
    transform: scale(1.05);
}

.nolte-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.nolte-lightbox.is-open {
    opacity: 1;
    visibility: visible;
}

.nolte-lightbox__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.92);
}

.nolte-lightbox__close {
    position: absolute;
    top: 24px;
    right: 24px;
    z-index: 3;
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.nolte-lightbox__close:hover {
    opacity: 1;
}

.nolte-lightbox__prev,
.nolte-lightbox__next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    background: rgba(255, 255, 255, 0.1);
    border: none;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.2s, background 0.2s;
}

.nolte-lightbox__prev:hover,
.nolte-lightbox__next:hover {
    opacity: 1;
    background: rgba(255, 255, 255, 0.2);
}

.nolte-lightbox__prev {
    left: 24px;
}

.nolte-lightbox__next {
    right: 24px;
}

.nolte-lightbox__img-wrap {
    position: relative;
    z-index: 2;
    max-width: 90vw;
    max-height: 85vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nolte-lightbox__img {
    max-width: 90vw;
    max-height: 85vh;
    object-fit: contain;
    border-radius: 4px;
    transition: opacity 0.2s ease;
}

.nolte-lightbox__counter {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
    color: rgba(255, 255, 255, 0.7);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    letter-spacing: 1px;
}

/* ================================
   VIRTUAL TOUR MODAL
   ================================ */
.vt-modal {
    position: fixed;
    inset: 0;
    z-index: 99998;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.vt-modal.is-open {
    opacity: 1;
    visibility: visible;
}

.vt-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
}

.vt-modal__close {
    position: absolute;
    top: 12px;
    right: 16px;
    z-index: 3;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    opacity: 0.8;
    transition: opacity 0.2s;
}

.vt-modal__close:hover {
    opacity: 1;
}

/* Picker Card */
.vt-modal__card--picker {
    position: relative;
    z-index: 2;
    background: #fff;
    border-radius: 12px;
    padding: 48px 40px 40px;
    max-width: 520px;
    width: 90%;
}

.vt-modal__picker-title {
    font-family: 'Albert Sans', sans-serif;
    font-size: 22px;
    font-weight: 500;
    color: #000;
    margin: 0 0 28px;
    line-height: 1.4;
}

.vt-modal__picker-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.vt-modal__picker-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: none;
    border: 1px solid #E5E5E5;
    border-radius: 8px;
    padding: 18px 20px;
    font-family: 'Albert Sans', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #000;
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s;
}

.vt-modal__picker-item:hover {
    border-color: #000;
    background: #fafafa;
}

/* Player Card */
.vt-modal__card--player {
    position: relative;
    z-index: 2;
    width: 95%;
    max-width: 1280px;
}

.vt-modal__player-label {
    display: block;
    font-family: 'Albert Sans', sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #fff;
    margin-bottom: 12px;
}

.vt-modal__player-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
    border-radius: 8px;
    overflow: hidden;
}

.vt-modal__iframe,
.vt-modal__video {
    width: 100%;
    height: 100%;
    display: block;
}


/* ================================
   intl-tel-input — Override Styles
   Separate bordered box for country code, matching site form UI
   ================================ */

/* Phone row: gap for flag box + phone input side by side */
.cf7-row--phone:has(.iti) {
    display: flex !important;
    flex-direction: row !important;
    gap: 0 !important;
    align-items: flex-start !important;
}

.cf7-row--phone:has(.iti) .cf7-col--phone {
    flex: 1;
    width: 100%;
}

/* === intl-tel-input container: flex so flag box sits outside input === */
.iti {
    width: 100%;
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 22px;
}

/* Country container: separate box, not overlapping input */
.iti__country-container {
    position: relative !important;
    flex-shrink: 0 !important;
}

/* === Flag button as separate bordered box === */
.iti__selected-country {
    border: 1.44px solid #E6E6E6 !important;
    background: transparent !important;
    padding: 0 16px !important;
    height: 100% !important;
    display: flex !important;
    align-items: center;
    gap: 8px;
    transition: border-color 0.3s ease;
}

.iti__selected-country:hover {
    border-color: #2F2622 !important;
}

/* Dial code text styling */
.iti__selected-dial-code {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #1A1A1E;
}

/* Arrow styling */
.iti__arrow {
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid #828282;
    margin-left: 4px;
}

/* Phone input: takes remaining space, reset left padding */
.iti input[type="tel"] {
    flex: 1 !important;
    width: 100% !important;
    padding-left: 16px !important;
}

/* === Dropdown list styling === */
.iti__dropdown-content {
    border: 1.44px solid #E6E6E6;
    border-radius: 0;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    margin-top: 4px;
}

.iti__search-input {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    padding: 12px 16px;
    border: none;
    border-bottom: 1.44px solid #E6E6E6;
    outline: none;
}

.iti__search-input:focus {
    border-bottom-color: #2F2622;
}

.iti__country-list {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: #1A1A1E;
}

.iti__country {
    padding: 10px 16px;
}

.iti__country--highlight {
    background-color: #f5f0ed;
}

.iti__dial-code {
    color: #828282;
}

/* === Consultation form (Book Consultation) === */
.consult-form__card .iti {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 24px;
}

.consult-form__card .iti__country-container {
    position: relative !important;
    flex-shrink: 0 !important;
}

.consult-form__card .iti__selected-country {
    border: 1.44px solid #D5D5D5 !important;
    background: #ffffff !important;
    padding: 0 16px !important;
    height: 100% !important;
}

.consult-form__card .iti input[type="tel"] {
    flex: 1 !important;
    padding-left: 16px !important;
}

/* === Expert form (For Professionals) === */
.expert-form__field--phone .iti {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 22px;
}

.expert-form__field--phone .iti__country-container {
    position: relative !important;
    flex-shrink: 0 !important;
}

.expert-form__field--phone .iti__selected-country {
    border: 1.44px solid #D5D5D5 !important;
    background: #ffffff !important;
    padding: 0 16px !important;
    height: 100% !important;
}

.expert-form__field--phone .iti input[type="tel"] {
    flex: 1 !important;
    padding-left: 16px !important;
}

/* Expert form: phone field is flex row */
.expert-form__field--phone {
    display: flex;
    flex-direction: row;
    gap: 0;
}

.expert-form__field--phone:has(.iti) {
    display: block;
}

/* Hide ALL old country-code selects — intl-tel-input replaces them */
.expert-form__country-code,
.expert-form__field--phone .wpcf7-form-control-wrap[data-name="country-code"],
.expert-form__field--phone > .wpcf7-form-control-wrap:first-child,
.cf7-col--country,
select[name="country-code"],
select[name="country_code"],
.wpcf7-form-control-wrap.country-code-wrap,
span[data-name="country-code"],
.offer-form__phone-code {
    display: none !important;
}

/* === Offer form intl-tel-input === */
.offer-detail__form-card .iti {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: 12px;
}

.offer-detail__form-card .iti__country-container {
    position: relative !important;
    flex-shrink: 0 !important;
}

.offer-detail__form-card .iti__selected-country {
    border: 1.44px solid #D5D5D5 !important;
    background: #ffffff !important;
    padding: 0 16px !important;
    height: 100% !important;
}

.offer-detail__form-card .iti input[type="tel"] {
    flex: 1 !important;
    padding-left: 16px !important;
    height: 52px;
}