:root {
    --background: #0b0c0e;
    --text-primary: #f8f9fa;
    --text-secondary: #b0b8c0;
    --accent-gold: #d8b46a;
    --accent-gold-hover: #e4c47e;
    --container-max-width: 1240px;
    --bg: #111214;
    --bg-alt: #17181a;
    --bg-elevated: #1e2022;
    --panel: #2a2d30;
    --line: rgba(255, 255, 255, 0.08);
    --line-strong: rgba(255, 255, 255, 0.15);
    --text: #f8f9fa;
    --muted: #b0b8c0;
    --muted-soft: #85909c;
    --institutional-bg: #0b0c0e;
    --surface: #141518;
    --surface-2: #1a1c1f;
    --surface-3: #222428;
    --surface-elevated: #282a2e;
    --border: rgba(216, 180, 106, 0.12);
    --border-strong: rgba(216, 180, 106, 0.24);
    --accent: #d8b46a;
    --accent-hover: #e4c47e;
    --accent-soft: rgba(216, 180, 106, 0.14);
    --accent-border: rgba(216, 180, 106, 0.34);
    --max-width: 1240px;
    --radius: 16px;
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 24px;
    --shadow: 0 12px 40px rgba(0, 0, 0, 0.22);
    --shadow-soft: 0 4px 24px rgba(0, 0, 0, 0.12);
    --font-heading: "Manrope", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif;
    --font-body: "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Roboto, Arial, sans-serif;
    --font-sans: var(--font-body);
    --font-display: var(--font-heading);
    --space-xs: 0.5rem;
    --space-sm: 1rem;
    --space-md: 1.5rem;
    --space-lg: 2.25rem;
    --space-xl: 3.5rem;
    --section-padding-desktop: clamp(4rem, 6.4vw, 5.25rem);
    --section-padding-mobile: clamp(3.1rem, 7vw, 4rem);
    --section-y: var(--section-padding-desktop);
    --section-y-tight: clamp(3rem, 5.8vw, 4.35rem);
    --section-y-hero-top: clamp(5rem, 12vw, 7.5rem);
    --section-y-hero-bottom: clamp(4rem, 9vw, 6rem);
    --card-surface: linear-gradient(
        165deg,
        rgba(255, 255, 255, 0.06) 0%,
        rgba(255, 255, 255, 0.02) 55%,
        rgba(0, 0, 0, 0.08) 100%
    );
    --card-border: rgba(255, 255, 255, 0.08);
}

* {
    box-sizing: border-box;
}

html {
    background-color: var(--institutional-bg);
    scroll-behavior: smooth;
    scroll-padding-top: 5.5rem;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}

.skip-link {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap;
    background: #f4f4f4;
    color: #1a1a1a;
    font-family: var(--font-sans);
    font-weight: 600;
    font-size: 0.9375rem;
}

.skip-link:focus,
.skip-link:focus-visible {
    clip: auto;
    clip-path: none;
    height: auto;
    width: auto;
    margin: 0;
    overflow: visible;
    padding: 0.65rem 1rem;
    position: fixed;
    left: 0.75rem;
    top: 0.75rem;
    z-index: 100000;
    white-space: normal;
    text-decoration: none;
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow);
    outline: 2px solid rgba(255, 255, 255, 0.95);
    outline-offset: 2px;
}

body {
    margin: 0;
    background:
        radial-gradient(120% 75% at 50% -10%, rgba(216, 180, 106, 0.08) 0%, transparent 42%),
        radial-gradient(90% 60% at 100% 10%, rgba(255, 255, 255, 0.035) 0%, transparent 46%),
        var(--institutional-bg);
    color: var(--text);
    font-family: var(--font-body);
    font-size: 1.0625rem;
    font-weight: 400;
    line-height: 1.65;
    letter-spacing: 0;
    font-feature-settings: "kern" 1, "liga" 1;
    -webkit-font-smoothing: antialiased;
}

.site-global-grid {
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.026) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.022) 1px, transparent 1px);
    background-size: 72px 72px;
    opacity: 0.72;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.12) 100%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.12) 100%);
}

.site-header,
main,
.site-footer {
    position: relative;
    z-index: 1;
}

a {
    color: inherit;
    text-decoration: none;
}

a:focus-visible,
.btn:focus-visible,
.header-cta:focus-visible,
.faq-summary:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.92);
    outline-offset: 2px;
}

img {
    max-width: 100%;
    display: block;
}

html.js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur) {
    opacity: 0;
    transform: translate3d(0, 14px, 0);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

html.js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur).is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    will-change: auto;
}

@media (prefers-reduced-motion: reduce) {
    html.js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur) {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

html.no-js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur),
html:not(.js) :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur) {
    opacity: 1;
    transform: none;
}

.card,
.testimonial-card,
.audience-col,
.faq-item,
.hero-framework-chrome,
.learn-hero-panel,
.learn-concept-card,
.learn-article-continue {
    background-color: var(--surface) !important;
}

.container {
    width: min(var(--max-width), calc(100% - 40px));
    margin: 0 auto;
}

.narrow {
    max-width: 720px;
}

.section {
    padding: var(--section-y) 0;
}

.section--hero {
    padding: var(--section-y-hero-top) 0 var(--section-y-hero-bottom);
}

.site-main--about .about-hero.section--hero,
.site-main--reviews .reviews-hero.section--hero,
.site-main--faq .faq-hero.section--hero,
.site-main--pricing .pricing-hero.section--hero,
.site-main--contact .contact-hero.section--hero,
.site-main--legal .legal-hero.section--hero {
    padding-bottom: clamp(3rem, 7vw, 4.5rem);
}

.site-main--contact .contact-email {
    margin-top: var(--space-lg);
}

.site-main--contact .contact-email a {
    color: #ffffff;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 0.15em;
}

.site-main--contact .contact-email a:hover {
    color: var(--muted);
}

.site-main--contact .contact-email .contact-email-text {
    margin: 0;
    color: var(--muted);
    line-height: 1.65;
}

.site-main--contact .contact-email .contact-email-text a {
    white-space: nowrap;
}

.site-main--learn .learn-hero {
    padding-top: clamp(3.25rem, 7vw, 4.5rem);
    padding-bottom: clamp(2rem, 4vw, 2.75rem);
    min-height: auto;
    border-bottom: 1px solid var(--line);
    background:
        radial-gradient(110% 85% at 80% 0%, rgba(255, 255, 255, 0.06) 0%, transparent 55%),
        var(--bg);
}

.learn-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr);
    gap: 1.5rem;
    align-items: start;
}

.learn-hero-main h1 {
    font-size: clamp(2rem, 4vw, 3.15rem);
    margin-bottom: 0.9rem;
}

.learn-breadcrumb {
    margin-bottom: 0.85rem;
}

.site-main--learn .eyebrow {
    margin-bottom: 0.65rem;
}

.site-main--learn .hero-text {
    margin-bottom: 1.125rem;
    max-width: 42rem;
}

.learn-breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
    color: var(--muted-soft);
    font-size: 0.8125rem;
    letter-spacing: 0.03em;
}

.learn-breadcrumb li {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.learn-breadcrumb li + li::before {
    content: ">";
    color: rgba(255, 255, 255, 0.45);
}

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

.learn-hero-actions {
    margin-bottom: 0;
}

.learn-hero-panel {
    padding: 1.25rem 1.3rem;
}

.learn-panel-eyebrow {
    margin: 0 0 0.9rem;
    color: var(--muted-soft);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.learn-panel-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 0.45rem;
}

.learn-panel-list a {
    display: block;
    padding: 0.7rem 0.75rem;
    border-radius: var(--radius-sm);
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.02);
    color: var(--muted);
    font-size: 0.9375rem;
    font-weight: 500;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.learn-panel-list a:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.2);
}

.learn-start-section {
    padding-top: clamp(2.2rem, 4.2vw, 3rem);
}

.learn-card h3 a,
.learn-featured-card h3 a,
.learn-link-list a,
.learn-concept-card {
    text-decoration: none;
}

.learn-card h3 a:hover,
.learn-featured-card h3 a:hover,
.learn-link-list a:hover,
.learn-concept-card:hover {
    color: #ffffff;
}

.learn-card h3 a,
.learn-featured-card h3 a {
    display: inline-block;
}

.learn-cluster-card {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.learn-link-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 0.5rem;
}

.learn-link-list li a {
    color: var(--muted);
    font-size: 0.95rem;
    line-height: 1.45;
}

.learn-link-list li a::after {
    content: " ->";
    color: rgba(255, 255, 255, 0.45);
}

.learn-link-placeholder {
    color: var(--muted-soft);
    font-size: 0.95rem;
    line-height: 1.45;
}

.learn-featured-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

.learn-featured-card {
    min-height: 100%;
}

.learn-category {
    margin-bottom: 0.8rem;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--muted-soft);
}

.learn-concept-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.75rem;
}

.learn-concept-card {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 5rem;
    padding: 0.875rem;
    text-align: center;
    font-size: 0.875rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: #f0f0f0;
    border: 1px solid var(--card-border);
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, 0.04);
    box-shadow: var(--shadow-soft);
    transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.learn-concept-card:hover {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(255, 255, 255, 0.25);
    transform: translate3d(0, -1px, 0);
}

.site-main--learn-article .learn-article-hero {
    padding-top: clamp(3.5rem, 6vw, 5rem);
    padding-bottom: clamp(2.5rem, 4.5vw, 3.5rem);
    min-height: auto;
    border-bottom: 1px solid var(--line);
    background:
        radial-gradient(95% 70% at 80% 0%, rgba(255, 255, 255, 0.055) 0%, transparent 58%),
        var(--bg);
}

.learn-article-shell {
    max-width: 700px;
}

.site-main--learn-article .learn-breadcrumb {
    margin-bottom: 1.1rem;
}

.learn-article-kicker {
    margin: 0 0 0.85rem;
    color: var(--muted-soft);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    line-height: 1.3;
    text-transform: uppercase;
}

.learn-article-title {
    max-width: 100%;
    margin-bottom: 1.15rem;
    font-size: clamp(2.55rem, 6vw, 4.6rem);
    line-height: 0.98;
    letter-spacing: 0;
}

.learn-article-intro {
    max-width: 42rem;
    margin-bottom: 1.5rem;
    color: #d7d7d7;
    font-size: clamp(1.1rem, 2vw, 1.25rem);
    line-height: 1.68;
}

.learn-article-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.95rem 1.25rem;
    margin-top: 1.5rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--line);
}

.learn-article-meta-topics {
    grid-column: 1 / -1;
}

.learn-article-featured-media {
    margin: clamp(1.75rem, 4vw, 2.5rem) 0 0;
    overflow: hidden;
    border-radius: var(--radius-sm);
    border: 1px solid var(--line);
    background: rgba(255, 255, 255, 0.035);
    box-shadow: var(--shadow-soft);
}

.learn-article-meta-label {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--muted-soft);
}

.learn-article-meta-value {
    display: block;
    margin: 0;
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.45;
}

.learn-article-image {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.learn-article-topic-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.learn-article-topic-pill {
    display: inline-flex;
    align-items: center;
    padding: 0.45rem 0.75rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: #f0f0f0;
    font-size: 0.8125rem;
    font-weight: 600;
}

.learn-article-section {
    padding-top: clamp(2.75rem, 4.5vw, 3.75rem);
    padding-bottom: clamp(4rem, 8vw, 6.5rem);
}

.learn-article-body {
    max-width: 68ch;
    margin: 0 auto;
    font-size: 1.1375rem;
    line-height: 1.82;
    color: var(--muted);
    overflow-wrap: break-word;
}

.learn-article-body > *:first-child {
    margin-top: 0;
}

.learn-article-body > *:last-child {
    margin-bottom: 0;
}

.learn-article-body h2 {
    font-family: var(--font-display);
    font-size: clamp(1.7rem, 3vw, 2.2rem);
    line-height: 1.2;
    margin-top: 3.35rem;
    margin-bottom: 1.1rem;
}

.learn-article-body h3 {
    font-size: 1.28rem;
    margin-top: 2.65rem;
    margin-bottom: 0.85rem;
}

.learn-article-body p,
.learn-article-body ul,
.learn-article-body ol,
.learn-article-body blockquote,
.learn-article-body .wp-block-image,
.learn-article-body .wp-block-quote,
.learn-article-body .wp-block-columns,
.learn-article-body .wp-block-group,
.learn-article-body .wp-block-table,
.learn-article-body pre {
    margin-bottom: 1.6rem;
}

.learn-article-body p {
    color: var(--muted);
}

.learn-article-body ul,
.learn-article-body ol {
    padding-left: 1.55rem;
}

.learn-article-body li {
    margin-bottom: 0.7rem;
}

.learn-article-body li:last-child {
    margin-bottom: 0;
}

.learn-article-body li::marker {
    color: var(--muted-soft);
}

.learn-article-body a {
    color: #ffffff;
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 0.15em;
}

.learn-article-body a:hover {
    color: var(--muted);
}

.learn-article-body blockquote {
    margin: 2rem 0;
    padding: 1.15rem 1.35rem;
    border-left: 3px solid rgba(255, 255, 255, 0.2);
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
    background: rgba(255, 255, 255, 0.04);
    color: #dedede;
    font-family: var(--font-display);
    font-size: 1.18rem;
    line-height: 1.65;
}

.learn-article-body img {
    border-radius: var(--radius-sm);
    border: 1px solid var(--line);
}

.learn-article-body table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.25rem 0;
    font-size: 0.9375rem;
}

.learn-article-body th,
.learn-article-body td {
    border: 1px solid var(--line);
    padding: 0.5rem 0.75rem;
    text-align: left;
    vertical-align: top;
}

.learn-article-body th {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.05);
}

.learn-article-body pre {
    max-width: 100%;
    overflow-x: auto;
    padding: 0.875rem 1rem;
    border-radius: var(--radius-sm);
    background: rgba(0, 0, 0, 0.2);
    border: 1px solid var(--line);
    font-size: 0.875rem;
    line-height: 1.55;
}

.learn-article-footer {
    display: grid;
    gap: clamp(2.5rem, 5vw, 3.5rem);
    margin-top: clamp(3.75rem, 7vw, 5.5rem);
}

.learn-hero-panel > .learn-panel-eyebrow,
.learn-article-continue > .learn-panel-eyebrow,
.learn-article-related > .learn-panel-eyebrow {
    margin-bottom: 1.4rem;
}

.learn-article-continue {
    padding: 1.5rem 1.6rem;
}

.learn-article-continue h2,
.learn-article-related h2 {
    font-size: clamp(1.45rem, 2.8vw, 1.9rem);
    margin-bottom: 0.85rem;
}

.learn-article-continue p {
    margin-bottom: 1.25rem;
}

.learn-article-footer-actions {
    gap: 0.75rem;
    align-items: center;
    margin-top: 1.35rem;
    margin-bottom: 0;
}

.learn-article-footer-actions .btn {
    min-width: 9.75rem;
}

.learn-article-related {
    padding-top: 1.75rem;
    border-top: 1px solid var(--line);
}

.learn-article-callout {
    padding: 1.25rem 1.4rem;
    border: 1px solid rgba(216, 180, 106, 0.22);
    border-radius: var(--radius-md);
    background:
        linear-gradient(135deg, rgba(216, 180, 106, 0.085), rgba(255, 255, 255, 0.025)),
        var(--surface);
    box-shadow: var(--shadow-soft);
}

.learn-article-callout p:last-child {
    margin: 0;
    color: #d9dee4;
    line-height: 1.72;
}

.learn-article-related-list {
    display: grid;
    gap: 0.95rem;
    margin-top: 1.25rem;
}

