
:root{--charcoal:#3F3F3F;--bronze:#936C43;--gold:#CCA277;--mink:#94837B;--taupe:#B5997B;--cream:#DBC7B0;--light:#F7F3EF;--text:#2D2D2D;--white:#fff}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--light);line-height:1.6}img{max-width:100%;height:auto}a{text-decoration:none;color:inherit}
.site-header{background:var(--charcoal);position:sticky;top:0;z-index:1000;box-shadow:0 8px 24px rgba(0,0,0,.16)}.header-inner{max-width:1340px;min-height:95px;margin:0 auto;padding:12px 36px;display:flex;align-items:center;gap:24px;justify-content:space-between}.brand{display:flex;align-items:center;flex:0 0 220px;position:relative;left:5px}.brand img{width:180px;max-height:58px;display:block}.main-nav{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:nowrap;font-size:13px;letter-spacing:.04em;text-transform:uppercase}.main-nav a{color:#fff;white-space:nowrap;transition:.2s}.main-nav a:hover{color:var(--gold)}.nav-cta{background:var(--bronze);color:#fff!important;border-radius:999px;padding:11px 16px;font-weight:700}.nav-cta:hover{background:var(--gold);color:var(--charcoal)!important}.nav-toggle{display:none;background:transparent;border:0}.nav-toggle span{display:block;width:26px;height:2px;background:#fff;margin:5px 0}
.hero{min-height:620px;display:flex;align-items:center;background-size:cover;background-position:center;padding:80px 40px;color:#fff}.compact-hero{min-height:430px}.hero-content{max-width:760px;width:min(100%,1240px);margin:0 auto}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:13px;font-weight:700;margin:0 0 12px}h1,h2,h3,h4{line-height:1.15;margin-top:0}h1{font-size:clamp(42px,6vw,76px);margin-bottom:20px}h2{font-size:clamp(30px,4vw,48px);margin-bottom:16px}h3{font-size:24px}.hero p,.range-hero-copy p{font-size:19px}.button-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 22px;font-weight:700}.button.primary{background:var(--bronze);color:#fff}.button.primary:hover{background:var(--gold);color:var(--charcoal)}.button.secondary{border:1px solid currentColor;color:inherit}.text-link{color:var(--bronze);font-weight:700;border-bottom:1px solid var(--bronze)}
.section{max-width:1240px;margin:0 auto;padding:86px 40px}.section-heading{max-width:760px;margin-bottom:42px}.card-grid{display:grid;gap:28px}.three,.range-grid{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:repeat(2,1fr)}.image-card,.info-card,.search-card,.retailer-card,.contact-panel,.feature-panel,.range-story,.spec-panel{background:#fff;border:1px solid rgba(63,63,63,.1);box-shadow:0 16px 38px rgba(0,0,0,.08)}.image-card img{width:100%;height:260px;object-fit:cover;display:block}.image-card div,.info-card,.search-card,.retailer-card,.contact-panel,.feature-panel{padding:30px}.split-section,.retailer-search,.profile-layout,.range-details{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:start}.feature-panel,.spec-panel{background:var(--charcoal);color:#fff}.feature-panel ul,.info-card ul{padding-left:20px}.cta-band{background:var(--charcoal);color:#fff;max-width:none;margin:0 0 60px 0;padding-left:max(40px,calc((100vw - 1240px)/2 + 40px));padding-right:max(40px,calc((100vw - 1240px)/2 + 40px));display:flex;justify-content:space-between;gap:28px;align-items:center}form{display:flex;gap:12px;margin-top:20px}.stack-form{flex-direction:column}input{width:100%;border:1px solid rgba(63,63,63,.18);padding:14px 16px;font-size:16px}
.range-hero{display:grid;grid-template-columns:.95fr 1.05fr;min-height:650px;background:var(--charcoal);color:#fff}.range-hero-copy{padding:90px 60px;display:flex;flex-direction:column;justify-content:center;max-width:720px;margin-left:auto}.range-hero-copy h1{font-size:clamp(44px,6vw,78px)}.range-hero-image,.range-hero-image img{min-height:650px}.range-hero-image img{width:100%;height:100%;object-fit:cover;display:block}.range-story{padding:42px}.spec-panel{padding:38px}.spec-panel dl{margin:0}.spec-panel dt{color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:12px;margin-top:20px}.spec-panel dd{margin:4px 0 0;font-size:20px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-grid img{width:100%;height:260px;object-fit:cover;box-shadow:0 10px 22px rgba(0,0,0,.08)}
.site-footer{background:var(--charcoal);color:#fff;padding:70px 40px 28px}.footer-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:34px}.footer-logo{height:45px;width:auto;max-width:70%;margin-left:-20px;margin-bottom:18px;display:block}.site-footer a{display:block;color:rgba(255,255,255,.82);margin-bottom:8px}.site-footer a:hover{color:var(--gold)}.footer-bottom{max-width:1240px;margin:42px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);display:flex;justify-content:space-between;gap:18px;color:rgba(255,255,255,.68);font-size:14px}
@media(max-width:1180px){.header-inner{padding-left:26px;padding-right:26px;gap:16px}.brand{flex-basis:190px}.brand img{width:170px}.main-nav{gap:12px;font-size:12px}.nav-cta{padding:10px 12px}}
@media(max-width:980px){.header-inner{min-height:82px}.brand{flex-basis:auto}.brand img{width:165px;max-height:52px}.nav-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--charcoal);padding:20px 30px 28px;flex-direction:column;align-items:flex-start;gap:16px}.main-nav.open{display:flex}.hero{min-height:520px;padding:70px 28px}.section{padding:64px 28px}.three,.two,.range-grid,.split-section,.retailer-search,.profile-layout,.footer-grid,.range-hero,.range-details{grid-template-columns:1fr}.cta-band{flex-direction:column;align-items:flex-start}form{flex-direction:column}.range-hero-copy{padding:62px 28px;margin:0}.range-hero,.range-hero-image,.range-hero-image img{min-height:auto}.range-hero-image img{max-height:520px}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.header-inner{padding-left:18px;padding-right:18px;min-height:74px}.brand{left:0}.brand img{width:150px;max-height:46px}h1{font-size:38px}.hero{min-height:460px;padding:54px 22px}.section{padding:52px 22px}.site-footer{padding-left:22px;padding-right:22px}.footer-bottom{flex-direction:column}.gallery-grid{grid-template-columns:1fr}.range-story,.spec-panel{padding:28px}}


/* Studio Vivre top slider / hero background image update */
.hero,
.home-hero,
.compact-hero,
.page-hero,
.slider,
.main-slider,
.hero-slider,
.banner,
.page-banner,
.breadcrumb-area,
.slider-area,
.inner-banner,
.range-hero {
    position: relative;
    overflow: hidden;
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.88), rgba(63,63,63,0.50)),
        url("../images/slides/kitchen_slide.webp") !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

.home-page .hero,
.home-page .home-hero,
body.home .hero,
body.home .slider,
.index-page .hero {
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.88), rgba(63,63,63,0.46)),
        url("../images/slides/kitchen_slide.webp") !important;
}

.kitchens-page .hero,
.kitchens-page .compact-hero,
.range-page .hero,
.range-page .compact-hero,
body[class*="kitchen"] .hero,
body[class*="kitchen"] .slider,
body[class*="range"] .hero,
body[class*="albany"] .hero,
body[class*="aura"] .hero,
body[class*="balmoral"] .hero,
body[class*="berkeley"] .hero,
body[class*="boston"] .hero,
body[class*="buckingham"] .hero,
body[class*="cleveland"] .hero,
body[class*="fenton"] .hero,
body[class*="hadfield"] .hero,
body[class*="larissa"] .hero,
body[class*="malham"] .hero,
body[class*="odyssey"] .hero,
body[class*="rivington"] .hero,
body[class*="vogue"] .hero {
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.88), rgba(63,63,63,0.46)),
        url("../images/slides/kitchen_slide.webp") !important;
}

.bedrooms-page .hero,
.bedrooms-page .compact-hero,
body[class*="bedroom"] .hero,
body[class*="bedroom"] .slider {
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.88), rgba(63,63,63,0.46)),
        url("../images/slides/bedroom_slide.webp") !important;
}

.living-spaces-page .hero,
.living-spaces-page .compact-hero,
body[class*="living"] .hero,
body[class*="office"] .hero,
body[class*="media"] .hero {
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.88), rgba(63,63,63,0.46)),
        url("../images/Media.webp") !important;
}

