
[data-opening='clip'] {
    position:relative;
    width:100%;
    background-color:var(--ink);
    color:var(--surface);
    border-bottom:2px solid var(--ink);
    overflow:hidden;
}

[data-clip-track] {
    min-height:100vh;
    min-height:100svh;
    display:flex;
    flex-direction:column;
}

[data-clip-stage] {
    position:relative;
    width:100%;
    min-height:100vh;
    min-height:100svh;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:var(--space-gutter);
    padding-block:var(--space-2xl) var(--space-xl);
    overflow:hidden;
}

[data-clip-stage] picture,
[data-clip-stage] img {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 38%;
    z-index:1;
}

[data-clip-stage]::after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(25, 23, 23, 0.35) 0%,
        rgba(25, 23, 23, 0.65) 55%,
        rgba(25, 23, 23, 0.92) 100%
    );
    z-index:2;
    pointer-events:none;
}

.clip-stage-content {
    position:relative;
    z-index:3;
    width:100%;
    max-width:1380px;
    margin-inline:auto;
}

.clip-top-meta {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:var(--space-xs);
    padding-bottom:var(--space-xs);
    border-bottom:1px solid var(--rule-bright);
    margin-bottom:var(--space-md);

    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    letter-spacing:0.06em;
    text-transform:uppercase;
    color:var(--surface-stone);
}

.clip-stage-title {
    font-size:clamp(2.2rem, 1.8rem + 3.2vw, 4.4rem);
    font-weight:900;
    line-height:1.05;
    letter-spacing:-0.035em;
    color:var(--surface);
    text-transform:none;
    max-width:22ch;
    margin-bottom:var(--space-sm);
    text-wrap:balance;
}

[data-clip-caption] {
    font-family:var(--vuja-037);
    font-size:var(--vuja-b04);
    font-weight:400;
    line-height:1.45;
    color:var(--surface-stone);
    max-width:64ch;
    margin-bottom:var(--space-md);
}

[data-clip-caption][hidden] { display:none !important; }

.clip-actions-row {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--space-xs);
    margin-top:var(--space-sm);
}

.clip-scroll-hint {
    display:inline-flex;
    align-items:center;
    gap:var(--space-3xs);
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:var(--surface-clay);
    margin-left:auto;
}

.frontpage-mast-hero {
    background-color:var(--ground);
    border-bottom:2px solid var(--ink);
    position:relative;
}

.frontpage-grid {
    display:grid;
    grid-template-columns:1fr;

    gap:1px;
    background-color:var(--ink);
    border-inline:1px solid var(--ink);
    border-bottom:1px solid var(--ink);
}

@media (min-width: 900px) {
    .frontpage-grid { grid-template-columns:1.6fr 1.1fr; }
}

@media (min-width: 1240px) {
    .frontpage-grid { grid-template-columns:2fr 1.25fr 1fr; }
}

.frontpage-lead-col {
    background-color:var(--surface);
    padding:var(--space-md);
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.frontpage-stage-col {
    background-color:var(--surface-stone);
    padding:var(--space-md);
    display:flex;
    flex-direction:column;
    gap:var(--space-sm);
}

.frontpage-rail-col {
    background-color:var(--surface);
    padding:var(--space-sm);
    display:flex;
    flex-direction:column;
}

.lead-meta-strip {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:var(--space-xs);
    padding-bottom:var(--space-xs);
    border-bottom:1px solid var(--rule-heavy);
    margin-bottom:var(--space-sm);
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    text-transform:uppercase;
    color:var(--ink-muted);
}

.lead-article-title {
    font-size:var(--vuja-8dc);
    font-weight:900;
    line-height:1.05;

    letter-spacing:-0.035em;
    color:var(--ink);
    margin-bottom:var(--space-sm);
}

.lead-article-summary {
    font-size:var(--vuja-b04);
    line-height:1.45;
    color:var(--ink-subtle);
    margin-bottom:var(--space-md);
}

.lead-article-actions {
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-xs);
    align-items:center;
    margin-top:auto;
    padding-top:var(--space-sm);
    border-top:1px solid var(--rule);
}