.learn-article-related-item {
    padding-bottom: 0.95rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.learn-article-related-item:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.learn-article-related-item h3 {
    margin-bottom: 0.35rem;
    font-size: 1.05rem;
}

.learn-article-related-item h3 a:hover {
    color: var(--muted);
}

.learn-article-related-item p {
    margin: 0;
    color: var(--muted);
    font-size: 0.95rem;
    line-height: 1.6;
}

.legal-content {
    max-width: 65ch;
    margin-left: auto;
    margin-right: auto;
    font-size: 1rem;
    line-height: 1.75;
    color: var(--muted);
    overflow-wrap: break-word;
}

.legal-content .legal-entry-body {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.legal-content > *:first-child {
    margin-top: 0;
}

.legal-content > *:last-child {
    margin-bottom: 0;
}

.legal-content h2 {
    font-family: var(--font-display);
    font-size: clamp(1.375rem, 2.5vw, 1.75rem);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0;
    color: #ffffff;
    margin-top: 2.5rem;
    margin-bottom: 0.875rem;
}

.legal-content h2:first-child {
    margin-top: 0;
}

.legal-content h3 {
    font-family: var(--font-sans);
    font-size: 1.0625rem;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
    color: #ffffff;
    margin-top: 2rem;
    margin-bottom: 0.625rem;
}

.legal-content h4 {
    font-family: var(--font-sans);
    font-size: 1rem;
    font-weight: 600;
    color: #ebebeb;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
}

.legal-content p {
    margin: 0 0 1.125rem;
}

.legal-content ul,
.legal-content ol {
    margin: 0 0 1.25rem;
    padding-left: 1.35rem;
}

.legal-content li {
    margin-bottom: 0.5rem;
}

.legal-content li:last-child {
    margin-bottom: 0;
}

.legal-content ul {
    list-style-type: disc;
}

.legal-content ol {
    list-style-type: decimal;
}

.legal-content li::marker {
    color: var(--muted-soft);
}

.legal-content blockquote {
    margin: 1.25rem 0;
    padding: 1rem 1.25rem;
    border-left: 3px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.04);
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
    color: var(--muted);
    font-size: 0.9875rem;
}

.legal-content hr {
    border: none;
    border-top: 1px solid var(--line);
    margin: 2rem 0;
}

.legal-content a {
    color: #ffffff;
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 0.15em;
    overflow-wrap: anywhere;
}

.legal-content a:hover {
    color: var(--muted);
}

.legal-content strong {
    color: #ebebeb;
    font-weight: 600;
}

.legal-content .legal-page-nav {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--line);
}

.legal-content .legal-page-nav-label {
    margin: 0 0 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--muted-soft);
}

.legal-content .legal-page-nav a,
.legal-content .page-numbers a {
    color: #ffffff;
    font-weight: 600;
}

.legal-content .wp-block-group,
.legal-content .wp-block-columns {
    margin-bottom: 1.25rem;
}

.legal-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.25rem 0;
    font-size: 0.9375rem;
}

.legal-content .wp-block-table {
    margin: 1.25rem 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
}

.legal-content .wp-block-table table {
    margin: 0;
    width: max-content;
    min-width: 100%;
}

.legal-content pre,
.legal-content code {
    overflow-wrap: break-word;
}

.legal-content pre {
    max-width: 100%;
    overflow-x: auto;
    padding: 0.875rem 1rem;
    border-radius: var(--radius-sm);
    background: rgba(0, 0, 0, 0.2);
    border: 1px solid var(--line);
    font-size: 0.875rem;
    line-height: 1.55;
}

.legal-content th,
.legal-content td {
    border: 1px solid var(--line);
    padding: 0.5rem 0.75rem;
    text-align: left;
    vertical-align: top;
}

.legal-content th {
    background: rgba(255, 255, 255, 0.05);
    color: #ffffff;
    font-weight: 600;
}

.section--editorial {
    padding-bottom: var(--section-y-tight);
}

.section--faq {
    padding-top: var(--section-y);
    padding-bottom: var(--section-y-tight);
}

.site-main--home .hero--with-video {
    min-height: clamp(34rem, 76vh, 45rem);
}

.site-main--home .hero-copy {
    max-width: 45rem;
}

.site-main--home h1 {
    font-size: clamp(2.55rem, 5.8vw, 4.45rem);
    margin-bottom: 1.35rem;
}

.site-main--home .hero-text {
    max-width: 43rem;
    margin-bottom: 1.35rem;
}

.site-main--home .hero-actions {
    margin-bottom: 1.25rem;
}

.section--clarity {
    position: relative;
    overflow: visible;
    padding-top: clamp(3.25rem, 6vw, 4.75rem);
}

.section--clarity::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(46% 34% at 16% 22%, rgba(216, 180, 106, 0.08), transparent 72%),
        radial-gradient(38% 28% at 88% 78%, rgba(255, 255, 255, 0.028), transparent 76%);
    opacity: 0.8;
}

.clarity-grid,
.mentor-grid,
.pricing-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.25rem;
    align-items: stretch;
}

.clarity-card,
.mentor-profile,
.pricing-panel--price {
    min-height: 100%;
}

.qualification-layout {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 1.3rem);
    align-items: stretch;
}

.qualification-layout::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: clamp(1rem, 1.8vw, 1.3rem);
    background:
        radial-gradient(34% 42% at 20% 8%, rgba(216, 180, 106, 0.05), transparent 80%),
        radial-gradient(28% 34% at 86% 90%, rgba(255, 255, 255, 0.02), transparent 82%);
    opacity: 0.58;
}

.qualification-panel {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    gap: clamp(0.85rem, 1.5vw, 1.1rem);
    min-height: 100%;
    padding: clamp(1.25rem, 2vw, 1.55rem);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: clamp(1rem, 1.8vw, 1.3rem);
    background:
        linear-gradient(160deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012) 54%, rgba(0, 0, 0, 0.12)),
        rgba(14, 15, 17, 0.92);
    box-shadow:
        0 20px 48px rgba(0, 0, 0, 0.22),
        0 0 0 1px rgba(255, 255, 255, 0.012) inset;
}

.qualification-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.045), transparent 24%),
        radial-gradient(62% 48% at 84% 0%, rgba(216, 180, 106, 0.055), transparent 72%);
    opacity: 0.68;
}

.qualification-panel::after {
    content: "";
    position: absolute;
    top: clamp(1rem, 1.8vw, 1.2rem);
    bottom: clamp(1rem, 1.8vw, 1.2rem);
    left: 0;
    width: 2px;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.02));
    opacity: 0.78;
}

.qualification-panel--fit {
    border-color: rgba(216, 180, 106, 0.18);
    background:
        radial-gradient(62% 48% at 92% 0%, rgba(216, 180, 106, 0.1), transparent 74%),
        linear-gradient(160deg, rgba(216, 180, 106, 0.045), rgba(255, 255, 255, 0.014) 52%, rgba(0, 0, 0, 0.12)),
        rgba(15, 16, 18, 0.93);
}

.qualification-panel--fit::after {
    background: linear-gradient(180deg, rgba(216, 180, 106, 0.85), rgba(216, 180, 106, 0.08));
}

.qualification-panel--boundary {
    border-color: rgba(255, 255, 255, 0.08);
    background:
        radial-gradient(48% 36% at 10% 0%, rgba(255, 255, 255, 0.03), transparent 74%),
        linear-gradient(160deg, rgba(255, 255, 255, 0.032), rgba(255, 255, 255, 0.012) 56%, rgba(0, 0, 0, 0.16)),
        rgba(11, 12, 14, 0.93);
}

.qualification-panel > * {
    position: relative;
    z-index: 1;
}

.qualification-panel-label {
    margin: 0;
    color: rgba(255, 255, 255, 0.66);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    line-height: 1.2;
    text-transform: uppercase;
}

.qualification-panel h3 {
    margin: 0;
    max-width: 15.5ch;
    font-size: clamp(1.25rem, 1.9vw, 1.58rem);
    line-height: 1.1;
    overflow-wrap: normal;
    word-break: normal;
}

.qualification-panel-copy {
    margin: 0;
    max-width: 31rem;
    color: var(--muted);
    line-height: 1.65;
}

.qualification-list {
    display: grid;
    gap: 0;
    margin: auto 0 0;
    padding: 0;
    list-style: none;
}

.qualification-list li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.8rem;
    align-items: start;
    min-width: 0;
    padding: 0.9rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.qualification-list li:first-child {
    padding-top: 0;
    border-top: none;
}

.qualification-panel--fit .qualification-list li {
    border-top-color: rgba(216, 180, 106, 0.12);
}

.qualification-list-mark {
    display: inline-flex;
    flex: 0 0 auto;
    width: 0.5rem;
    height: 0.5rem;
    margin-top: 0.42rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.34);
}

.qualification-panel--fit .qualification-list-mark {
    background: var(--accent);
    box-shadow: 0 0 0 4px rgba(216, 180, 106, 0.08);
}

.qualification-list li > span:last-child {
    min-width: 0;
    color: #ece7db;
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.45;
    overflow-wrap: normal;
    word-break: normal;
}

.qualification-panel--boundary .qualification-list li > span:last-child {
    color: #e4e6e8;
}

.clarity-card .section-label,
.pricing-panel--included .section-label {
    margin-bottom: 1rem;
}

.clarity-card p {
    margin-bottom: 1.25rem;
}

.clarity-card--not {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.curriculum-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.curriculum-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.curriculum-number {
    display: inline-flex;
    width: fit-content;
    margin-bottom: 1.25rem;
    color: var(--muted-soft);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.14em;
}

.curriculum-card h3 {
    min-height: 3rem;
}

.mentor-grid {
    align-items: center;
}

.mentor-copy {
    max-width: 36rem;
}

.mentor-profile {
    display: grid;
    grid-template-columns: minmax(8rem, 0.45fr) minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

.mentor-image-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1;
    border-radius: var(--radius-sm);
    border: 1px solid rgba(255, 255, 255, 0.14);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)),
        rgba(255, 255, 255, 0.04);
    color: var(--muted-soft);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-align: center;
    text-transform: uppercase;
}

.mentor-fields {
    display: grid;
    gap: 0.85rem;
    margin: 0;
}

.mentor-field {
    padding-bottom: 0.85rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.mentor-field:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.mentor-field dt {
    margin-bottom: 0.25rem;
    color: var(--muted-soft);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.mentor-field dd {
    margin: 0;
    color: var(--text);
    font-size: 0.95rem;
    line-height: 1.55;
}

.pricing-panel--price {
    display: flex;
    flex-direction: column;
}

.pricing-panel--included {
    padding: 1.625rem 1.75rem;
    border: 1px solid var(--card-border);
    border-radius: var(--radius);
    background: rgba(255, 255, 255, 0.035);
}

.price-kicker {
    margin-bottom: 0.8rem;
    color: var(--muted-soft);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.price-value {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.65rem;
    margin-bottom: 1rem;
    color: #ffffff;
}

.price-value span {
    font-family: var(--font-display);
    font-size: clamp(3rem, 7vw, 5rem);
    font-weight: 600;
    line-height: 0.95;
}

.price-value small {
    color: var(--muted);
    font-size: 1rem;
    font-weight: 600;
}

.price-note {
    margin-bottom: 1.4rem;
}

.pricing-actions {
    margin-top: auto;
}

.inclusion-list {
    display: grid;
    gap: 0.9rem;
    margin: 1.25rem 0 0;
    padding: 0;
    list-style: none;
}

.inclusion-list li {
    position: relative;
    padding: 0 0 0.95rem 1.35rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    color: var(--muted);
    line-height: 1.58;
}

.inclusion-list li:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.inclusion-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.65em;
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #d0d0d0;
}

.pricing-faq {
    max-width: 760px;
    margin: clamp(2.5rem, 5vw, 3.5rem) auto 0;
}

.pricing-faq h3 {
    margin-bottom: 1rem;
}

.compliance-note,
.testimonial-disclaimer {
    margin: 1.25rem 0 0;
    padding-top: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--muted-soft);
    font-size: 0.875rem;
    line-height: 1.65;
}

.compliance-note--spaced,
.testimonial-disclaimer {
    margin-top: var(--space-lg);
}

.testimonial-process-grid .testimonial-card,
.testimonial-grid--reviews .testimonial-card {
    display: flex;
    flex-direction: column;
}

.testimonial-process-grid .testimonial-card h3,
.testimonial-grid--reviews .testimonial-card h3 {
    margin-bottom: 1rem;
    color: var(--muted-soft);
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.alt {
    position: relative;
    background: var(--bg-alt);
    border-block: 1px solid rgba(255, 255, 255, 0.055);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(43, 43, 43, 0.92);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--line);
}

body.admin-bar .site-header {
    top: 32px;
}

@media (max-width: 782px) {
    body.admin-bar .site-header {
        top: 46px;
    }
}

.header-inner,
.footer-inner {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-md);
}

.site-logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.site-logo .custom-logo-link {
    display: inline-flex;
    align-items: center;
    line-height: 0;
}

.site-logo .custom-logo {
    display: block;
    max-height: 32px;
    width: auto;
    height: auto;
}

.site-nav {
    margin-left: auto;
}

.nav-menu,
.footer-menu {
    display: flex;
    gap: 1.5rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

.nav-menu a,
.footer-menu a {
    color: var(--muted);
    font-size: 0.9375rem;
    letter-spacing: 0.01em;
}

.nav-menu a:hover,
.footer-menu a:hover {
    color: #ffffff;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 0.8125rem 1.5rem;
    font-weight: 600;
    font-size: 0.9375rem;
    letter-spacing: 0.01em;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
    border: 1px solid transparent;
}

.header-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 0.4375rem 0.875rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border-radius: 999px;
    color: var(--text);
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.14);
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.header-cta:hover {
    background: rgba(255, 255, 255, 0.09);
    border-color: rgba(255, 255, 255, 0.24);
    color: #ffffff;
}

.btn-primary {
    background: #e0e0e0;
    color: #2a2a2a;
}

.btn-primary:hover {
    background: #ffffff;
    transform: translate3d(0, -1px, 0);
}

.btn-secondary {
    background: transparent;
    color: var(--text);
    border-color: var(--line-strong);
}

.btn-secondary:hover {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.35);
}

.hero {
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--line);
    background:
        radial-gradient(120% 80% at 85% 0%, rgba(255, 255, 255, 0.06) 0%, transparent 55%),
        var(--bg);
}

.hero--with-video {
    background: #171717;
    min-height: clamp(30rem, 78vh, 48rem);
}

.hero-bg-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    pointer-events: none;
}

.hero-video-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(98deg, rgba(18, 18, 18, 0.84) 0%, rgba(18, 18, 18, 0.7) 35%, rgba(18, 18, 18, 0.45) 65%, rgba(18, 18, 18, 0.28) 100%),
        linear-gradient(180deg, rgba(10, 10, 10, 0.35) 0%, rgba(10, 10, 10, 0.62) 100%);
}

.hero-content-layer {
    position: relative;
    z-index: 2;
}

.hero-grid {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: clamp(2rem, 5vw, 3.5rem);
    align-items: center;
}

.hero-copy {
    max-width: 38rem;
}

.eyebrow,
.section-label {
    font-family: var(--font-sans);
    color: var(--muted-soft);
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 0.6875rem;
    font-weight: 600;
    margin: 0 0 var(--space-md);
}

.section-label {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.section-label::before {
    content: "";
    width: 2rem;
    height: 1px;
    background: var(--line-strong);
    flex-shrink: 0;
}

h1,
h2,
h3 {
    margin-top: 0;
    color: #ffffff;
    text-wrap: balance;
}

h1,
h2 {
    font-family: var(--font-heading);
    font-weight: 600;
    line-height: 1.06;
    letter-spacing: 0;
}

h3 {
    font-family: var(--font-heading);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: 0;
}

h1 {
    font-size: clamp(2.75rem, 6.5vw, 4.75rem);
    margin-bottom: var(--space-lg);
}

h2 {
    font-size: clamp(1.875rem, 3.75vw, 3rem);
    margin-bottom: var(--space-md);
}

h3 {
    font-size: 1.1875rem;
    margin-bottom: 0.625rem;
}

p {
    margin-top: 0;
    color: var(--muted);
}

.hero-text,
.section-intro,
.section-side-text {
    font-size: 1.0625rem;
    line-height: 1.7;
}

.section-side-text a {
    color: #ffffff;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 0.15em;
}

.section-side-text a:hover,
.section-side-text a:focus-visible {
    color: var(--accent-hover);
}

.hero-text {
    max-width: 36rem;
    margin-bottom: var(--space-lg);
    color: var(--muted);
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.875rem;
    margin-bottom: var(--space-lg);
}

.hero-actions.center {
    justify-content: center;
}

.hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 0.625rem;
}