.inspiration-page .hero,
.projects-page .hero,
body[class*="news"] .hero,
body[class*="blog"] .hero,
body[class*="project"] .hero {
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.88), rgba(63,63,63,0.46)),
        url("../images/blog_1.jpg") !important;
}

.find-retailer-page .hero,
.retailer-profile-page .hero,
.contact-page .hero,
.brochure-page .hero,
body[class*="contact"] .hero,
body[class*="retailer"] .hero {
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.88), rgba(63,63,63,0.46)),
        url("../images/single_1.png") !important;
}

.hero > *,
.home-hero > *,
.compact-hero > *,
.page-hero > *,
.slider > *,
.main-slider > *,
.hero-slider > *,
.banner > *,
.page-banner > *,
.breadcrumb-area > *,
.slider-area > *,
.inner-banner > * {
    position: relative;
    z-index: 2;
}

.hero,
.home-hero,
.compact-hero,
.page-hero,
.slider,
.main-slider,
.hero-slider,
.banner,
.page-banner,
.breadcrumb-area,
.slider-area,
.inner-banner {
    min-height: 420px;
    display: flex;
    align-items: center;
}

.home-hero,
.home-page .hero,
body.home .slider {
    min-height: 620px;
}

@media (max-width: 900px) {
    .hero,
    .home-hero,
    .compact-hero,
    .page-hero,
    .slider,
    .main-slider,
    .hero-slider,
    .banner,
    .page-banner,
    .breadcrumb-area,
    .slider-area,
    .inner-banner {
        min-height: 360px;
        background-position: center center !important;
    }

    .home-hero,
    .home-page .hero,
    body.home .slider {
        min-height: 500px;
    }
}

@media (max-width: 560px) {
    .hero,
    .home-hero,
    .compact-hero,
    .page-hero,
    .slider,
    .main-slider,
    .hero-slider,
    .banner,
    .page-banner,
    .breadcrumb-area,
    .slider-area,
    .inner-banner {
        min-height: 320px;
    }
}


/* Home Office original image fix */
.home-office-page .hero,
.homeoffice-page .hero,
.home-office-page .compact-hero,
.living-spaces-page .hero,
.living-spaces-page .compact-hero,
body[class*="office"] .hero,
body[class*="home-office"] .hero {
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.88), rgba(63,63,63,0.46)),
        url("../images/single_2.png") !important;
    background-size: cover !important;
    background-position: center center !important;
}

.home-office-gallery .image-card img {
    height: 280px;
    object-fit: cover;
}


/* Home Office showcase gallery from original site */
.home-office-showcase {
    max-width: 1320px;
}

.showcase-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 18px;
}

.showcase-item {
    display: block;
    overflow: hidden;
    background: #3F3F3F;
    min-height: 260px;
    box-shadow: 0 16px 38px rgba(0,0,0,0.10);
}

.showcase-item:nth-child(1),
.showcase-item:nth-child(6) {
    grid-column: span 7;
    min-height: 420px;
}

.showcase-item:nth-child(2),
.showcase-item:nth-child(5) {
    grid-column: span 5;
    min-height: 420px;
}

.showcase-item:nth-child(3),
.showcase-item:nth-child(4),
.showcase-item:nth-child(7),
.showcase-item:nth-child(8) {
    grid-column: span 6;
}

.showcase-item img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    display: block;
    transition: transform 0.45s ease;
}

.showcase-item:hover img {
    transform: scale(1.04);
}

@media (max-width: 900px) {
    .showcase-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .showcase-item,
    .showcase-item:nth-child(1),
    .showcase-item:nth-child(2),
    .showcase-item:nth-child(3),
    .showcase-item:nth-child(4),
    .showcase-item:nth-child(5),
    .showcase-item:nth-child(6),
    .showcase-item:nth-child(7),
    .showcase-item:nth-child(8) {
        grid-column: span 1;
        min-height: 280px;
    }
}

@media (max-width: 560px) {
    .showcase-grid {
        grid-template-columns: 1fr;
    }

    .showcase-item,
    .showcase-item:nth-child(1),
    .showcase-item:nth-child(2),
    .showcase-item:nth-child(3),
    .showcase-item:nth-child(4),
    .showcase-item:nth-child(5),
    .showcase-item:nth-child(6),
    .showcase-item:nth-child(7),
    .showcase-item:nth-child(8) {
        min-height: 260px;
    }
}

