:root {
    --opening-height:100vh;
    --opening-min-height:640px;
    --opening-max-height:1080px;
}

[data-opening] {
    position:relative;
    width:100%;
    height:calc(100vh - var(--header-condensed-height, 3.75rem));
    min-height:500px;
    max-height:860px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    background-color:var(--ground);
    overflow:hidden;
    border-bottom:1px solid var(--hairline);
}

@media (min-width: 960px) {
    [data-opening] {
        height:calc(88vh - var(--header-desktop-height, 6.25rem));
        min-height:480px;
        max-height:680px;
    }
}

@media (max-width: 600px) {
    [data-opening] {
        height:auto;
        min-height:0;
        display:flex;
        flex-direction:column;
        justify-content:flex-start;
    }
}

.opening-backdrop-frame {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    z-index:1;
    pointer-events:none;
}

.opening-backdrop-frame img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:47% 18%;
    filter:brightness(0.82) contrast(1.05);
}

@media (max-width: 600px) {
    .opening-backdrop-frame {
        position:relative;
        inset:auto;
        width:100%;
        height:48vh;
        min-height:240px;
        max-height:340px;

    }
    .opening-backdrop-frame img {
        object-position:47% 25%;
    }
}

.opening-scrim-layer {
    display:none;
}

.opening-ledger-lines {
    position:absolute;
    inset:0;
    z-index:2;
    pointer-events:none;
    background-image: 
        linear-gradient(to right, rgba(176, 141, 87, 0.08) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(176, 141, 87, 0.05) 1px, transparent 1px);
    background-size:clamp(3rem, 6vw, 6rem) clamp(3rem, 6vw, 6rem);
    opacity:0.5;
}

.opening-content-shelf {
    position:relative;
    z-index:4;
    width:100%;
    padding-block:var(--space-m) var(--space-l);
    background:linear-gradient(to top, rgba(20, 18, 18, 0.98) 0%, rgba(20, 18, 18, 0.92) 65%, rgba(20, 18, 18, 0.4) 90%, transparent 100%);
}

@media (max-width: 600px) {
    .opening-content-shelf {
        background:var(--ground);
        padding-block:var(--space-m) var(--space-l);
    }
}

.opening-grid-lockup {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-s);
    align-items:flex-end;
}

@media (min-width: 860px) {
    .opening-grid-lockup {
        grid-template-columns:minmax(0, 1.25fr) minmax(0, 1fr);
        gap:var(--space-xl);
    }
}

.opening-heading-column {
    display:flex;
    flex-direction:column;
    gap:var(--space-2xs);
}

.opening-heading-column h1 {
    font-size:clamp(1.85rem, 1.3rem + 2.2vw, 3.25rem);
    line-height:var(--line-height-tight);
    color:var(--ink);
    letter-spacing:-0.025em;
    text-wrap:balance;
    margin:0;
}

.opening-lede-column {
    display:flex;
    flex-direction:column;
    gap:var(--space-s);
    align-items:flex-start;
}

.opening-lede-column .lede {
    color:var(--ink-soft);
    margin:0;
    font-size:var(--povo-f51);
    line-height:var(--line-height-editorial);
    max-width:var(--measure-lede);
}

.opening-signature-meta {
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-s);
    font-family:var(--povo-b4d);
    font-size:var(--step--2);
    color:var(--hairline);
    padding-top:var(--space-xs);
    border-top:1px solid rgba(176, 141, 87, 0.35);
    width:100%;
}

.opening-signature-meta span {
    display:inline-flex;

    align-items:center;
    gap:var(--space-3xs);
}

@supports (animation-timeline: view()) {
    @keyframes assembleOpeningHeader {
        from {
            opacity:1;
            transform:translateY(0);
        }
        to {
            opacity:0.2;
            transform:translateY(-40px);
        }
    }

    @keyframes assembleOpeningBackdrop {
        from {
            transform:scale(1) translateY(0);
        }
        to {
            transform:scale(1.08) translateY(60px);
        }
    }

    @keyframes drawOpeningLedger {
        from {
            opacity:0.6;
            background-position:0 0;
        }
        to {
            opacity:0.15;
            background-position:0 50px;
        }
    }

    [data-opening] .opening-backdrop-frame img,
    [data-opening] [data-scene='backdrop'] {
        animation:assembleOpeningBackdrop linear both;
        animation-timeline:view();
        animation-range:exit 0% exit 100%;
    }

    [data-opening] .opening-content-shelf,
    [data-opening] [data-scene="shelf"] {
        animation:assembleOpeningHeader linear both;
        animation-timeline:view();
        animation-range:exit 0% exit 80%;
    }

    [data-opening] .opening-ledger-lines,
    [data-opening] [data-scene='rule'] {
        animation:drawOpeningLedger linear both;
        animation-timeline:view();
        animation-range:exit 0% exit 100%;
    }
}

