@font-face {
    font-family: "Jost";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("/photo-91/jost-latin-500.woff2") format("woff2");
}

@font-face {
    font-family: "Jost";
    font-style: normal;
    font-weight: 600 700;
    font-display: swap;
    src: url("/photo-91/jost-latin-700.woff2") format("woff2");
}

@font-face {
    font-family: "Jost";
    font-style: normal;
    font-weight: 800 900;
    font-display: swap;
    src: url("/photo-91/jost-latin-900.woff2") format("woff2");
}

:root {
    --chroma-primary: #bb8729;
    --chroma-brand-hot: #e7b14c;
    --chroma-key-active: #e09a23;
    --chroma-field: #0d0c0c;
    --chroma-bg-elevated: #171514;
    --chroma-fg: #ffffff;
    --chroma-quiet: #c0bebe;
    --chroma-rule: rgba(255, 255, 255, 0.14);
    --chroma-edge-hard: rgba(255, 255, 255, 0.3);
    --chroma-grad-1: #f4d8b3;
    --chroma-gradient-mid: #ebc47a;
    --chroma-notice: #b3001b;
    --chroma-ink: #14100a;
    --chroma-ink-soft: #33280f;

    --stack-step-0: 4px;
    --stack-step-1: 12px;
    --stack-step-2: 20px;
    --stack-step-3: 36px;
    --stack-step-4: 56px;
    --stack-step-5: 84px;
    --stack-step-6: 120px;
    --stack-step-7: 180px;

    --radius-step-0: 2px;
    --radius-step-1: 4px;
    --radius-step-2: 8px;
    --radius-step-3: 12px;
    --radius-step-4: 16px;
    --radius-step-5: 22px;
    --radius-step-6: 28px;
    --radius-step-7: 36px;
    --radius-lozenge: 9999px;
    --radius-dot: 50%;

    --typeface-head: "Jost", "Trebuchet MS", "Segoe UI", sans-serif;
    --typeface-reading: "Jost", "Trebuchet MS", "Segoe UI", sans-serif;

    --text-size-xxl: 56px;
    --text-size-head: 38px;
    --text-size-sub: 24px;
    --text-size-h4: 18px;
    --text-size-sm-2: 15px;
    --text-size-micro-head: 13px;
    --text-size-body: 16px;
    --text-size-small: 13px;
    --text-size-legal: 11px;

    --leading-close: 1.06;
    --leading-regular: 1.4;
    --leading-loose: 1.6;

    --letter-spacing-packed: -0.02em;
    --letter-spacing-base: 0.02em;
    --letter-spacing-wide: 0.1em;

    --fw-plain: 500;
    --fw-medium: 700;
    --fw-bold: 900;

    --shadow-step-0: none;
    --shadow-step-1: none;
    --shadow-step-2: none;
    --shadow-step-3: none;
    --shadow-step-4: 0 8px 24px rgba(0, 0, 0, 0.1);
    --shadow-step-5: 0 14px 38px rgba(0, 0, 0, 0.24);
    --shadow-step-6: 0 20px 52px rgba(0, 0, 0, 0.32);
    --shadow-step-7: 0 28px 72px rgba(0, 0, 0, 0.4);

    --tempo-fast: 190ms;
    --tempo-steady: 360ms;
    --tempo-gentle: 738ms;
    --curve-release: cubic-bezier(0.31, 0.68, 0.55, 0.97);
    --curve-start: cubic-bezier(0.03, 0.45, 0.32, 0.69);
    --curve-both: cubic-bezier(0.59, 0.07, 0.56, 0.93);
    --curve-spring: cubic-bezier(0.34, 1.8, 0.61, 1.1);

    --bounds-full: 1140px;
    --bounds-narrow: 440px;
    --bounds-pad-lg: 56px;
    --bounds-edge-mid: 24px;
    --bounds-pad-sm: 16px;

    --border-hair: 1px;
    --border-regular: 2px;
    --border-thick: 3px;

    --nav-tall: 102px;
    --nav-h-sm: 80px;
    --pv-shell: 102px;
    --rg-h: 34px;
    --lift-hover: 5px;
    --bar-hover: 4px;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html,
body {
    overflow-x: clip;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--chroma-field);
    color: var(--chroma-fg);
    font-family: var(--typeface-reading);
    font-size: var(--text-size-body);
    font-weight: var(--fw-plain);
    line-height: var(--leading-regular);
    letter-spacing: var(--letter-spacing-base);
    -webkit-font-smoothing: antialiased;
}

main {
    display: block;
    margin-block-start: var(--pv-shell);
    animation: pageIntro var(--tempo-steady) var(--curve-release) both;
}

@keyframes pageIntro {
    from {
        opacity: 0.001;
    }

    to {
        opacity: 1;
    }
}

h1,
h2,
h3,
h4,
h5,
h6 {
    overflow-wrap: anywhere;
    margin: 0;
}

h1 {
    font-family: var(--typeface-head);
    font-weight: var(--fw-bold);
    font-size: clamp(30px, 5.2vw, var(--text-size-xxl));
    line-height: var(--leading-close);
    letter-spacing: var(--letter-spacing-packed);
    text-transform: uppercase;
}

h2 {
    font-family: var(--typeface-head);
    font-weight: var(--fw-medium);
    font-size: clamp(24px, 3.6vw, var(--text-size-head));
    line-height: var(--leading-close);
    letter-spacing: var(--letter-spacing-packed);
    text-transform: uppercase;
}