.lead-spec-callout {
    background-color:var(--surface-stone);
    border:1px solid var(--ink);
    padding:var(--space-sm);
    margin-block:var(--space-sm);
}

.lead-spec-callout-title {
    font-family:var(--vuja-7de);
    font-size:var(--step--1);
    font-weight:700;
    text-transform:uppercase;
    color:var(--ink);
    margin-bottom:var(--space-3xs);
}

.lead-spec-callout-text {
    font-size:var(--step--1);
    line-height:1.45;
    color:var(--ink-subtle);
    margin-bottom:0;
}

.stage-wrapper {
    position:relative;
    width:100%;
}

.stage-wrapper img {
    width:100%;
    height:auto;
    aspect-ratio:16 / 10;
    object-fit:cover;
    border:1px solid var(--ink);
}

.job-evidence-photo picture,
.duotone-media picture {
    height:auto !important;
    display:block;
}

.stage-caption {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    line-height:1.4;
    color:var(--ink-subtle);
    padding-top:var(--space-xs);
    border-top:1px solid var(--rule);
    display:flex;
    justify-content:space-between;
    align-items:baseline;
    flex-wrap:wrap;
    gap:var(--space-3xs);
}

.rail-section-header {
    font-family:var(--vuja-7de);
    font-size:var(--step--1);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    padding-bottom:var(--space-2xs);
    border-bottom:2px solid var(--ink);
    margin-bottom:var(--space-xs);
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.rail-feed-list {
    display:flex;
    flex-direction:column;
}

.rail-feed-item {
    padding-block:var(--space-xs);
    border-bottom:1px dashed var(--rule-heavy);
}

.rail-feed-item:last-child { border-bottom:0; }

.rail-feed-time {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    color:var(--accent-clay);
    font-weight:600;
    margin-bottom:0.2rem;
    text-transform:uppercase;
}

.rail-feed-heading {
    font-family:var(--vuja-c41);
    font-size:var(--vuja-58c);
    font-weight:700;
    line-height:1.25;
    margin-bottom:0.25rem;
}

.rail-feed-desc {
    font-size:var(--step--1);
    line-height:1.4;
    color:var(--ink-subtle);
    margin-bottom:0;
}

.duotone-break {
    position:relative;
    width:100%;
    min-height:440px;
    background-color:#231B1C;
    border-block:2px solid var(--ink);
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
}

.duotone-media {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    z-index:1;
}

.duotone-media img {
    width:100%;
    height:100%;
    object-fit:cover;
    filter:grayscale(100%) contrast(125%) brightness(85%);
    mix-blend-mode:multiply;
    opacity:0.82;
}

@media (max-width: 600px) {
    .duotone-break {
        min-height:auto;
        display:flex;
        flex-direction:column;
    }
    .duotone-media {
        position:relative;
        inset:auto;
        width:100%;
        height:auto;
        aspect-ratio:16 / 10;
    }
    .duotone-media picture {
        display:block;
        width:100%;
        height:auto !important;
        aspect-ratio:16 / 10;
    }
    .duotone-media img {
        width:100%;
        height:100% !important;
        aspect-ratio:16 / 10;
        object-fit:cover;
    }
}

.duotone-break::before {
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(
        circle at center,
        rgba(155, 86, 78, 0.45) 0%,
        rgba(35, 27, 28, 0.88) 100%
    );
    mix-blend-mode:color;
    z-index:2;
    pointer-events:none;
}

.duotone-break::after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(25, 23, 23, 0.7) 0%,
        rgba(25, 23, 23, 0.4) 50%,
        rgba(25, 23, 23, 0.85) 100%
    );
    z-index:3;
    pointer-events:none;
}

.duotone-content {
    position:relative;
    z-index:4;
    width:100%;
    max-width:1100px;
    padding:var(--space-xl) var(--space-gutter);
    text-align:left;
}

.duotone-meta-stamp {
    font-family:var(--vuja-7de);
    font-size:var(--step--1);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:#E58E83;
    display:inline-block;
    margin-bottom:var(--space-xs);
    border-bottom:1px solid #E58E83;
    padding-bottom:0.2rem;
}