.essay-body {
    position:relative;
    background-color:var(--ground);
    padding-block:var(--space-xl) var(--space-2xl);
}

.essay-container {
    width:min(100% - (var(--space-m) * 2), var(--measure-prose));
    margin-inline:auto;
}

.essay-lead-paragraph {
    font-size:var(--povo-2b5);
    line-height:var(--line-height-editorial);

    color:var(--ink);
    margin-block-end:var(--space-l);
    position:relative;
    letter-spacing:var(--letter-spacing-editorial);
}

.essay-lead-paragraph::first-letter {
    font-family:var(--povo-30a);
    font-size:3.2em;
    float:left;
    line-height:0.82;
    margin-right:0.14em;
    margin-top:0.04em;
    color:var(--hairline);
    font-weight:var(--font-weight-bold);
}

.essay-subhead {
    font-family:var(--povo-30a);
    font-size:var(--povo-7e0);
    font-weight:var(--font-weight-bold);
    line-height:var(--line-height-snug);
    color:var(--ink);
    margin-block-start:var(--space-2xl);
    margin-block-end:var(--space-s);
    position:relative;
    padding-bottom:var(--space-2xs);
}

.essay-subhead::after {
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    width:2.5rem;
    height:2px;
    background-color:var(--hairline);
}

.essay-paragraph {
    font-size:var(--povo-f51);
    line-height:var(--line-height-prose);
    color:var(--ink);
    margin-block-end:var(--space-m);
}

.essay-pullquote {
    margin-block:var(--space-2xl);
    padding:var(--space-l);
    background-color:var(--surface);
    border-left:3px solid var(--accent);
    border-top:1px solid var(--line);
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.essay-pullquote p {
    font-family:var(--povo-30a);
    font-size:var(--povo-2b5);
    font-style:italic;
    line-height:var(--line-height-editorial);
    color:var(--ink);
    margin:0;
}

.essay-pullquote cite {
    display:block;
    font-family:var(--povo-b4d);
    font-size:var(--step--1);
    font-style:normal;
    color:var(--hairline);
    margin-top:var(--space-s);
    letter-spacing:0.04em;
}

.essay-inset-box {
    margin-block:var(--space-l) var(--space-xl);
    padding:var(--space-m) 0;
    background-color:transparent;
    border:0;
    border-top:1px solid var(--hairline);
    border-bottom:1px solid var(--line);
    box-shadow:none;
}

.essay-inset-title {
    font-family:var(--povo-30a);
    font-size:var(--povo-f51);
    font-weight:var(--font-weight-bold);
    letter-spacing:var(--letter-spacing-caps);
    text-transform:uppercase;
    color:var(--hairline);
    margin-bottom:var(--space-2xs);
}

.essay-inset-content {
    font-size:var(--povo-f51);
    color:var(--ink-soft);
    line-height:var(--line-height-snug);
}

.essay-inset-metrics {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-s);
    margin-top:var(--space-s);
    padding-top:var(--space-s);
    border-top:1px solid var(--line);
}

@media (min-width: 580px) {
    .essay-inset-metrics {
        grid-template-columns:repeat(2, 1fr);
    }
}

@media (min-width: 820px) {
    .essay-inset-metrics {
        grid-template-columns:repeat(3, 1fr);
    }
}

.metric-datum {
    display:flex;
    flex-direction:column;
    gap:2px;
}

.metric-datum-label {
    font-family:var(--povo-30a);
    font-size:var(--step--2);
    letter-spacing:var(--letter-spacing-caps);
    text-transform:uppercase;
    color:var(--ink-soft);
}

.metric-datum-value {
    font-family:var(--povo-b4d);
    font-size:var(--povo-f51);
    font-weight:var(--font-weight-medium);
    color:var(--ink);
}

.ledger-divider {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:var(--space-s);
    margin-block:var(--space-2xl);
    color:var(--hairline);
    opacity:0.6;
}

