:root {
    --vip-accent: #c2410c;
    --vip-secondary: #2563eb;
    --vip-light: #fff7ed;
    --vip-dark: #2f1d12;
}

body {
    background: var(--vip-light);
    color: #424b5a;
}

body p,
.basic-1 p,
.cards-1 p,
.cards-2 p,
.counter p,
.form-2 p {
    color: #4b5563;
}

a:focus-visible,
button:focus-visible,
input:focus-visible {
    outline: 3px solid #fbbf24;
    outline-offset: 3px;
}

.navbar-custom {
    background-color: color-mix(in srgb, var(--vip-dark) 88%, #000000 12%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.navbar-custom .logo-text {
    color: #fff;
    font: 700 1.25rem/1.5rem Montserrat, sans-serif;
    text-decoration: none;
}

.vip-landing-hero {
    background: linear-gradient(90deg, rgba(8, 14, 18, 0.86), rgba(8, 14, 18, 0.38)), url("../images/vip-hero.jpg") center center no-repeat;
    background-size: cover;
}

.vip-kicker {
    margin-bottom: 0.75rem;
    color: #ffffff;
    font: 700 0.85rem/1rem Montserrat, sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
}

.vip-landing-hero h1 {
    color: #ffffff;
    max-width: 900px;
    margin-right: auto;
    margin-left: auto;
    text-shadow: 0 18px 38px rgba(0, 0, 0, 0.24);
}

.vip-landing-hero .p-heading {
    max-width: 760px;
}

.btn-solid-lg,
.btn-solid-reg {
    color: #ffffff;
    border-color: var(--vip-dark);
    background-color: var(--vip-dark);
}

.btn-solid-lg:hover,
.btn-solid-reg:hover {
    color: var(--vip-accent);
    border-color: var(--vip-accent);
}

.section-title {
    color: #334155;
}

.vip-contact .section-title,
.vip-surface-contrast .vip-flow-services .section-title,
.vip-layout-leadership-notes .vip-principles .card .card-title,
.vip-layout-leadership-notes .vip-principles .card p {
    color: #ffffff;
}

.media-body {
    color: #475569;
}

.hexagon {
    background: none;
    background-color: var(--vip-accent);
    clip-path: polygon(25% 4%, 75% 4%, 100% 50%, 75% 96%, 25% 96%, 0 50%);
}

.cards-1 .fa-stack .fa-stack-1x {
    color: #ffffff;
}

.vip-section {
    background-color: #ffffff;
}

.vip-principles {
    background-color: var(--vip-light);
}

.vip-image,
.cards-2 .card-image img {
    border-radius: 6px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.16);
}

.cards-1 .card,
.cards-2 .card {
    border-top: 4px solid var(--vip-accent);
}

.cards-2 .card:nth-child(2) {
    border-top-color: var(--vip-secondary);
}

.cards-2 .card:nth-child(3) {
    border-top-color: var(--vip-dark);
}

.vip-contact {
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--vip-dark) 90%, #000000 10%), color-mix(in srgb, var(--vip-accent) 42%, var(--vip-dark) 58%));
}

.vip-contact-panel {
    padding: 2.25rem;
    background: #ffffff;
    border-radius: 6px;
}

.vip-contact-panel h3 {
    margin-bottom: 1rem;
}