/* Legal pages, footer legal links and cookie consent */
.site-footer .footer-cookie-button{display:block;padding:0;margin:4px 0 0;border:0;background:transparent;color:rgba(255,255,255,.82);font:inherit;cursor:pointer;text-align:left}
.site-footer .footer-cookie-button:hover{color:var(--gold,#CCA277)}
.legal-content{max-width:980px;background:#fff;margin-top:70px;margin-bottom:70px;padding:52px;box-shadow:0 16px 38px rgba(0,0,0,.08)}
.legal-content h2,.legal-content h3{color:#3F3F3F}
.cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:99999;display:none;align-items:center;justify-content:space-between;gap:24px;max-width:1180px;margin:0 auto;padding:24px;background:#3F3F3F;color:#fff;box-shadow:0 20px 50px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.12)}
.cookie-banner.is-visible{display:flex}
.cookie-banner h3{margin:0 0 8px;color:#fff}.cookie-banner p{margin:0;color:rgba(255,255,255,.84)}
.cookie-banner__content{max-width:680px}.cookie-banner__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.cookie-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.62)}
.cookie-modal.is-visible{display:flex}
.cookie-modal__panel{position:relative;width:min(100%,680px);max-height:90vh;overflow:auto;background:#fff;color:#2D2D2D;padding:38px;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.cookie-modal__close{position:absolute;top:16px;right:18px;border:0;background:transparent;font-size:32px;line-height:1;cursor:pointer}
.cookie-option{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 0;border-top:1px solid rgba(63,63,63,.14)}
.cookie-option h3{margin:0 0 6px}.cookie-option p{margin:0}.cookie-option input{width:24px;height:24px;flex:0 0 auto}
.cookie-required{color:#936C43;font-weight:700;white-space:nowrap}.cookie-modal__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
@media(max-width:760px){.cookie-banner{left:14px;right:14px;bottom:14px;flex-direction:column;align-items:flex-start}.cookie-banner__actions{justify-content:flex-start}.legal-content{padding:30px 24px;margin-top:42px;margin-bottom:42px}.cookie-option{align-items:flex-start;flex-direction:column}}

/* Contact form */
.contact-form-section {
    max-width: 1240px;
}

.contact-layout {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 42px;
    align-items: start;
}

.contact-copy,
.contact-form {
    background: #FFFFFF;
    padding: 42px;
    box-shadow: 0 16px 38px rgba(0,0,0,0.08);
}

.contact-details-panel {
    margin-top: 28px;
    padding: 24px;
    background: #3F3F3F;
    color: #FFFFFF;
}

.contact-details-panel h3 {
    color: #FFFFFF;
}

.contact-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.form-row {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-row-full {
    grid-column: 1 / -1;
}

.contact-form label {
    font-weight: 700;
    color: #3F3F3F;
}

.contact-form label span {
    color: #936C43;
}

.contact-form input,
.contact-form select,
.contact-form textarea {
    width: 100%;
    border: 1px solid rgba(63,63,63,0.22);
    background: #F7F3EF;
    padding: 14px 16px;
    font: inherit;
}

.contact-form textarea {
    resize: vertical;
}

.form-consent label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-weight: 400;
}

.form-consent input {
    width: auto;
    margin-top: 6px;
}

.form-consent a {
    color: #936C43;
    font-weight: 700;
}

.honeypot {
    position: absolute;
    left: -9999px;
    height: 0;
    overflow: hidden;
}

@media (max-width: 900px) {
    .contact-layout,
    .contact-form {
        grid-template-columns: 1fr;
    }

    .contact-copy,
    .contact-form {
        padding: 30px;
    }
}

/* Why Choose Studio Vivre */
.why-choose-page .compact-hero {
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.90), rgba(63,63,63,0.48)),
        url("../images/slides/kitchen_slide.webp") !important;
    background-size: cover !important;
    background-position: center !important;
}

/* Interactive retailer locator */
.locator-section {
    max-width: 1320px;
}

.locator-controls {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 32px;
    align-items: stretch;
}

.locator-search-card,
.locator-map-card,
.retailer-result-card,
.appointment-copy,
.appointment-form {
    background: #FFFFFF;
    box-shadow: 0 16px 38px rgba(0,0,0,0.08);
}

.locator-search-card {
    padding: 36px;
}

.locator-form {
    display: grid;
    gap: 14px;
    margin-top: 22px;
}

.locator-form label {
    font-weight: 700;
    color: #3F3F3F;
}

.locator-form input,
.locator-form select {
    width: 100%;
    border: 1px solid rgba(63,63,63,0.22);
    background: #F7F3EF;
    padding: 14px 16px;
    font: inherit;
}

.locator-note {
    margin-top: 18px;
    font-size: 14px;
    color: rgba(45,45,45,0.72);
}

.retailer-map {
    width: 100%;
    min-height: 480px;
    height: 100%;
    background: #3F3F3F;
}

.map-fallback {
    color: #FFFFFF;
    padding: 30px;
}

.locator-results-header {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: end;
    margin: 54px 0 24px;
}

.retailer-results {
    display: grid;
    gap: 22px;
}

.retailer-result-card {
    padding: 30px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 28px;
    align-items: center;
}

.retailer-service-list {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    padding: 0;
    margin: 18px 0 0;
    list-style: none;
}

.retailer-service-list li {
    background: #DBC7B0;
    color: #3F3F3F;
    padding: 6px 10px;
    font-size: 13px;
    font-weight: 700;
}

.retailer-result-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
}

/* Keep retailer profile actions aligned consistently across every result card. */
@media (min-width: 901px) {
    .retailer-result-card {
        grid-template-columns: minmax(0, 1fr) 230px;
    }

    .retailer-result-actions {
        width: 230px;
    }

    .retailer-result-actions .button {
        box-sizing: border-box;
        width: 100%;
        text-align: center;
    }
}

/* Design appointment form */
.appointment-layout {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 42px;
    align-items: start;
}

.appointment-copy,
.appointment-form {
    padding: 42px;
}

.appointment-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.appointment-form input,
.appointment-form select,
.appointment-form textarea {
    width: 100%;
    border: 1px solid rgba(63,63,63,0.22);
    background: #F7F3EF;
    padding: 14px 16px;
    font: inherit;
}

.appointment-form label {
    font-weight: 700;
    color: #3F3F3F;
}

.appointment-form label span {
    color: #936C43;
}

.sticky-retailer-cta {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 9999;
}

.sticky-retailer-cta .button {
    box-shadow: 0 14px 34px rgba(0,0,0,0.24);
}

@media (max-width: 900px) {
    .locator-controls,
    .retailer-result-card,
    .appointment-layout,
    .appointment-form {
        grid-template-columns: 1fr;
    }

    .retailer-map {
        min-height: 360px;
    }

    .locator-results-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .appointment-copy,
    .appointment-form {
        padding: 30px;
    }

    .sticky-retailer-cta {
        left: 0;
        right: 0;
        bottom: 0;
        background: #3F3F3F;
        padding: 10px 14px;
        text-align: center;
    }

    .sticky-retailer-cta .button {
        width: 100%;
    }
}

/* Contact page reordered layout */
.contact-reordered .contact-form-section {
    padding-top: 70px;
}

.contact-reordered .related-pages-section {
    padding-top: 40px;
}

.contact-reordered .contact-form-section + .section {
    padding-top: 40px;
}

.related-pages-section .info-card {
    min-height: 100%;
}

/* Studio Vivre product image lightbox */
.sv-lightbox-trigger{display:block;cursor:zoom-in;position:relative}
.sv-lightbox-trigger::after{content:"Click to enlarge";position:absolute;right:14px;bottom:14px;background:rgba(63,63,63,.86);color:#fff;padding:7px 10px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;opacity:0;transition:opacity .25s ease}
.sv-lightbox-trigger:hover::after{opacity:1}
.sv-lightbox-open{overflow:hidden}
.sv-lightbox{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:54px;background:rgba(0,0,0,.88)}
.sv-lightbox.is-visible{display:flex}
.sv-lightbox__image{max-width:min(1180px,90vw);max-height:86vh;width:auto;height:auto;object-fit:contain;box-shadow:0 24px 70px rgba(0,0,0,.45)}
.sv-lightbox__close,.sv-lightbox__nav{position:absolute;border:0;background:rgba(63,63,63,.86);color:#fff;cursor:pointer;transition:background .2s ease,color .2s ease}
.sv-lightbox__close:hover,.sv-lightbox__nav:hover{background:#CCA277;color:#3F3F3F}
.sv-lightbox__close{top:24px;right:28px;width:46px;height:46px;font-size:34px;line-height:1}
.sv-lightbox__nav{top:50%;transform:translateY(-50%);width:48px;height:64px;font-size:32px}
.sv-lightbox__prev{left:26px}.sv-lightbox__next{right:26px}
@media(max-width:700px){.sv-lightbox{padding:28px 16px}.sv-lightbox__nav{width:42px;height:54px;font-size:26px}.sv-lightbox__prev{left:8px}.sv-lightbox__next{right:8px}.sv-lightbox__close{top:10px;right:10px}.sv-lightbox-trigger::after{opacity:1;font-size:10px}}


/* Appointment form consent layout fix */
.appointment-form .form-consent {
    grid-column: 1 / -1;
    width: 100%;
}

.appointment-form .form-consent label {
    display: flex !important;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    max-width: 100%;
    font-weight: 400;
    line-height: 1.5;
    color: #3F3F3F;
}

.appointment-form .form-consent input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px;
    flex: 0 0 18px;
    margin: 4px 0 0;
    padding: 0;
}

.appointment-form .form-consent label span {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    color: #3F3F3F !important;
    font-weight: 400;
}

.appointment-form .form-consent a {
    color: #936C43;
    font-weight: 700;
    text-decoration: underline;
}


/* Global hero alignment update */
.hero-content{
    width:100%;
    max-width:1320px !important;
    margin:0 auto !important;
    padding-left:40px !important;
    padding-right:40px !important;
    text-align:left;
}

.hero-content h1,
.hero-content p,
.hero-content .button-row,
.hero-content .eyebrow{
    max-width:700px;
}

@media (max-width:768px){
    .hero-content{
        padding-left:24px !important;
        padding-right:24px !important;
    }
}


/* Global content grid alignment fix
   Aligns header logo, hero text and main body text to the same left edge */
:root {
    --site-container: 1240px;
    --site-gutter: 40px;
    --site-gutter-mobile: 24px;
}

.header-inner,
.hero-content,
.section,
.footer-grid,
.footer-bottom {
    max-width: var(--site-container) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.header-inner {
    padding-left: var(--site-gutter) !important;
    padding-right: var(--site-gutter) !important;
}

.hero-content {
    padding-left: var(--site-gutter) !important;
    padding-right: var(--site-gutter) !important;
}

.section {
    padding-left: var(--site-gutter) !important;
    padding-right: var(--site-gutter) !important;
}

.brand {
    left: 0 !important;
}

.brand img {
    transform: translateX(-4px);
}

@media (max-width: 768px) {
    .header-inner,
    .hero-content,
    .section {
        padding-left: var(--site-gutter-mobile) !important;
        padding-right: var(--site-gutter-mobile) !important;
    }

    5 img {
        transform: none;
    }
}


/* Footer grid alignment fix */
.site-footer {
    padding-left: var(--site-gutter, 40px) !important;
    padding-right: var(--site-gutter, 40px) !important;
}

.footer-grid,
.footer-bottom {
    max-width: var(--site-container, 1240px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.footer-grid > div:first-child {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.footer-logo {
    left: -15px;
}

.site-footer p {
    margin-left: 0 !important;
}

@media (max-width: 768px) {
    .site-footer {
        padding-left: var(--site-gutter-mobile, 24px) !important;
        padding-right: var(--site-gutter-mobile, 24px) !important;
    }
}


/* Precise footer alignment fix
   Aligns the footer logo and opening text with the main content text column */
.site-footer {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.site-footer .footer-grid,
.site-footer .footer-bottom {
    width: 100% !important;
    max-width: var(--site-container, 1240px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: var(--site-gutter, 40px) !important;
    padding-right: var(--site-gutter, 40px) !important;
}

.site-footer .footer-grid {
    align-items: start !important;
}

.site-footer .footer-grid > div:first-child {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    justify-self: start !important;
    align-self: start !important;
}

.site-footer .footer-logo {
    display: block !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateX(-16px) !important;
}

.site-footer .footer-grid > div:first-child p {
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
    max-width: 520px !important;
}

@media (max-width: 768px) {
    .site-footer .footer-grid,
    .site-footer .footer-bottom {
        padding-left: var(--site-gutter-mobile, 24px) !important;
        padding-right: var(--site-gutter-mobile, 24px) !important;
    }

    .site-footer .footer-logo {
        transform: none !important;
    }
}


/* Homepage V2 polished image-led layout */
.home-v2-hero {
    min-height: 700px;
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.88), rgba(63,63,63,0.32)),
        url("../images/slides/kitchen_slide.webp") !important;
}

.centred {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.feature-collection-grid {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    grid-template-rows: repeat(2, 300px);
    gap: 22px;
}

.collection-tile {
    position: relative;
    overflow: hidden;
    color: #FFFFFF;
    display: block;
    background: #3F3F3F;
}

.collection-tile.large {
    grid-row: span 2;
}

.collection-tile img,
.space-card img,
.inspiration-mosaic img,
.story-image img,
.brochure-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.collection-tile::after,
.space-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0.05), rgba(0,0,0,0.72));
}

.collection-tile div,
.space-card div {
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 28px;
    z-index: 2;
}

.collection-tile h3,
.space-card h3 {
    color: #FFFFFF;
    font-size: 34px;
    margin-bottom: 8px;
}

.collection-tile span {
    color: #CCA277;
    font-weight: 700;
}

.space-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.space-card {
    position: relative;
    min-height: 420px;
    overflow: hidden;
    color: #FFFFFF;
    background: #3F3F3F;
}

.space-card p {
    color: rgba(255,255,255,0.86);
}

.home-image-story,
.home-brochure-feature {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    background: #3F3F3F;
    color: #FFFFFF;
}

.story-image,
.brochure-image {
    min-height: 620px;
}

.story-copy,
.brochure-copy {
    padding: 90px max(40px, calc((100vw - 1240px) / 2 + 40px)) 90px 70px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.home-brochure-feature .brochure-copy {
    padding-left: max(40px, calc((100vw - 1240px) / 2 + 40px));
    padding-right: 70px;
}

.story-copy h2,
.brochure-copy h2,
.home-retailer-band h2,
.final-cta-v2 h2 {
    color: #FFFFFF;
}

.story-copy p,
.brochure-copy p,
.home-retailer-band p,
.final-cta-v2 p {
    color: rgba(255,255,255,0.84);
}

.story-points {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin: 26px 0 32px;
}

.story-points span {
    border: 1px solid rgba(255,255,255,0.18);
    padding: 13px 14px;
    color: #DBC7B0;
}

.journey-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.journey-grid article {
    background: #FFFFFF;
    padding: 32px;
    box-shadow: 0 16px 38px rgba(0,0,0,0.08);
    border-top: 4px solid #936C43;
}

.journey-grid span {
    display: block;
    color: #CCA277;
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 22px;
}

.home-retailer-band,
.final-cta-v2 {
    max-width: none !important;
    margin: 0;
    padding: 88px max(40px, calc((100vw - 1240px) / 2 + 40px)) !important;
    background: #3F3F3F;
    color: #FFFFFF;
    display: flex;
    justify-content: space-between;
    gap: 38px;
    align-items: center;
}

.mini-retailer-search {
    display: flex;
    gap: 12px;
    min-width: 460px;
}

.mini-retailer-search input {
    min-width: 280px;
    border: 1px solid rgba(255,255,255,0.2);
    background: #FFFFFF;
    padding: 14px 18px;
}

.inspiration-mosaic {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: 180px;
    gap: 18px;
}

.inspiration-mosaic img:nth-child(1) {
    grid-column: span 5;
    grid-row: span 2;
}

.inspiration-mosaic img:nth-child(2) {
    grid-column: span 4;
    grid-row: span 2;
}

.inspiration-mosaic img:nth-child(3) {
    grid-column: span 3;
}

.inspiration-mosaic img:nth-child(4) {
    grid-column: span 3;
}

.inspiration-mosaic img:nth-child(5),
.inspiration-mosaic img:nth-child(6) {
    grid-column: span 6;
}

.final-cta-v2 {
    margin-top: 0;
}

.final-cta-v2 .button.secondary {
    color: #FFFFFF;
    border-color: rgba(255,255,255,0.7);
}

@media (max-width: 1000px) {
    .space-grid,
    .journey-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .home-image-story,
    .home-brochure-feature {
        grid-template-columns: 1fr;
    }

    .story-copy,
    .brochure-copy,
    .home-brochure-feature .brochure-copy {
        padding: 64px 40px;
    }

    .home-brochure-feature .brochure-image {
        order: -1;
    }

    .home-retailer-band,
    .final-cta-v2 {
        flex-direction: column;
        align-items: flex-start;
    }

    .mini-retailer-search {
        min-width: 0;
        width: 100%;
    }
}

@media (max-width: 760px) {
    .feature-collection-grid,
    .space-grid,
    .journey-grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    .collection-tile,
    .collection-tile.large,
    .space-card {
        min-height: 340px;
        grid-row: auto;
    }

    .story-image,
    .brochure-image {
        min-height: 360px;
    }

    .story-copy,
    .brochure-copy,
    .home-brochure-feature .brochure-copy {
        padding: 52px 24px;
    }

    .story-points {
        grid-template-columns: 1fr;
    }

    .mini-retailer-search {
        flex-direction: column;
    }

    .inspiration-mosaic {
        grid-template-columns: 1fr;
        grid-auto-rows: 260px;
    }

    .inspiration-mosaic img,
    .inspiration-mosaic img:nth-child(1),
    .inspiration-mosaic img:nth-child(2),
    .inspiration-mosaic img:nth-child(3),
    .inspiration-mosaic img:nth-child(4),
    .inspiration-mosaic img:nth-child(5),
    .inspiration-mosaic img:nth-child(6) {
        grid-column: auto;
        grid-row: auto;
    }
}

.section-heading {
    max-width: 100% !important;
}

.section-heading h2 {
    max-width: 100% !important;
}

/* Full-width heading alignment fix */
.section-heading{
    max-width:none !important;
    width:100% !important;
}

.section-heading h2{
    max-width:none !important;
    width:100% !important;
}

.range-hero .hero-content,
.range-hero .hero-copy{
    max-width:1240px !important;
    width:100% !important;
}


/* Enhanced Why Choose Studio Vivre page */
.why-hero {
    background-image:
        linear-gradient(90deg, rgba(63,63,63,0.92), rgba(63,63,63,0.46)),
        url("../images/slides/kitchen_slide.webp") !important;
    background-size: cover !important;
    background-position: center !important;
}

.centered-heading {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.centered-heading p {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
}

.why-intro-grid {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 0;
    align-items: stretch;
}

.why-intro-copy {
    background: #FFFFFF;
    padding: 68px;
    box-shadow: 0 16px 38px rgba(0,0,0,.08);
}

.why-intro-image {
    min-height: 520px;
    overflow: hidden;
}

.why-intro-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.why-pillar-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.why-pillar-grid article {
    background: #FFFFFF;
    padding: 34px;
    box-shadow: 0 16px 38px rgba(0,0,0,.08);
    border-top: 4px solid #936C43;
}

.why-pillar-grid span,
.why-journey span {
    color: #CCA277;
    font-weight: 700;
    letter-spacing: .14em;
    display: block;
    margin-bottom: 16px;
}

.why-image-band {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    grid-template-rows: repeat(2, 310px);
    gap: 22px;
}

.why-band-card {
    position: relative;
    overflow: hidden;
    background: #3F3F3F;
    color: #FFFFFF;
}

.why-band-card.large {
    grid-row: span 2;
}

.why-band-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .5s ease;
}

.why-band-card:hover img {
    transform: scale(1.04);
}

.why-band-card:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(63,63,63,.08), rgba(63,63,63,.82));
}

.why-band-card div {
    position: absolute;
    z-index: 2;
    left: 32px;
    right: 32px;
    bottom: 30px;
}

.why-band-card h3 {
    color: #FFFFFF;
    font-size: 32px;
}

.why-check-list {
    margin: 24px 0 30px;
    padding: 0;
    list-style: none;
}

.why-check-list li {
    padding: 10px 0 10px 28px;
    position: relative;
}

.why-check-list li:before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #936C43;
    font-weight: 700;
}

.why-process-section {
    background: #3F3F3F;
    color: #FFFFFF;
    max-width: none !important;
    padding-left: max(40px, calc((100vw - 1240px) / 2 + 40px)) !important;
    padding-right: max(40px, calc((100vw - 1240px) / 2 + 40px)) !important;
}

.why-process-section h2,
.why-process-section h3 {
    color: #FFFFFF;
}

.why-showcase-mosaic .why-mosaic-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 280px;
    gap: 18px;
}

.why-mosaic-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    box-shadow: 0 16px 38px rgba(0,0,0,.08);
}

.why-mosaic-grid img:first-child {
    grid-column: span 2;
    grid-row: span 2;
}

.why-final-cta {
    text-align: center;
}

.why-final-cta .button-row {
    justify-content: center;
}

@media (max-width: 1000px) {
    .why-intro-grid,
    .why-image-band {
        grid-template-columns: 1fr;
    }

    .why-image-band {
        grid-template-rows: auto;
    }

    .why-band-card,
    .why-band-card.large {
        min-height: 340px;
        grid-row: auto;
    }

    .why-pillar-grid,
    .why-showcase-mosaic .why-mosaic-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .why-mosaic-grid img:first-child {
        grid-column: span 1;
        grid-row: span 1;
    }

    .why-intro-copy {
        padding: 42px;
    }
}

@media (max-width: 620px) {
    .why-pillar-grid,
    .why-showcase-mosaic .why-mosaic-grid {
        grid-template-columns: 1fr;
    }

    .why-intro-copy {
        padding: 30px;
    }

    .why-band-card {
        min-height: 280px;
    }
}


/* Hero width optimisation */
.home-hero .hero-content,
.polished-hero .hero-content,
.why-hero .hero-content{
    max-width: 1100px !important;
    width: 100% !important;
}

.home-hero h1,
.polished-hero h1,
.why-hero h1{
    max-width: 1100px !important;
    width: 100%;
    line-height: 0.9;
}


/* Global hero/header width optimisation across all pages */
.hero .hero-content,
.home-hero .hero-content,
.compact-hero .hero-content,
.page-hero .hero-content,
.range-hero .range-hero-copy,
.why-hero .hero-content,
.polished-hero .hero-content {
    max-width: 1100px !important;
    width: 100% !important;
}

.hero .hero-content h1,
.home-hero .hero-content h1,
.compact-hero .hero-content h1,
.page-hero .hero-content h1,
.range-hero .range-hero-copy h1,
.why-hero .hero-content h1,
.polished-hero .hero-content h1 {
    max-width: 1100px !important;
    width: 100% !important;
    line-height: 0.92;
}

.hero .hero-content p,
.home-hero .hero-content p,
.compact-hero .hero-content p,
.page-hero .hero-content p,
.range-hero .range-hero-copy p,
.why-hero .hero-content p,
.polished-hero .hero-content p {
    max-width: 820px !important;
}

/* Keep button rows aligned with the wider heading */
.hero .button-row,
.home-hero .button-row,
.compact-hero .button-row,
.page-hero .button-row,
.range-hero .button-row {
    max-width: 1100px !important;
}

@media (max-width: 900px) {
    .hero .hero-content,
    .home-hero .hero-content,
    .compact-hero .hero-content,
    .page-hero .hero-content,
    .range-hero .range-hero-copy,
    .why-hero .hero-content,
    .polished-hero .hero-content {
        max-width: 100% !important;
    }

    .hero .hero-content h1,
    .home-hero .hero-content h1,
    .compact-hero .hero-content h1,
    .page-hero .hero-content h1,
    .range-hero .range-hero-copy h1,
    .why-hero .hero-content h1,
    .polished-hero .hero-content h1 {
        line-height: 1.02;
    }
}


/* Aura page cleanup: remove duplicate Kitchen Details layout and make About full width */
.about-range-full {
    display: block !important;
    max-width: var(--site-container, 1240px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.about-range-full .range-story {
    width: 100% !important;
    max-width: none !important;
}

.about-range-full .range-story p {
    max-width: none !important;
}

/* Keep the profile viewer as the primary technical/specification area */
.profile-viewer-section .profile-viewer-layout {
    grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
}

/* If a page has no duplicated aside, prevent empty grid space */
.range-details.about-range-full > aside.spec-panel {
    display: none !important;
}

@media (max-width: 900px) {
    .profile-viewer-section .profile-viewer-layout {
        grid-template-columns: 1fr;
    }
}


/* Home Office gallery improvement */
.home-office-gallery,
.gallery-grid.home-office-gallery{
    grid-template-columns:repeat(3,1fr) !important;
    gap:24px !important;
}

.home-office-gallery img,
.home-office-gallery .gallery-item img{
    width:100% !important;
    height:450px !important;
    object-fit:cover !important;
    display:block;
}

/* Force final three showcase images to display large */
.home-office-gallery img:nth-last-child(-n+3),
.home-office-gallery .gallery-item:nth-last-child(-n+3) img{
    width:100% !important;
    height:500px !important;
    object-fit:cover !important;
}


/* Home Office gallery structure fix */
.home-office-showcase-fixed {
    max-width: var(--site-container, 1240px) !important;
}

.home-office-showcase-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
    align-items: stretch !important;
}

.home-office-showcase-card {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 430px !important;
    overflow: hidden !important;
    background: #3F3F3F !important;
    box-shadow: 0 16px 38px rgba(0,0,0,.10) !important;
}

.home-office-showcase-card:nth-child(1),
.home-office-showcase-card:nth-child(2) {
    grid-column: span 1 !important;
}

.home-office-showcase-card img {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}

/* Override older rules causing final images to show as vertical strips */
.home-office-gallery img,
.home-office-gallery .image-card img,
.home-office-gallery .gallery-item img,
.home-office-showcase-fixed img {
    width: 100% !important;
    max-width: none !important;
}

@media (min-width: 1000px) {
    .home-office-showcase-card:nth-child(1) {
        grid-column: span 2 !important;
        height: 520px !important;
    }

    .home-office-showcase-card:nth-child(2) {
        height: 520px !important;
    }
}

@media (max-width: 900px) {
    .home-office-showcase-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .home-office-showcase-card,
    .home-office-showcase-card:nth-child(1),
    .home-office-showcase-card:nth-child(2) {
        grid-column: span 1 !important;
        height: 320px !important;
    }
}

@media (max-width: 560px) {
    .home-office-showcase-grid {
        grid-template-columns: 1fr !important;
    }

    .home-office-showcase-card {
        height: 300px !important;
    }
}

/* Gated brochure request page */
.brochure-request-section {
    max-width: var(--site-container, 1240px) !important;
}

.brochure-request-layout {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 42px;
    align-items: start;
}

.brochure-request-copy,
.brochure-form {
    background: #FFFFFF;
    padding: 42px;
    box-shadow: 0 16px 38px rgba(0,0,0,.08);
}

.brochure-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.brochure-form .form-row {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.brochure-form .form-row-full {
    grid-column: 1 / -1;
}

.brochure-form label {
    font-weight: 700;
    color: #3F3F3F;
}

.brochure-form label span {
    color: #936C43;
}

.brochure-form input {
    width: 100%;
    border: 1px solid rgba(63,63,63,.22);
    background: #F7F3EF;
    padding: 14px 16px;
    font: inherit;
}

.brochure-form .form-consent label {
    display: flex !important;
    align-items: flex-start;
    gap: 12px;
    font-weight: 400;
    line-height: 1.5;
}

.brochure-form .form-consent input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px;
    flex: 0 0 18px;
    margin-top: 4px;
}

.brochure-form .form-consent a {
    color: #936C43;
    font-weight: 700;
    text-decoration: underline;
}

.brochure-form .honeypot {
    position: absolute;
    left: -9999px;
    height: 0;
    overflow: hidden;
}

.brochure-download-content {
    padding-top: 70px;
}

@media (max-width: 900px) {
    .brochure-request-layout,
    .brochure-form {
        grid-template-columns: 1fr;
    }

    .brochure-request-copy,
    .brochure-form {
        padding: 30px;
    }
}


/* Two brochure choice field */
.brochure-choice-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 8px;
}

.brochure-choice-options label {
    display: flex !important;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: #F7F3EF;
    border: 1px solid rgba(63,63,63,.16);
    cursor: pointer;
}

.brochure-choice-options input[type="radio"] {
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 18px;
}

.brochure-choice-options label span {
    color: #3F3F3F !important;
    font-weight: 700;
}

.brochure-download-buttons {
    gap: 14px;
    flex-wrap: wrap;
}


/* Footer separation spacer for Find a Retailer CTA */
.footer-spacer{
    height:80px;
    background:#F7F3EF;
    width:100%;
}

/* Kensi Hope retailer page */
.kensi-hope-page .retailer-showcase-hero__image img{object-position:center center}
.kensi-gallery-grid{grid-auto-rows:330px}
.kensi-gallery-grid .retailer-showcase-card img{object-fit:cover}
.kensi-gallery-grid .retailer-showcase-card.large{grid-column:span 2;grid-row:span 2}
.kensi-gallery-grid .retailer-showcase-card.wide{grid-column:span 2}
@media(max-width:1000px){.kensi-gallery-grid .retailer-showcase-card.large,.kensi-gallery-grid .retailer-showcase-card.wide{grid-column:span 1;grid-row:span 1}}


/* Kensi Hope design-led profile update */
.kensi-overlay-hero {
    position: relative !important;
    min-height: 760px !important;
    display: flex !important;
    align-items: center !important;
    background-size: cover !important;
    background-position: center !important;
    color: #FFFFFF;
}

.kensi-overlay-hero .retailer-showcase-hero__image {
    display: none !important;
}

.kensi-overlay-hero .retailer-showcase-hero__content {
    max-width: 1240px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 120px 40px !important;
}

.kensi-overlay-hero h1 {
    max-width: 980px !important;
    color: #FFFFFF !important;
    font-size: clamp(58px, 8vw, 118px) !important;
    line-height: .88 !important;
}

.kensi-overlay-hero p {
    max-width: 720px !important;
}

.kensi-overlay-hero .retailer-hero-meta {
    max-width: 780px;
}

/* More design-led intro */
.kensi-hope-page .retailer-intro-section {
    margin-top: -70px;
    position: relative;
    z-index: 2;
}

/* Masonry-style showroom gallery */
.kensi-masonry-gallery {
    display: grid !important;
    grid-template-columns: repeat(12, 1fr) !important;
    grid-auto-rows: 110px !important;
    gap: 22px !important;
}

.kensi-masonry-card {
    display: block !important;
    position: relative;
    overflow: hidden !important;
    background: #3F3F3F;
    box-shadow: 0 18px 42px rgba(0,0,0,.12);
    min-height: 280px;
}

.kensi-masonry-card img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform .55s ease, filter .55s ease;
}

.kensi-masonry-card:hover img {
    transform: scale(1.045);
    filter: brightness(.92);
}

.kensi-masonry-card:nth-child(1) {
    grid-column: span 7;
    grid-row: span 5;
}

.kensi-masonry-card:nth-child(2) {
    grid-column: span 5;
    grid-row: span 3;
}

.kensi-masonry-card:nth-child(3) {
    grid-column: span 5;
    grid-row: span 3;
}

.kensi-masonry-card:nth-child(4) {
    grid-column: span 6;
    grid-row: span 4;
}

.kensi-masonry-card:nth-child(5) {
    grid-column: span 3;
    grid-row: span 4;
}

.kensi-masonry-card:nth-child(6) {
    grid-column: span 3;
    grid-row: span 4;
}

.kensi-masonry-card:nth-child(7) {
    grid-column: span 8;
    grid-row: span 4;
}

.kensi-masonry-card:nth-child(8) {
    grid-column: span 4;
    grid-row: span 4;
}

/* Editorial display section */
.kensi-hope-page .retailer-displays-section {
    max-width: 1320px !important;
}

.kensi-hope-page .retailer-display-image {
    min-height: 660px;
}

.kensi-hope-page .retailer-display-copy {
    padding: 80px;
}

@media (max-width: 1000px) {
    .kensi-overlay-hero {
        min-height: 620px !important;
    }

    .kensi-overlay-hero .retailer-showcase-hero__content {
        padding: 90px 28px !important;
    }

    .kensi-hope-page .retailer-intro-section {
        margin-top: 0;
    }

    .kensi-masonry-gallery {
        grid-template-columns: repeat(2, 1fr) !important;
        grid-auto-rows: auto !important;
    }

    .kensi-masonry-card,
    .kensi-masonry-card:nth-child(n) {
        grid-column: auto !important;
        grid-row: auto !important;
        height: 360px !important;
        min-height: 360px;
    }

    .kensi-hope-page .retailer-display-copy {
        padding: 42px;
    }
}

@media (max-width: 600px) {
    .kensi-overlay-hero {
        min-height: 540px !important;
    }

    .kensi-overlay-hero h1 {
        font-size: clamp(44px, 13vw, 68px) !important;
    }

    .kensi-masonry-gallery {
        grid-template-columns: 1fr !important;
    }

    .kensi-masonry-card,
    .kensi-masonry-card:nth-child(n) {
        height: 320px !important;
        min-height: 320px;
    }
}


/* Kensi Hope boxed intro/details section */
.kensi-intro-boxed {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr) !important;
    gap: 36px !important;
    align-items: stretch !important;
}