.ledger-divider::before,
.ledger-divider::after {
    content:'';
    flex:1;
    height:1px;
    background-color:var(--hairline);
}

.catalogue-essay-item {
    margin-block:var(--space-3xl);
    padding-top:var(--space-l);
    border-top:1px solid var(--line);
}

.catalogue-item-header {
    display:flex;
    flex-direction:column;
    gap:var(--space-2xs);
    margin-bottom:var(--space-m);
}

@media (min-width: 720px) {
    .catalogue-item-header {
        flex-direction:row;
        justify-content:space-between;
        align-items:baseline;
    }
}

.catalogue-item-name {
    font-family:var(--povo-30a);
    font-size:var(--povo-7e0);
    font-weight:var(--font-weight-bold);
    color:var(--ink);
}

.catalogue-item-price {
    font-family:var(--povo-b4d);
    font-size:var(--povo-2b5);
    font-weight:var(--font-weight-semibold);
    color:var(--hairline);
}

.catalogue-spec-grid {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-m);
    margin-block:var(--space-l);
    padding:var(--space-m);
    background-color:var(--surface);
    border:1px solid var(--line);
}

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

.catalogue-spec-row {
    display:flex;
    flex-direction:column;
    gap:2px;
    border-bottom:1px solid rgba(70, 70, 70, 0.3);
    padding-bottom:var(--space-2xs);
}

.catalogue-spec-key {
    font-family:var(--povo-30a);
    font-size:var(--step--2);
    letter-spacing:var(--letter-spacing-caps);
    text-transform:uppercase;
    color:var(--ink-soft);
}

.catalogue-spec-val {
    font-family:var(--povo-b4d);
    font-size:var(--step--1);
    color:var(--ink);
}

.timber-comparison-table-wrapper {
    overflow-x:auto;
    margin-block:var(--space-xl);
    border:1px solid var(--line);
    background-color:var(--surface);
}

.timber-comparison-table {
    width:100%;
    min-width:580px;
    border-collapse:collapse;
}

.timber-comparison-table th,
.timber-comparison-table td {
    padding:var(--space-s) var(--space-m);
    border-bottom:1px solid var(--line);
    text-align:left;
}

.timber-comparison-table th {
    background-color:var(--surface-2);
    color:var(--hairline);
    font-family:var(--povo-30a);
    font-size:var(--step--1);
    letter-spacing:var(--letter-spacing-caps);
    text-transform:uppercase;
    font-weight:var(--font-weight-bold);
}

.timber-comparison-table td {
    font-size:var(--step--1);
    color:var(--ink);
}

.timber-comparison-table tr:hover td {
    background-color:rgba(176, 141, 87, 0.05);
}

.qa-architecture-wrapper {
    padding-block:var(--space-2xl) var(--space-3xl);
    background-color:var(--ground);
}

.qa-intro-block {
    margin-bottom:var(--space-2xl);
    padding-bottom:var(--space-l);
    border-bottom:1px solid var(--line);
}

.qa-intro-block h1 {
    font-size:clamp(2rem, 1.5rem + 2.2vw, 3.5rem);
    margin-bottom:var(--space-s);
}

.qa-entry {
    margin-block-end:var(--space-2xl);
    padding-block-end:var(--space-xl);
    border-bottom:1px solid rgba(70, 70, 70, 0.4);
}

.qa-entry:last-child {
    border-bottom:0;
}

.qa-question {
    font-family:var(--povo-30a);
    font-size:var(--povo-7e0);
    font-weight:var(--font-weight-bold);
    color:var(--hairline);
    line-height:var(--line-height-snug);
    margin-bottom:var(--space-m);
    letter-spacing:0;
}

.qa-answer {
    font-family:var(--povo-d65);
    font-size:var(--povo-f51);
    line-height:var(--line-height-prose);
    color:var(--ink);
    max-width:var(--measure-prose);
}

.qa-answer p {
    margin-bottom:var(--space-s);
}

.qa-answer ul,
.qa-answer ol {
    margin-bottom:var(--space-m);
    padding-left:var(--space-m);
    color:var(--ink-soft);
}

.qa-answer li {
    margin-bottom:var(--space-2xs);
}

.platform-badge-group {
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-xs);
    margin-block:var(--space-m);
}

.platform-badge {
    font-family:var(--povo-b4d);
    font-size:var(--step--2);
    padding:var(--space-3xs) var(--space-xs);
    background-color:var(--surface-2);
    border:1px solid var(--line);
    border-radius:var(--radius-subtle);
    color:var(--ink);
    display:inline-flex;
    align-items:center;
    gap:var(--space-3xs);
}