h3 {
    font-family: var(--typeface-head);
    font-weight: var(--fw-medium);
    font-size: clamp(19px, 2vw, var(--text-size-sub));
    line-height: var(--leading-regular);
    letter-spacing: var(--letter-spacing-base);
}

h4 {
    font-family: var(--typeface-head);
    font-weight: var(--fw-medium);
    font-size: var(--text-size-h4);
    line-height: var(--leading-regular);
    letter-spacing: var(--letter-spacing-base);
}

h5,
h6 {
    font-family: var(--typeface-reading);
    font-weight: var(--fw-bold);
    font-size: var(--text-size-micro-head);
    line-height: var(--leading-regular);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
    margin: 0;
}

p {
    margin: 0 0 var(--stack-step-2);
    line-height: var(--leading-loose);
}

ul,
ol {
    margin: 0 0 var(--stack-step-2);
    padding-inline-start: var(--stack-step-2);
}

li {
    line-height: var(--leading-loose);
    margin-block-end: var(--stack-step-0);
}

img {
    max-width: 100%;
}

figure {
    margin: 0;
}

strong {
    font-weight: var(--fw-medium);
}

a {
    color: var(--chroma-brand-hot);
    text-decoration: none;
}

button {
    font: inherit;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

.skiplink {
    position: absolute;
    inset-inline-start: var(--stack-step-2);
    z-index: 400;
    background: var(--chroma-brand-hot);
    color: var(--chroma-ink);
    padding: var(--stack-step-1) var(--stack-step-2);
    border-radius: var(--radius-step-2);
    font-weight: var(--fw-medium);
}

.skiplink:not(:focus) {
    top: -200px !important;
}

.skiplink:focus {
    top: var(--stack-step-1);
}

:focus-visible {
    outline: var(--border-regular) solid var(--chroma-brand-hot);
    outline-offset: 3px;
}

/* ---------------------------------------------------------------- header */
.z09 {
    position: fixed;
    inset-block-start: 0;
    inset-inline: 0;
    z-index: 120;
    background: var(--chroma-field);
    transition: transform var(--tempo-steady) var(--curve-release),
        box-shadow var(--tempo-steady) var(--curve-release);
}

.z09.is-hidden {
    transform: translateY(-100%);
}

.z09.is-lifted {
    box-shadow: var(--shadow-step-5);
}

.z09-tier {
    height: 32px;
    background: var(--chroma-bg-elevated);
    border-block-end: var(--border-hair) dashed var(--chroma-rule);
}

.z09-tier .z09-hold {
    display: flex;
    align-items: center;
    gap: var(--stack-step-2);
    height: 100%;
}

.z09-tag {
    font-family: var(--typeface-head);
    font-size: var(--text-size-legal);
    font-weight: var(--fw-bold);
    letter-spacing: var(--letter-spacing-wide);
    color: var(--chroma-ink);
    background: var(--chroma-brand-hot);
    border-radius: var(--radius-step-1);
    padding: 1px 7px;
}

.z09-note {
    font-size: var(--text-size-legal);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
    color: var(--chroma-quiet);
}

.z09-tier .z09-jump {
    margin-inline-start: auto;
    font-size: var(--text-size-legal);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
}

.z09-base {
    min-height: 44px;
}

.z09-base .z09-hold {
    display: flex;
    align-items: center;
    gap: var(--stack-step-1);
    padding-block: 8px;
}

.z09-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
}

.z09-brand {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
}

.z09-image {
    display: block;
    height: 48px;
    width: auto;
    flex-shrink: 0;
}

.z09-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    background: rgba(231, 177, 76, 0.14);
    border: 0;
    border-radius: var(--radius-step-2);
    color: var(--chroma-brand-hot);
    cursor: pointer;
    flex-shrink: 0;
}

.z09-bars,
.z09-bars::before,
.z09-bars::after {
    display: block;
    width: 20px;
    height: 2px;
    background: var(--chroma-brand-hot);
    border-radius: var(--radius-step-0);
}

.z09-bars {
    position: relative;
}

.z09-bars::before,
.z09-bars::after {
    content: "";
    position: absolute;
    inset-inline-start: 0;
}

.z09-bars::before {
    inset-block-start: -6px;
}

.z09-bars::after {
    inset-block-start: 6px;
}

.z09-map {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
}

.z09-map .z09-list {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    gap: var(--stack-step-1);
    margin: 0;
    padding: 0;
    list-style: none;
    width: max-content;
}

.z09-piece {
    position: relative;
    margin: 0;
    flex: 0 0 auto;
}

.z09-map .z09-piece + .z09-piece::before {
    content: "/";
    color: var(--chroma-rule);
    margin-inline-end: var(--stack-step-0);
    font-weight: var(--fw-medium);
}

.z09-jump {
    display: inline-block;
    font-family: var(--typeface-head);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
    color: var(--chroma-fg);
    white-space: nowrap;
    transition: transform var(--tempo-fast) var(--curve-release),
        color var(--tempo-fast) var(--curve-release);
}

.z09-jump:hover {
    color: var(--chroma-brand-hot);
    transform: translateY(-2px);
}

.z09-jump.is-here {
    color: var(--chroma-brand-hot);
}

.z09-more {
    font-family: var(--typeface-head);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
    color: var(--chroma-quiet);
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
    white-space: nowrap;
}

.z09-more:hover {
    color: var(--chroma-brand-hot);
}