.kensi-about-card,
.kensi-details-card {
    background: #FFFFFF !important;
    box-shadow: 0 16px 38px rgba(0,0,0,.08) !important;
    padding: 48px !important;
}

.kensi-about-card h2 {
    max-width: 100% !important;
}

.kensi-details-card {
    background: #3F3F3F !important;
    color: #FFFFFF !important;
}

.kensi-details-card h3 {
    color: #FFFFFF !important;
    margin-bottom: 26px !important;
}

.kensi-details-card .eyebrow {
    color: #CCA277 !important;
}

.kensi-detail-grid {
    display: grid;
    gap: 22px;
    margin-bottom: 30px;
}

.kensi-detail-grid div {
    border-top: 1px solid rgba(255,255,255,.16);
    padding-top: 18px;
}

.kensi-detail-grid span {
    display: block;
    color: #CCA277;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-size: 13px;
    margin-bottom: 8px;
}

.kensi-detail-grid p {
    margin: 0;
    color: rgba(255,255,255,.9);
}

@media (max-width: 900px) {
    .kensi-intro-boxed {
        grid-template-columns: 1fr !important;
    }

    .kensi-about-card,
    .kensi-details-card {
        padding: 32px !important;
    }
}

/* Studio Vivre image lightbox overlay */
.sv-lightbox-trigger {
    cursor: zoom-in;
}