.platform-badge code {
    color:var(--hairline);
    font-weight:var(--font-weight-semibold);
}

.ledger-table-architecture {
    padding-block:var(--space-2xl) var(--space-3xl);
    background-color:var(--ground);
}

.ledger-intro-block {
    margin-bottom:var(--space-2xl);
    padding-bottom:var(--space-l);
    border-bottom:1px solid var(--line);
}

.ledger-intro-block h1 {
    font-size:clamp(2rem, 1.5rem + 2.2vw, 3.5rem);
    margin-bottom:var(--space-s);
}

.clause-ledger-container {
    display:flex;
    flex-direction:column;
    gap:var(--space-m);
    margin-block:var(--space-xl);
}

.clause-ledger-item {
    background-color:var(--surface);
    border:1px solid var(--line);
    border-left:3px solid var(--hairline);
    padding:var(--space-m) var(--space-l);
    transition:border-color var(--duration-fast) var(--ease-out-quad);
}

.clause-ledger-item:hover {
    border-left-color:var(--accent);
}

.clause-ledger-header {
    display:flex;
    flex-direction:column;
    gap:var(--space-2xs);
    margin-bottom:var(--space-s);
    padding-bottom:var(--space-xs);
    border-bottom:1px solid rgba(70, 70, 70, 0.4);
}

@media (min-width: 640px) {
    .clause-ledger-header {
        flex-direction:row;
        justify-content:space-between;
        align-items:baseline;
    }
}

.clause-title {
    font-family:var(--povo-30a);
    font-size:var(--povo-2b5);
    font-weight:var(--font-weight-bold);
    color:var(--ink);
    letter-spacing:var(--letter-spacing-wide);
    text-transform:uppercase;
}

.clause-tag {
    font-family:var(--povo-b4d);
    font-size:var(--step--2);
    color:var(--hairline);
    background-color:var(--surface-2);
    padding:2px var(--space-2xs);
    border:1px solid var(--line);
    border-radius:var(--radius-subtle);
    align-self:flex-start;
}

.clause-ledger-body {
    display:grid;
    grid-template-columns:1fr;
    gap:var(--space-s);
}

@media (min-width: 768px) {
    .clause-ledger-body {
        grid-template-columns:1.2fr 1fr;
        gap:var(--space-l);
    }
}

.clause-field {
    display:flex;
    flex-direction:column;
    gap:4px;
}

.clause-field-label {
    font-family:var(--povo-30a);
    font-size:var(--step--2);
    letter-spacing:var(--letter-spacing-caps);
    text-transform:uppercase;
    color:var(--ink-soft);
}

.clause-field-desc {
    font-size:var(--step--1);
    line-height:var(--line-height-snug);
    color:var(--ink);
}

.clause-field-desc code {
    color:var(--hairline);
}

.desktop-ledger-table-view {
    display:none;
}

@media (min-width: 900px) {
    .desktop-ledger-table-view {
        display:table;
        width:100%;
        border-collapse:collapse;
        background-color:var(--surface);
        border:1px solid var(--line);
        margin-block:var(--space-xl);
    }

    .desktop-ledger-table-view th {
        background-color:var(--surface-2);
        color:var(--hairline);
        padding:var(--space-s) var(--space-m);
        font-family:var(--povo-30a);
        font-size:var(--step--1);
        letter-spacing:var(--letter-spacing-caps);
        text-transform:uppercase;
        border-bottom:1px solid var(--hairline);
        text-align:left;
    }

    .desktop-ledger-table-view td {
        padding:var(--space-s) var(--space-m);
        border-bottom:1px solid var(--line);
        font-size:var(--step--1);
        vertical-align:top;
    }

    .desktop-ledger-table-view tr:hover td {
        background-color:rgba(176, 141, 87, 0.04);
    }

    .mobile-ledger-cards-view {
        display:none;
    }
}

@media (max-width: 899px) {
    .desktop-ledger-table-view {
        display:none;
    }

    .mobile-ledger-cards-view {
        display:flex;
        flex-direction:column;
        gap:var(--space-m);
    }
}

.disclosure-stack-architecture {
    padding-block:var(--space-2xl) var(--space-3xl);
    background-color:var(--ground);
}