.duotone-heading {
    font-size:clamp(1.8rem, 1.4rem + 2vw, 3.2rem);
    font-weight:900;
    line-height:1.1;
    letter-spacing:-0.03em;
    color:var(--surface);
    margin-bottom:var(--space-sm);
    text-wrap:balance;
}

.duotone-prose {
    font-size:var(--vuja-58c);
    line-height:1.6;
    color:var(--surface-stone);
    max-width:66ch;
    margin-bottom:var(--space-md);
}

.duotone-specs-ledger {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-xs);
    background:rgba(25, 23, 23, 0.65);
    border:1px solid var(--rule-bright);
    padding:var(--space-sm);
}

@media (min-width: 640px) {
    .duotone-specs-ledger { grid-template-columns:repeat(3, 1fr); }
}

.duotone-spec-item {
    font-family:var(--vuja-7de);
    font-size:var(--step--1);
    color:var(--surface);
}

.duotone-spec-label {
    display:block;
    font-size:var(--step--2);
    color:var(--surface-clay);
    text-transform:uppercase;
}

.job-section {
    padding-block:var(--space-2xl);
    border-bottom:1px solid var(--ink);
    background-color:var(--ground);
    position:relative;
}

.job-section.surface-light { background-color:var(--surface); }

.job-section.surface-stone { background-color:var(--surface-stone); }

.job-container {
    width:100%;
    max-width:1140px;
    margin-inline:auto;
    padding-inline:var(--space-gutter);
}

.job-heading {
    font-size:var(--vuja-28b);
    font-weight:900;
    line-height:1.15;
    letter-spacing:-0.025em;
    color:var(--ink);
    margin-bottom:var(--space-md);
    text-wrap:balance;
}

.job-prose-body {
    font-size:var(--vuja-58c);
    line-height:1.6;
    color:var(--ink);
    margin-bottom:var(--space-lg);
    max-width:74ch;
}

.job-prose-body p { margin-bottom:var(--space-sm); }

.job-prose-body p:last-child { margin-bottom:0; }

.job-facts-ledger {
    background-color:var(--surface);
    border:1.5px solid var(--ink);
    padding:var(--space-sm);
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-2xs);
    margin-top:var(--space-md);
    box-shadow:var(--shadow-press);
}

@media (min-width: 680px) {
    .job-facts-ledger {
        grid-template-columns:repeat(2, 1fr);
        gap:var(--space-sm);
        padding:var(--space-md);
    }
}

@media (min-width: 1024px) {
    .job-facts-ledger { grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); }
}

.job-fact-cell {
    border-bottom:1px dotted var(--rule-heavy);
    padding-bottom:var(--space-2xs);
}

.job-fact-label {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:var(--ink-muted);
    display:block;
    margin-bottom:0.15rem;
}

.job-fact-value {
    font-family:var(--vuja-7de);
    font-size:var(--vuja-58c);
    font-weight:600;
    color:var(--ink);
    line-height:1.25;
}

.job-fact-value.price-figure {
    color:var(--accent-rose);
    font-weight:700;
}

.job-evidence-photo {
    width:100%;
    border-block:2px solid var(--ink);
    background-color:var(--ink);
    margin-block:0;
    position:relative;
    overflow:hidden;
}

.job-evidence-photo img {
    width:100%;
    height:auto;
    aspect-ratio:16 / 10;
    object-fit:cover;
    object-position:center;
    display:block;
}

.photo-caption-ledger {
    background-color:var(--ink);
    color:var(--surface);
    padding:var(--space-xs) var(--space-gutter);
    border-top:1px solid var(--rule-bright);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:var(--space-xs);
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    line-height:1.4;
}

.photo-caption-ledger .caption-part-stamp {
    color:var(--surface-clay);
    font-weight:600;
    letter-spacing:0.04em;
}

.photo-caption-ledger .caption-spec { color:var(--surface-stone); }

.catalog-header-band {
    background-color:var(--surface-stone);
    border-bottom:2px solid var(--ink);
    padding-block:var(--space-xl);
}