.vip-layout-market-brief .vip-principles,
.vip-layout-specification-brief .vip-principles {
    border-top: 1px solid color-mix(in srgb, var(--vip-accent) 24%, #ffffff 76%);
    border-bottom: 1px solid color-mix(in srgb, var(--vip-accent) 24%, #ffffff 76%);
}

.vip-layout-studio-notebook .vip-section {
    background: linear-gradient(180deg, #ffffff 0%, color-mix(in srgb, var(--vip-light) 62%, #ffffff 38%) 100%);
}

.vip-layout-roadmap-resource .cards-2 .card,
.vip-layout-planning-journal .cards-2 .card {
    border-radius: 3px;
}

.vip-layout-systems-overview .cards-1 .card,
.vip-layout-operations-hub .cards-1 .card {
    border-left: 1px solid color-mix(in srgb, var(--vip-secondary) 35%, #ffffff 65%);
}

.footer {
    background-color: var(--vip-dark);
}

.vip-footer-heading {
    margin-bottom: .75rem;
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.4;
}

.vip-resource-link {
    color: #075aa8;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.vip-preferences-form,
.vip-newsletter-form {
    max-width: 680px;
    margin: 1.75rem auto 0;
    padding: 1.25rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.06);
}

.vip-preferences-form label,
.vip-newsletter-form label {
    display: block;
    margin-bottom: 0.6rem;
    color: #ffffff;
    font: 700 0.85rem/1.2rem Montserrat, sans-serif;
    text-transform: uppercase;
}

.vip-preferences-row {
    display: flex;
    gap: 0.75rem;
}

.vip-preferences-row input {
    min-width: 0;
    flex: 1 1 auto;
    height: 44px;
    padding: 0 0.95rem;
    border: 1px solid rgba(255, 255, 255, 0.26);
    border-radius: 4px;
    color: #0f172a;
    background: #ffffff;
}

.vip-preferences-row button,
.vip-preferences-card button {
    height: 44px;
    padding: 0 1.1rem;
    border: 1px solid var(--vip-dark);
    border-radius: 4px;
    color: #ffffff;
    background: var(--vip-dark);
    font: 700 0.78rem/1rem Montserrat, sans-serif;
    text-transform: uppercase;
    cursor: pointer;
}

.vip-newsletter-form {
    margin-top: 2rem;
    border-color: color-mix(in srgb, var(--vip-secondary) 45%, rgba(255,255,255,.16) 55%);
}

.vip-newsletter-section {
    width: 100%;
}

.vip-newsletter-sentence {
    margin-bottom: 1rem;
}

.vip-preferences-page {
    min-height: 100vh;
    background: linear-gradient(180deg, #ffffff 0%, var(--vip-light) 100%);
}

.vip-preferences-card {
    display: grid;
    gap: 0.75rem;
    margin: 1.5rem 0;
    padding: 1.5rem;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 6px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12);
}

.vip-preferences-card label {
    margin-bottom: 0;
    color: var(--vip-dark);
    font: 700 0.86rem/1.2rem Montserrat, sans-serif;
}

.vip-preferences-card input {
    height: 44px;
    padding: 0 0.95rem;
    border: 1px solid rgba(15, 23, 42, 0.18);
    border-radius: 4px;
}

.vip-pref-alert {
    margin: 1.25rem 0 0;
    padding: 0.9rem 1rem;
    border-radius: 4px;
    font-weight: 600;
}

.vip-pref-alert-ok {
    color: #14532d;
    background: #dcfce7;
}

.vip-pref-alert-error {
    color: #7f1d1d;
    background: #fee2e2;
}

.vip-pref-note {
    color: #475569;
}

.vip-cookie-consent {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    z-index: 9999;
    display: flex;
    align-items: center;
    gap: 1rem;
    width: min(680px, calc(100% - 2rem));
    padding: 1rem;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 6px;
    color: #0f172a;
    background: #ffffff;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.22);
}

.vip-cookie-consent-hidden {
    display: none !important;
}

.vip-cookie-consent-copy {
    display: grid;
    gap: 0.35rem;
    min-width: 0;
    flex: 1 1 auto;
}

.vip-cookie-consent-copy strong {
    font: 700 0.92rem/1.2rem Montserrat, sans-serif;
}

.vip-cookie-consent-copy span {
    font: 400 0.88rem/1.45rem "Open Sans", sans-serif;
}

.vip-cookie-consent-actions {
    display: flex;
    gap: 0.5rem;
    flex: 0 0 auto;
}

.vip-cookie-button {
    min-height: 38px;
    padding: 0 0.9rem;
    border: 1px solid var(--vip-dark);
    border-radius: 4px;
    color: #ffffff;
    background: var(--vip-dark);
    font: 700 0.78rem/1rem Montserrat, sans-serif;
    cursor: pointer;
}

.vip-cookie-button-light {
    color: var(--vip-dark);
    background: #ffffff;
}

@media (max-width: 575px) {
    .vip-preferences-row {
        flex-direction: column;
    }

    .vip-preferences-row button {
        width: 100%;
    }

    .vip-cookie-consent {
        left: 1rem;
        right: 1rem;
        bottom: 1rem;
        flex-direction: column;
        align-items: stretch;
    }

    .vip-cookie-consent-actions {
        justify-content: flex-end;
    }
}

.copyright {
    background-color: #0b1220;
}


/* VIP_DISTINCTIVE_LANDING_V2
   Presentation-only design layer. Subscription selectors and request contracts
   remain in the generated PHP markup. */
html { scroll-behavior: smooth; }
body { overflow-x: hidden; color: #29323a; }
.vip-story-flow { display: flex; flex-direction: column; }
.vip-story-flow > * { position: relative; width: 100%; }
.vip-platform-ribbon { display: grid; grid-template-columns: repeat(3,1fr); border-bottom: 1px solid rgba(20,30,35,.16); background: #fff; }
.vip-platform-ribbon span { display: flex; min-height: 64px; align-items: center; justify-content: center; gap: .8rem; padding: 1rem 1.4rem; border-right: 1px solid rgba(20,30,35,.16); color: var(--vip-dark); font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-align: center; }
.vip-platform-ribbon span:last-child { border-right: 0; }
.vip-platform-ribbon b { color: var(--vip-accent); font-size: .62rem; }
.vip-landing-hero .header-content { padding: 9.5rem 0 6.5rem; }
.vip-hero-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(250px, .65fr); gap: clamp(2rem, 6vw, 6rem); align-items: end; }
.vip-hero-copy { max-width: 850px; text-align: left; }
.vip-hero-copy h1 { max-width: 18ch; margin: 0 0 1.35rem; font-size: clamp(2.8rem, 6.4vw, 6.6rem); line-height: .98; letter-spacing: -.055em; }
.vip-hero-copy .p-heading { max-width: 710px; margin: 0 0 2rem; font-size: clamp(1.05rem, 1.5vw, 1.28rem); line-height: 1.65; }
.vip-kicker { display: inline-flex; align-items: center; gap: .65rem; margin-bottom: 1.35rem; font-size: .78rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.vip-kicker:before { width: 34px; height: 2px; content: ""; background: var(--vip-secondary); }
.vip-hero-aside { align-self: stretch; display: flex; flex-direction: column; justify-content: flex-end; padding: 1.75rem; border: 1px solid rgba(255,255,255,.32); color: #fff; background: rgba(8,14,18,.44); backdrop-filter: blur(10px); }
.vip-aside-label { display: block; margin-bottom: 1rem; font-size: .68rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.vip-hero-aside ol { padding: 0; margin: 0; list-style: none; }
.vip-hero-aside li { display: grid; grid-template-columns: 32px 1fr; gap: .7rem; align-items: baseline; padding: .8rem 0; border-top: 1px solid rgba(255,255,255,.22); font-weight: 600; }
.vip-hero-aside li span { color: var(--vip-secondary); font-size: .68rem; letter-spacing: .1em; }
.vip-section { padding-top: clamp(5rem, 8vw, 8rem); padding-bottom: clamp(5rem, 8vw, 8rem); }
.vip-section h2, .vip-contact h2 { max-width: 18ch; font-size: clamp(2rem, 4vw, 4.2rem); line-height: 1.06; letter-spacing: -.035em; }
.vip-section .section-title, .vip-contact .section-title { margin-bottom: 1rem; font-size: .7rem; font-weight: 700; letter-spacing: .16em; }
.vip-image { width: 100%; min-height: 360px; object-fit: cover; }
.vip-principles { padding: 2.5rem 0; }
.vip-principles .card { min-height: 220px; }
.cards-2 .card { overflow: hidden; }
.vip-contact-panel { height: 100%; }
.footer { padding-top: 5rem; }

.vip-type-modern-sans, .vip-type-modern-sans p { font-family: "DM Sans", Arial, sans-serif; }
.vip-type-modern-sans h1, .vip-type-modern-sans h2, .vip-type-modern-sans h3, .vip-type-modern-sans h4 { font-family: "DM Sans", Arial, sans-serif; }
.vip-type-editorial-serif, .vip-type-editorial-serif p { font-family: "Libre Franklin", Arial, sans-serif; }
.vip-type-editorial-serif h1, .vip-type-editorial-serif h2, .vip-type-editorial-serif h3, .vip-type-editorial-serif h4 { font-family: "Newsreader", Georgia, serif; }
.vip-type-humanist, .vip-type-humanist p { font-family: "Libre Franklin", Arial, sans-serif; }
.vip-type-humanist h1, .vip-type-humanist h2, .vip-type-humanist h3 { font-family: "Source Serif 4", Georgia, serif; }
.vip-type-condensed, .vip-type-condensed p { font-family: "DM Sans", Arial, sans-serif; }
.vip-type-condensed h1, .vip-type-condensed h2, .vip-type-condensed h3, .vip-type-condensed .section-title { font-family: "Barlow Condensed", Arial, sans-serif; text-transform: uppercase; }
.vip-type-soft-serif, .vip-type-soft-serif p { font-family: "DM Sans", Arial, sans-serif; }
.vip-type-soft-serif h1, .vip-type-soft-serif h2, .vip-type-soft-serif h3 { font-family: "Newsreader", Georgia, serif; }

.vip-order-overview-first .vip-flow-intro { order: 1; }
.vip-order-overview-first .vip-flow-principles { order: 2; }
.vip-order-overview-first .vip-flow-services { order: 3; }
.vip-order-overview-first .vip-flow-about { order: 4; }
.vip-order-overview-first .vip-flow-contact { order: 5; }
.vip-order-topics-first .vip-flow-services { order: 1; }
.vip-order-topics-first .vip-flow-intro { order: 2; }
.vip-order-topics-first .vip-flow-principles { order: 3; }
.vip-order-topics-first .vip-flow-about { order: 4; }
.vip-order-topics-first .vip-flow-contact { order: 5; }
.vip-order-story-first .vip-flow-about { order: 1; }
.vip-order-story-first .vip-flow-intro { order: 2; }
.vip-order-story-first .vip-flow-services { order: 3; }
.vip-order-story-first .vip-flow-principles { order: 4; }
.vip-order-story-first .vip-flow-contact { order: 5; }
.vip-order-proof-first .vip-flow-principles { order: 1; }
.vip-order-proof-first .vip-flow-services { order: 2; }
.vip-order-proof-first .vip-flow-intro { order: 3; }
.vip-order-proof-first .vip-flow-about { order: 4; }
.vip-order-proof-first .vip-flow-contact { order: 5; }
.vip-order-contact-early .vip-flow-intro { order: 1; }
.vip-order-contact-early .vip-flow-contact { order: 2; }
.vip-order-contact-early .vip-flow-services { order: 3; }
.vip-order-contact-early .vip-flow-principles { order: 4; }
.vip-order-contact-early .vip-flow-about { order: 5; }
.vip-order-journal-flow .vip-flow-about { order: 1; }
.vip-order-journal-flow .vip-flow-principles { order: 2; }
.vip-order-journal-flow .vip-flow-intro { order: 3; }
.vip-order-journal-flow .vip-flow-services { order: 4; }
.vip-order-journal-flow .vip-flow-contact { order: 5; }

.vip-surface-paper .vip-section { border-top: 1px solid rgba(20,30,35,.14); background-image: linear-gradient(rgba(255,255,255,.55),rgba(255,255,255,.55)), repeating-linear-gradient(0deg,transparent 0,transparent 31px,rgba(20,30,35,.035) 32px); }
.vip-surface-paper .card { border: 1px solid rgba(20,30,35,.16); box-shadow: none; }
.vip-surface-framed .vip-section .container { padding: clamp(2rem,5vw,5rem); border: 1px solid rgba(20,30,35,.15); background: rgba(255,255,255,.72); }
.vip-surface-layered .vip-section:nth-child(even) .image-container { transform: translateY(1.5rem) rotate(-1.25deg); }
.vip-surface-layered .card { box-shadow: 12px 12px 0 color-mix(in srgb,var(--vip-secondary) 22%,transparent); }
.vip-surface-contrast .vip-flow-services { color: #fff; background: var(--vip-dark); }
.vip-surface-contrast .vip-flow-services h2 { color: #fff; }
.vip-surface-contrast .vip-flow-services .card { color: var(--vip-dark); background: #fff; }

/* Regional value magazine */
.vip-layout-trail-budget .navbar-custom { background: rgba(24,58,55,.95); }
.vip-layout-trail-budget .vip-landing-hero { min-height: 760px; background-image: linear-gradient(105deg,rgba(17,52,47,.92) 0%,rgba(17,52,47,.72) 47%,rgba(17,52,47,.14) 78%),url("../images/vip-hero.jpg"); }
.vip-layout-trail-budget .vip-hero-copy h1 { max-width: 12ch; }
.vip-layout-trail-budget .vip-hero-copy .btn-solid-lg { border-radius: 0 24px 24px 24px; background: var(--vip-dark); }
.vip-layout-trail-budget .vip-hero-aside { border-radius: 48px 0 48px 0; background: rgba(217,79,43,.86); }
.vip-layout-trail-budget .vip-hero-aside li span { color: #fff3cf; }
.vip-layout-trail-budget .vip-flow-intro .image-container { clip-path: polygon(8% 0,100% 0,92% 100%,0 92%); }
.vip-layout-trail-budget .cards-2 .card { border-radius: 28px 4px; }
.vip-layout-trail-budget .vip-platform-ribbon { color: #fff; background: var(--vip-dark); }
.vip-layout-trail-budget .vip-platform-ribbon span { color: #fff; border-color: rgba(255,255,255,.18); }

/* Executive advisory ledger */
.vip-layout-strategy-ledger { color: #222923; background: #f5f1e8; }
.vip-layout-strategy-ledger .navbar-custom { color: #17211d; background: rgba(245,241,232,.97); border-color: rgba(23,33,29,.2); }
.vip-layout-strategy-ledger .navbar-custom .logo-text, .vip-layout-strategy-ledger .navbar-custom .nav-link { color: #17211d; }
.vip-layout-strategy-ledger .vip-landing-hero { color: #17211d; background-image: linear-gradient(90deg,rgba(245,241,232,.97) 0%,rgba(245,241,232,.9) 55%,rgba(245,241,232,.18)),url("../images/vip-hero.jpg"); }
.vip-layout-strategy-ledger .vip-kicker, .vip-layout-strategy-ledger .vip-hero-copy h1, .vip-layout-strategy-ledger .vip-hero-copy p { color: #17211d; }
.vip-layout-strategy-ledger .vip-hero-aside { color: #17211d; border: 1px solid #17211d; background: rgba(245,241,232,.9); backdrop-filter: none; }
.vip-layout-strategy-ledger .vip-hero-aside li { border-color: rgba(23,33,29,.25); }
.vip-layout-strategy-ledger .vip-section { border-top: 1px solid rgba(23,33,29,.18); }
.vip-layout-strategy-ledger .card { border-radius: 0; border: 0; border-top: 3px solid var(--vip-accent); box-shadow: none; }
.vip-layout-strategy-ledger .vip-platform-ribbon { border-top: 1px solid #17211d; border-bottom-color: #17211d; background: #f5f1e8; }

/* Community bulletin */
.vip-layout-community-board .navbar-custom { background: rgba(23,51,63,.96); }
.vip-layout-community-board .vip-landing-hero { background-image: linear-gradient(90deg,rgba(23,51,63,.94),rgba(23,51,63,.62)),url("../images/vip-hero.jpg"); }
.vip-layout-community-board .vip-hero-grid { grid-template-columns: 1fr 340px; }
.vip-layout-community-board .vip-hero-aside { color: var(--vip-dark); border: 8px solid rgba(255,255,255,.3); background: #f7f4ec; box-shadow: 0 22px 60px rgba(0,0,0,.25); transform: rotate(1deg); }
.vip-layout-community-board .vip-hero-aside li { border-color: rgba(23,51,63,.2); }
.vip-layout-community-board .vip-principles .card { border-radius: 2px; box-shadow: 6px 6px 0 rgba(179,58,58,.2); }
.vip-layout-community-board .section-title { color: var(--vip-accent); }
.vip-layout-community-board .vip-platform-ribbon { background: #f7f4ec; transform: rotate(-.15deg); }

/* Step-by-step pathway */
.vip-layout-pathway-guide .vip-landing-hero { min-height: 700px; background-image: linear-gradient(105deg,rgba(18,60,74,.95) 0%,rgba(20,125,126,.74) 62%,rgba(20,125,126,.2)),url("../images/vip-hero.jpg"); }
.vip-layout-pathway-guide .vip-hero-copy h1 { max-width: 14ch; }
.vip-layout-pathway-guide .vip-hero-aside { border: 0; border-left: 4px solid #fff; background: rgba(18,60,74,.48); }
.vip-layout-pathway-guide .cards-2 .card { border: 0; border-left: 6px solid var(--vip-accent); border-radius: 0 22px 22px 0; }
.vip-layout-pathway-guide .cards-2 .card:before { display: block; margin-bottom: .75rem; color: var(--vip-accent); font-weight: 700; letter-spacing: .12em; content: "PLANNING STEP"; }
.vip-layout-pathway-guide .vip-flow-about { background: #e3f1ed; }
.vip-layout-pathway-guide .vip-platform-ribbon span { justify-content: flex-start; }

/* Renovation project journal */
.vip-layout-project-journal .navbar-custom { background: rgba(32,48,44,.96); }
.vip-layout-project-journal .vip-landing-hero { background-image: linear-gradient(90deg,rgba(32,48,44,.94) 0%,rgba(32,48,44,.66) 48%,rgba(32,48,44,.12)),url("../images/vip-hero.jpg"); }
.vip-layout-project-journal .vip-hero-grid { align-items: center; }
.vip-layout-project-journal .vip-hero-aside { border: 0; border-radius: 4px; background: rgba(244,241,232,.92); color: #20302c; transform: translateY(3rem); }
.vip-layout-project-journal .vip-hero-aside li { border-color: rgba(32,48,44,.18); }
.vip-layout-project-journal .vip-section .image-container { padding: 12px; background: #fff; box-shadow: 0 24px 60px rgba(32,48,44,.14); transform: rotate(-1.2deg); }
.vip-layout-project-journal .cards-2 .card { border-bottom: 5px solid var(--vip-secondary); border-radius: 3px; }
.vip-layout-project-journal .vip-platform-ribbon { margin-top: -1px; background: #f4f1e8; box-shadow: 0 12px 34px rgba(32,48,44,.1); }

/* Leadership notebook */
.vip-layout-leadership-notes .navbar-custom { background: rgba(20,27,45,.94); }
.vip-layout-leadership-notes .vip-landing-hero { min-height: 800px; background-image: linear-gradient(90deg,rgba(20,27,45,.97) 0%,rgba(20,27,45,.8) 58%,rgba(20,27,45,.14)),url("../images/vip-hero.jpg"); }
.vip-layout-leadership-notes .vip-hero-copy h1 { max-width: 13ch; font-size: clamp(3.3rem,7.2vw,7.4rem); }
.vip-layout-leadership-notes .vip-hero-aside { align-self: center; border: 0; border-top: 1px solid rgba(255,255,255,.45); border-bottom: 1px solid rgba(255,255,255,.45); background: transparent; backdrop-filter: none; }
.vip-layout-leadership-notes .vip-principles { color: #fff; background: #141b2d; }
.vip-layout-leadership-notes .vip-principles .card { color: #fff; border: 0; background: transparent; box-shadow: none; }
.vip-layout-leadership-notes .vip-flow-services .card { border-radius: 0; border-top: 1px solid #141b2d; box-shadow: none; }
.vip-layout-leadership-notes .vip-platform-ribbon { background: #141b2d; }
.vip-layout-leadership-notes .vip-platform-ribbon span { color: #fff; border-color: rgba(255,255,255,.2); }

/* Ecommerce playbook */
.vip-layout-commerce-playbook .navbar-custom { background: rgba(23,37,75,.96); }
.vip-layout-commerce-playbook .vip-landing-hero { background-image: linear-gradient(120deg,rgba(23,37,75,.98) 0%,rgba(49,91,214,.88) 56%,rgba(24,168,120,.3)),url("../images/vip-hero.jpg"); }
.vip-layout-commerce-playbook .vip-hero-aside { border: 0; border-radius: 18px; background: rgba(255,255,255,.12); box-shadow: inset 0 0 0 1px rgba(255,255,255,.25); }
.vip-layout-commerce-playbook .vip-section .container { max-width: 1240px; }
.vip-layout-commerce-playbook .cards-2 .card { border: 1px solid rgba(49,91,214,.16); border-radius: 18px; box-shadow: 0 22px 60px rgba(23,37,75,.1); }
.vip-layout-commerce-playbook .cards-2 .card:hover { transform: translateY(-6px); }
.vip-layout-commerce-playbook .vip-flow-intro { background: linear-gradient(135deg,#fff,#eef4ff); }
.vip-layout-commerce-playbook .vip-platform-ribbon { background: linear-gradient(90deg,#eef4ff,#fff); }

/* Product catalog lab */
.vip-layout-catalog-lab { background: #f8f5ff; }
.vip-layout-catalog-lab .navbar-custom { background: rgba(31,23,55,.97); }
.vip-layout-catalog-lab .vip-landing-hero { min-height: 740px; background-image: linear-gradient(105deg,rgba(31,23,55,.98) 0%,rgba(62,38,105,.88) 55%,rgba(124,58,237,.26)),url("../images/vip-hero.jpg"); }
.vip-layout-catalog-lab .vip-hero-aside { color: #1f1737; border: 0; background: #ffb000; transform: rotate(-1deg); box-shadow: 14px 14px 0 rgba(255,255,255,.15); }
.vip-layout-catalog-lab .vip-hero-aside li { border-color: rgba(31,23,55,.25); }
.vip-layout-catalog-lab .vip-hero-aside li span { color: #1f1737; }
.vip-layout-catalog-lab .cards-2 .card { border: 3px solid #1f1737; border-radius: 0; box-shadow: 8px 8px 0 var(--vip-secondary); }
.vip-layout-catalog-lab .section-title { display: inline-block; padding: .3rem .55rem; color: #fff; background: var(--vip-accent); }
.vip-layout-catalog-lab .vip-platform-ribbon { border: 3px solid #1f1737; background: #ffb000; }
.vip-layout-catalog-lab .vip-platform-ribbon span { border-color: #1f1737; }

/* Culinary table stories */
.vip-layout-table-stories { background: #fff8f4; }
.vip-layout-table-stories .navbar-custom { background: rgba(58,37,41,.94); }
.vip-layout-table-stories .vip-landing-hero { min-height: 780px; background-image: linear-gradient(90deg,rgba(58,37,41,.9),rgba(58,37,41,.48)),url("../images/vip-hero.jpg"); }
.vip-layout-table-stories .vip-hero-copy { padding: clamp(2rem,5vw,5rem); border-radius: 160px 12px 160px 12px; background: rgba(58,37,41,.72); }
.vip-layout-table-stories .vip-hero-aside { align-self: center; border-radius: 999px 999px 18px 18px; background: rgba(169,71,88,.72); text-align: center; }
.vip-layout-table-stories .vip-section .image-container { border-radius: 48% 48% 8px 8px; overflow: hidden; }
.vip-layout-table-stories .cards-2 .card { border: 0; border-radius: 120px 120px 12px 12px; background: #fff; box-shadow: 0 18px 52px rgba(58,37,41,.11); }
.vip-layout-table-stories .vip-platform-ribbon { background: #fff8f4; }
.vip-layout-table-stories .vip-platform-ribbon span { font-family: "Newsreader",Georgia,serif; font-size: .78rem; }

/* Civic news desk */
.vip-layout-news-desk { color: #151b23; background: #f7f5ef; }
.vip-layout-news-desk .navbar-custom { background: rgba(247,245,239,.98); border-top: 5px solid var(--vip-accent); border-bottom: 1px solid #151b23; }
.vip-layout-news-desk .navbar-custom .logo-text, .vip-layout-news-desk .navbar-custom .nav-link { color: #151b23; }
.vip-layout-news-desk .vip-landing-hero { min-height: 720px; color: #151b23; background-image: linear-gradient(90deg,rgba(247,245,239,.99) 0%,rgba(247,245,239,.92) 52%,rgba(247,245,239,.08)),url("../images/vip-hero.jpg"); }
.vip-layout-news-desk .vip-kicker, .vip-layout-news-desk .vip-hero-copy h1, .vip-layout-news-desk .vip-hero-copy p { color: #151b23; }
.vip-layout-news-desk .vip-kicker { padding-top: .65rem; border-top: 4px solid var(--vip-accent); }
.vip-layout-news-desk .vip-hero-copy h1 { max-width: 14ch; font-family: "Newsreader",Georgia,serif; }
.vip-layout-news-desk .vip-hero-aside { color: #151b23; border: 0; border-top: 8px solid #151b23; border-bottom: 1px solid #151b23; background: rgba(247,245,239,.95); backdrop-filter: none; }
.vip-layout-news-desk .vip-hero-aside li { border-color: rgba(21,27,35,.3); }
.vip-layout-news-desk .vip-section { border-top: 1px solid #151b23; }
.vip-layout-news-desk .cards-2 .card { border: 0; border-top: 5px solid var(--vip-accent); border-radius: 0; box-shadow: none; }
.vip-layout-news-desk .vip-principles .card { border: 0; border-left: 1px solid #151b23; border-radius: 0; box-shadow: none; }
.vip-layout-news-desk .vip-platform-ribbon { border-top: 2px solid #151b23; border-bottom: 2px solid #151b23; }
.vip-layout-news-desk .vip-platform-ribbon span { justify-content: flex-start; font-family: "Libre Franklin",Arial,sans-serif; }

/* Distributed campaign planning: an asymmetric, measurable market grid. */
.vip-layout-market-grid { color: #142127; background: #eef1ed; }
.vip-layout-market-grid .navbar-custom { background: rgba(15,29,35,.97); border-bottom: 3px solid #8ee15c; }
.vip-layout-market-grid .vip-landing-hero { min-height: 760px; background-image: linear-gradient(100deg,rgba(15,29,35,.98) 0%,rgba(15,29,35,.88) 54%,rgba(32,115,96,.24)),url("../images/vip-hero.jpg"); }
.vip-layout-market-grid .vip-hero-grid { grid-template-columns: 1.3fr .7fr; }
.vip-layout-market-grid .vip-hero-copy h1 { max-width: 11ch; font-size: clamp(3.4rem,7vw,7rem); }
.vip-layout-market-grid .vip-hero-aside { border: 1px solid rgba(142,225,92,.62); border-radius: 0; background: rgba(7,18,22,.74); box-shadow: 14px 14px 0 rgba(142,225,92,.17); }
.vip-layout-market-grid .cards-2 { gap: 1px; background: #142127; }
.vip-layout-market-grid .cards-2 .card { border: 0; border-radius: 0; box-shadow: none; }
.vip-layout-market-grid .vip-platform-ribbon { color: #142127; background: #8ee15c; border: 0; }
.vip-layout-market-grid .vip-platform-ribbon span { border-color: rgba(20,33,39,.35); }

/* Calm evidence hierarchy: generous editorial space with clinical wayfinding. */
.vip-layout-clinical-journal { color: #18352f; background: #f4f8f5; }
.vip-layout-clinical-journal .navbar-custom { background: rgba(244,248,245,.97); border-bottom: 1px solid rgba(24,53,47,.2); }
.vip-layout-clinical-journal .navbar-custom .logo-text, .vip-layout-clinical-journal .navbar-custom .nav-link { color: #18352f; }
.vip-layout-clinical-journal .vip-landing-hero { min-height: 760px; color: #18352f; background-image: linear-gradient(92deg,rgba(244,248,245,.98) 0%,rgba(244,248,245,.9) 51%,rgba(244,248,245,.12)),url("../images/vip-hero.jpg"); }
.vip-layout-clinical-journal .vip-kicker, .vip-layout-clinical-journal .vip-hero-copy h1, .vip-layout-clinical-journal .vip-hero-copy p { color: #18352f; }
.vip-layout-clinical-journal .vip-hero-copy h1 { max-width: 13ch; font-family: "Newsreader",Georgia,serif; }
.vip-layout-clinical-journal .vip-hero-aside { color: #18352f; border: 0; border-left: 5px solid #d86167; border-radius: 0 32px 32px 0; background: rgba(255,255,255,.94); backdrop-filter: none; }
.vip-layout-clinical-journal .vip-hero-aside li { border-color: rgba(24,53,47,.15); }
.vip-layout-clinical-journal .cards-2 .card { border: 0; border-radius: 36px 8px; box-shadow: 0 18px 55px rgba(24,53,47,.1); }
.vip-layout-clinical-journal .vip-platform-ribbon { background: #dcebe3; border-color: rgba(24,53,47,.2); }

/* Automotive buyer route: bold instrument-panel contrast and directional cards. */
.vip-layout-buyer-route { color: #111820; background: #f2f0e9; }
.vip-layout-buyer-route .navbar-custom { background: rgba(17,24,32,.98); border-bottom: 4px solid #f2b544; }
.vip-layout-buyer-route .vip-landing-hero { min-height: 780px; background-image: linear-gradient(90deg,rgba(17,24,32,.98) 0%,rgba(17,24,32,.82) 54%,rgba(17,24,32,.1)),url("../images/vip-hero.jpg"); }
.vip-layout-buyer-route .vip-hero-copy h1 { max-width: 12ch; text-transform: uppercase; letter-spacing: -.025em; }
.vip-layout-buyer-route .vip-hero-aside { border: 0; border-radius: 0; background: #f2b544; color: #111820; transform: skewY(-2deg); }
.vip-layout-buyer-route .vip-hero-aside > * { transform: skewY(2deg); }
.vip-layout-buyer-route .vip-hero-aside li { border-color: rgba(17,24,32,.3); }
.vip-layout-buyer-route .vip-hero-aside li span { color: #111820; }
.vip-layout-buyer-route .cards-2 .card { border: 0; border-left: 9px solid #f2b544; border-radius: 0; box-shadow: 9px 9px 0 rgba(17,24,32,.13); }
.vip-layout-buyer-route .vip-platform-ribbon { color: #fff; background: #111820; }
.vip-layout-buyer-route .vip-platform-ribbon span { color: #fff; border-color: rgba(255,255,255,.22); }

/* Repair diagnostics: console-like panels with clear service-status hierarchy. */
.vip-layout-diagnostics-console { color: #d7f8ef; background: #071411; }
.vip-layout-diagnostics-console .navbar-custom { background: rgba(4,13,11,.98); border-bottom: 1px solid #45e0b7; }
.vip-layout-diagnostics-console .vip-landing-hero { min-height: 760px; background-image: linear-gradient(105deg,rgba(4,13,11,.98) 0%,rgba(7,27,23,.92) 58%,rgba(69,224,183,.16)),url("../images/vip-hero.jpg"); }
.vip-layout-diagnostics-console .vip-hero-copy h1 { max-width: 12ch; font-family: "Libre Franklin",Arial,sans-serif; }
.vip-layout-diagnostics-console .vip-hero-aside { border: 1px solid #45e0b7; border-radius: 10px; background: rgba(3,17,14,.82); box-shadow: 0 0 42px rgba(69,224,183,.17); }
.vip-layout-diagnostics-console .vip-hero-aside li { border-color: rgba(69,224,183,.28); }
.vip-layout-diagnostics-console .vip-section { color: #d7f8ef; background: #0b1c18; border-top: 1px solid rgba(69,224,183,.16); }
.vip-layout-diagnostics-console .cards-2 .card, .vip-layout-diagnostics-console .vip-principles .card { color: #d7f8ef; border: 1px solid rgba(69,224,183,.28); border-radius: 10px; background: #102721; box-shadow: none; }
.vip-layout-diagnostics-console .section-title, .vip-layout-diagnostics-console .card-title { color: #fff; }
.vip-layout-diagnostics-console .vip-platform-ribbon { color: #071411; background: #45e0b7; border: 0; }
.vip-layout-diagnostics-console .vip-platform-ribbon span { border-color: rgba(7,20,17,.32); }

/* General future-site fallbacks */
.vip-layout-field-guide .vip-landing-hero { background-image: linear-gradient(100deg,rgba(20,45,48,.94),rgba(20,45,48,.42)),url("../images/vip-hero.jpg"); }
.vip-layout-field-guide .vip-hero-aside { border-radius: 4px 56px 4px 56px; }
.vip-layout-field-guide .cards-2 .card { border-radius: 4px 32px; border-left: 5px solid var(--vip-accent); }
.vip-layout-editorial-index .vip-landing-hero { background-image: linear-gradient(90deg,rgba(20,26,34,.96),rgba(20,26,34,.5)),url("../images/vip-hero.jpg"); }
.vip-layout-editorial-index .vip-hero-copy h1 { font-family: "Newsreader",Georgia,serif; }
.vip-layout-editorial-index .vip-hero-aside { border: 0; border-left: 1px solid rgba(255,255,255,.5); background: transparent; }
.vip-layout-editorial-index .cards-2 .card { border: 0; border-top: 2px solid var(--vip-dark); border-radius: 0; box-shadow: none; }

@media (max-width: 991px) {
    .vip-landing-hero .header-content { padding: 8.5rem 0 5rem; }
    .vip-hero-grid { grid-template-columns: 1fr; gap: 2rem; }
    .vip-layout-community-board .vip-hero-grid { grid-template-columns: 1fr; }
    .vip-hero-copy h1 { font-size: clamp(2.75rem,9vw,5.2rem); }
    .vip-hero-aside { max-width: 620px; min-height: 0; transform: none !important; }
    .vip-layout-table-stories .vip-hero-copy { border-radius: 72px 8px; }
}

@media (max-width: 767px) {
    .navbar-custom { min-height: 64px; }
    .navbar-custom .navbar-brand { max-width: calc(100% - 80px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .navbar-custom .navbar-collapse { padding: 1rem; background: var(--vip-dark); }
    .navbar-custom .navbar-collapse .nav-link { color: #fff; }
    .vip-landing-hero { min-height: 0 !important; }
    .vip-landing-hero .header-content { padding: 7.5rem 0 4rem; }
    .vip-hero-copy { padding: 0 !important; border-radius: 0 !important; background: transparent !important; }
    .vip-hero-copy h1 { font-size: clamp(2.5rem,12vw,4.25rem) !important; line-height: 1; }
    .vip-hero-aside { padding: 1.25rem; border-radius: 8px !important; }
    .vip-section { padding-top: 4.5rem; padding-bottom: 4.5rem; }
    .vip-section .container { padding-left: 22px; padding-right: 22px; }
    .vip-surface-framed .vip-section .container { border-left: 0; border-right: 0; }
    .vip-contact-panel h3 { overflow-wrap: anywhere; word-break: normal; }
    .vip-image { min-height: 260px; }
    .vip-platform-ribbon { grid-template-columns: 1fr; }
    .vip-platform-ribbon span { min-height: 48px; justify-content: flex-start !important; border-right: 0; border-bottom: 1px solid rgba(20,30,35,.16); }
    .vip-platform-ribbon span:last-child { border-bottom: 0; }
    .vip-layout-table-stories .vip-section .image-container { border-radius: 32px 32px 6px 6px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *:before, *:after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