.hero-points span {
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 0.875rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid var(--line);
    color: #ebebeb;
    font-size: 0.875rem;
    letter-spacing: 0.01em;
}

.hero-framework {
    position: relative;
    align-self: stretch;
}

.hero-framework-panel {
    display: block;
    min-width: 0;
}

.hero-framework-chrome {
    position: relative;
    height: 100%;
    min-height: 17rem;
    padding: 1.5rem 1.375rem 1.375rem;
    border-radius: var(--radius);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.07) 0%, rgba(255, 255, 255, 0.02) 42%, rgba(0, 0, 0, 0.12) 100%),
        var(--bg-elevated);
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: var(--shadow), inset 0 1px 0 rgba(255, 255, 255, 0.06);
    overflow: hidden;
}

.hero-framework-mark {
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 100%;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.55) 0%, rgba(255, 255, 255, 0.12) 55%, rgba(0, 0, 0, 0.2) 100%);
}

.hero-framework-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
    padding-left: 0.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding-bottom: 1rem;
}

.hero-framework-brand {
    font-family: var(--font-sans);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #ffffff;
}

.hero-framework-tag {
    font-size: 0.6875rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--muted-soft);
}

.hero-framework-steps {
    margin: 0;
    padding: 0 0 0 0.5rem;
    list-style: none;
}

.hero-framework-step {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.875rem 1rem;
    padding-bottom: 1.125rem;
    margin-bottom: 1.125rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.hero-framework-step:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}

.hero-framework-num {
    font-family: var(--font-sans);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: rgba(255, 255, 255, 0.38);
    padding-top: 0.2em;
}

.hero-framework-label {
    display: block;
    font-size: 0.625rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--muted-soft);
    margin-bottom: 0.25rem;
}

.hero-framework-value {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0;
    color: #ffffff;
}

.card,
.testimonial-card,
.faq-item {
    background: var(--card-surface);
    border: 1px solid var(--card-border);
    border-radius: var(--radius);
    box-shadow: var(--shadow-soft);
}

.editorial-intro {
    padding-left: 1.25rem;
    border-left: 1px solid rgba(255, 255, 255, 0.18);
}

.section-head--audience {
    margin-bottom: var(--space-lg);
}

.section--audience {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.audience-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.audience-col {
    position: relative;
    overflow: hidden;
    padding: clamp(1.45rem, 2.7vw, 2rem);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius);
    background:
        linear-gradient(155deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.014)),
        rgba(17, 18, 20, 0.9);
    box-shadow: var(--shadow-soft);
}

.audience-col--fit {
    border-color: rgba(216, 180, 106, 0.2);
}

.audience-col::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.22), transparent);
}

.audience-col--fit::before {
    background: linear-gradient(180deg, var(--accent), rgba(216, 180, 106, 0.08));
}

.audience-col-title {
    margin-bottom: 1rem;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--muted-soft);
}

.testimonial-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
}

.testimonial-grid .testimonial-card:nth-child(3) {
    grid-column: 1 / -1;
}

.section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--space-lg);
    margin-bottom: var(--space-xl);
}

.section-head > div {
    max-width: 38rem;
}

.section-side-text {
    max-width: 22rem;
    margin: 0;
    color: var(--muted);
}

.grid {
    display: grid;
    gap: 1.25rem;
}

.grid.three {
    grid-template-columns: repeat(3, 1fr);
}

.grid.two {
    grid-template-columns: repeat(2, 1fr);
}

.card,
.testimonial-card {
    padding: 1.625rem 1.75rem;
    background: var(--card-surface);
}

.alt .card,
.alt .testimonial-card {
    background: linear-gradient(
        165deg,
        rgba(255, 255, 255, 0.08) 0%,
        rgba(255, 255, 255, 0.025) 50%,
        rgba(0, 0, 0, 0.05) 100%
    );
    border-color: rgba(255, 255, 255, 0.1);
}

.card h3 {
    color: #ffffff;
}

.card p,
.testimonial-card p {
    margin-bottom: 0;
    color: var(--muted);
}

.card .compliance-note {
    color: var(--muted-soft);
}

.section--editorial .container .grid.three {
    margin-top: var(--space-xl);
}

.list-clean {
    list-style: none;
    padding: 0;
    margin: 0;
}

.list-clean li {
    position: relative;
    padding-left: 1.125rem;
    color: var(--muted);
    margin-bottom: 0.75rem;
    line-height: 1.55;
}

.list-clean li:last-child {
    margin-bottom: 0;
}

.list-clean li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #d0d0d0;
}

.testimonial-text {
    font-family: var(--font-display);
    font-size: 1.0625rem;
    font-style: italic;
    line-height: 1.65;
    color: #e6e6e6;
}

.testimonial-name {
    margin-top: 1.25rem;
    color: #ffffff;
    font-family: var(--font-sans);
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.faq-stack {
    display: grid;
    gap: 0.625rem;
    margin-top: var(--space-lg);
}

details.faq-item {
    --faq-anim-duration: 0.28s;
    padding: 0;
    overflow: hidden;
}

.faq-summary {
    cursor: pointer;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 2.75rem 1rem 1.25rem;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.35;
    color: #ffffff;
    position: relative;
    user-select: none;
    transition: opacity 0.2s ease;
}

.faq-summary::-webkit-details-marker {
    display: none;
}

.faq-summary::after {
    content: "";
    position: absolute;
    right: 1.25rem;
    top: 50%;
    width: 0.4rem;
    height: 0.4rem;
    margin-top: -0.2rem;
    border-right: 1.5px solid rgba(255, 255, 255, 0.45);
    border-bottom: 1.5px solid rgba(255, 255, 255, 0.45);
    transform: rotate(45deg);
    transition: transform var(--faq-anim-duration) cubic-bezier(0.16, 1, 0.3, 1);
}

details.faq-item[open] > .faq-summary::after {
    transform: rotate(225deg);
    margin-top: -0.1rem;
}

details.faq-item.closing > .faq-summary::after {
    transform: rotate(45deg);
    margin-top: -0.2rem;
}

@media (prefers-reduced-motion: reduce) {
    .faq-summary::after {
        transition: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .btn,
    .header-cta,
    .learn-concept-card,
    .scroll-progress__bar {
        transition: none;
    }

    .btn-primary:hover,
    .learn-concept-card:hover {
        transform: none;
    }
}

.faq-summary:hover {
    background: rgba(255, 255, 255, 0.03);
    opacity: 1;
}

details.faq-item[open] > .faq-summary {
    background: rgba(216, 180, 106, 0.045);
}

.faq-answer {
    box-sizing: border-box;
    overflow: hidden;
    opacity: 0;
    padding: 0 1.25rem 1.125rem;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    transition: height var(--faq-anim-duration) cubic-bezier(0.16, 1, 0.3, 1),
                opacity var(--faq-anim-duration) cubic-bezier(0.16, 1, 0.3, 1);
}

details.faq-item[open] .faq-answer {
    opacity: 1;
}

details.faq-item.closing .faq-answer {
    opacity: 0;
}

.faq-answer p {
    margin: 0;
    padding-top: 0.75rem;
    font-size: 1rem;
    line-height: 1.65;
    color: #c7cfd8;
}

.cta-section {
    border-top: 1px solid var(--line);
    padding-top: var(--section-y);
    padding-bottom: var(--section-y);
    background:
        radial-gradient(80% 70% at 50% 0%, rgba(216, 180, 106, 0.09) 0%, transparent 62%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0)),
        var(--bg);
}

.cta-section .narrow {
    text-align: center;
    max-width: 850px;
    padding: clamp(1.4rem, 3vw, 2.2rem);
    border: 1px solid rgba(216, 180, 106, 0.16);
    border-radius: var(--radius);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.048), rgba(255, 255, 255, 0.012)),
        rgba(17, 18, 20, 0.72);
    box-shadow: 0 22px 70px rgba(0, 0, 0, 0.26);
}

.cta-section .section-intro {
    margin-left: auto;
    margin-right: auto;
    max-width: 32rem;
}

.site-footer {
    border-top: 1px solid var(--line);
    padding: clamp(3rem, 6vw, 4rem) 0 2rem;
    background: var(--bg);
}

.footer-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 2rem;
}

.footer-copy-group {
    max-width: 48rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.footer-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-disclaimer {
    max-width: 48rem;
    margin: 0.45rem 0 0;
    color: var(--muted-soft);
    font-size: 0.75rem;
    line-height: 1.55;
}

/* Institutional visual system upgrades. */
.site-main--home,
.site-main--pricing,
.site-main--reviews,
.site-main--faq,
.site-main--learn,
.site-main--learn-article {
    background:
        radial-gradient(90% 60% at 50% 0%, rgba(216, 180, 106, 0.045) 0%, transparent 48%),
        var(--institutional-bg);
}

.site-main--marketing,
.site-main--editorial,
.site-main--legal {
    position: relative;
    isolation: isolate;
}

.site-main--marketing {
    background:
        radial-gradient(84% 46% at 50% -6%, rgba(216, 180, 106, 0.05) 0%, transparent 58%),
        radial-gradient(56rem 40rem at 92% 20rem, rgba(255, 255, 255, 0.022), transparent 74%),
        radial-gradient(46rem 34rem at 8% 112rem, rgba(216, 180, 106, 0.022), transparent 76%),
        var(--institutional-bg);
}

.site-main--editorial {
    background:
        radial-gradient(70% 42% at 50% -4%, rgba(216, 180, 106, 0.038) 0%, transparent 58%),
        radial-gradient(44rem 28rem at 92% 2rem, rgba(255, 255, 255, 0.018), transparent 72%),
        var(--institutional-bg);
}

.site-main--legal {
    background:
        radial-gradient(64% 34% at 50% -6%, rgba(216, 180, 106, 0.028) 0%, transparent 62%),
        var(--institutional-bg);
}

.site-main--marketing::before,
.site-main--editorial::before,
.site-main--legal::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.site-main--marketing::before {
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.022) 1px, transparent 1px),
        linear-gradient(90deg, rgba(216, 180, 106, 0.03) 1px, transparent 1px);
    background-size: 108px 108px;
    background-position: center top;
    opacity: 0.62;
    mask-image: radial-gradient(82% 72% at 50% 22%, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.74) 44%, rgba(0, 0, 0, 0.34) 78%, transparent 100%);
    -webkit-mask-image: radial-gradient(82% 72% at 50% 22%, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.74) 44%, rgba(0, 0, 0, 0.34) 78%, transparent 100%);
}

.site-main--editorial::before {
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.016) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.014) 1px, transparent 1px);
    background-size: 124px 124px;
    background-position: center top;
    opacity: 0.32;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.68) 0%, rgba(0, 0, 0, 0.28) 42%, transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.68) 0%, rgba(0, 0, 0, 0.28) 42%, transparent 100%);
}

.site-main--legal::before {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.016), transparent 34rem),
        radial-gradient(54% 26% at 50% 0%, rgba(255, 255, 255, 0.024), transparent 72%);
    opacity: 0.46;
}

.site-main--marketing > .section,
.site-main--editorial > .section,
.site-main--legal > .section {
    position: relative;
    background: transparent;
    border: none;
}

.site-main--marketing > .section > .container,
.site-main--editorial > .section > .container,
.site-main--legal > .section > .container {
    position: relative;
    z-index: 1;
}

.site-main--marketing > .section {
    padding-top: clamp(3.7rem, 6vw, 5rem);
    padding-bottom: clamp(3.7rem, 6vw, 5rem);
}

.site-main--marketing > .section.alt,
.site-main--marketing > .section.section--audience.alt,
.site-main--marketing > .section.section--pricing.alt {
    background: transparent;
    border: none;
    box-shadow: none;
}

.site-main--marketing .section--hero {
    padding-top: clamp(5.6rem, 12vw, 7.25rem);
    padding-bottom: clamp(3rem, 6.5vw, 4.5rem);
    background: transparent;
}

.site-main--marketing .section--hero h1,
.site-main--legal .section--hero h1 {
    max-width: 14ch;
}

.site-main--marketing .section--hero .hero-text,
.site-main--legal .section--hero .hero-text {
    max-width: 44rem;
    color: #d7dde3;
}

.site-main--marketing .section-label::before,
.site-main--legal .section-label::before {
    width: 1.35rem;
    background: linear-gradient(90deg, rgba(216, 180, 106, 0.78), rgba(216, 180, 106, 0.08));
}

.site-main--marketing :is(
    .card,
    .faq-item,
    .contact-email,
    .pricing-panel--timeline,
    .pricing-access-card,
    .mentor-copy-panel,
    .mentor-principle-card,
    .learn-concept-card,
    .audience-col
) {
    border: 1px solid rgba(216, 180, 106, 0.12);
    border-radius: 16px;
    background:
        linear-gradient(165deg, rgba(255, 255, 255, 0.056) 0%, rgba(255, 255, 255, 0.022) 54%, rgba(0, 0, 0, 0.08) 100%),
        rgba(18, 19, 22, 0.84) !important;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.24);
}

.site-main--marketing :is(.pricing-panel--timeline, .pricing-access-card, .mentor-copy-panel) {
    overflow: hidden;
}

.site-main--marketing .section-side-text,
.site-main--marketing .section-intro,
.site-main--marketing .card p,
.site-main--marketing .faq-answer p {
    color: #bcc5ce;
}

.site-main--marketing .compliance-note,
.site-main--marketing .card .compliance-note {
    color: var(--muted-soft);
}

.site-main--marketing .cta-section {
    padding-top: clamp(3rem, 5.5vw, 4.25rem);
    padding-bottom: clamp(3.4rem, 6vw, 4.85rem);
}

.site-main--editorial > .section {
    padding-top: clamp(3.25rem, 5.2vw, 4.5rem);
    padding-bottom: clamp(3.25rem, 5.2vw, 4.5rem);
}

.site-main--editorial .learn-article-hero,
.site-main--legal .legal-hero {
    background: transparent;
}

.site-main--editorial .learn-article-shell {
    max-width: 760px;
}

.site-main--editorial .learn-article-meta,
.site-main--editorial .learn-article-continue,
.site-main--editorial .learn-article-callout,
.site-main--editorial .learn-article-related-item {
    border: 1px solid rgba(216, 180, 106, 0.1);
    border-radius: 16px;
    background:
        linear-gradient(165deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.014) 55%, rgba(0, 0, 0, 0.05)),
        rgba(17, 18, 20, 0.7);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.16);
}

.site-main--editorial .learn-article-body {
    max-width: 68ch;
    color: #d0d6de;
}

.site-main--editorial .learn-article-body p,
.site-main--editorial .learn-article-body li {
    color: #d0d6de;
}

.site-main--legal > .section {
    padding-top: clamp(3rem, 5vw, 4.25rem);
    padding-bottom: clamp(3rem, 5vw, 4.25rem);
}

.site-main--legal .legal-entry-body {
    padding: clamp(1.55rem, 3vw, 2.1rem);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 18px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.032), rgba(255, 255, 255, 0.01)),
        rgba(16, 17, 19, 0.84);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.16);
}

.site-main--legal .legal-content {
    max-width: 68ch;
    color: #c8d0d8;
}

.site-header {
    background: rgba(11, 12, 14, 0.85);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-bottom-color: var(--border);
}

.scroll-progress {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    overflow: hidden;
    background: transparent;
    pointer-events: none;
}