.catalog-header-inner {
    display:flex;
    flex-direction:column;
    gap:var(--space-sm);
}

.catalog-title {
    font-size:var(--vuja-8dc);
    font-weight:900;
    line-height:1.1;
    color:var(--ink);
}

.catalog-subtitle {
    font-size:var(--vuja-b04);
    line-height:1.5;
    color:var(--ink-subtle);
    max-width:72ch;
}

.catalog-filter-bar {
    background-color:var(--surface);
    border-bottom:1.5px solid var(--ink);
    padding-block:var(--space-xs);
    overflow-x:auto;
    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
}

.catalog-chip-scroll {
    display:flex;
    align-items:center;
    gap:var(--space-2xs);
    white-space:nowrap;
}

.catalog-grid-section { padding-block:var(--space-2xl); }

.catalog-products-grid {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-md);
}

@media (min-width: 640px) {
    .catalog-products-grid { grid-template-columns:repeat(2, 1fr); }
}

@media (min-width: 1080px) {
    .catalog-products-grid { grid-template-columns:repeat(3, 1fr); }
}

@media (min-width: 1400px) {
    .catalog-products-grid { grid-template-columns:repeat(4, 1fr); }
}

.category-hero {
    background-color:var(--surface-stone);
    border-bottom:2px solid var(--ink);
    padding-block:var(--space-2xl);
}

.category-hero-title {
    font-size:var(--vuja-8dc);
    font-weight:900;
    margin-bottom:var(--space-xs);
}

.category-hero-summary {
    font-size:var(--vuja-b04);
    line-height:1.55;
    max-width:70ch;
    margin-bottom:var(--space-md);
}

.category-metrics-strip {
    display:grid;
    grid-template-columns:1fr;
    gap:1px;
    background-color:var(--ink);
    border:1px solid var(--ink);
    margin-top:var(--space-md);
}

@media (min-width: 600px) {
    .category-metrics-strip { grid-template-columns:repeat(3, 1fr); }
}

.metric-cell {
    background-color:var(--surface);
    padding:var(--space-sm);
    display:flex;
    flex-direction:column;
}

.metric-cell-label {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    font-weight:700;
    color:var(--ink-muted);
    text-transform:uppercase;
}

.metric-cell-val {
    font-family:var(--vuja-7de);
    font-size:var(--vuja-b04);
    font-weight:800;
    color:var(--ink);
    margin-top:0.2rem;
}

.estimator-section {
    padding-block:var(--space-2xl);
    background-color:var(--ground);
}

.estimator-card {
    background-color:var(--surface);
    border:2px solid var(--ink);
    box-shadow:var(--shadow-lift);
    overflow:hidden;
}

.estimator-header {
    background-color:var(--ink);
    color:var(--surface);
    padding:var(--space-md);
    border-bottom:2px solid var(--accent-clay);
}

.estimator-header-title {
    font-size:var(--vuja-89e);
    font-weight:800;
    margin-bottom:0.25rem;
    color:var(--surface);
}

.estimator-header-desc {
    font-size:var(--step--1);
    color:var(--surface-stone);
    margin-bottom:0;
}

.estimator-layout {
    display:grid;
    grid-template-columns:1fr;
    gap:0;
}

@media (min-width: 960px) {
    .estimator-layout { grid-template-columns:1.25fr 1fr; }
}

.estimator-inputs {
    padding:var(--space-md);
    border-bottom:1px solid var(--rule-heavy);
}

@media (min-width: 960px) {
    .estimator-inputs {
        border-bottom:0;
        border-right:1px solid var(--rule-heavy);
    }
}