.sv-lightbox-open {
    overflow: hidden;
}

.sv-lightbox {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 54px;
    background: rgba(0,0,0,.88);
}

.sv-lightbox.is-visible {
    display: flex;
}

.sv-lightbox__image {
    max-width: min(1180px, 90vw);
    max-height: 86vh;
    width: auto;
    height: auto;
    object-fit: contain;
    box-shadow: 0 24px 70px rgba(0,0,0,.45);
}

.sv-lightbox__close,
.sv-lightbox__nav {
    position: absolute;
    border: 0;
    background: rgba(63,63,63,.86);
    color: #FFFFFF;
    cursor: pointer;
    transition: background .2s ease, color .2s ease;
}

.sv-lightbox__close:hover,
.sv-lightbox__nav:hover {
    background: #CCA277;
    color: #3F3F3F;
}

.sv-lightbox__close {
    top: 24px;
    right: 28px;
    width: 46px;
    height: 46px;
    font-size: 34px;
    line-height: 1;
}

.sv-lightbox__nav {
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 64px;
    font-size: 32px;
}

.sv-lightbox__prev {
    left: 26px;
}

.sv-lightbox__next {
    right: 26px;
}

@media (max-width: 700px) {
    .sv-lightbox {
        padding: 28px 16px;
    }

    .sv-lightbox__nav {
        width: 42px;
        height: 54px;
        font-size: 26px;
    }

    .sv-lightbox__prev {
        left: 8px;
    }

    .sv-lightbox__next {
        right: 8px;
    }

    .sv-lightbox__close {
        top: 10px;
        right: 10px;
    }
}