.z09-pane {
    display: none;
    position: absolute;
    inset-block-start: calc(100% + 10px);
    inset-inline-end: 0;
    min-width: 200px;
    max-height: 60vh;
    overflow-y: auto;
    background: var(--chroma-bg-elevated);
    border: var(--border-hair) dashed var(--chroma-edge-hard);
    border-radius: var(--radius-step-3);
    padding: var(--stack-step-1);
    z-index: 130;
}

.z09-pane .z09-list {
    display: block;
    width: auto;
    margin: 0;
    padding: 0;
    list-style: none;
}

.z09-pane .z09-piece {
    display: block;
}

.z09-pane .z09-jump {
    display: block;
    padding: 8px 10px;
}

.z09-more[aria-expanded="true"] + .z09-pane {
    display: block;
}

.z09-piece-over {
    display: flex;
    align-items: center;
}

.z09-piece-over[hidden] {
    display: none;
}

.z09-offer {
    text-decoration: none;
}

.z09-acts {
    margin-inline-start: auto;
    display: flex;
    align-items: center;
    gap: var(--stack-step-1);
    flex-shrink: 0;
}

.z09-action {
    font-size: var(--text-size-small);
    padding-inline: var(--stack-step-2);
    white-space: nowrap;
    flex-shrink: 0;
}

@media (max-width: 1520px) {
    .z09-acts .z09-action,
    .z09-acts .titi-act {
        font-size: 11px;
        letter-spacing: var(--letter-spacing-base);
        padding-inline: var(--stack-step-1);
    }
}

.z09-flyout {
    display: none;
    background: var(--chroma-bg-elevated);
    border-block-start: var(--border-hair) dashed var(--chroma-rule);
    max-height: calc(100vh - var(--nav-h-sm));
    overflow-y: auto;
}

.z09-flyout.is-open {
    display: block;
}

.z09-flyout .z09-list {
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
}

.z09-flyout .z09-piece {
    display: block;
}

.z09-flyout .z09-jump {
    display: block;
    padding: 14px var(--bounds-pad-sm);
    border-block-end: var(--border-hair) dashed var(--chroma-rule);
}

/* ------------------------------------------------------------ rg + cookie */
.rg-band {
    position: fixed;
    inset-block-end: 0;
    inset-inline: 0;
    z-index: 140;
    background: var(--chroma-notice);
    color: var(--chroma-fg);
    text-align: center;
    padding: 7px var(--bounds-pad-sm);
    font-size: var(--text-size-legal);
    line-height: var(--leading-regular);
    letter-spacing: var(--letter-spacing-base);
    pointer-events: none;
}

.rg-body {
    color: var(--chroma-fg);
}

.rg-route {
    display: inline-block;
    width: auto;
    max-width: 100%;
    margin: 0 0 0 6px;
    color: var(--chroma-fg);
    text-decoration: underline;
    pointer-events: auto;
}

.r49 {
    position: fixed;
    inset-block-end: calc(var(--rg-h) + var(--stack-step-1));
    inset-inline-end: var(--stack-step-2);
    z-index: 130;
    width: 320px;
    max-width: calc(100vw - 2 * var(--stack-step-2));
    background: var(--chroma-field);
    border: var(--border-hair) solid var(--chroma-rule);
    border-inline-start: var(--bar-hover) solid var(--chroma-brand-hot);
    border-radius: var(--radius-step-2);
    box-shadow: var(--shadow-step-6);
    padding: var(--stack-step-2);
    transition: transform var(--tempo-steady) var(--curve-both),
        visibility 0s linear var(--tempo-steady);
}

.r49.is-gone {
    transform: translateX(calc(100% + var(--stack-step-4)));
    visibility: hidden;
}

.r49-note {
    margin: 0 0 var(--stack-step-1);
    font-size: var(--text-size-small);
    line-height: var(--leading-regular);
    color: var(--chroma-quiet);
}

.r49-acts {
    display: flex;
    gap: var(--stack-step-0);
    flex-wrap: wrap;
}

.r49-confirm,
.r49-reject {
    font-family: var(--typeface-head);
    font-size: var(--text-size-legal);
    font-weight: var(--fw-medium);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
    border-radius: var(--radius-lozenge);
    padding: 9px 16px;
    min-height: 36px;
    cursor: pointer;
    transition: background var(--tempo-fast) var(--curve-release),
        color var(--tempo-fast) var(--curve-release);
}

.r49-confirm {
    background: var(--chroma-brand-hot);
    color: var(--chroma-ink);
    border: 0;
}

.r49-confirm:hover {
    background: var(--chroma-key-active);
    color: var(--chroma-ink);
}

.r49-reject {
    background: var(--chroma-field);
    color: var(--chroma-brand-hot);
    border: var(--border-hair) solid var(--chroma-edge-hard);
}

.r49-reject:hover {
    background: var(--chroma-bg-elevated);
    color: var(--chroma-brand-hot);
}

/* ------------------------------------------------------------- offer CTA */
.f79-offer,
.w83-offer,
.v33-offer,
.v56-offer,
.z09-action,
.t11-goto,
.d60-send {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 12px var(--stack-step-3);
    font-family: var(--typeface-head);
    font-size: var(--text-size-small);
    font-weight: var(--fw-bold);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
    border: 0;
    border-radius: var(--radius-lozenge);
    background: var(--chroma-brand-hot);
    color: var(--chroma-ink);
    cursor: pointer;
    text-align: center;
    transition: background var(--tempo-fast) var(--curve-release),
        color var(--tempo-fast) var(--curve-release);
}