.estimator-readout {
    padding:var(--space-md);
    background-color:var(--surface-stone);
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.readout-box {
    background-color:var(--ground);
    border:2px solid var(--ink);
    padding:var(--space-md);
    text-align:center;
    margin-bottom:var(--space-md);
}

.readout-label {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:var(--ink-muted);
    display:block;
    margin-bottom:0.25rem;
}

.readout-figure {
    font-family:var(--vuja-7de);
    font-size:clamp(1.4rem, 1.2rem + 1.5vw, 3.2rem);
    font-weight:900;
    line-height:1.15;
    color:var(--accent-rose);
    letter-spacing:-0.02em;
    word-break:break-word;
    white-space:normal;
}

.readout-note {
    font-family:var(--vuja-7de);
    font-size:var(--step--1);
    font-weight:600;
    color:var(--accent-clay);
    margin-top:0.4rem;
}

.readout-status-line {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    color:var(--ink-subtle);
    margin-top:0.5rem;
}

.estimator-breakdown-list {
    list-style:none;
    padding:0;
    margin:0;
    font-family:var(--vuja-7de);
    font-size:var(--step--1);
}

.breakdown-row {
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items:baseline;
    gap:var(--space-3xs);
    padding-block:0.4rem;
    border-bottom:1px dotted var(--rule-heavy);
}

.breakdown-row:last-child { border-bottom:0; }

.breakdown-row-label {
    color:var(--ink-muted);
    min-width:120px;
    flex:1 1 auto;
}

.breakdown-row-val {
    font-weight:700;
    color:var(--ink);
    text-align:right;
}

.estimator-disclaimer-box {
    background-color:rgba(25, 23, 23, 0.06);
    border:1px solid var(--rule-heavy);
    padding:var(--space-xs);
    font-size:var(--step--2);
    line-height:1.45;
    color:var(--ink-subtle);
    margin-top:var(--space-md);
}

.protocol-step-grid {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-md);
    margin-block:var(--space-lg);
}

@media (min-width: 768px) {
    .protocol-step-grid { grid-template-columns:repeat(2, 1fr); }
}

@media (min-width: 1100px) {
    .protocol-step-grid { grid-template-columns:repeat(3, 1fr); }
}

.protocol-card {
    background-color:var(--surface);
    border:1px solid var(--ink);
    padding:var(--space-md);
    display:flex;
    flex-direction:column;
}

.protocol-card-tag {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    font-weight:700;
    text-transform:uppercase;
    color:var(--accent-clay);
    margin-bottom:var(--space-2xs);
}

.protocol-card-title {
    font-size:var(--vuja-b04);
    font-weight:800;
    line-height:1.25;
    margin-bottom:var(--space-xs);
}

.protocol-card-desc {
    font-size:var(--step--1);
    line-height:1.5;
    color:var(--ink-subtle);
    margin-bottom:0;
}

.vin-breakdown-box {
    background-color:var(--surface);
    border:2px solid var(--ink);
    padding:var(--space-md);
    margin-block:var(--space-lg);
}

.vin-segment-row {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-xs);
    margin-top:var(--space-sm);
}

@media (min-width: 768px) {
    .vin-segment-row { grid-template-columns:repeat(3, 1fr); }
}

.vin-segment-card {
    background-color:var(--surface-stone);
    border:1px solid var(--rule-heavy);
    padding:var(--space-sm);
}

.vin-segment-code {
    font-family:var(--vuja-7de);
    font-size:var(--vuja-89e);
    font-weight:900;
    color:var(--ink);
}

.vin-segment-label {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    font-weight:700;
    text-transform:uppercase;
    color:var(--ink-muted);
    margin-top:0.2rem;
}

.vin-segment-desc {
    font-size:var(--step--1);
    line-height:1.4;
    margin-top:0.35rem;
    margin-bottom:0;
}

.disclosures-header {
    background-color:var(--surface-stone);
    border-bottom:2px solid var(--ink);
    padding-block:var(--space-xl);
}

.disclosures-title {
    font-size:var(--vuja-8dc);
    font-weight:900;
    margin-bottom:var(--space-xs);
}

.disclosures-summary {
    font-size:var(--vuja-b04);
    line-height:1.55;
    color:var(--ink-subtle);
    max-width:70ch;
    margin-bottom:var(--space-md);
}

.disclosures-controls-bar {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:var(--space-xs);
    background-color:var(--surface);
    border:1.5px solid var(--ink);
    padding:var(--space-xs) var(--space-sm);
    margin-bottom:var(--space-lg);
}