/* Studio Vivre image lightbox overlay - global */
.sv-lightbox-trigger {
    cursor: zoom-in;
}

.sv-lightbox-open {
    overflow: hidden;
}

.sv-lightbox {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 54px;
    background: rgba(0,0,0,.88);
}

.sv-lightbox.is-visible {
    display: flex;
}

.sv-lightbox__image {
    max-width: min(1180px, 90vw);
    max-height: 86vh;
    width: auto;
    height: auto;
    object-fit: contain;
    box-shadow: 0 24px 70px rgba(0,0,0,.45);
}

.sv-lightbox__close,
.sv-lightbox__nav {
    position: absolute;
    border: 0;
    background: rgba(63,63,63,.86);
    color: #FFFFFF;
    cursor: pointer;
    transition: background .2s ease, color .2s ease;
}

.sv-lightbox__close:hover,
.sv-lightbox__nav:hover {
    background: #CCA277;
    color: #3F3F3F;
}

.sv-lightbox__close {
    top: 24px;
    right: 28px;
    width: 46px;
    height: 46px;
    font-size: 34px;
    line-height: 1;
}

.sv-lightbox__nav {
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 64px;
    font-size: 32px;
}

.sv-lightbox__prev {
    left: 26px;
}

.sv-lightbox__next {
    right: 26px;
}