.f79-offer::before,
.w83-offer::before,
.v33-offer::before,
.v56-offer::before,
.z09-action::before,
.t11-goto::before {
    content: "\2192";
    display: inline-block;
    order: 1;
    transition: transform var(--tempo-fast) var(--curve-release);
}

.f79-offer:hover::before,
.w83-offer:hover::before,
.v33-offer:hover::before,
.v56-offer:hover::before,
.z09-action:hover::before,
.t11-goto:hover::before {
    transform: translateX(var(--stack-step-0));
}

.f79-offer:hover,
.w83-offer:hover,
.v33-offer:hover,
.v56-offer:hover,
.z09-action:hover,
.t11-goto:hover,
.d60-send:hover {
    background: var(--chroma-key-active);
    color: var(--chroma-ink);
}

/* ------------------------------------------------------------------ hero */
.f79 {
    position: relative;
    display: flex;
    align-items: center;
    min-height: calc(100vh - var(--pv-shell));
    overflow: hidden;
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.f79::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url("/photo-91/marquee.webp");
    background-size: cover;
    background-position: center;
    opacity: 0.5;
}

.f79::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(102deg, rgba(13, 12, 12, 0.98) 0%, rgba(13, 12, 12, 0.92) 46%, rgba(13, 12, 12, 0.42) 100%);
}

.f79-mark {
    position: absolute;
    z-index: 1;
    inset-block-start: 50%;
    transform: translateY(-50%);
    inset-inline-start: max(var(--bounds-pad-lg), calc((100vw - var(--bounds-full)) / 2));
    max-width: calc(var(--bounds-full) * 0.3);
    font-family: var(--typeface-head);
    font-weight: var(--fw-bold);
    font-size: min(58vh, 34vw);
    line-height: 0.78;
    color: transparent;
    -webkit-text-stroke: 5px rgba(231, 177, 76, 0.28);
    user-select: none;
    pointer-events: none;
}

.f79-hold {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
}

.f79-fill {
    padding-inline-start: 34%;
}

.f79-tag {
    font-size: var(--text-size-small);
    font-weight: var(--fw-medium);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
    color: var(--chroma-brand-hot);
    margin-block-end: var(--stack-step-1);
}

.f79-deck {
    max-width: var(--bounds-narrow);
    color: var(--chroma-quiet);
    margin-block: var(--stack-step-2) var(--stack-step-3);
}

.f79-acts {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--stack-step-2);
}

.f79-fine {
    flex: 1 1 100%;
    font-size: var(--text-size-small);
    color: var(--chroma-quiet);
    letter-spacing: var(--letter-spacing-base);
}

/* ----------------------------------------------------------- breadcrumbs */
.y51 {
    padding-block: var(--stack-step-2) 0;
}

.y51-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--stack-step-0);
}

.y51-piece {
    display: inline-flex;
    align-items: baseline;
    gap: var(--stack-step-0);
    font-size: var(--text-size-small);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
}

.y51-idx {
    font-family: var(--typeface-head);
    font-weight: var(--fw-bold);
    font-size: var(--text-size-micro-head);
    color: var(--chroma-brand-hot);
}

.y51-jump {
    color: var(--chroma-quiet);
}

.y51-jump:hover {
    color: var(--chroma-brand-hot);
}

.y51-here {
    color: var(--chroma-fg);
}

.y51-sep {
    color: var(--chroma-quiet);
    margin-inline: var(--stack-step-2);
}

/* ---------------------------------------------------------- page header */
.f39 {
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.f39-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: var(--stack-step-3);
    align-items: start;
}

.f39-idx {
    font-family: var(--typeface-head);
    font-weight: var(--fw-bold);
    font-size: clamp(46px, 6vw, 78px);
    line-height: var(--leading-close);
    color: var(--chroma-brand-hot);
}

.f39-fill {
    min-width: 0;
}

.f39-deck {
    margin-block-start: var(--stack-step-2);
    color: var(--chroma-quiet);
    line-height: var(--leading-loose);
}

/* ----------------------------------------------------------------- prose */
.w83 {
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.w83-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
}

.w83 h2 {
    margin-block: var(--stack-step-3) var(--stack-step-2);
    padding-block-start: var(--stack-step-2);
    position: relative;
}

.w83 h2::before {
    content: "";
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 0;
    width: 96px;
    border-block-start: var(--border-hair) dotted var(--chroma-brand-hot);
}

.w83 h2:first-child {
    margin-block-start: 0;
}

.w83 p {
    color: var(--chroma-quiet);
}

.w83 strong {
    color: var(--chroma-fg);
}

.w83-list,
.w83-steps {
    color: var(--chroma-quiet);
    padding-inline-start: var(--stack-step-3);
}

.w83-list li::marker {
    color: var(--chroma-brand-hot);
}

.w83-steps li::marker {
    color: var(--chroma-brand-hot);
    font-weight: var(--fw-medium);
}

.w83-jump {
    background-image: linear-gradient(var(--chroma-brand-hot), var(--chroma-brand-hot));
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
    transition: background-size var(--tempo-steady) var(--curve-release);
}

.w83-jump:hover {
    background-size: 100% 1px;
}

.w83-frame {
    margin-block: var(--stack-step-3);
}

.w83-shot {
    display: block;
    width: 100%;
    max-width: 760px;
    height: auto;
    margin-inline: auto;
    border-radius: var(--radius-step-3);
    border: var(--border-hair) dashed var(--chroma-rule);
}

.w83-frame-wide .w83-shot {
    max-width: 620px;
}