.disclosures-controls-left {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--space-2xs);
}

.disclosures-controls-right {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    color:var(--ink-muted);
    text-transform:uppercase;
}

.disclosures-stack {
    display:flex;
    flex-direction:column;
    gap:1px;
    background-color:var(--ink);
    border:2px solid var(--ink);
    margin-bottom:var(--space-2xl);
}

.disclosure-card {
    background-color:var(--surface);
    transition:background-color var(--dur-fast) var(--ease-luxury);
}

.disclosure-card:target {
    outline:3px solid var(--accent-rose);
    outline-offset:-3px;
}

.disclosure-summary {
    list-style:none;
    cursor:pointer;
    padding:var(--space-sm) var(--space-md);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--space-sm);
    font-family:var(--vuja-c41);
    font-size:var(--vuja-b04);
    font-weight:700;
    color:var(--ink);
    background-color:var(--surface);
    border-bottom:1px solid var(--rule);
    user-select:none;
    transition:background-color var(--dur-fast) var(--ease-luxury), color var(--dur-fast) var(--ease-luxury);
}

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

.disclosure-summary:hover {
    background-color:var(--surface-stone);
    color:var(--accent-rose);
}

.disclosure-summary:focus-visible {
    outline:2px solid var(--ink);
    outline-offset:-2px;
}

.disclosure-card[open] .disclosure-summary {
    background-color:var(--surface-stone);
    border-bottom:1.5px solid var(--ink);
    color:var(--ink);
}

.disclosure-indicator {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    border:1px solid var(--ink);
    background-color:var(--ground);
    font-family:var(--vuja-7de);
    font-size:1.1rem;
    font-weight:700;
    line-height:1;
    flex-shrink:0;
    transition:transform var(--dur-fast) var(--ease-luxury), background-color var(--dur-fast) var(--ease-luxury);
}

.disclosure-indicator::before { content:'+'; }

.disclosure-card[open] .disclosure-indicator::before { content:'–'; }

.disclosure-card[open] .disclosure-indicator {
    background-color:var(--ink);
    color:var(--surface);
}

.disclosure-body {
    padding:var(--space-md);
    background-color:var(--surface);
    font-size:var(--vuja-58c);
    line-height:1.62;
    color:var(--ink);
    max-width:76ch;
}

.disclosure-body p { margin-bottom:var(--space-sm); }

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

.plain-questions-container {
    padding-block:var(--space-2xl);
    background-color:var(--ground);
}

.plain-questions-intro {
    margin-bottom:var(--space-2xl);
    padding-bottom:var(--space-lg);
    border-bottom:2px solid var(--ink);
}

.plain-questions-title {
    font-size:var(--vuja-8dc);
    font-weight:900;
    margin-bottom:var(--space-xs);
}

.plain-questions-summary {
    font-size:var(--vuja-b04);
    line-height:1.55;
    color:var(--ink-subtle);
    max-width:70ch;
}

.plain-question-block {
    padding-block:var(--space-xl);
    border-bottom:1.5px solid var(--ink);
}

.plain-question-block:last-child { border-bottom:0; }

.plain-question-heading {
    font-size:var(--vuja-28b);
    font-weight:800;
    line-height:1.18;
    letter-spacing:-0.025em;
    color:var(--ink);
    margin-bottom:var(--space-sm);
    max-width:44ch;
}

.plain-question-answer {
    max-width:68ch;
    font-size:var(--vuja-58c);
    line-height:1.65;
    color:var(--ink);
}

.plain-question-answer p { margin-bottom:var(--space-sm); }

.plain-question-answer p:last-child { margin-bottom:0; }

.dated-rail-section {
    padding-block:var(--space-2xl);
    background-color:var(--ground);
}

.dated-rail-layout {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-xl);
}

@media (min-width: 900px) {
    .dated-rail-layout {
        grid-template-columns:280px 1fr;
        gap:var(--space-2xl);
    }
}

.dated-rail-aside { order:1; }

@media (min-width: 900px) {
    .dated-rail-aside { order:0; }
}