@media (max-width: 700px) {
    .sv-lightbox {
        padding: 28px 16px;
    }

    .sv-lightbox__nav {
        width: 42px;
        height: 54px;
        font-size: 26px;
    }

    .sv-lightbox__prev {
        left: 8px;
    }

    .sv-lightbox__next {
        right: 8px;
    }

    .sv-lightbox__close {
        top: 10px;
        right: 10px;
    }
}


/* Kensi Hope hero showroom image update */
.kensi-overlay-hero {
    min-height: 800px !important;
    display: flex !important;
    align-items: center !important;
    background-size: cover !important;
    background-position: center center !important;
    position: relative !important;
    color: #FFFFFF !important;
}

.kensi-overlay-hero .retailer-showcase-hero__image {
    display: none !important;
}

.kensi-overlay-hero .retailer-showcase-hero__content {
    max-width: 1240px !important;
    margin: 0 auto !important;
    width: 100% !important;
    padding: 140px 40px !important;
    position: relative !important;
    z-index: 2 !important;
}

.kensi-overlay-hero h1 {
    color: #FFFFFF !important;
    max-width: 980px !important;
    font-size: clamp(58px, 8vw, 118px) !important;
    line-height: .88 !important;
}

.kensi-overlay-hero p {
    color: #FFFFFF !important;
    max-width: 760px !important;
}

.kensi-overlay-hero .eyebrow {
    color: #CCA277 !important;
}