.w83-slab {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--stack-step-1) var(--stack-step-2);
    margin-block: var(--stack-step-3);
    padding: var(--stack-step-2) var(--stack-step-3);
    background: var(--chroma-bg-elevated);
    border: var(--border-hair) dashed var(--chroma-brand-hot);
    border-radius: var(--radius-step-3);
}

.w83-slabname {
    margin: 0;
    flex: 1 1 260px;
    min-width: 0;
    overflow-wrap: anywhere;
    font-family: var(--typeface-head);
    font-weight: var(--fw-medium);
    font-size: var(--text-size-h4);
    text-transform: uppercase;
    letter-spacing: var(--letter-spacing-base);
    color: var(--chroma-fg);
}

.w83-slabbody {
    flex: 1 1 240px;
    font-size: var(--text-size-small);
    color: var(--chroma-quiet);
    line-height: var(--leading-regular);
}

/* ------------------------------------------------------------ items grid */
.v33 {
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.v33-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
}

.v33-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--stack-step-2);
    margin: var(--stack-step-3) 0 0;
    padding: 0;
    list-style: none;
}

.v33-piece {
    position: relative;
    margin: 0;
    padding: var(--stack-step-2);
    background: var(--chroma-bg-elevated);
    border-block-start: var(--bar-hover) solid var(--chroma-brand-hot);
    border-radius: 0 0 var(--radius-step-3) var(--radius-step-3);
    transition: transform var(--tempo-fast) var(--curve-release);
}

.v33-piece::after {
    content: "";
    position: absolute;
    inset-block-end: 0;
    inset-inline-start: 0;
    width: 0;
    border-block-end: var(--bar-hover) solid var(--chroma-brand-hot);
    transition: width var(--tempo-steady) var(--curve-release);
}

.v33-piece:hover::after {
    width: 100%;
}

.v33-glyph {
    display: block;
    width: 30px;
    height: 30px;
    margin-block-end: var(--stack-step-1);
    color: var(--chroma-brand-hot);
}

.v33-glyph svg {
    width: 30px;
    height: 30px;
    fill: currentColor;
}

.v33-piece h3 {
    color: var(--chroma-fg);
}

.v33-body {
    margin: var(--stack-step-1) 0 0;
    font-size: var(--text-size-small);
    color: var(--chroma-quiet);
    display: block;
}

.v33-piece-offer {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: var(--stack-step-1);
    background: var(--chroma-field);
    border: var(--border-hair) dashed var(--chroma-brand-hot);
    border-block-start: var(--bar-hover) solid var(--chroma-brand-hot);
}

.v33-plug {
    font-family: var(--typeface-head);
    font-weight: var(--fw-medium);
    font-size: var(--text-size-h4);
    text-transform: uppercase;
    letter-spacing: var(--letter-spacing-base);
    color: var(--chroma-fg);
}

/* --------------------------------------------------------------- reviews */
.m25 {
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.m25-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
}

.m25-list {
    margin-block-start: var(--stack-step-3);
}

.m25-piece {
    margin: 0;
    padding-block: var(--stack-step-3);
    border-block-end: var(--border-hair) dotted var(--chroma-rule);
}

.m25-bar {
    display: flex;
    align-items: baseline;
    gap: var(--stack-step-0);
    flex-wrap: wrap;
}

.m25-author {
    font-style: normal;
    font-weight: var(--fw-medium);
    color: var(--chroma-fg);
}

.m25-score {
    color: var(--chroma-quiet);
    font-size: var(--text-size-small);
}

.m25-body {
    margin: var(--stack-step-0) 0 0;
    color: var(--chroma-quiet);
    line-height: var(--leading-loose);
}

/* ------------------------------------------------------------------- faq */
.x97 {
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.x97-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
}

.x97-list {
    margin-block-start: var(--stack-step-3);
    display: flex;
    flex-direction: column;
    gap: var(--stack-step-2);
}

.x97-piece {
    border-block-end: var(--border-hair) solid rgba(255, 255, 255, 0.06);
    padding-block-end: var(--stack-step-1);
}

.x97-ask {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--stack-step-1);
    padding-block: var(--stack-step-1);
    cursor: pointer;
    list-style: none;
}

.x97-ask::-webkit-details-marker {
    display: none;
}

.x97-ask h3 {
    font-family: var(--typeface-reading);
    font-size: var(--text-size-small);
    font-weight: var(--fw-medium);
    letter-spacing: var(--letter-spacing-base);
    color: var(--chroma-fg);
}

.x97-sign {
    flex: 0 0 auto;
    position: relative;
    width: 14px;
    height: 14px;
    transition: transform var(--tempo-steady) var(--curve-release);
}

.x97-sign::before,
.x97-sign::after {
    content: "";
    position: absolute;
    background: var(--chroma-brand-hot);
}

.x97-sign::before {
    inset-block-start: 6px;
    inset-inline-start: 0;
    width: 14px;
    height: 2px;
}

.x97-sign::after {
    inset-block-start: 0;
    inset-inline-start: 6px;
    width: 2px;
    height: 14px;
}

.x97-piece[open] .x97-sign {
    transform: rotate(45deg);
}

.x97-body {
    margin: 0;
    padding-block: var(--stack-step-1);
    font-size: var(--text-size-small);
    line-height: var(--leading-regular);
    color: var(--chroma-quiet);
}

.x97-piece[open] .x97-body {
    animation: faqOpen var(--tempo-steady) var(--curve-release) both;
}