.dated-rail-sticky {
    background-color:var(--surface);
    border:1.5px solid var(--ink);
    padding:var(--space-md);
    box-shadow:var(--shadow-press);
}

@media (min-width: 900px) {
    .dated-rail-sticky {
        position:-webkit-sticky;
        position:sticky;
        top:var(--space-md);
    }
}

.dated-rail-title {
    font-family:var(--vuja-7de);
    font-size:var(--step--1);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    padding-bottom:var(--space-2xs);
    border-bottom:2px solid var(--ink);
    margin-bottom:var(--space-sm);
}

.dated-rail-list {
    display:flex;
    flex-direction:column;
    gap:var(--space-sm);
}

.dated-rail-item {
    position:relative;
    padding-left:var(--space-md);
    border-left:2px solid var(--rule-heavy);
    cursor:pointer;
    padding-block:0.35rem;
    transition:border-color var(--dur-fast) var(--ease-luxury), background-color var(--dur-fast) var(--ease-luxury), transform var(--dur-fast) var(--ease-luxury);
}

.dated-rail-item:hover {
    border-left-color:var(--accent-rose);
    background-color:var(--surface-stone);
    transform:translateX(2px);
}

.dated-rail-item:active {
    border-left-color:var(--ink);
    background-color:var(--surface-clay);
    transform:translateX(1px);
}

.dated-rail-item:focus-visible {
    outline:2px solid var(--ink);
    outline-offset:2px;
}

.dated-rail-item::before {
    content:"";
    position:absolute;
    left:-5px;
    top:0.6rem;
    width:8px;
    height:8px;
    border-radius:0;
    background-color:var(--accent-clay);
    transition:background-color var(--dur-fast) var(--ease-luxury);
}

.dated-rail-item:hover::before { background-color:var(--accent-rose); }

.dated-rail-date {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    font-weight:700;
    text-transform:uppercase;
    color:var(--accent-clay);
    margin-bottom:0.15rem;
    transition:color var(--dur-fast) var(--ease-luxury);
}

.dated-rail-item:hover .dated-rail-date { color:var(--accent-rose); }

.dated-rail-desc {
    font-size:var(--step--1);
    line-height:1.35;
    color:var(--ink-subtle);
}

.dated-rail-content {
    display:flex;
    flex-direction:column;
}

.dated-content-block {
    padding-bottom:var(--space-2xl);
    margin-bottom:var(--space-2xl);
    border-bottom:1px solid var(--ink);
}

.dated-content-block:last-child {
    border-bottom:0;
    padding-bottom:0;
    margin-bottom:0;
}

.dated-block-stamp {
    font-family:var(--vuja-7de);
    font-size:var(--step--2);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:var(--accent-clay);
    margin-bottom:var(--space-3xs);
}

.dated-block-title {
    font-size:var(--vuja-89e);
    font-weight:800;
    margin-bottom:var(--space-xs);
    color:var(--ink);
}

.dated-block-prose {
    font-size:var(--vuja-58c);
    line-height:1.62;
    color:var(--ink);
    max-width:72ch;
}

.contact-layout-grid {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-xl);
    margin-block:var(--space-2xl);
}

@media (min-width: 980px) {
    .contact-layout-grid { grid-template-columns:1fr 1.35fr; }
}

.contact-info-card {
    background-color:var(--surface);
    border:2px solid var(--ink);
    padding:var(--space-md);
    display:flex;
    flex-direction:column;
    gap:var(--space-md);
    box-shadow:var(--shadow-press);
}

.contact-block-heading {
    font-family:var(--vuja-7de);
    font-size:var(--step--1);
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:var(--ink);
    border-bottom:2px solid var(--ink);
    padding-bottom:var(--space-3xs);
    margin-bottom:var(--space-xs);
}

.contact-block-body {
    font-size:var(--vuja-58c);
    line-height:1.5;
    color:var(--ink-subtle);
    margin-bottom:0;
}

.contact-block-body a { font-weight:700; }

.contact-form-card {
    background-color:var(--surface);
    border:2px solid var(--ink);
    padding:var(--space-md);
    box-shadow:var(--shadow-lift);
}