.disclosure-intro-block {
    margin-bottom:var(--space-2xl);
    padding-bottom:var(--space-l);
    border-bottom:1px solid var(--line);
}

.disclosure-intro-block h1 {
    font-size:clamp(2rem, 1.5rem + 2.2vw, 3.5rem);
    margin-bottom:var(--space-s);
}

.disclosure-controls-toolbar {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:var(--space-s);
    margin-bottom:var(--space-l);
    padding:var(--space-s) var(--space-m);
    background-color:var(--surface);
    border:1px solid var(--line);
}

.disclosure-status-meta {
    font-family:var(--povo-b4d);
    font-size:var(--step--2);
    color:var(--hairline);
}

.disclosure-button-group {
    display:flex;
    align-items:center;
    gap:var(--space-xs);
}

.btn-disclosure-action {
    font-family:var(--povo-30a);
    font-size:var(--step--2);
    letter-spacing:var(--letter-spacing-caps);
    text-transform:uppercase;
    font-weight:var(--font-weight-bold);
    padding:var(--space-3xs) var(--space-s);
    min-height:38px;
    background-color:var(--surface-2);
    border:1px solid var(--line);
    color:var(--ink);
    border-radius:var(--radius-subtle);
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    gap:var(--space-3xs);
    transition:background-color var(--duration-fast) var(--ease-out-quad),
                            border-color var(--duration-fast) var(--ease-out-quad),
                            color var(--duration-fast) var(--ease-out-quad);
}

.btn-disclosure-action:hover {
    background-color:var(--line);
    border-color:var(--hairline);
    color:var(--accent-ink);
}

.btn-disclosure-action:active {
    background-color:var(--ground);
}

.btn-disclosure-action:focus-visible {
    outline:2px solid var(--hairline);
}

.disclosure-stack {
    display:flex;
    flex-direction:column;
    gap:var(--space-s);
    margin-block:var(--space-l);
}

.disclosure-block {
    background-color:var(--surface);
    border:1px solid var(--line);
    border-radius:var(--radius-subtle);
    overflow:hidden;
    transition:border-color var(--duration-fast) var(--ease-out-quad);
}

.disclosure-block[open] {
    border-color:var(--hairline);
}

.disclosure-summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:var(--space-s) var(--space-m);
    cursor:pointer;
    list-style:none;
    font-family:var(--povo-30a);
    font-size:var(--povo-f51);
    font-weight:var(--font-weight-bold);
    color:var(--ink);
    letter-spacing:var(--letter-spacing-editorial);
    background-color:var(--surface);
    transition:background-color var(--duration-fast) var(--ease-out-quad),
                            color var(--duration-fast) var(--ease-out-quad);
    user-select:none;
    min-height:52px;
}

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

.disclosure-summary:hover {
    background-color:var(--surface-2);
    color:var(--hairline);
}

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

.disclosure-summary-icon {
    width:20px;
    height:20px;
    color:var(--hairline);
    transition:transform var(--duration-fast) var(--ease-editorial);
    flex-shrink:0;
}

.disclosure-block[open] .disclosure-summary-icon {
    transform:rotate(180deg);
}

.disclosure-content {
    padding:var(--space-m) var(--space-m) var(--space-l);
    border-top:1px solid rgba(70, 70, 70, 0.4);
    font-family:var(--povo-d65);
    font-size:var(--povo-f51);
    line-height:var(--line-height-prose);
    color:var(--ink);
    background-color:var(--ground);
}

.disclosure-content p {
    margin-bottom:var(--space-s);
    max-width:var(--measure-prose);
}

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

.disclosure-content ul,
.disclosure-content ol {
    margin-bottom:var(--space-m);
    padding-left:var(--space-m);
    color:var(--ink-soft);
}

.disclosure-content li {
    margin-bottom:var(--space-2xs);
}

@media print {
    body {
        background:#fff !important;
        color:#111 !important;
        padding-bottom:0 !important;
    }

    .site-header,
    .mobile-dock,
    .consent-banner,
    .chat-widget-root,
    .disclosure-controls-toolbar,
    .skip-link {
        display:none !important;
    }

    .disclosure-block {
        border:1px solid #ccc !important;
        background:#fff !important;
        page-break-inside:avoid;
        margin-bottom:1rem;
    }

    .disclosure-block details,
    .disclosure-block[open] {
        display:block !important;
    }

    .disclosure-content {
        display:block !important;
        background:#fff !important;
        color:#111 !important;
    }

    .disclosure-summary {
        color:#000 !important;
        background:#f4f4f4 !important;
    }
}

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