@keyframes faqOpen {
    from {
        opacity: 0.001;
        transform: translateY(-6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ------------------------------------------------------------- cta block */
.v56 {
    background: var(--chroma-brand-hot);
    color: var(--chroma-ink);
    padding-block: var(--stack-step-3);
    box-shadow: var(--shadow-step-4);
}

.v56.is-gone {
    display: none;
}

.v56-hold {
    position: relative;
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
    display: flex;
    align-items: center;
    gap: var(--stack-step-2);
    flex-wrap: wrap;
}

.v56-fill {
    flex: 1 1 320px;
}

.v56-lead {
    display: block;
    font-family: var(--typeface-head);
    font-weight: var(--fw-bold);
    font-size: var(--text-size-h4);
    text-transform: uppercase;
    letter-spacing: var(--letter-spacing-base);
    color: var(--chroma-ink);
}

.v56-body {
    display: block;
    margin-block-start: var(--stack-step-0);
    font-size: var(--text-size-small);
    line-height: var(--leading-regular);
    color: var(--chroma-ink-soft);
}

.v56-offer {
    background: var(--chroma-field);
    color: var(--chroma-brand-hot);
    flex: 0 0 auto;
}

.v56-offer:hover {
    background: var(--chroma-bg-elevated);
    color: var(--chroma-brand-hot);
}

.v56-shut {
    position: static;
    flex: 0 0 auto;
    margin-inline-start: var(--stack-step-0);
    width: 30px;
    height: 30px;
    padding: 0;
    background: none;
    border: 0;
    color: var(--chroma-ink);
    font-size: var(--text-size-sub);
    line-height: 1;
    cursor: pointer;
}

/* ---------------------------------------------------------- legal + form */
.a66 {
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.a66-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: var(--stack-step-4);
    align-items: start;
}

.a66-toc {
    position: sticky;
    inset-block-start: calc(var(--pv-shell) + var(--stack-step-1));
    padding: var(--stack-step-2);
    background: var(--chroma-bg-elevated);
    border-radius: var(--radius-step-3);
    border: var(--border-hair) dashed var(--chroma-rule);
}

.a66-toc h4 {
    margin-block-end: var(--stack-step-1);
    color: var(--chroma-fg);
}

.a66-list {
    margin: 0;
    padding-inline-start: var(--stack-step-2);
    font-size: var(--text-size-small);
}

.a66-list li::marker {
    color: var(--chroma-brand-hot);
}

.a66-jump {
    color: var(--chroma-quiet);
}

.a66-jump:hover {
    color: var(--chroma-brand-hot);
}

.a66-fill h2 {
    margin-block: var(--stack-step-3) var(--stack-step-2);
    scroll-margin-block-start: calc(var(--pv-shell) + var(--stack-step-2));
    font-size: clamp(20px, 2.6vw, var(--text-size-sub));
}

.a66-fill p {
    color: var(--chroma-quiet);
}

.a66-lede {
    font-size: var(--text-size-h4);
    color: var(--chroma-fg) !important;
    line-height: var(--leading-loose);
}

.a66-help {
    color: var(--chroma-quiet);
    padding-inline-start: var(--stack-step-3);
}

.a66-help li::marker {
    color: var(--chroma-brand-hot);
}

.a66-note {
    margin-block-start: var(--stack-step-3);
    padding: var(--stack-step-2);
    background: var(--chroma-bg-elevated);
    border-radius: var(--radius-step-3);
    font-size: var(--text-size-small);
    color: var(--chroma-quiet) !important;
}

.d60 {
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.d60-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
}

.d60-body {
    margin-block: var(--stack-step-2);
    color: var(--chroma-quiet);
}

.d60-box {
    border: var(--border-regular) solid var(--chroma-brand-hot);
    border-radius: var(--radius-step-3);
    padding: var(--stack-step-3);
}

.d60-entry {
    display: flex;
    flex-direction: column;
    gap: var(--stack-step-0);
    margin-block-end: var(--stack-step-2);
}

.d60-tag {
    font-size: var(--text-size-small);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
    color: var(--chroma-quiet);
}

.d60-entry input,
.d60-entry textarea {
    width: 100%;
    background: none;
    border: 0;
    border-block-end: var(--border-hair) solid rgba(255, 255, 255, 0.12);
    color: var(--chroma-fg);
    font-family: var(--typeface-reading);
    font-size: var(--text-size-h4);
    padding: 10px 0;
}

.d60-entry input:focus,
.d60-entry textarea:focus {
    border-block-end-color: var(--chroma-brand-hot);
    outline: none;
}

.d60-done {
    margin-block-start: var(--stack-step-2);
    color: var(--chroma-brand-hot);
    font-size: var(--text-size-small);
}

/* --------------------------------------------------- author card + byline */
.v51 {
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.v51-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
}

.v51-plate {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: var(--stack-step-3);
    background: var(--chroma-bg-elevated);
    padding: var(--stack-step-3);
    border-radius: var(--radius-step-4);
    align-items: start;
}

.v51-avatar {
    width: 160px;
    height: 160px;
    border-radius: var(--radius-dot);
    overflow: hidden;
    flex-shrink: 0;
}

.v51-avatar img {
    display: block;
    width: 160px;
    height: 160px;
    object-fit: cover;
    object-position: center top;
}

.v51-fill {
    display: flex;
    flex-direction: column;
    gap: var(--stack-step-1);
}

.v51-post {
    font-weight: var(--fw-medium);
    font-size: var(--text-size-small);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
    color: var(--chroma-brand-hot);
}

.v51-body {
    margin: 0;
    color: var(--chroma-quiet);
    line-height: var(--leading-loose);
}

.v51-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--stack-step-0);
    margin: 0;
    padding: 0;
    list-style: none;
}

.v51-list li {
    margin: 0;
    padding: 4px var(--stack-step-1);
    background: var(--chroma-primary);
    color: var(--chroma-ink);
    border-radius: var(--radius-lozenge);
    font-size: var(--text-size-legal);
    letter-spacing: var(--letter-spacing-wide);
    text-transform: uppercase;
}

.s47 {
    display: block;
    padding-block: var(--stack-step-4) var(--stack-step-2);
}

.s47-quote {
    position: relative;
    margin: 0 auto;
    max-width: var(--bounds-narrow);
    padding-inline: var(--bounds-pad-sm);
    text-align: center;
}

.s47-quote::before {
    content: "\201C";
    display: block;
    font-family: var(--typeface-head);
    font-size: var(--text-size-xxl);
    line-height: 0.7;
    color: var(--chroma-brand-hot);
}

.s47-quote p {
    font-family: var(--typeface-head);
    font-size: var(--text-size-h4);
    font-style: italic;
    color: var(--chroma-fg);
    line-height: var(--leading-regular);
}

.s47-sub {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: var(--stack-step-0);
}

.s47-avatar {
    width: 32px;
    height: 32px;
    border-radius: var(--radius-dot);
    object-fit: cover;
    object-position: center top;
    flex: 0 0 auto;
}

.s47-author {
    font-style: normal;
}

.s47-jump {
    color: var(--chroma-brand-hot);
    font-weight: var(--fw-medium);
}

.s47-post {
    font-size: var(--text-size-small);
    font-style: italic;
    color: var(--chroma-quiet);
}

/* ------------------------------------------------------------ error block */
.t11 {
    padding-block: var(--stack-step-5) var(--stack-step-3);
}

.t11-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
    text-align: center;
}