.scroll-progress__bar {
    display: block;
    width: 100%;
    height: 100%;
    transform: scaleX(var(--scroll-progress, 0));
    transform-origin: left center;
    background: linear-gradient(90deg, rgba(216, 180, 106, 0), rgba(216, 180, 106, 0.78), rgba(228, 196, 126, 0.52));
    opacity: 0.82;
    transition: transform 120ms linear;
}

.alt {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.018), rgba(255, 255, 255, 0.008)),
        var(--surface);
    border-block-color: var(--border);
}

.section {
    padding: clamp(4.5rem, 7vw, 6rem) 0;
}

.section-head {
    gap: clamp(1.5rem, 4vw, 3.25rem);
    margin-bottom: clamp(2.25rem, 5vw, 4rem);
}

.section-head--center {
    justify-content: center;
    text-align: center;
}

.section-head--center > div {
    max-width: 50rem;
}

.section-head--center .section-label {
    justify-content: center;
}

.section-head--center .section-intro {
    max-width: 42rem;
    margin: 0 auto;
}

.eyebrow,
.section-label,
.learn-panel-eyebrow,
.price-kicker,
.curriculum-number,
.framework-step-index {
    color: var(--accent);
}

.section-label::before {
    background: linear-gradient(90deg, var(--accent), rgba(216, 180, 106, 0.12));
}

.card,
.testimonial-card,
.faq-item,
.audience-col,
.pricing-panel--included,
.learn-hero-panel,
.learn-concept-card,
.learn-article-continue,
.hero-framework-chrome {
    border-color: var(--border);
    background:
        linear-gradient(155deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018) 54%, rgba(0, 0, 0, 0.08)),
        var(--surface) !important;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.26);
}

.card,
.testimonial-card,
.pricing-panel--included {
    border-radius: 14px;
}

.btn-primary {
    background: var(--accent);
    color: #11100c;
    border-color: rgba(255, 255, 255, 0.16);
}

.btn-primary:hover {
    background: var(--accent-hover);
}

.btn-secondary {
    border-color: var(--border-strong);
}

.header-cta {
    background: rgba(216, 180, 106, 0.1);
    border-color: var(--accent-border);
    color: #f7edd8;
}

.header-cta:hover {
    background: rgba(216, 180, 106, 0.16);
    border-color: rgba(216, 180, 106, 0.5);
}

.hero--with-video {
    background: #090a0b;
}

.site-main--home .hero--with-video {
    min-height: clamp(39rem, 88vh, 53rem);
}

.hero-video-overlay {
    background:
        radial-gradient(60% 50% at 78% 28%, rgba(216, 180, 106, 0.14) 0%, transparent 58%),
        linear-gradient(98deg, rgba(5, 6, 6, 0.95) 0%, rgba(5, 6, 6, 0.84) 42%, rgba(5, 6, 6, 0.58) 72%, rgba(5, 6, 6, 0.74) 100%),
        linear-gradient(180deg, rgba(5, 5, 5, 0.3) 0%, rgba(5, 5, 5, 0.75) 100%);
}

.site-main--home .hero-grid {
    grid-template-columns: minmax(0, 1.12fr) minmax(18rem, 0.68fr);
    gap: clamp(1.65rem, 4vw, 3.25rem);
    padding-top: clamp(6.5rem, 13vh, 9rem);
    padding-bottom: clamp(3.5rem, 8vh, 5.5rem);
}

.site-main--home .hero-copy {
    max-width: 48rem;
    padding-bottom: clamp(0.5rem, 2vw, 1.25rem);
}

.hero-framework {
    align-self: end;
    margin-top: clamp(0.75rem, 2vw, 1.75rem);
}

.site-main--home h1 {
    max-width: 12ch;
    font-size: clamp(3rem, 6.2vw, 5.5rem);
    line-height: 0.98;
}

.site-main--home .hero-text {
    max-width: 42rem;
    margin-bottom: clamp(1.35rem, 2.5vw, 1.8rem);
    color: #dce2e8;
    font-size: clamp(1.05rem, 1.45vw, 1.22rem);
}

.hero-actions .btn {
    min-height: 3rem;
}

.hero-points {
    gap: 0.7rem;
    max-width: 46rem;
}

.hero-points span {
    background: rgba(255, 255, 255, 0.055);
    border-color: rgba(216, 180, 106, 0.18);
    color: #ece5d7;
}

.hero-points span::before {
    content: "";
    width: 0.42rem;
    height: 0.42rem;
    margin-right: 0.5rem;
    border-radius: 999px;
    background: var(--accent);
    box-shadow: 0 0 16px rgba(216, 180, 106, 0.42);
}

.hero-framework-chrome {
    min-height: 0;
    padding: clamp(1rem, 1.8vw, 1.3rem);
    border-color: rgba(216, 180, 106, 0.18);
    background:
        linear-gradient(160deg, rgba(216, 180, 106, 0.09), rgba(255, 255, 255, 0.03) 34%, rgba(0, 0, 0, 0.14)),
        var(--surface) !important;
    box-shadow: 0 0 24px rgba(216, 180, 106, 0.05), 0 14px 36px rgba(0, 0, 0, 0.2);
}

.hero-framework-head {
    margin-bottom: 0.75rem;
    padding-left: 0;
    border-bottom-color: rgba(216, 180, 106, 0.12);
    padding-bottom: 0.75rem;
}

.hero-framework-intro {
    margin: 0 0 0.85rem;
    color: #d2d7de;
    font-size: 0.9rem;
    line-height: 1.48;
}

.hero-framework-steps {
    display: grid;
    gap: 0.52rem;
    padding-left: 0;
}

.hero-framework-step {
    display: block;
    padding: 0.62rem 0.75rem;
    margin: 0;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.022);
}

.hero-framework-step:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

.hero-framework-value {
    margin: 0;
    font-size: 0.92rem;
    font-weight: 600;
    color: #f1f3f5;
    line-height: 1.4;
}

.clarity-grid {
    gap: clamp(1rem, 2vw, 1.5rem);
}

.section--transformation {
    position: relative;
    overflow: clip;
    padding-top: clamp(3.7rem, 6.5vw, 4.9rem);
    padding-bottom: clamp(3.7rem, 6.5vw, 4.9rem);
    background:
        radial-gradient(56% 48% at 18% 0%, rgba(216, 180, 106, 0.052), transparent 64%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.012), rgba(255, 255, 255, 0)),
        var(--institutional-bg);
}

.section--transformation .section-head {
    margin-bottom: clamp(1.5rem, 3vw, 2.2rem);
}

.transformation-stage {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: clamp(0.85rem, 1.8vw, 1.25rem);
    align-items: stretch;
}

.transformation-stage::before {
    content: "";
    position: absolute;
    inset: clamp(-1rem, -2vw, -0.55rem);
    z-index: -1;
    pointer-events: none;
    border-radius: clamp(1.2rem, 2.4vw, 1.8rem);
    background:
        radial-gradient(30% 66% at 50% 50%, rgba(216, 180, 106, 0.09), transparent 70%),
        radial-gradient(42% 58% at 94% 12%, rgba(255, 255, 255, 0.035), transparent 72%),
        radial-gradient(34% 48% at 6% 82%, rgba(255, 255, 255, 0.02), transparent 74%);
    opacity: 0.54;
}

.transformation-card,
.clarity-card {
    position: relative;
    min-height: 100%;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--radius-md);
    background:
        radial-gradient(80% 58% at 92% 0%, rgba(216, 180, 106, 0.055), transparent 68%),
        linear-gradient(155deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.017) 54%, rgba(0, 0, 0, 0.1)),
        rgba(17, 18, 20, 0.92);
    box-shadow:
        0 20px 56px rgba(0, 0, 0, 0.28),
        0 0 0 1px rgba(255, 255, 255, 0.018) inset;
}

.transformation-card {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
    overflow: visible;
    padding: clamp(1.02rem, 1.55vw, 1.2rem);
    padding-bottom: clamp(1.14rem, 1.8vw, 1.34rem);
    border-radius: clamp(0.95rem, 1.5vw, 1.1rem);
    box-shadow:
        0 16px 40px rgba(0, 0, 0, 0.24),
        0 0 0 1px rgba(255, 255, 255, 0.016) inset;
    transition: none;
}

.transformation-card::before,
.clarity-card::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.065), transparent 34%);
    opacity: 0.7;
}

.clarity-card::after {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.26), rgba(255, 255, 255, 0.025));
    opacity: 0.86;
}

.transformation-card::before {
    background:
        linear-gradient(115deg, rgba(255, 255, 255, 0.08), transparent 31%),
        radial-gradient(72% 42% at 80% 0%, rgba(216, 180, 106, 0.09), transparent 72%);
    opacity: 0.82;
}

.transformation-card--problem {
    border-color: rgba(255, 255, 255, 0.075);
    background:
        radial-gradient(64% 52% at 18% 8%, rgba(255, 255, 255, 0.035), transparent 68%),
        linear-gradient(155deg, rgba(255, 255, 255, 0.042), rgba(255, 255, 255, 0.01) 56%, rgba(0, 0, 0, 0.24)),
        rgba(10, 11, 13, 0.92);
}

.transformation-card--process {
    border-color: rgba(216, 180, 106, 0.27);
    background:
        radial-gradient(72% 52% at 92% 0%, rgba(216, 180, 106, 0.16), transparent 72%),
        linear-gradient(155deg, rgba(216, 180, 106, 0.075), rgba(255, 255, 255, 0.022) 46%, rgba(0, 0, 0, 0.12)),
        rgba(17, 18, 20, 0.96);
}

.clarity-card--fit {
    border-color: rgba(216, 180, 106, 0.24);
}

.clarity-card--fit::after {
    background: linear-gradient(180deg, var(--accent), rgba(216, 180, 106, 0.08));
}

.transformation-card > *,
.clarity-card > * {
    position: relative;
    z-index: 1;
}

.transformation-card-head,
.clarity-card-head {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.7rem;
    margin-bottom: 0.9rem;
}

.transformation-card-head {
    margin-bottom: 0.5rem;
}

.clarity-card-head > span {
    min-width: auto;
    color: #efe2c8;
    font-size: 0.62rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.transformation-card-head .visual-label,
.clarity-card-head .section-label {
    margin: 0;
}

.transformation-card-label {
    display: inline-flex;
    align-items: center;
    min-height: 1.85rem;
    padding: 0.35rem 0.75rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.03);
    letter-spacing: 0.12em;
}

.transformation-card--process .transformation-card-label {
    border-color: rgba(216, 180, 106, 0.18);
    background: rgba(216, 180, 106, 0.07);
    color: #f0dfbf;
}

.transformation-card h3,
.clarity-card h3 {
    margin-bottom: 0.9rem;
    font-size: clamp(1.14rem, 1.85vw, 1.42rem);
    line-height: 1.18;
}

.transformation-card h3 {
    max-width: 22rem;
    margin-bottom: clamp(0.34rem, 0.7vw, 0.48rem);
    font-size: clamp(1.05rem, 1.38vw, 1.24rem);
    line-height: 1.14;
}

.transformation-card-copy {
    max-width: 25rem;
    margin: 0 0 clamp(0.5rem, 0.88vw, 0.68rem);
    color: var(--muted);
    font-size: clamp(0.83rem, 0.86vw, 0.89rem);
    line-height: 1.42;
}

.transformation-list,
.clarity-card .list-clean {
    display: grid;
    gap: 0.55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.transformation-list {
    gap: 0.42rem;
    margin-top: auto;
    padding-bottom: 0.08rem;
}

.transformation-list li,
.clarity-card .list-clean li {
    position: relative;
    margin: 0;
    min-width: 0;
    padding: 0.64rem 0.85rem 0.64rem 1.85rem;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.026);
    color: var(--muted);
    font-size: 0.96rem;
    line-height: 1.48;
    overflow-wrap: normal;
    word-break: normal;
}

.transformation-list li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.7rem;
    align-items: center;
    min-height: 2.5rem;
    padding: 0.62rem 0.84rem;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 12px;
    box-shadow: none;
}

.transformation-list li > span {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    width: auto;
    height: auto;
    min-width: 1.45rem;
    border-radius: 0;
    font-size: 0.55rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.14em;
}

.transformation-list li strong {
    min-width: 0;
    color: #ece7db;
    font-size: 0.84rem;
    line-height: 1.24;
    overflow-wrap: normal;
    word-break: normal;
}

.transformation-list--fragmented li {
    background:
        linear-gradient(90deg, rgba(255, 255, 255, 0.12), transparent 2px),
        linear-gradient(145deg, rgba(255, 255, 255, 0.028), rgba(255, 255, 255, 0.008));
}

.transformation-list--fragmented li > span {
    color: rgba(255, 255, 255, 0.46);
}

.transformation-list--ordered li {
    background:
        linear-gradient(90deg, rgba(216, 180, 106, 0.34), transparent 2px),
        linear-gradient(135deg, rgba(216, 180, 106, 0.085), rgba(255, 255, 255, 0.014)),
        rgba(13, 14, 16, 0.66);
}

.transformation-list--ordered li::after {
    content: none;
}

.transformation-list--ordered li > span {
    color: var(--accent-hover);
}

.transformation-connector {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 3.4rem;
    color: rgba(239, 226, 200, 0.54);
}

.transformation-connector span {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.42rem;
    margin: auto;
    padding: 0.28rem 0;
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.transformation-connector span::before,
.transformation-connector span::after {
    content: "";
    display: block;
    width: 0.9rem;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(216, 180, 106, 0.26));
}

.transformation-connector span::after {
    background: linear-gradient(90deg, rgba(216, 180, 106, 0.26), transparent);
}

.transformation-stage .transformation-card:hover {
    transform: none;
    border-color: inherit;
}

.transformation-card--problem:hover {
    border-color: rgba(255, 255, 255, 0.075);
}

.transformation-card--process:hover {
    border-color: rgba(216, 180, 106, 0.27);
}

.clarity-card .list-clean,
.clarity-card .list-clean li {
    gap: 0.5rem;
}

.clarity-card .list-clean li::before {
    left: 0.82rem;
    top: 50%;
    width: 5px;
    height: 5px;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.42);
}

.clarity-card--fit .list-clean li::before {
    background: var(--accent);
}

.clarity-card {
    display: flex;
    flex-direction: column;
    padding: clamp(1.35rem, 2.5vw, 1.95rem);
}

.clarity-card p:not(.section-label) {
    margin: 0 0 clamp(1rem, 2vw, 1.25rem);
    color: var(--muted);
    line-height: 1.62;
}

.clarity-card--not {
    justify-content: flex-start;
}

.curriculum-grid {
    position: relative;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(0.85rem, 1.8vw, 1.1rem);
}

.curriculum-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 14.5rem;
    padding: 1.2rem 1.2rem 1.35rem;
    overflow: hidden;
}

.curriculum-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 2px;
    background: linear-gradient(180deg, var(--accent), rgba(216, 180, 106, 0.08));
    opacity: 0.7;
}

.curriculum-number {
    margin-bottom: 0;
    letter-spacing: 0.16em;
}

.curriculum-card h3 {
    min-height: auto;
    margin-bottom: 0.5rem;
    font-size: 1.02rem;
    line-height: 1.22;
}

.curriculum-card p {
    margin-top: auto;
    color: var(--muted);
    font-size: 0.95rem;
    line-height: 1.55;
}

.curriculum-framework-block {
    margin-top: clamp(1.6rem, 4vw, 2.75rem);
}

.curriculum-framework-block .section-head {
    margin-bottom: clamp(1.2rem, 3vw, 1.75rem);
}

.curriculum-fallback {
    margin-top: clamp(1rem, 2.5vw, 1.5rem);
}