.kensi-hero-stats {
    max-width: var(--site-container, 1240px);
    margin: -54px auto 70px;
    position: relative;
    z-index: 4;
    background: #FFFFFF;
    box-shadow: 0 16px 38px rgba(0,0,0,.12);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.kensi-hero-stats div {
    padding: 26px 30px;
    border-right: 1px solid rgba(63,63,63,.12);
}

.kensi-hero-stats div:last-child {
    border-right: 0;
}

.kensi-hero-stats span {
    display: block;
    color: #936C43;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.kensi-hero-stats strong {
    display: block;
    color: #3F3F3F;
    font-size: 18px;
}

@media (max-width: 900px) {
    .kensi-overlay-hero {
        min-height: 620px !important;
    }

    .kensi-overlay-hero .retailer-showcase-hero__content {
        padding: 90px 28px !important;
    }

    .kensi-hero-stats {
        margin: 0 auto 50px;
        grid-template-columns: repeat(2, 1fr);
    }

    .kensi-hero-stats div {
        border-bottom: 1px solid rgba(63,63,63,.12);
    }
}

@media (max-width: 560px) {
    .kensi-overlay-hero {
        min-height: 540px !important;
    }

    .kensi-overlay-hero h1 {
        font-size: clamp(44px, 13vw, 68px) !important;
    }

    .kensi-hero-stats {
        grid-template-columns: 1fr;
    }

    .kensi-hero-stats div {
        border-right: 0;
    }
}

/* Become a Retailer page */
.become-retailer-form-section,.retailer-opportunity-section{max-width:var(--site-container,1240px)!important}
.become-retailer-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:start}
.become-retailer-copy,.become-retailer-form{background:#fff;padding:42px;box-shadow:0 16px 38px rgba(0,0,0,.08)}
.become-retailer-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.become-retailer-form .form-row{display:flex;flex-direction:column;gap:8px}
.become-retailer-form .form-row-full{grid-column:1/-1}
.become-retailer-form label{font-weight:700;color:#3F3F3F}
.become-retailer-form label span{color:#936C43}
.become-retailer-form input,.become-retailer-form select,.become-retailer-form textarea{width:100%;border:1px solid rgba(63,63,63,.22);background:#F7F3EF;padding:14px 16px;font:inherit}
.become-retailer-form textarea{resize:vertical}
.become-retailer-form .form-consent label{display:flex!important;align-items:flex-start;gap:12px;font-weight:400;line-height:1.5}
.become-retailer-form .form-consent input[type="checkbox"]{width:18px!important;height:18px!important;min-width:18px;flex:0 0 18px;margin-top:4px}
.become-retailer-form .form-consent a{color:#936C43;font-weight:700;text-decoration:underline}
.become-retailer-form .honeypot{position:absolute;left:-9999px;height:0;overflow:hidden}
@media(max-width:900px){.become-retailer-layout,.become-retailer-form{grid-template-columns:1fr}.become-retailer-copy,.become-retailer-form{padding:30px}}

/* Business listing application */
.list-business-panel{margin:38px 0 72px;padding:38px 42px;background:#F1E8DF;border-left:5px solid #936C43;display:flex;align-items:center;justify-content:space-between;gap:32px}
.list-business-panel h2{margin:4px 0 10px}.list-business-panel p:last-child{max-width:760px;margin-bottom:0}
.list-business-panel .button{flex:0 0 auto}
.list-business-hero{background:linear-gradient(110deg,rgba(36,34,33,.88),rgba(36,34,33,.48)),url('../images/kitchen-bg.webp') center/cover}
.checkbox-fieldset{border:1px solid rgba(63,63,63,.18);padding:20px;margin:0}
.checkbox-fieldset legend{padding:0 8px;font-weight:700;color:#3F3F3F}
.checkbox-fieldset legend span{color:#936C43}
.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}
.checkbox-fieldset label{display:flex!important;align-items:flex-start;gap:10px;font-weight:400!important;line-height:1.45}
.checkbox-fieldset input[type="checkbox"]{width:18px!important;height:18px!important;min-width:18px;padding:0;margin-top:2px}
.eligibility-confirmation{display:grid!important;gap:14px!important}
.form-help{font-size:.95rem;color:#666;margin:0}
@media(max-width:700px){.list-business-panel{align-items:flex-start;flex-direction:column;padding:30px 26px}.checkbox-grid{grid-template-columns:1fr}}

/* Cloudflare Turnstile form protection */
.turnstile-field{grid-column:1/-1;width:100%;margin:4px 0 8px}
.turnstile-widget{max-width:100%}
.turnstile-status{margin:8px 0 0;font-size:.88rem;line-height:1.4;color:#666}
form button[type="submit"]:disabled,form input[type="submit"]:disabled{opacity:.58;cursor:not-allowed;transform:none!important}


/* Generic retailer profile template styles */
.retailer-overlay-hero {
    min-height: 800px !important;
    display: flex !important;
    align-items: center !important;
    background-size: cover !important;
    background-position: center center !important;
    position: relative !important;
    color: #FFFFFF !important;
}

.retailer-overlay-hero .retailer-showcase-hero__image {
    display: none !important;
}

.retailer-overlay-hero .retailer-showcase-hero__content {
    max-width: 1240px !important;
    margin: 0 auto !important;
    width: 100% !important;
    padding: 140px 40px !important;
    position: relative !important;
    z-index: 2 !important;
}

.retailer-overlay-hero h1 {
    color: #FFFFFF !important;
    max-width: 980px !important;
    font-size: clamp(58px, 8vw, 118px) !important;
    line-height: .88 !important;
}

.retailer-overlay-hero p {
    color: #FFFFFF !important;
    max-width: 760px !important;
}

.retailer-overlay-hero .eyebrow {
    color: #CCA277 !important;
}

.retailer-hero-stats {
    max-width: var(--site-container, 1240px);
    margin: -54px auto 70px;
    position: relative;
    z-index: 4;
    background: #FFFFFF;
    box-shadow: 0 16px 38px rgba(0,0,0,.12);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.retailer-hero-stats div {
    padding: 26px 30px;
    border-right: 1px solid rgba(63,63,63,.12);
}

.retailer-hero-stats div:last-child {
    border-right: 0;
}

.retailer-hero-stats span {
    display: block;
    color: #936C43;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.retailer-hero-stats strong {
    display: block;
    color: #3F3F3F;
    font-size: 18px;
}

.retailer-intro-boxed {
    display: grid !important;
    grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr) !important;
    gap: 36px !important;
    align-items: stretch !important;
}

.retailer-about-card,
.retailer-details-card {
    background: #FFFFFF !important;
    box-shadow: 0 16px 38px rgba(0,0,0,.08) !important;
    padding: 48px !important;
}

.retailer-details-card {
    background: #3F3F3F !important;
    color: #FFFFFF !important;
}

.retailer-details-card h3 {
    color: #FFFFFF !important;
    margin-bottom: 26px !important;
}

.retailer-details-card .eyebrow {
    color: #CCA277 !important;
}

.retailer-detail-grid {
    display: grid;
    gap: 22px;
    margin-bottom: 30px;
}

.retailer-detail-grid div {
    border-top: 1px solid rgba(255,255,255,.16);
    padding-top: 18px;
}

.retailer-detail-grid span {
    display: block;
    color: #CCA277;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-size: 13px;
    margin-bottom: 8px;
}

.retailer-detail-grid p {
    margin: 0;
    color: rgba(255,255,255,.9);
}

.retailer-masonry-gallery {
    display: grid !important;
    grid-template-columns: repeat(12, 1fr) !important;
    grid-auto-rows: 110px !important;
    gap: 22px !important;
}

.retailer-masonry-card {
    display: block !important;
    position: relative;
    overflow: hidden !important;
    background: #3F3F3F;
    box-shadow: 0 18px 42px rgba(0,0,0,.12);
    min-height: 280px;
}

.retailer-masonry-card img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform .55s ease, filter .55s ease;
}

.retailer-masonry-card:hover img {
    transform: scale(1.045);
    filter: brightness(.92);
}

.retailer-masonry-card:nth-child(1) { grid-column: span 7; grid-row: span 5; }
.retailer-masonry-card:nth-child(2) { grid-column: span 5; grid-row: span 3; }
.retailer-masonry-card:nth-child(3) { grid-column: span 5; grid-row: span 3; }
.retailer-masonry-card:nth-child(4) { grid-column: span 6; grid-row: span 4; }
.retailer-masonry-card:nth-child(5) { grid-column: span 3; grid-row: span 4; }
.retailer-masonry-card:nth-child(6) { grid-column: span 3; grid-row: span 4; }
.retailer-masonry-card:nth-child(7) { grid-column: span 8; grid-row: span 4; }
.retailer-masonry-card:nth-child(8) { grid-column: span 4; grid-row: span 4; }

.retailer-gallery-grid {
    grid-auto-rows: 330px;
}

.retailer-gallery-grid .retailer-showcase-card img {
    object-fit: cover;
}

.retailer-gallery-grid .retailer-showcase-card.large {
    grid-column: span 2;
    grid-row: span 2;
}

.retailer-gallery-grid .retailer-showcase-card.wide {
    grid-column: span 2;
}

@media (max-width: 1000px) {
    .retailer-overlay-hero { min-height: 620px !important; }
    .retailer-overlay-hero .retailer-showcase-hero__content { padding: 90px 28px !important; }
    .retailer-hero-stats { margin: 0 auto 50px; grid-template-columns: repeat(2, 1fr); }
    .retailer-hero-stats div { border-bottom: 1px solid rgba(63,63,63,.12); }
    .retailer-intro-boxed { grid-template-columns: 1fr !important; }
    .retailer-about-card, .retailer-details-card { padding: 32px !important; }
    .retailer-masonry-gallery { grid-template-columns: repeat(2, 1fr) !important; grid-auto-rows: auto !important; }
    .retailer-masonry-card, .retailer-masonry-card:nth-child(n) {
        grid-column: auto !important;
        grid-row: auto !important;
        height: 360px !important;
        min-height: 360px;
    }
    .retailer-gallery-grid .retailer-showcase-card.large,
    .retailer-gallery-grid .retailer-showcase-card.wide {
        grid-column: span 1;
        grid-row: span 1;
    }
}

@media (max-width: 560px) {
    .retailer-overlay-hero { min-height: 540px !important; }
    .retailer-overlay-hero h1 { font-size: clamp(44px, 13vw, 68px) !important; }
    .retailer-hero-stats { grid-template-columns: 1fr; }
    .retailer-hero-stats div { border-right: 0; }
    .retailer-masonry-gallery { grid-template-columns: 1fr !important; }
    .retailer-masonry-card, .retailer-masonry-card:nth-child(n) {
        height: 320px !important;
        min-height: 320px;
    }
}


/* Retailer profile restored floating stats boxes */
body.retailer-profile-page .section::before,
body.retailer-profile-page .section::after,
body.retailer-showcase-page .section::before,
body.retailer-showcase-page .section::after,
body.retailer-profile-page main > section::before,
body.retailer-profile-page main > section::after,
body.retailer-showcase-page main > section::before,
body.retailer-showcase-page main > section::after {
    content: none !important;
    display: none !important;
}

body.retailer-profile-page .section,
body.retailer-showcase-page .section,
body.retailer-profile-page main > section,
body.retailer-showcase-page main > section {
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 !important;
}

.retailer-hero-stats {
    max-width: 1240px !important;
    width: calc(100% - 80px) !important;
    margin: -54px auto 70px auto !important;
    position: relative !important;
    z-index: 30 !important;
    background: #FFFFFF !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 16px 38px rgba(0,0,0,.12) !important;
    transform: none !important;
    left: auto !important;
    right: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
}

.retailer-hero-stats > div {
    background: #FFFFFF !important;
    padding: 26px 30px !important;
    border-right: 1px solid rgba(63,63,63,.12) !important;
    min-width: 0 !important;
}

.retailer-hero-stats > div:last-child {
    border-right: 0 !important;
}

.retailer-hero-stats span {
    display: block !important;
    color: #936C43 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
    margin-bottom: 8px !important;
    line-height: 1.2 !important;
}

.retailer-hero-stats strong {
    display: block !important;
    color: #3F3F3F !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
}

@media (max-width: 900px) {
    .retailer-hero-stats {
        width: 100% !important;
        margin: 0 auto 50px auto !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .retailer-hero-stats > div {
        border-bottom: 1px solid rgba(63,63,63,.12) !important;
    }
}

@media (max-width: 560px) {
    .retailer-hero-stats {
        grid-template-columns: 1fr !important;
    }

    .retailer-hero-stats > div {
        border-right: 0 !important;
    }
}


/* Header polish: simplified nav, active states, brochure CTA and mobile menu */
.site-header,
header {
    min-height: 72px;
}

.site-header .container,
.site-header__inner,
.header-inner,
header .container,
header .header-inner {
    min-height: 72px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.site-nav,
.main-nav,
nav.site-nav,
nav.main-nav,
header nav {
    display: flex;
    align-items: center;
    gap: 30px;
}

.site-nav a,
.main-nav a,
header nav a {
    position: relative;
    font-size: 15px;
    letter-spacing: .06em;
    text-transform: uppercase;
    font-weight: 700;
    color: #FFFFFF;
    text-decoration: none;
    white-space: nowrap;
}

.site-nav a::after,
.main-nav a::after,
header nav a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -9px;
    width: 0;
    height: 2px;
    background: #CCA277;
    transition: width .25s ease;
}

.site-nav a:hover::after,
.main-nav a:hover::after,
header nav a:hover::after,
.site-nav a.is-active::after,
.main-nav a.is-active::after,
header nav a.is-active::after {
    width: 100%;
}

.site-nav a.is-active,
.main-nav a.is-active,
header nav a.is-active {
    color: #CCA277 !important;
}

.header-brochure-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 28px;
    background: #936C43;
    color: #FFFFFF !important;
    border-radius: 999px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 8px 18px rgba(0,0,0,.16);
    transition: background .2s ease, transform .2s ease;
}

.header-brochure-cta:hover {
    background: #CCA277;
    color: #3F3F3F !important;
    transform: translateY(-1px);
}

/* Make the desktop header slightly cleaner */
@media (min-width: 1001px) {
    .logo img,
    .site-logo img,
    header img.logo {
        max-height: 46px;
    }

    header {
        z-index: 1000;
    }
}

/* Mobile hamburger/menu cleanup */
.menu-toggle,
.nav-toggle,
.mobile-menu-toggle {
    display: none;
    border: 0;
    background: transparent;
    color: #FFFFFF;
    font-size: 30px;
    line-height: 1;
    cursor: pointer;
}

@media (max-width: 1000px) {
    .menu-toggle,
    .nav-toggle,
    .mobile-menu-toggle {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
    }

    header nav,
    .site-nav,
    .main-nav {
        position: fixed;
        top: 72px;
        left: 0;
        right: 0;
        z-index: 999;
        display: none !important;
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
        background: #3F3F3F;
        padding: 22px 28px;
        box-shadow: 0 18px 38px rgba(0,0,0,.22);
    }

    body.nav-open header nav,
    body.nav-open .site-nav,
    body.nav-open .main-nav,
    header nav.is-open,
    .site-nav.is-open,
    .main-nav.is-open {
        display: flex !important;
    }

    header nav a,
    .site-nav a,
    .main-nav a {
        display: block;
        width: 100%;
        padding: 14px 0;
        border-bottom: 1px solid rgba(255,255,255,.12);
    }

    header nav a::after,
    .site-nav a::after,
    .main-nav a::after {
        display: none;
    }

    .header-brochure-cta {
        min-height: 44px;
        padding: 0 20px;
        font-size: 14px;
    }
}

@media (max-width: 560px) {
    .header-brochure-cta {
        display: none;
    }
}