.t11-code {
    display: block;
    font-family: var(--typeface-head);
    font-weight: var(--fw-bold);
    font-size: clamp(64px, 12vw, 140px);
    line-height: var(--leading-close);
    color: var(--chroma-brand-hot);
    letter-spacing: var(--letter-spacing-packed);
}

.t11-nameline {
    position: relative;
    max-width: var(--bounds-narrow);
    margin-inline: auto;
    color: var(--chroma-fg);
}

.t11-nameline::before,
.t11-nameline::after {
    content: attr(data-text);
    position: absolute;
    inset: 0;
    color: var(--chroma-brand-hot);
    opacity: 0.6;
}

.t11-nameline::before {
    transform: translate(2px, -2px);
}

.t11-nameline::after {
    transform: translate(-2px, 2px);
    color: var(--chroma-key-active);
}

.t11-body {
    margin: var(--stack-step-2) auto var(--stack-step-3);
    color: var(--chroma-quiet);
}

/* ---------------------------------------------------------------- footer */
.g09 {
    background: var(--chroma-primary);
    color: var(--chroma-ink);
    padding-block: var(--stack-step-4) var(--stack-step-1);
}

.g09-hold {
    width: 100%;
    max-width: calc(var(--bounds-full) + 2 * var(--bounds-pad-lg));
    margin-inline: auto;
    padding-inline: var(--bounds-pad-lg);
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr;
    gap: var(--stack-step-3);
}

.g09-side h6 {
    color: var(--chroma-ink);
    margin-block-end: var(--stack-step-1);
    font-family: var(--typeface-head);
}

.g09-brand {
    display: inline-flex;
    align-items: center;
    background: var(--chroma-field);
    padding: 8px 14px;
    border-radius: var(--radius-step-3);
}

.g09-image {
    display: block;
    height: 48px;
    width: auto;
}

.g09-body {
    margin-block-start: var(--stack-step-1);
    font-size: var(--text-size-small);
    color: var(--chroma-ink-soft);
    line-height: var(--leading-regular);
}

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

.g09-list li {
    margin-block-end: var(--stack-step-0);
}

.g09-jump {
    font-size: var(--text-size-small);
    color: var(--chroma-ink-soft);
    overflow-wrap: anywhere;
}

.g09-jump:hover {
    color: var(--chroma-ink);
    text-decoration: underline;
}

.g09-bar {
    margin-block-start: var(--stack-step-3);
    border-block-start: var(--border-hair) dashed rgba(20, 16, 10, 0.35);
    padding-block: var(--stack-step-1) calc(var(--stack-step-1) + var(--rg-h));
}

.g09-bar .g09-hold {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: var(--stack-step-2);
}

.g09-bar small {
    font-size: var(--text-size-small);
    color: var(--chroma-ink-soft);
}

/* -------------------------------------------------------------- tablet */
@media (max-width: 1160px) {
    .z09-hold,
    .f79-hold,
    .y51-hold,
    .f39-hold,
    .w83-hold,
    .v33-hold,
    .m25-hold,
    .x97-hold,
    .v56-hold,
    .a66-hold,
    .d60-hold,
    .v51-hold,
    .t11-hold,
    .g09-hold {
        padding-inline: var(--bounds-edge-mid);
    }

    .z09-image {
        height: 46px;
    }

    .z09-action {
        font-size: var(--text-size-legal);
        padding-inline: var(--stack-step-2);
    }

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

    .f79-fill {
        padding-inline-start: 30%;
    }
}