@media (min-width: 900px) {
    .contact-layout-grid {
        grid-template-columns:minmax(320px, 1fr) minmax(380px, 1.4fr);
    }
}

.contact-dossier-column {
    display:flex;
    flex-direction:column;
    gap:var(--space-l);
}

.contact-info-panel {
    background-color:var(--surface);
    border:1px solid var(--line);
    border-top:2px solid var(--hairline);
    padding:var(--space-l);
}

.contact-info-title {
    font-family:var(--povo-30a);
    font-size:var(--povo-2b5);
    font-weight:var(--font-weight-bold);
    color:var(--ink);
    letter-spacing:var(--letter-spacing-wide);
    text-transform:uppercase;
    margin-bottom:var(--space-m);
    padding-bottom:var(--space-2xs);
    border-bottom:1px solid var(--line);
}

.contact-dossier-row {
    display:flex;
    align-items:flex-start;
    gap:var(--space-s);
    margin-bottom:var(--space-m);
}

.contact-dossier-row:last-child {
    margin-bottom:0;
}

.contact-dossier-row .icon {
    width:22px;
    height:22px;
    color:var(--hairline);
    margin-top:2px;
    flex-shrink:0;
}

.contact-dossier-detail {
    display:flex;
    flex-direction:column;
    gap:2px;
}

.contact-dossier-label {
    font-family:var(--povo-30a);
    font-size:var(--step--2);
    letter-spacing:var(--letter-spacing-caps);
    text-transform:uppercase;
    color:var(--ink-soft);
}

.contact-dossier-val {
    font-family:var(--povo-d65);
    font-size:var(--povo-f51);
    color:var(--ink);
}

.contact-dossier-val a {
    color:var(--ink);
    text-decoration:underline;
    text-underline-offset:3px;
    transition:color var(--duration-fast) var(--ease-out-quad);
}

.contact-dossier-val a:hover {
    color:var(--hairline);
}

.contact-schedule-table {
    width:100%;
    border-collapse:collapse;
    margin-top:var(--space-xs);
}

.contact-schedule-table td {
    padding:var(--space-2xs) 0;
    border-bottom:1px solid rgba(70, 70, 70, 0.3);
    font-family:var(--povo-b4d);
    font-size:var(--step--1);
}

.contact-schedule-table tr:last-child td {
    border-bottom:0;
}

.contact-schedule-table .day-col {
    color:var(--ink-soft);
}

.contact-schedule-table .hours-col {
    text-align:right;
    color:var(--ink);
}

.contact-form-column {
    display:flex;
    flex-direction:column;
}

.error-page-wrapper {
    min-height:70vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding-block:var(--space-3xl);
    text-align:center;
}

.error-content-card {
    max-width:var(--measure-narrow);
    padding:var(--space-2xl) var(--space-l);
    background-color:var(--surface);
    border:1px solid var(--line);
    border-top:3px solid var(--hairline);
}

.error-numeric-code {
    font-family:var(--povo-b4d);
    font-size:clamp(3.5rem, 3rem + 5vw, 6.5rem);
    font-weight:var(--font-weight-display-bold);
    color:var(--hairline);
    line-height:1;
    margin-bottom:var(--space-s);
}

.error-heading {
    font-family:var(--povo-30a);
    font-size:var(--povo-1bf);
    color:var(--ink);
    margin-bottom:var(--space-m);
}

.error-explanation {
    font-size:var(--povo-f51);
    color:var(--ink-soft);
    margin-bottom:var(--space-xl);
    max-width:var(--measure-lede);
    margin-inline:auto;
}

.error-action-row {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:var(--space-s);
}

.signature-ledger-ruler {
    position:relative;
    width:100%;
    height:24px;
    background-image:repeating-linear-gradient(
        to right,
        var(--hairline) 0px,
        var(--hairline) 1px,
        transparent 1px,
        transparent 16px
    );
    opacity:0.35;
    margin-block:var(--space-xl);
}

.signature-ledger-ruler::before {
    content:"BENCH MEASURE — INCHES & FRACTIONS — SANDY UT";
    position:absolute;
    top:100%;
    left:0;
    font-family:var(--povo-b4d);
    font-size:9px;
    letter-spacing:0.15em;
    color:var(--hairline);
    padding-top:2px;
}