.curriculum-fallback-shell {
    display: grid;
    grid-template-columns: minmax(16rem, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(1rem, 2.4vw, 1.5rem);
    align-items: start;
    padding: clamp(1rem, 2.3vw, 1.4rem);
    border: 1px solid rgba(216, 180, 106, 0.14);
    border-radius: clamp(1rem, 2vw, 1.45rem);
    background:
        radial-gradient(70% 52% at 100% 0%, rgba(216, 180, 106, 0.12), transparent 72%),
        linear-gradient(155deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.016) 56%, rgba(0, 0, 0, 0.12)),
        rgba(17, 18, 20, 0.92);
    box-shadow: 0 24px 58px rgba(0, 0, 0, 0.22);
}

.curriculum-fallback-intro h3 {
    margin: 0 0 0.65rem;
}

.curriculum-fallback-intro p:last-of-type {
    margin-bottom: 0;
    color: var(--muted);
}

.curriculum-fallback-actions {
    margin-top: 1.15rem;
}

.curriculum-fallback-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.curriculum-fallback-item {
    min-width: 0;
    padding: 0.95rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-md);
    background:
        linear-gradient(155deg, rgba(255, 255, 255, 0.042), rgba(255, 255, 255, 0.016)),
        rgba(13, 14, 16, 0.92);
}

.curriculum-fallback-item-head {
    display: flex;
    align-items: start;
    gap: 0.85rem;
    margin-bottom: 0.75rem;
}

.curriculum-fallback-item-head h3 {
    margin: 0.2rem 0 0;
    font-size: 1rem;
    line-height: 1.25;
}

.curriculum-fallback-item > p {
    margin: 0;
    color: var(--muted);
    font-size: 0.95rem;
    line-height: 1.55;
}

.curriculum-fallback-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.85rem;
}

.curriculum-fallback-chips span {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    padding: 0.35rem 0.6rem;
    border: 1px solid rgba(216, 180, 106, 0.2);
    border-radius: 999px;
    background: rgba(216, 180, 106, 0.07);
    color: #efe2c8;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.1;
}

.section--market-stack {
    position: relative;
    overflow: clip;
    padding-top: clamp(4rem, 7vw, 5.6rem);
    padding-bottom: clamp(4rem, 7vw, 5.6rem);
    background:
        radial-gradient(62% 50% at 50% 0%, rgba(216, 180, 106, 0.04), transparent 68%),
        var(--institutional-bg);
}

.section--market-stack::before {
    content: none;
}

.section--market-stack .section-head {
    margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
}

.market-stack-shell {
    position: relative;
    display: grid;
    grid-template-columns: minmax(16rem, 0.78fr) minmax(0, 1.22fr);
    gap: clamp(1rem, 3vw, 1.5rem);
    align-items: stretch;
    max-width: 1040px;
    margin: 0 auto;
}

.market-stack-summary {
    position: relative;
    overflow: hidden;
    padding: clamp(1.25rem, 2.4vw, 1.75rem);
    border: 1px solid rgba(216, 180, 106, 0.16);
    border-radius: 16px;
    background:
        linear-gradient(155deg, rgba(216, 180, 106, 0.07), rgba(255, 255, 255, 0.018) 48%, rgba(0, 0, 0, 0.12)),
        rgba(17, 18, 20, 0.78);
    box-shadow: var(--shadow-soft);
}

.market-stack-summary::after {
    content: "";
    position: absolute;
    inset: auto 1.4rem 1.4rem;
    height: 1px;
    background: linear-gradient(90deg, rgba(216, 180, 106, 0.5), transparent);
    opacity: 0.65;
}

.market-stack-summary h3 {
    margin: 0 0 0.65rem;
    font-size: clamp(1.35rem, 2.4vw, 1.75rem);
    line-height: 1.15;
}

.market-stack-summary p:last-child {
    margin: 0;
    color: var(--muted);
    line-height: 1.65;
}

.market-stack {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(0.75rem, 1.6vw, 1rem);
}

.market-stack-layer {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.9rem;
    align-items: start;
    min-height: 8.25rem;
    padding: clamp(1rem, 2vw, 1.25rem);
    margin-left: 0;
    border: 1px solid rgba(216, 180, 106, 0.14);
    border-radius: 14px;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
        rgba(17, 18, 20, 0.94);
    box-shadow: 0 16px 44px rgba(0, 0, 0, 0.22);
}

.market-stack-layer span {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 2.15rem;
    height: 2.15rem;
    border: 1px solid rgba(216, 180, 106, 0.3);
    border-radius: 999px;
    background: var(--institutional-bg);
    color: var(--accent);
    font-size: 0.7rem;
    font-weight: 800;
}

.market-stack-layer h3 {
    margin: 0 0 0.35rem;
    font-size: 1rem;
    line-height: 1.25;
    overflow-wrap: normal;
    word-break: normal;
}

.market-stack-layer p {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.55;
}

.section--framework {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(60% 60% at 50% 0%, rgba(216, 180, 106, 0.08), transparent 62%),
        var(--institutional-bg);
}

.framework-rail {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
    position: relative;
}

.framework-rail::before {
    content: "";
    position: absolute;
    left: 7%;
    right: 7%;
    top: 2.05rem;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(216, 180, 106, 0.55), transparent);
}

.framework-step-card {
    position: relative;
    min-height: 13.25rem;
    padding: 1.25rem 1.05rem 1.1rem;
    border: 1px solid var(--border);
    border-radius: 14px;
    background:
        linear-gradient(160deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.016)),
        var(--surface);
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.2);
}

.framework-step-index {
    display: grid;
    place-items: center;
    width: 2.1rem;
    height: 2.1rem;
    margin-bottom: 1.1rem;
    border-radius: 50%;
    background: var(--institutional-bg);
    border: 1px solid var(--accent-border);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.framework-step-card h3 {
    margin-bottom: 0.65rem;
    font-size: 1rem;
}

.framework-step-card p {
    margin: 0;
    color: var(--muted);
    font-size: 0.925rem;
    line-height: 1.58;
}

.pricing-grid {
    grid-template-columns: minmax(20rem, 0.78fr) minmax(0, 1fr);
    gap: clamp(1.25rem, 3vw, 2rem);
    align-items: stretch;
}

.pricing-overview-grid,
.pricing-access-grid {
    display: grid;
    gap: clamp(1rem, 2.4vw, 1.5rem);
    align-items: stretch;
}

.pricing-overview-grid {
    grid-template-columns: minmax(20rem, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(0.85rem, 2vw, 1.25rem);
}

.pricing-access-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 0.95rem;
}

.pricing-panel--price {
    padding: clamp(1.45rem, 2.6vw, 2rem);
    border-color: var(--accent-border);
    background:
        linear-gradient(160deg, rgba(216, 180, 106, 0.13), rgba(255, 255, 255, 0.035) 38%, rgba(0, 0, 0, 0.12)),
        var(--surface) !important;
}

.price-value span {
    color: #ffffff;
}

.price-value small {
    display: block;
    margin-top: 0.35rem;
    color: #f3ead7;
    font-family: var(--font-body);
    font-size: clamp(0.92rem, 1.2vw, 1.05rem);
    font-weight: 600;
    line-height: 1.2;
}

.price-description {
    margin-bottom: 0.8rem;
    color: #f3ead7;
    font-size: 1rem;
    line-height: 1.52;
}

.price-note {
    color: var(--muted-soft);
    font-size: 0.92rem;
}

.pricing-panel--included {
    padding: clamp(1.5rem, 3vw, 2.25rem);
}

.pricing-panel--timeline,
.pricing-access-card {
    position: relative;
    padding: clamp(1.35rem, 2.5vw, 1.8rem);
    border: 1px solid rgba(216, 180, 106, 0.16);
    border-radius: 16px;
    background:
        linear-gradient(155deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.014) 58%, rgba(0, 0, 0, 0.1)),
        var(--surface);
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
}

.pricing-panel--timeline {
    border-color: rgba(216, 180, 106, 0.22);
}

.pricing-access-card--course {
    border-color: rgba(216, 180, 106, 0.24);
}

.pricing-access-card--community {
    border-color: rgba(255, 255, 255, 0.1);
}

.pricing-panel--included h3,
.pricing-panel--included h2,
.pricing-panel--timeline h2,
.pricing-panel--timeline h3,
.pricing-access-card h2,
.pricing-access-card h3 {
    margin-bottom: 0.85rem;
}

.pricing-timeline h3,
.pricing-timeline h4 {
    margin: 0 0 0.25rem;
    color: #ffffff;
    font-family: var(--font-heading);
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.25;
}

.pricing-timeline {
    display: grid;
    gap: 0.85rem;
    margin: 1.25rem 0 0;
    padding: 0;
    list-style: none;
}

.pricing-timeline li {
    display: grid;
    grid-template-columns: 2.35rem minmax(0, 1fr);
    gap: 0.85rem;
    align-items: start;
    padding: 0.95rem;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.025);
}

.pricing-timeline li > span {
    display: grid;
    place-items: center;
    width: 2.15rem;
    height: 2.15rem;
    border: 1px solid rgba(216, 180, 106, 0.34);
    border-radius: 999px;
    background: rgba(216, 180, 106, 0.08);
    color: var(--accent-hover);
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1;
}

.pricing-timeline p {
    margin: 0;
    color: var(--muted);
    font-size: 0.92rem;
    line-height: 1.55;
}

.inclusion-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 1rem;
}

.inclusion-list li {
    padding: 0.75rem 0.75rem 0.75rem 2rem;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.025);
}

.inclusion-list li::before {
    left: 0.85rem;
    top: 1.35rem;
    background: var(--accent);
}

.pricing-access-card .inclusion-list {
    margin-top: 1.25rem;
}

.community-subscription-note {
    margin: 0.95rem 0 0;
    padding: 0.8rem 0.9rem;
    border: 1px solid rgba(216, 180, 106, 0.18);
    border-radius: 12px;
    background: rgba(216, 180, 106, 0.055);
    color: #efe2c8;
    font-size: 0.9rem;
    line-height: 1.58;
}

.testimonial-process-grid,
.testimonial-grid--reviews {
    gap: 1rem;
}

.testimonial-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
}

.testimonial-process-grid .testimonial-card:first-child {
    border-color: rgba(216, 180, 106, 0.24);
    background:
        linear-gradient(145deg, rgba(216, 180, 106, 0.085), rgba(255, 255, 255, 0.018)),
        var(--surface);
}

.testimonial-process-grid .testimonial-card:first-child .testimonial-text {
    font-size: clamp(1.18rem, 1.8vw, 1.42rem);
    line-height: 1.68;
}

.testimonial-card::before {
    content: "“";
    position: absolute;
    right: 1.1rem;
    top: 0.2rem;
    color: rgba(216, 180, 106, 0.12);
    font-family: var(--font-heading);
    font-size: 6rem;
    line-height: 1;
}

.testimonial-card > * {
    position: relative;
    z-index: 1;
}

.testimonial-process-grid .testimonial-card,
.testimonial-grid--reviews .testimonial-card {
    padding: clamp(1.35rem, 2.4vw, 1.9rem);
}

.testimonial-text {
    color: #ede7dc;
    font-size: clamp(1.04rem, 1.2vw, 1.16rem);
    line-height: 1.72;
}

.testimonial-attribution {
    margin-top: auto;
    padding-top: 1.35rem;
}

.testimonial-name {
    margin: 0 0 0.25rem;
}

.testimonial-role {
    margin: 0;
    color: var(--muted-soft);
    font-size: 0.82rem;
    line-height: 1.45;
}

.testimonial-disclaimer,
.compliance-note {
    border-top-color: rgba(216, 180, 106, 0.18);
}

.faq-stack {
    gap: 0.8rem;
}

details.faq-item {
    border-color: var(--border);
    border-radius: 12px;
}

.faq-summary {
    min-height: 3.65rem;
    padding: 1.1rem 3.15rem 1.1rem 1.25rem;
    font-size: 1rem;
}

.faq-summary::after {
    border-color: rgba(216, 180, 106, 0.72);
}

.faq-answer {
    padding-inline: 1.25rem;
    border-top-color: rgba(255, 255, 255, 0.075);
}

.faq-answer p {
    color: var(--muted);
    line-height: 1.72;
}

.site-main--learn .learn-hero,
.site-main--learn-article .learn-article-hero,
.site-main--pricing .pricing-hero,
.site-main--reviews .reviews-hero,
.site-main--faq .faq-hero {
    background:
        radial-gradient(70% 65% at 75% 0%, rgba(216, 180, 106, 0.075), transparent 58%),
        var(--institutional-bg);
}

.learn-card,
.learn-featured-card,
.learn-cluster-card {
    min-height: 100%;
    position: relative;
}

.learn-card h3 a::after,
.learn-featured-card h3 a::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}

.learn-card h3,
.learn-featured-card h3,
.learn-cluster-card h3 {
    font-size: 1.12rem;
}

.learn-card p,
.learn-featured-card p,
.learn-cluster-card p {
    line-height: 1.68;
}

.learn-featured-grid {
    gap: 1rem;
}

.learn-concept-card {
    border-radius: 12px;
    border-color: rgba(216, 180, 106, 0.16);
}

.learn-article-shell {
    max-width: 740px;
}

.learn-article-title {
    font-size: clamp(2.8rem, 6.4vw, 5rem);
    line-height: 1.02;
}

.learn-article-intro {
    color: #dbe0e5;
    line-height: 1.75;
}

.learn-article-meta {
    align-items: start;
    padding: 1rem;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.025);
}

.learn-article-meta-label,
.learn-category,
.learn-article-kicker {
    color: var(--accent);
}

.learn-article-body {
    max-width: 70ch;
    color: #cbd2d9;
    font-size: clamp(1.075rem, 1.25vw, 1.17rem);
    line-height: 1.82;
}

.learn-article-body p {
    color: #cbd2d9;
}

.learn-article-body h2 {
    margin-top: 3.65rem;
    color: #ffffff;
}

.learn-article-body h3 {
    color: #ffffff;
}

.learn-article-body blockquote {
    border-left-color: var(--accent);
    background: rgba(216, 180, 106, 0.06);
}

/* Typography system. Satoshi is not bundled with this theme, so Manrope is used for headings. */
body,
button,
input,
select,
textarea,
.nav-menu,
.footer-menu,
.header-cta,
.btn,
.faq-summary,
.faq-answer,
.learn-article-body,
.legal-content {
    font-family: var(--font-body);
}

h1,
h2,
h3,
.hero-copy h1,
.section-head h2,
.pricing-panel--included h2,
.pricing-panel--included h3,
.curriculum-card h3,
.framework-step-card h3,
.price-value span,
.learn-article-title,
.learn-article-body h2,
.learn-article-body h3,
.legal-content h2,
.legal-content h3 {
    font-family: var(--font-heading);
    font-weight: 600;
    letter-spacing: 0;
}

.hero-copy h1 {
    line-height: 1.02;
}

.learn-article-title {
    line-height: 1.04;
}

.learn-article-body {
    line-height: 1.76;
}

.learn-article-body p,
.learn-article-body li {
    line-height: 1.76;
}

.testimonial-text,
.learn-article-body blockquote {
    font-family: var(--font-body);
    font-style: normal;
}

.eyebrow,
.section-label,
.learn-panel-eyebrow,
.price-kicker,
.curriculum-number,
.hero-framework-brand,
.hero-framework-tag,
.hero-framework-label,
.mentor-field dt,
.learn-category,
.learn-article-kicker,
.learn-article-meta-label,
.testimonial-name,
.audience-col-title {
    letter-spacing: 0.05em;
}

.framework-step-index {
    font-weight: 700;
    letter-spacing: 0.04em;
}

.btn,
.section-label,
.visual-label,
.transformation-card h3,
.framework-step-card h3,
.process-copy h3,
.member-preview-fallback-card h3,
.price-value span {
    overflow-wrap: normal;
    word-break: normal;
}

/* Structured visual content system. */
.curriculum-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.35rem;
}

.curriculum-card-head .curriculum-number {
    margin-bottom: 0;
}