@media (max-width: 899px) {
    .z09-toggle {
        display: inline-flex;
        margin-left: 0 !important;
    }

    .z09-map {
        display: none;
    }

    .z09-base .z09-hold {
        gap: var(--stack-step-1);
    }

    .z09-note {
        display: none;
    }

    .z09-image {
        height: 40px;
    }

    .z09-action {
        font-size: 11px;
        padding-inline: var(--stack-step-1);
        min-height: 40px;
    }

    .f79-mark {
        inset-inline-start: auto;
        inset-inline-end: var(--bounds-pad-sm);
        font-size: min(34vh, 40vw);
        -webkit-text-stroke-width: 3px;
        -webkit-text-stroke-color: rgba(231, 177, 76, 0.13);
    }

    .f79-fill {
        padding-inline-start: 0;
    }

    .f79 {
        min-height: auto;
        padding-block: var(--stack-step-3) var(--stack-step-2);
    }

    .a66-hold {
        grid-template-columns: 1fr;
        gap: var(--stack-step-2);
    }

    .a66-toc {
        position: static;
    }

    .g09-hold {
        grid-template-columns: 1fr 1fr;
    }
}

/* -------------------------------------------------------------- mobile */
@media (max-width: 580px) {
    :root {
        --text-size-xxl: 34px;
        --text-size-head: 26px;
        --text-size-sub: 20px;
        --text-size-h4: 16px;
        --text-size-sm-2: 14px;
        --text-size-micro-head: 12px;
        --text-size-body: 15px;
        --text-size-small: 12px;
        --text-size-legal: 10px;
        --rg-h: 40px;
    }

    .z09-hold,
    .f79-hold,
    .y51-hold,
    .f39-hold,
    .w83-hold,
    .v33-hold,
    .m25-hold,
    .x97-hold,
    .v56-hold,
    .a66-hold,
    .d60-hold,
    .v51-hold,
    .t11-hold,
    .g09-hold {
        padding-inline: var(--bounds-pad-sm);
    }

    .v33-list {
        grid-template-columns: 1fr;
    }

    .f39-hold {
        grid-template-columns: 1fr;
        gap: var(--stack-step-1);
    }

    .v51-plate {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .v51-avatar,
    .v51-avatar img {
        width: 120px;
        height: 120px;
    }

    .v51-list {
        justify-content: center;
    }

    .g09-hold {
        grid-template-columns: 1fr;
    }

    .f79-acts {
        gap: var(--stack-step-1);
    }

    .f79-offer,
    .w83-offer,
    .v33-offer,
    .v56-offer,
    .t11-goto {
        width: 100%;
    }

    .z09-base .z09-hold {
        flex-wrap: wrap;
    }

    .z09-acts {
        flex: 1 0 100%;
        margin-inline-start: 0;
        margin-block-start: 8px;
    }

    .z09-action {
        width: 100%;
        white-space: normal;
        line-height: 1.2;
        font-size: 11px;
        letter-spacing: var(--letter-spacing-base);
        padding: 10px var(--stack-step-1);
        min-height: 42px;
    }

    .w83-slab {
        padding: var(--stack-step-2);
    }

    .d60-box {
        padding: var(--stack-step-2);
    }
}

@media (max-width: 720px) {
    .r49,
    .r49-note {
        padding: 12px 14px !important;
        gap: 8px !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
    }

    .r49-note {
        padding: 0 !important;
        margin-block-end: 10px;
    }

    .r49 {
        inset-inline: var(--stack-step-1);
        width: auto;
        max-width: none;
    }

    .r49-acts {
        flex-direction: column;
    }

    .rg-route {
        display: block;
        width: fit-content;
        margin: 2px auto 0;
    }

    .r49-confirm,
    .r49-reject {
        width: 100%;
        padding: 8px 14px !important;
        font-size: 12px !important;
        min-height: 36px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation: none !important;
        transition: none !important;
        scroll-behavior: auto !important;
    }
}
.titi-act{display:inline-flex;align-items:center;justify-content:center;padding:12px var(--stack-step-3);min-height:44px;border-radius:var(--radius-lozenge);border:0;font-size:var(--text-size-small);font-weight:var(--fw-bold);letter-spacing:var(--letter-spacing-wide)}
.titi-act{position:relative;
  background:#059669;color:#0D0C0C;text-decoration:none;text-transform:uppercase;
  transition:background var(--tempo-fast) var(--curve-release),color var(--tempo-fast) var(--curve-release);}
.titi-act.titi-act{color:#0D0C0C;text-decoration:none;}
.titi-act:hover{background:#047857;color:#FFFFFF;animation:none}
.titi-act.titi-act:hover{color:#FFFFFF;text-decoration:none}
.titi-act:hover::after{animation:none}
.titi-act:active{background:#065F46;color:#FFFFFF}
.titi-act:focus-visible{outline:3px solid #0D0C0C;outline-offset:3px}
@keyframes titi-sway{0%,100%{transform:scaleX(0)}40%,60%{transform:scaleX(1)}}
.titi-act::after{content:"";position:absolute;left:12%;right:12%;bottom:6px;height:3px;background:currentColor;opacity:.5;transform-origin:left;animation:titi-sway 1.7s linear infinite}
@media (prefers-reduced-motion:reduce){.titi-act,.titi-act::after{animation:none!important;transition:none!important}}

.v56 .titi-act {
    box-shadow: 0 0 0 var(--border-thick) var(--chroma-field);
}

.z09-acts .titi-act::after {
    bottom: 5px;
}

@media (max-width: 924px) {
  .z09-map { display: none !important; }
  .z09-toggle { display: flex !important; }
}