.contact-form-title {
    font-size:var(--vuja-89e);
    font-weight:900;
    margin-bottom:0.25rem;
}

.contact-form-subtitle {
    font-size:var(--step--1);
    color:var(--ink-subtle);
    margin-bottom:var(--space-md);
}

.facility-tour-grid {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-md);
    margin-block:var(--space-xl);
}

@media (min-width: 768px) {
    .facility-tour-grid { grid-template-columns:repeat(2, 1fr); }
}

.facility-card {
    background-color:var(--surface);
    border:1.5px solid var(--ink);
    overflow:hidden;
    display:flex;
    flex-direction:column;
}

.facility-card-media {
    aspect-ratio:16 / 10;
    overflow:hidden;
    background-color:var(--surface-stone);
}

.facility-card-media img {
    width:100%;
    height:100%;
    object-fit:cover;
}

.facility-card-body {
    padding:var(--space-sm);
    display:flex;
    flex-direction:column;
    flex-grow:1;
}

.facility-card-title {
    font-size:var(--vuja-b04);
    font-weight:800;
    margin-bottom:var(--space-2xs);
}

.facility-card-desc {
    font-size:var(--step--1);
    line-height:1.5;
    color:var(--ink-subtle);
    margin-bottom:0;
}

.not-found-section {
    padding-block:var(--space-3xl);
    text-align:center;
}

.not-found-card {
    max-width:640px;
    margin-inline:auto;
    background-color:var(--surface);
    border:2px solid var(--ink);
    padding:var(--space-xl);
    box-shadow:var(--shadow-lift);
}

.not-found-badge {
    font-family:var(--vuja-7de);
    font-size:var(--vuja-28b);
    font-weight:900;
    color:var(--accent-rose);
    display:inline-block;
    margin-bottom:var(--space-xs);
    letter-spacing:-0.02em;
}

.not-found-title {
    font-size:var(--vuja-89e);
    font-weight:900;
    margin-bottom:var(--space-sm);
}

.not-found-prose {
    font-size:var(--vuja-58c);
    line-height:1.5;
    color:var(--ink-subtle);
    margin-bottom:var(--space-md);
}

.ledger-sheet {
    background-color:var(--surface);
    border:2px solid var(--ink);
    padding:var(--space-md);
    position:relative;
    box-shadow:var(--shadow-press);
}

.ledger-sheet::before {
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:2.75rem;
    width:1px;
    background-color:var(--accent-rose);
    opacity:0.4;
    pointer-events:none;
}

.ledger-sheet-inner { margin-left:2rem; }

.ledger-entry-row {
    display:flex;
    justify-content:space-between;
    align-items:baseline;
    padding-block:var(--space-2xs);
    border-bottom:1px solid var(--rule);
    font-family:var(--vuja-7de);
    font-size:var(--step--1);
}

.ledger-entry-date {
    color:var(--ink-muted);
    font-size:var(--step--2);
}

.ledger-entry-item {
    font-weight:600;
    color:var(--ink);
}

.ledger-entry-price {
    font-weight:700;
    color:var(--accent-rose);
}

@media (max-width: 600px) {
    .frontpage-lead-col,
    .frontpage-stage-col,
    .frontpage-rail-col { padding:var(--space-sm); }

    .lead-article-title { font-size:var(--vuja-28b); }

    .job-heading { font-size:var(--vuja-89e); }

    .catalog-title,
    .category-hero-title,
    .plain-questions-title,
    .disclosures-title { font-size:var(--vuja-28b); }

    .ledger-sheet::before { left:1.5rem; }

    .ledger-sheet-inner { margin-left:1rem; }

    .dated-rail-layout { gap:var(--space-md); }

    .disclosures-controls-bar {
        flex-direction:column;
        align-items:flex-start;
    }

    .disclosures-controls-left { width:100%; }

    .disclosures-controls-left .btn { flex:1 1 auto; }
}

@media (max-width: 360px) {
    .clip-stage-title { font-size:1.85rem; }

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

    .clip-actions-row .btn { width:100%; }

    .job-fact-value { font-size:var(--step--1); }
}