.curriculum-icon {
    position: relative;
    display: inline-block;
    width: 3.15rem;
    height: 3.15rem;
    flex: 0 0 auto;
    border: 1px solid rgba(216, 180, 106, 0.22);
    border-radius: 12px;
    background:
        linear-gradient(135deg, rgba(216, 180, 106, 0.13), rgba(255, 255, 255, 0.025)),
        var(--surface-2);
    overflow: hidden;
    color: rgba(244, 234, 212, 0.9);
}

.curriculum-icon::before,
.curriculum-icon::after {
    content: "";
    position: absolute;
    border-radius: 999px;
}

.curriculum-icon::before {
    inset: 0.68rem;
    border: 1px solid rgba(216, 180, 106, 0.34);
}

.curriculum-icon::after {
    left: 0.65rem;
    right: 0.65rem;
    top: 50%;
    height: 2px;
    background: var(--accent);
    transform: translateY(-50%);
}

.curriculum-icon--auction::before,
.curriculum-icon--profile::before,
.curriculum-icon--orderflow::before {
    inset: auto 0.7rem 0.7rem;
    height: 1.25rem;
    border-radius: 0;
    border-width: 0 0 1px 1px;
}

.curriculum-icon--profile::after {
    left: 0.85rem;
    right: auto;
    top: 0.75rem;
    width: 1.35rem;
    height: 1.7rem;
    border-radius: 4px;
    background:
        linear-gradient(90deg, var(--accent) 0 35%, transparent 35% 48%, rgba(216, 180, 106, 0.65) 48% 80%, transparent 80%),
        transparent;
}

.curriculum-icon--vwap::after,
.curriculum-icon--risk::after,
.curriculum-icon--review::after {
    left: 0.6rem;
    right: 0.6rem;
    top: 1.78rem;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--accent), transparent);
    transform: rotate(-14deg);
}

.curriculum-icon--orderflow::after {
    width: 0.52rem;
    height: 0.52rem;
    left: 1.32rem;
    top: 1.32rem;
    border-radius: 50%;
    background: var(--accent);
    box-shadow: 0.74rem -0.34rem 0 rgba(216, 180, 106, 0.5), -0.58rem 0.52rem 0 rgba(216, 180, 106, 0.35);
}

.curriculum-icon--macro::after {
    left: 0.78rem;
    right: 0.78rem;
    top: 0.96rem;
    height: 1.35rem;
    border-radius: 50%;
    background:
        linear-gradient(90deg, transparent 48%, rgba(216, 180, 106, 0.75) 48% 52%, transparent 52%),
        linear-gradient(0deg, transparent 48%, rgba(216, 180, 106, 0.45) 48% 52%, transparent 52%);
}

.pricing-visual {
    display: grid;
    gap: 0.55rem;
    margin-bottom: 1.5rem;
    padding: 0.9rem;
    border: 1px solid rgba(216, 180, 106, 0.18);
    border-radius: 12px;
    background:
        linear-gradient(135deg, rgba(216, 180, 106, 0.09), rgba(255, 255, 255, 0.025)),
        rgba(0, 0, 0, 0.12);
}

.pricing-visual span {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 1.75rem;
    padding-left: 0.8rem;
    color: #f2ead7;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
}

.pricing-visual span::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 8px;
    background: linear-gradient(90deg, rgba(216, 180, 106, 0.24), rgba(216, 180, 106, 0.035));
    z-index: -1;
}

.pricing-visual span:nth-child(2)::before {
    right: 14%;
}

.pricing-visual span:nth-child(3)::before {
    right: 28%;
}

.pricing-visual span:nth-child(4)::before {
    right: 20%;
}

.visual-label {
    margin-bottom: 0.55rem !important;
    color: var(--accent) !important;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    line-height: 1.2 !important;
    text-transform: uppercase;
    overflow-wrap: normal;
    word-break: normal;
}

.member-preview-fallback-shell {
    display: grid;
    gap: clamp(0.95rem, 2.2vw, 1.25rem);
    padding: clamp(1rem, 2.6vw, 1.55rem);
    border: 1px solid rgba(216, 180, 106, 0.14);
    border-radius: clamp(1rem, 1.8vw, 1.4rem);
    background:
        radial-gradient(54% 44% at 100% 0%, rgba(216, 180, 106, 0.1), transparent 72%),
        radial-gradient(48% 48% at 0% 100%, rgba(255, 255, 255, 0.026), transparent 68%),
        linear-gradient(160deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.016) 58%, rgba(0, 0, 0, 0.12)),
        rgba(12, 13, 15, 0.92);
    box-shadow: 0 22px 56px rgba(0, 0, 0, 0.28);
}

.member-preview-fallback-grid,
.member-preview-fallback-points {
    display: grid;
}

.member-preview-fallback-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(0.9rem, 2vw, 1.15rem);
    align-items: stretch;
}

.member-preview-fallback-card {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: clamp(15rem, 22vw, 18rem);
    padding: clamp(1.25rem, 2.5vw, 1.65rem);
    border-color: rgba(216, 180, 106, 0.13);
    background:
        linear-gradient(155deg, rgba(255, 255, 255, 0.058), rgba(255, 255, 255, 0.018) 58%, rgba(0, 0, 0, 0.12)),
        rgba(14, 15, 17, 0.94);
}

.member-preview-fallback-card::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(216, 180, 106, 0.36), transparent 38%) top left / 100% 1px no-repeat,
        radial-gradient(60% 42% at 90% 0%, rgba(216, 180, 106, 0.1), transparent 72%);
    opacity: 0.85;
}

.member-preview-fallback-card > * {
    position: relative;
}

.member-preview-fallback-card h3 {
    margin: 0;
    color: #ffffff;
    font-family: var(--font-display);
    font-size: clamp(1.35rem, 2.1vw, 1.75rem);
    line-height: 1.08;
    overflow-wrap: normal;
    word-break: normal;
}

.member-preview-fallback-card > p,
.member-preview-fallback-note {
    margin: 0;
    color: var(--muted);
    line-height: 1.58;
}

.member-preview-fallback-card > p {
    margin-top: 0.85rem;
    max-width: 32rem;
}

.member-preview-fallback-points {
    gap: 0.65rem;
    margin: auto 0 0;
    padding: 1.15rem 0 0;
    list-style: none;
}

.member-preview-fallback-points li {
    display: grid;
    grid-template-columns: 0.48rem minmax(0, 1fr);
    gap: 0.65rem;
    align-items: start;
    color: #efe2c8;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.38;
}

.member-preview-fallback-points li::before {
    content: "";
    width: 0.42rem;
    height: 0.42rem;
    margin-top: 0.45rem;
    border-radius: 999px;
    background: var(--accent);
    box-shadow: 0 0 0 0.28rem rgba(216, 180, 106, 0.08);
}

.member-preview-fallback-note {
    padding: 0.95rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.075);
    border-radius: 0.95rem;
    background: rgba(255, 255, 255, 0.025);
    font-size: 0.88rem;
}

.testimonial-card-head {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin-bottom: 1.15rem;
}

.testimonial-avatar {
    display: grid;
    place-items: center;
    width: 2.65rem;
    height: 2.65rem;
    border-radius: 50%;
    border: 1px solid var(--accent-border);
    background: rgba(216, 180, 106, 0.1);
    color: #f4ead4;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.testimonial-card-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, rgba(216, 180, 106, 0.38), transparent);
}

.section--mentor-teaser {
    padding-top: clamp(3.5rem, 7vw, 5.25rem);
    padding-bottom: clamp(3.5rem, 7vw, 5.25rem);
}

.mentor-teaser-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(1.25rem, 3vw, 2rem);
    align-items: center;
    padding: clamp(1.35rem, 3vw, 2rem);
    border: 1px solid rgba(216, 180, 106, 0.18);
    border-radius: 16px;
    background:
        linear-gradient(135deg, rgba(216, 180, 106, 0.08), rgba(255, 255, 255, 0.022)),
        var(--surface);
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
}

.mentor-teaser-copy {
    max-width: 46rem;
}

.mentor-teaser-copy .section-label {
    margin-bottom: 0.85rem;
}

.mentor-teaser-copy h2 {
    margin-bottom: 0.7rem;
    font-size: clamp(1.55rem, 3vw, 2.35rem);
}

.mentor-teaser-copy p {
    margin-bottom: 0;
    line-height: 1.68;
}

.section--mentor-about {
    scroll-margin-top: 6rem;
}

.mentor-about-grid {
    display: grid;
    grid-template-columns: minmax(20rem, 0.82fr) minmax(0, 1.18fr);
    gap: clamp(1.25rem, 3vw, 2rem);
    align-items: start;
}

.mentor-profile--about {
    position: sticky;
    top: 6.5rem;
}

.mentor-image-placeholder--about {
    min-height: 12rem;
}

.mentor-about-copy {
    display: grid;
    gap: 1rem;
}

.mentor-about-copy > .section-intro {
    margin-bottom: 0.25rem;
}

.mentor-copy-panel {
    padding: 1.35rem 1.45rem;
    border: 1px solid var(--border);
    border-radius: 14px;
    background:
        linear-gradient(155deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.014)),
        var(--surface);
}

.mentor-copy-panel h3 {
    margin-bottom: 0.55rem;
    font-size: 1.05rem;
}

.mentor-copy-panel p {
    margin-bottom: 0;
    line-height: 1.68;
}

.mentor-principle-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 1rem;
    margin-top: clamp(1.75rem, 4vw, 2.75rem);
}

.mentor-principle-card {
    min-height: 100%;
    padding: 1.2rem;
}

.mentor-principle-card h3 {
    margin-bottom: 0.6rem;
    font-size: 1rem;
}

.mentor-principle-card p {
    line-height: 1.62;
}

/* Premium interaction layer. */
body {
    overflow-x: hidden;
}

.site-section {
    position: relative;
    padding: var(--section-y) 0;
}

.section-inner {
    width: min(var(--max-width), calc(100% - 40px));
    margin-inline: auto;
}

.section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    margin: 0 0 var(--space-md);
    color: var(--accent);
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1.25;
    text-transform: uppercase;
}

.section-eyebrow::before {
    content: "";
    width: 2rem;
    height: 1px;
    background: linear-gradient(90deg, var(--accent), rgba(216, 180, 106, 0.12));
    flex: 0 0 auto;
}

.section-heading {
    max-width: 13ch;
    margin: 0 0 1rem;
    color: #ffffff;
    font-family: var(--font-heading);
    font-size: clamp(2rem, 4vw, 3.25rem);
    font-weight: 600;
    line-height: 1.04;
    letter-spacing: 0;
}

.section-subheading {
    max-width: 42rem;
    margin: 0;
    color: var(--muted);
    font-size: clamp(1rem, 1.35vw, 1.125rem);
    line-height: 1.72;
}

.section-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.premium-card,
.visual-panel {
    position: relative;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 18px;
    background:
        linear-gradient(155deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.016) 56%, rgba(0, 0, 0, 0.1)),
        var(--surface);
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.24);
    transition:
        transform 210ms cubic-bezier(0.16, 1, 0.3, 1),
        border-color 210ms ease,
        background 210ms ease;
}

.premium-card {
    padding: clamp(1.25rem, 2.4vw, 1.75rem);
}

.visual-panel {
    overflow: hidden;
}

.premium-card:hover,
.visual-panel:hover {
    transform: translate3d(0, -2px, 0);
    border-color: rgba(216, 180, 106, 0.34);
}

.reveal,
.reveal-up,
.reveal-scale,
.reveal-blur {
    transform-origin: center;
}

html.js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur) {
    opacity: 0;
    transform: translate3d(0, 12px, 0);
    will-change: opacity, transform;
    transition:
        opacity 520ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 520ms cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--reveal-delay, 0ms);
}

html.js .reveal-scale {
    transform: translate3d(0, 10px, 0) scale(0.992);
}

html.js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur).is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    will-change: auto;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-padding-top: 5.5rem;
    }

    html.js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur) {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .stagger > :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur) {
        transition-delay: 0ms;
    }

    .site-main--home .hero--with-video::after,
    .section--training-process {
        animation: none;
    }
}

.nav-menu a,
.footer-menu a {
    position: relative;
    transition: color 180ms ease;
}

.nav-menu a::after,
.footer-menu a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -0.36rem;
    height: 1px;
    background: linear-gradient(90deg, rgba(216, 180, 106, 0), rgba(216, 180, 106, 0.78), rgba(216, 180, 106, 0));
    opacity: 0;
    transform: scaleX(0.55);
    transform-origin: center;
    transition: opacity 190ms ease, transform 190ms ease;
}

.nav-menu a:hover::after,
.nav-menu .current-menu-item > a::after,
.footer-menu a:hover::after {
    opacity: 1;
    transform: scaleX(1);
}

.btn,
.header-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 44px;
    max-width: 100%;
    border-radius: 999px;
    text-align: center;
    line-height: 1;
    letter-spacing: 0;
    white-space: nowrap;
    vertical-align: middle;
    text-decoration: none;
    overflow: visible;
    transform: translate3d(0, 0, 0);
    transition:
        transform 220ms cubic-bezier(0.16, 1, 0.3, 1),
        box-shadow 220ms cubic-bezier(0.16, 1, 0.3, 1),
        background-color 220ms ease,
        background 220ms ease,
        border-color 220ms ease,
        color 220ms ease;
}

.btn {
    padding: 0.94rem 1.35rem;
    font-weight: 700;
    font-size: 0.9375rem;
}

.header-cta {
    padding: 0.76rem 1rem;
    font-weight: 800;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
    transition:
        transform 220ms cubic-bezier(0.16, 1, 0.3, 1),
        box-shadow 220ms cubic-bezier(0.16, 1, 0.3, 1),
        background 220ms ease,
        border-color 220ms ease,
        color 220ms ease;
}

.btn:hover,
.header-cta:hover {
    transform: translate3d(0, -1.5px, 0);
}

.btn:active,
.header-cta:active {
    transform: translate3d(0, 0, 0);
}

.btn:focus-visible,
.header-cta:focus-visible,
.faq-summary:focus-visible {
    outline: 2px solid rgba(216, 180, 106, 0.9);
    outline-offset: 3px;
}

.btn-primary {
    border-color: rgba(255, 255, 255, 0.18);
    background:
        linear-gradient(180deg, #f1d690 0%, #d8b46a 48%, #b88c3d 100%);
    color: #11100c;
    box-shadow:
        0 12px 26px rgba(216, 180, 106, 0.14),
        0 2px 0 rgba(255, 255, 255, 0.2) inset,
        0 -1px 0 rgba(0, 0, 0, 0.22) inset;
}

.btn-primary:hover {
    background:
        linear-gradient(180deg, #f4dc9d 0%, #e4c47e 50%, #c39546 100%);
    border-color: rgba(255, 255, 255, 0.26);
    box-shadow:
        0 16px 32px rgba(216, 180, 106, 0.17),
        0 2px 0 rgba(255, 255, 255, 0.24) inset,
        0 -1px 0 rgba(0, 0, 0, 0.18) inset;
}

.btn-secondary,
.btn-outline {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018));
    border-color: rgba(255, 255, 255, 0.16);
    color: #f5f1e8;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.btn-secondary:hover,
.btn-outline:hover {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.03));
    border-color: rgba(216, 180, 106, 0.46);
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.btn-ghost {
    min-height: 44px;
    padding-inline: 0.75rem;
    border-color: transparent;
    background: transparent;
    color: #f4ead4;
    box-shadow: none;
}

.btn-ghost:hover {
    background: rgba(216, 180, 106, 0.08);
    border-color: transparent;
}

.btn--with-arrow::after {
    content: "";
    width: 0.42rem;
    height: 0.42rem;
    flex: 0 0 auto;
    border-top: 1.6px solid currentColor;
    border-right: 1.6px solid currentColor;
    transform: rotate(45deg);
    opacity: 0.78;
    transition: transform 200ms cubic-bezier(0.16, 1, 0.3, 1), opacity 200ms ease;
}

.btn--with-arrow:hover::after {
    opacity: 1;
    transform: translateX(1.5px) rotate(45deg);
}

.btn-group,
.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.875rem;
    align-items: center;
}

.site-main--home .hero--with-video::after {
    content: "";
    position: absolute;
    inset: -1px;
    z-index: 1;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(216, 180, 106, 0.065) 1px, transparent 1px),
        linear-gradient(90deg, rgba(216, 180, 106, 0.055) 1px, transparent 1px),
        linear-gradient(115deg, transparent 0 48%, rgba(255, 255, 255, 0.06) 49%, transparent 50% 100%);
    background-size: 84px 84px, 84px 84px, 280px 280px;
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.72), rgba(0, 0, 0, 0.16) 72%, transparent);
    -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.72), rgba(0, 0, 0, 0.16) 72%, transparent);
    opacity: 0.28;
}

.site-main--home .hero--with-video::after {
    animation: tradiencyHeroGridShift 42s linear infinite;
}

@keyframes tradiencyHeroGridShift {
    from {
        background-position: 0 0, 0 0, 0 0;
    }

    to {
        background-position: 84px 42px, 84px 42px, 140px 70px;
    }
}

@keyframes tradiencyAmbientShift {
    from {
        background-position: 0 0, 0 0, 0 0, 0 0;
    }

    to {
        background-position: 84px 42px, 84px 42px, 140px 70px, 0 0;
    }
}

html.js .site-main--home .hero-copy > .eyebrow,
html.js .site-main--home .hero-copy > h1,
html.js .site-main--home .hero-copy > .hero-text,
html.js .site-main--home .hero-actions,
html.js .site-main--home .hero-points,
html.js .site-main--home .hero-framework {
    opacity: 1;
    transform: none;
    animation: none;
}

@keyframes tradiencyHeroIn {
    from {
        opacity: 0;
        transform: translate3d(0, 16px, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes tradiencyHeroPanelIn {
    from {
        opacity: 0;
        transform: translate3d(0, 16px, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.hero-framework-chrome::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background:
        radial-gradient(70% 40% at 80% 8%, rgba(216, 180, 106, 0.14), transparent 70%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 32%);
    opacity: 0.72;
}

.hero-framework-step,
.hero-points span {
    background-clip: padding-box;
}

.section--curriculum.alt,
.section--market-visuals.alt,
.section--pricing.alt,
.section--testimonials.alt {
    background:
        radial-gradient(72% 54% at 50% 0%, rgba(216, 180, 106, 0.048), transparent 62%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.018), rgba(255, 255, 255, 0.006)),
        #0b0d0f;
}

.section--lesson-previews {
    background:
        radial-gradient(66% 52% at 18% 0%, rgba(255, 255, 255, 0.024), transparent 60%),
        var(--institutional-bg);
    padding-bottom: clamp(2.75rem, 5vw, 4rem);
}

.section--lesson-previews + .section--mentor-teaser {
    padding-top: clamp(2.5rem, 5vw, 3.75rem);
}

.card,
.testimonial-card,
.market-visual-card,
.member-preview-fallback-card,
.framework-step-card,
.process-step,
.mentor-teaser-card,
.pricing-panel--included,
.faq-item {
    transition:
        transform 210ms cubic-bezier(0.16, 1, 0.3, 1),
        border-color 210ms ease,
        background 210ms ease;
}

.card:hover,
.testimonial-card:hover,
.market-visual-card:hover,
.member-preview-fallback-card:hover,
.framework-step-card:hover,
.process-step:hover,
.mentor-teaser-card:hover,
.pricing-panel--included:hover,
.card:focus-within,
.testimonial-card:focus-within,
.market-visual-card:focus-within,
.member-preview-fallback-card:focus-within,
.framework-step-card:focus-within,
.process-step:focus-within,
.mentor-teaser-card:focus-within,
.pricing-panel--included:focus-within {
    transform: translate3d(0, -1.5px, 0);
    border-color: rgba(216, 180, 106, 0.34);
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22), 0 0 0 1px rgba(216, 180, 106, 0.08) inset;
}

.section--training-process {
    position: relative;
    overflow: clip;
    border-block: 1px solid rgba(255, 255, 255, 0.06);
    background:
        radial-gradient(56% 48% at 72% 0%, rgba(216, 180, 106, 0.045), transparent 64%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.018), rgba(255, 255, 255, 0.004)),
        #090a0b;
}

.process-rail {
    position: relative;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.process-rail::before {
    content: "";
    position: absolute;
    left: 6%;
    right: 6%;
    top: 2.05rem;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(216, 180, 106, 0.5), transparent);
}

.process-step {
    position: relative;
    min-height: 13.5rem;
    padding: 1.15rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 14px;
    background:
        linear-gradient(160deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.014)),
        rgba(16, 17, 18, 0.9);
    box-shadow: 0 16px 42px rgba(0, 0, 0, 0.22);
}

.process-index {
    display: grid;
    place-items: center;
    width: 2.15rem;
    height: 2.15rem;
    margin-bottom: 1rem;
    border: 1px solid rgba(216, 180, 106, 0.34);
    border-radius: 999px;
    background: rgba(216, 180, 106, 0.1);
    color: var(--accent-hover);
    font-size: 0.7rem;
    font-weight: 800;
    line-height: 1;
}

.process-copy h3 {
    margin-bottom: 0.6rem;
    font-size: 1rem;
}

.process-copy p {
    margin: 0;
    color: var(--muted);
    font-size: 0.925rem;
    line-height: 1.58;
}

.pricing-panel--price {
    position: relative;
    overflow: hidden;
    box-shadow:
        0 26px 78px rgba(0, 0, 0, 0.36),
        0 0 0 1px rgba(216, 180, 106, 0.06) inset;
}

.pricing-panel--price::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(64% 42% at 82% 0%, rgba(216, 180, 106, 0.18), transparent 72%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.06), transparent 30%);
    opacity: 0.7;
}

.pricing-more-link {
    margin: clamp(1rem, 2vw, 1.35rem) 0 0;
    text-align: center;
}

.pricing-more-link a {
    color: var(--accent-hover);
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
}

.pricing-more-link a:hover,
.pricing-more-link a:focus-visible {
    color: #ffffff;
    text-decoration: underline;
    text-underline-offset: 0.24em;
}

.pricing-panel--price > * {
    position: relative;
    z-index: 1;
}

.pricing-actions {
    gap: 0.75rem;
}

.testimonial-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 1.2rem;
}

.testimonial-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 1.9rem;
    padding: 0.42rem 0.65rem;
    border: 1px solid rgba(216, 180, 106, 0.22);
    border-radius: 999px;
    background: rgba(216, 180, 106, 0.07);
    color: #efe2c8;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1;
}

.faq-summary:hover {
    opacity: 1;
    background:
        linear-gradient(90deg, rgba(216, 180, 106, 0.08), rgba(255, 255, 255, 0.025));
}

html.js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur) {
    opacity: 0;
    transform: translate3d(0, 12px, 0);
    will-change: opacity, transform;
    transition:
        opacity 520ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 520ms cubic-bezier(0.22, 1, 0.36, 1),
        border-color 210ms ease,
        background 210ms ease;
    transition-delay: var(--reveal-delay, 0ms);
}

html.js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur).is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    will-change: auto;
}

@media (prefers-reduced-motion: reduce) {
    html.js .site-main--home .hero-copy > .eyebrow,
    html.js .site-main--home .hero-copy > h1,
    html.js .site-main--home .hero-copy > .hero-text,
    html.js .site-main--home .hero-actions,
    html.js .site-main--home .hero-points,
    html.js .site-main--home .hero-framework {
        animation: none;
    }

    .site-main--home .hero--with-video::after,
    .section--training-process {
        animation: none;
    }

    html.js :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur) {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .stagger > :where(.reveal, .reveal-up, .reveal-scale, .reveal-blur) {
        transition-delay: 0ms;
    }

    html.js :where(
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .framework-step-card,
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .process-step,
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .transformation-card,
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .market-visual-card,
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .member-preview-fallback-card,
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .testimonial-card,
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .pricing-panel--included,
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .pricing-panel--timeline,
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .pricing-access-card,
        .site-main:not(.site-main--learn-article) > .section:not(.section--hero) .mentor-teaser-card
    ) {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .btn,
    .header-cta,
    .card,
    .testimonial-card,
    .market-visual-card,
    .member-preview-fallback-card,
    .transformation-card,
    .framework-step-card,
    .process-step,
    .mentor-teaser-card,
    .pricing-panel--included,
    .pricing-panel--timeline,
    .pricing-access-card,
    .faq-item {
        transition: none;
    }

    .btn:hover,
    .header-cta:hover,
    .card:hover,
    .testimonial-card:hover,
    .market-visual-card:hover,
    .member-preview-fallback-card:hover,
    .transformation-card:hover,
    .framework-step-card:hover,
    .process-step:hover,
    .mentor-teaser-card:hover,
    .pricing-panel--included:hover,
    .pricing-panel--timeline:hover,
    .pricing-access-card:hover {
        transform: none;
    }
}

#cmplz-manage-consent-container,
#cmplz-manage-consent,
.cmplz-manage-consent {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.tradiency-cmplz-placeholder-hidden {
    display: none !important;
}

@media (max-width: 1024px) {
    .hero-grid,
    .grid.three,
    .grid.two,
    .testimonial-grid,
    .learn-featured-grid,
    .clarity-grid,
    .mentor-grid,
    .pricing-grid,
    .pricing-overview-grid,
    .pricing-access-grid,
    .transformation-stage,
    .qualification-layout {
        grid-template-columns: 1fr;
    }

    .transformation-stage {
        gap: clamp(0.95rem, 2vw, 1.25rem);
    }

    .transformation-card {
        min-height: 0;
    }

    .transformation-card--problem {
        margin-top: 0;
    }

    .transformation-connector {
        display: none;
    }

    .market-stack-layer {
        margin-left: 0;
        min-height: auto;
    }

    .curriculum-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .framework-rail {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .process-rail {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .section-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .framework-rail::before {
        display: none;
    }

    .process-rail::before {
        display: none;
    }

    .market-visual-grid,
    .member-preview-fallback-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mentor-about-grid {
        grid-template-columns: 1fr;
    }

    .mentor-profile--about {
        position: static;
    }

    .mentor-principle-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .curriculum-fallback-shell,
    .curriculum-fallback-list {
        grid-template-columns: 1fr;
    }

    .market-visual-card:nth-child(n) {
        grid-column: auto;
    }

    .learn-hero-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .testimonial-grid .testimonial-card:nth-child(3) {
        grid-column: auto;
    }

    .audience-split {
        grid-template-columns: 1fr;
    }

    .audience-col--fit {
        border-right: 1px solid rgba(216, 180, 106, 0.2);
        border-bottom: 1px solid rgba(216, 180, 106, 0.2);
    }

    .section-head {
        flex-direction: column;
        align-items: flex-start;
    }

    .section-side-text {
        max-width: none;
    }

    .learn-concept-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .header-inner {
        flex-direction: column;
        justify-content: center;
        padding: 1rem 0;
        min-height: auto;
    }

    .footer-inner {
        flex-direction: column;
        justify-content: center;
        padding: 0.5rem 0;
        min-height: auto;
    }

    .site-nav {
        margin-left: 0;
    }

    .nav-menu,
    .footer-menu {
        flex-wrap: wrap;
        justify-content: center;
    }

    .section--hero {
        padding-top: clamp(4rem, 14vw, 5.5rem);
        padding-bottom: clamp(3.25rem, 10vw, 4.5rem);
    }

    .site-main--about .about-hero.section--hero,
    .site-main--reviews .reviews-hero.section--hero,
    .site-main--faq .faq-hero.section--hero,
    .site-main--pricing .pricing-hero.section--hero,
    .site-main--contact .contact-hero.section--hero,
    .site-main--legal .legal-hero.section--hero {
        padding-bottom: clamp(2.85rem, 8vw, 4rem);
    }

    .section {
        padding: clamp(3.25rem, 8vw, 4.5rem) 0;
    }

    .hero-video-overlay {
        background:
            linear-gradient(180deg, rgba(16, 16, 16, 0.72) 0%, rgba(16, 16, 16, 0.52) 52%, rgba(16, 16, 16, 0.7) 100%);
    }

    .learn-breadcrumb {
        margin-bottom: 0.7rem;
    }

    .site-main--learn .learn-hero {
        padding-top: clamp(2.85rem, 9vw, 3.75rem);
        padding-bottom: clamp(1.6rem, 4vw, 2.25rem);
    }

    .site-main--learn-article .learn-article-hero {
        padding-top: clamp(2.85rem, 9vw, 4rem);
        padding-bottom: clamp(2rem, 6vw, 2.75rem);
    }

    .site-main--home .hero--with-video {
        min-height: auto;
    }

    .site-main--home .hero-grid {
        grid-template-columns: 1fr;
    }

    .site-main--home .hero-grid {
        gap: 1.75rem;
    }

    .site-main--home h1 {
        max-width: 14ch;
        font-size: clamp(2.2rem, 8vw, 3.25rem);
        margin-bottom: 1rem;
    }

    .site-main--home .hero-text {
        margin-bottom: 1rem;
    }

    .learn-article-title {
        font-size: clamp(2.2rem, 8vw, 3.4rem);
    }

    .learn-article-body {
        font-size: 1.0625rem;
        line-height: 1.72;
    }

    .learn-article-section {
        padding-top: clamp(2rem, 6vw, 2.75rem);
    }

    .hero-framework-chrome {
        min-height: auto;
    }

    .pricing-grid {
        gap: 1rem;
    }
}

@media (max-width: 640px) {
    .container {
        width: min(var(--max-width), calc(100% - 28px));
    }

    .section-inner {
        width: min(var(--max-width), calc(100% - 28px));
    }

    .section-grid {
        grid-template-columns: 1fr;
    }

    .section-label::before {
        display: none;
    }

    .editorial-intro {
        padding-left: 1rem;
    }

    h1 {
        font-size: clamp(2.25rem, 10vw, 3.25rem);
    }

    h2 {
        font-size: clamp(1.625rem, 7vw, 2.25rem);
    }

    .hero-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .btn-group {
        flex-direction: column;
        align-items: stretch;
    }

    .btn,
    .header-cta {
        min-width: 0;
    }

    .btn {
        padding-inline: 1rem;
        font-size: 0.9rem;
    }

    .hero-actions .btn {
        width: 100%;
    }

    .btn-group .btn {
        width: 100%;
    }

    .learn-concept-grid {
        grid-template-columns: 1fr;
    }

    .site-main--home h1 {
        max-width: none;
        font-size: clamp(2.25rem, 10vw, 3.1rem);
        line-height: 1.04;
    }

    .site-main--home .hero-text {
        font-size: 1rem;
        line-height: 1.68;
    }

    .hero-points span {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .hero-framework-step {
        padding: 0.75rem;
    }

    .learn-article-meta {
        grid-template-columns: 1fr;
    }

    .learn-article-kicker {
        font-size: 0.7rem;
    }

    .learn-article-intro {
        font-size: 1.025rem;
    }

    .learn-article-continue {
        padding: 1.25rem;
    }

    .mentor-profile,
    .curriculum-grid,
    .framework-rail,
    .process-rail,
    .market-stack,
    .inclusion-list,
    .pricing-access-card .inclusion-list,
    .market-visual-grid,
    .member-preview-fallback-grid,
    .mentor-teaser-card,
    .mentor-principle-grid {
        grid-template-columns: 1fr;
    }

    .transformation-card,
    .audience-col,
    .cta-section .narrow {
        padding: 1.2rem;
    }

    .transformation-card {
        border-radius: 18px;
    }

    .transformation-card h3 {
        font-size: clamp(1.28rem, 6vw, 1.7rem);
    }

    .transformation-card-copy {
        font-size: 0.94rem;
    }

    .transformation-list li {
        gap: 0.62rem;
        padding: 0.62rem 0.72rem;
    }

    .transformation-list li > span {
        width: 1.62rem;
        height: 1.62rem;
    }

    .transformation-list--fragmented li {
        width: 100%;
    }

    .market-stack::before {
        display: none;
    }

    .market-stack-layer {
        gap: 0.75rem;
        padding: 0.9rem;
    }

    .mentor-teaser-card {
        align-items: start;
    }

    .mentor-teaser-card .btn {
        width: 100%;
    }

    .member-preview-fallback-card {
        min-width: 0;
    }

    .framework-step-card {
        min-height: auto;
        padding: 1.1rem;
    }

    .curriculum-fallback-shell,
    .curriculum-fallback-item {
        padding: 1rem;
    }

    .curriculum-fallback-actions .btn {
        width: 100%;
    }

    .process-step {
        min-height: auto;
        padding: 1.1rem;
    }

    .curriculum-card {
        min-height: auto;
    }

    .mentor-image-placeholder {
        max-width: 12rem;
    }

    .mentor-image-placeholder--about {
        max-width: none;
        min-height: 10rem;
    }

    .mentor-copy-panel,
    .mentor-principle-card {
        padding: 1.15rem;
    }

    .price-value span {
        font-size: clamp(2.75rem, 16vw, 3.75rem);
    }

    .pricing-panel--included {
        padding: 1.35rem;
    }

    .faq-summary {
        min-height: 3.8rem;
        padding-left: 1rem;
        padding-right: 2.8rem;
    }

    .learn-article-shell {
        max-width: 100%;
    }

    .learn-article-body {
        max-width: 100%;
        font-size: 1.045rem;
        line-height: 1.76;
    }

    .footer-copy-group,
    .footer-disclaimer {
        max-width: 100%;
    }

    .legal-content th,
    .legal-content td {
        padding: 0.45rem 0.55rem;
        font-size: 0.875rem;
    }

    .legal-content table,
    .learn-article-body table {
        font-size: 0.875rem;
    }
}

/* Mobile Menu Overrides */
.header-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.mobile-menu-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    background:
        linear-gradient(160deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015)),
        rgba(255, 255, 255, 0.025);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
    cursor: pointer;
    color: var(--text);
    z-index: 51;
    transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.mobile-menu-toggle:hover {
    background:
        linear-gradient(160deg, rgba(216, 180, 106, 0.08), rgba(255, 255, 255, 0.018)),
        rgba(255, 255, 255, 0.03);
    border-color: rgba(216, 180, 106, 0.3);
}

.mobile-menu-toggle:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.92);
    outline-offset: 2px;
}

.hamburger-box {
    width: 24px;
    height: 18px;
    display: inline-block;
    position: relative;
}

.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -1px;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 24px;
    height: 2px;
    background-color: #fff;
    border-radius: 4px;
    position: absolute;
    transition: transform 0.2s ease, opacity 0.2s ease, background-color 0.2s ease;
}

.hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block;
}

.hamburger-inner::before {
    top: -7px;
}

.hamburger-inner::after {
    bottom: -7px;
}

.mobile-menu-toggle.is-active .hamburger-inner {
    transform: rotate(45deg);
}

.mobile-menu-toggle.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
}

.mobile-menu-toggle.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
}

@media (max-width: 991px) {
    .header-inner {
        flex-direction: row;
        justify-content: space-between;
        min-height: 72px;
        padding: 0;
    }

    .site-header {
        --mobile-nav-top: 72px;
    }

    .header-actions {
        margin-left: auto;
        position: relative;
        z-index: 52;
    }

    .mobile-menu-toggle {
        display: inline-flex;
        flex: 0 0 auto;
    }

    .site-nav {
        position: fixed;
        top: var(--mobile-nav-top);
        left: 0;
        right: 0;
        bottom: 0;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        padding:
            clamp(1rem, 3vw, 1.35rem)
            max(14px, calc((100vw - var(--max-width)) / 2 + 20px))
            max(1.5rem, env(safe-area-inset-bottom));
        background:
            radial-gradient(90% 60% at 50% 0%, rgba(216, 180, 106, 0.08), transparent 65%),
            rgba(10, 11, 13, 0.82);
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
        z-index: 40;
        transform: translate3d(0, -10px, 0);
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
        overflow-y: auto;
    }

    .site-nav.is-active {
        opacity: 1;
        visibility: visible;
        transform: translate3d(0, 0, 0);
    }

    .nav-menu {
        flex-direction: column;
        align-items: stretch;
        gap: 0.55rem;
        width: min(100%, 26rem);
        margin-left: auto;
        padding: 0.85rem;
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 1.25rem;
        background:
            radial-gradient(90% 70% at 100% 0%, rgba(216, 180, 106, 0.1), transparent 72%),
            linear-gradient(160deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.015) 54%, rgba(0, 0, 0, 0.16)),
            rgba(17, 18, 20, 0.96);
        box-shadow:
            0 24px 56px rgba(0, 0, 0, 0.3),
            0 0 0 1px rgba(255, 255, 255, 0.015) inset;
    }

    .nav-menu li {
        width: 100%;
    }

    .nav-menu a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 3.5rem;
        padding: 0.85rem 1rem;
        border: 1px solid rgba(255, 255, 255, 0.07);
        border-radius: 0.95rem;
        background: rgba(255, 255, 255, 0.025);
        color: #f1f2f3;
        font-size: 1rem;
        font-weight: 600;
        letter-spacing: 0.01em;
        transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
    }

    .nav-menu a:hover,
    .nav-menu a:focus-visible {
        background: rgba(255, 255, 255, 0.055);
        border-color: rgba(216, 180, 106, 0.22);
    }

    body.menu-is-open {
        overflow: hidden;
    }
}

.visual-panel svg {
    display: block;
    width: 100%;
    height: 100%;
}

.cta-microcopy {
    margin: 0.85rem 0 0;
    color: var(--muted-soft);
    font-size: 0.86rem;
    line-height: 1.55;
}

.learn-card h3 a,
.learn-featured-card h3 a {
    outline-offset: 0.35rem;
}

.learn-card:hover,
.learn-featured-card:hover,
.learn-cluster-card:hover {
    border-color: rgba(216, 180, 106, 0.34);
}

body {
    overflow-x: clip;
}

@supports not (overflow: clip) {
    body {
        overflow-x: hidden;
    }
}

@media (max-width: 900px) {
    .site-main--home h1 {
        max-width: none;
    }

    .site-nav {
        margin-left: 0;
    }
}

@media (max-width: 640px) {
    .btn {
        white-space: normal;
    }

    .qualification-panel {
        gap: 1rem;
        padding: 1.1rem;
    }

    .qualification-panel h3 {
        max-width: none;
    }

    .qualification-list li {
        gap: 0.72rem;
        padding: 0.78rem 0;
    }

    .header-inner {
        gap: 0.5rem;
    }

    .header-actions {
        gap: 0.4rem;
        min-width: 0;
    }

    .header-cta {
        min-height: 40px;
        padding: 0.58rem 0.72rem;
        font-size: 0.66rem;
        letter-spacing: 0.04em;
        white-space: nowrap;
    }

    .mobile-menu-toggle {
        flex: 0 0 44px;
    }

    .market-visual-card,
    .member-preview-fallback-card,
    .card,
    .testimonial-card,
    .faq-item {
        border-radius: var(--radius-md);
    }
}

@media (max-width: 480px) {
    .site-nav {
        padding-inline: 14px;
    }

    .nav-menu {
        width: 100%;
        padding: 0.7rem;
    }

    .nav-menu a {
        min-height: 3.25rem;
        padding-inline: 0.9rem;
    }
}

/* Homepage: continuous borderless one-page flow */
.site-main--home {
    --home-grid-size: clamp(88px, 7vw, 116px);
    --home-grid-line-horizontal: rgba(244, 241, 236, 0.03);
    --home-grid-line-vertical: rgba(216, 180, 106, 0.038);
    position: relative;
    isolation: isolate;
    background:
        radial-gradient(90% 28% at 50% -4%, rgba(216, 180, 106, 0.06), transparent 62%),
        radial-gradient(58rem 44rem at 92% 24rem, rgba(216, 180, 106, 0.026), transparent 72%),
        radial-gradient(54rem 40rem at 8% 112rem, rgba(255, 255, 255, 0.018), transparent 74%),
        radial-gradient(64rem 46rem at 86% 180rem, rgba(216, 180, 106, 0.022), transparent 76%),
        var(--institutional-bg);
}

.site-main--home::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    background-image:
        linear-gradient(var(--home-grid-line-horizontal) 1px, transparent 1px),
        linear-gradient(90deg, var(--home-grid-line-vertical) 1px, transparent 1px);
    background-size: var(--home-grid-size) var(--home-grid-size);
    background-position: center top;
    opacity: 0.76;
    mask-image: radial-gradient(82% 74% at 50% 22%, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.78) 44%, rgba(0, 0, 0, 0.42) 76%, transparent 100%);
    -webkit-mask-image: radial-gradient(82% 74% at 50% 22%, rgba(0, 0, 0, 0.92) 0%, rgba(0, 0, 0, 0.78) 44%, rgba(0, 0, 0, 0.42) 76%, transparent 100%);
}

.site-main--home .home-rail {
    display: none;
}

.site-main--home > .section {
    position: relative;
    padding-top: clamp(3.35rem, 6.2vw, 5.1rem);
    padding-bottom: clamp(3.35rem, 6.2vw, 5.1rem);
    border: none;
    background: transparent;
}

.site-main--home > .section.alt,
.site-main--home > .section.section--curriculum.alt,
.site-main--home > .section.section--pricing.alt,
.site-main--home > .section.section--testimonials.alt {
    background: transparent;
    border: none;
    box-shadow: none;
}

.site-main--home .section--transformation,
.site-main--home .section--market-stack,
.site-main--home .section--framework,
.site-main--home .section--training-process,
.site-main--home .section--lesson-previews,
.site-main--home .section--curriculum.alt,
.site-main--home .section--pricing.alt,
.site-main--home .section--testimonials.alt,
.site-main--home .cta-section {
    border: none;
    background: transparent;
}

.site-main--home .section--transformation {
    background: transparent;
}

.site-main--home .section--market-stack {
    background: transparent;
}

.site-main--home .section--framework {
    background: transparent;
}

.site-main--home .section--training-process {
    border-block: none;
    background: transparent;
}

.site-main--home .section--lesson-previews {
    background: transparent;
    padding-bottom: clamp(2.75rem, 5vw, 4rem);
}

.site-main--home .section--pricing.alt {
    background: transparent;
}

.site-main--home .section--audience {
    border-top: none;
    background: transparent;
}

.site-main--home .section--testimonials.alt {
    background: transparent;
}

.site-main--home .section--clarity {
    padding-top: clamp(3rem, 5.5vw, 4.35rem);
    background: transparent;
}

.site-main--home .section--hero.hero--with-video {
    padding-top: 0;
    padding-bottom: clamp(2.75rem, 5.5vw, 4.25rem);
    background: #090a0b;
}

.site-main--home .hero-video-overlay {
    background:
        radial-gradient(60% 50% at 78% 28%, rgba(216, 180, 106, 0.14) 0%, transparent 58%),
        linear-gradient(98deg, rgba(5, 6, 6, 0.95) 0%, rgba(5, 6, 6, 0.84) 42%, rgba(5, 6, 6, 0.58) 72%, rgba(5, 6, 6, 0.74) 100%),
        linear-gradient(180deg, rgba(5, 5, 5, 0.3) 0%, rgba(5, 5, 5, 0.55) 72%, rgba(11, 12, 14, 0.94) 100%);
}

.site-main--home .section--transformation {
    padding-top: clamp(2.35rem, 4.5vw, 3.65rem);
}

.site-main--home .section--lesson-previews + .section--mentor-teaser {
    padding-top: clamp(1.75rem, 3.5vw, 2.75rem);
}

.site-main--home .section--mentor-teaser {
    padding-top: clamp(2rem, 4vw, 3.25rem);
    padding-bottom: clamp(2.5rem, 5vw, 3.75rem);
}

.site-main--home .cta-section {
    padding-top: clamp(2.75rem, 5vw, 4rem);
    padding-bottom: clamp(3.25rem, 6vw, 4.75rem);
}

.site-main--home .section-head {
    margin-bottom: clamp(1.55rem, 3.2vw, 2.65rem);
}

.site-main--home .section-head > div {
    max-width: 40rem;
}

.site-main--home .section-intro,
.site-main--home .section-side-text {
    color: #c8d0d8;
    line-height: 1.68;
}

.site-main--home .section-side-text {
    max-width: 30rem;
    font-size: 1.01rem;
}

.site-main--home .section-label::before {
    width: 1.35rem;
    height: 1px;
    background: linear-gradient(90deg, rgba(216, 180, 106, 0.62), rgba(216, 180, 106, 0.08));
}

.site-main--home .framework-rail::before,
.site-main--home .process-rail::before {
    opacity: 0.24;
}

.site-main--home .process-rail {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.site-main--home .process-step {
    min-height: 12rem;
}

.site-main--home > .section:not(.section--hero) > .container {
    position: relative;
    z-index: 1;
}

.site-main--home .section--why {
    background: transparent;
}

.site-main--home .section--offer {
    background: transparent;
}

.site-main--home .section--audience {
    background: transparent;
}

.site-main--home .section--credibility {
    background: transparent;
}

.offer-pillars-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(0.85rem, 2vw, 1.15rem);
    align-items: stretch;
}

.offer-pillar-card {
    display: flex;
    flex-direction: column;
    min-height: 11.75rem;
    padding: clamp(1.2rem, 2.2vw, 1.55rem);
}

.offer-pillar-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.15rem;
    height: 2.15rem;
    margin-bottom: 0.85rem;
    border: 1px solid rgba(216, 180, 106, 0.3);
    border-radius: 999px;
    color: var(--accent);
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1;
}

.offer-pillar-card h3 {
    margin: 0 0 0.5rem;
    font-size: clamp(1.08rem, 1.7vw, 1.28rem);
    line-height: 1.2;
    overflow-wrap: normal;
    word-break: normal;
}

.offer-pillar-card p {
    margin: 0;
    color: var(--muted);
    line-height: 1.58;
}

.offer-footnote {
    max-width: 52rem;
    margin: clamp(1rem, 2vw, 1.35rem) 0 0;
    color: var(--muted-soft);
    font-size: 0.88rem;
    line-height: 1.55;
}

.credibility-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(0.85rem, 2vw, 1.1rem);
}

.credibility-card {
    padding: clamp(1.1rem, 2vw, 1.45rem);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: var(--radius-md);
    background:
        linear-gradient(155deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.014)),
        rgba(17, 18, 20, 0.88);
    box-shadow: var(--shadow-soft);
}

.credibility-card h3 {
    margin: 0 0 0.45rem;
    font-size: 1rem;
    line-height: 1.25;
    overflow-wrap: normal;
    word-break: normal;
}

.credibility-card p {
    margin: 0;
    color: var(--muted);
    font-size: 0.92rem;
    line-height: 1.58;
}

.site-main--home .cta-section .narrow {
    border-color: rgba(216, 180, 106, 0.22);
    background:
        linear-gradient(155deg, rgba(216, 180, 106, 0.072), rgba(255, 255, 255, 0.026) 42%, rgba(0, 0, 0, 0.1)),
        rgba(17, 18, 20, 0.76);
    box-shadow: 0 16px 50px rgba(0, 0, 0, 0.2);
}

@media (max-width: 1024px) {
    .credibility-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .market-stack-shell {
        grid-template-columns: 1fr;
    }

    .site-main--home .process-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .offer-pillars-grid,
    .credibility-grid,
    .market-stack,
    .site-main--home .process-rail {
        grid-template-columns: 1fr;
    }

    .site-main--home .hero-grid {
        padding-top: clamp(5.5rem, 16vw, 6.75rem);
        padding-bottom: clamp(2.75rem, 10vw, 4rem);
    }

    .market-stack-summary,
    .market-stack-layer {
        min-height: 0;
    }
}
