@font-face {
  font-family: 'VerseluftAlternativeBlackDeamond';
  src: url('assets/fonts/alternative/black-deamond-typeface-2026-04-07-06-17-19-utc/BlackDeamond-Regular.woff') format('woff');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

:root { --ink: #fce6cf; --cream: #100d0a; --paper: #1c1712; --orange: #d2a846; --plum: #1c1712; --line: rgba(252,230,207,.2); }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--cream); color: var(--ink); font-family: 'DM Sans', sans-serif; }
a { color: inherit; text-decoration: none; }
.site-shell { max-width: 1480px; margin: 0 auto; overflow: hidden; background: var(--cream); }
.site-header { min-height: 106px; padding: 27px 6.7%; display: flex; align-items: center; gap: 42px; border-bottom: 1px solid var(--line); }
.brand { display: flex; align-items: center; gap: 12px; min-width: 210px; }
.brand-mark { display: inline-flex; align-items: flex-end; gap: 3px; height: 34px; transform: skewY(-14deg); }
.brand-mark span { display: block; width: 7px; border-radius: 3px 3px 0 0; background: var(--orange); }
.brand-mark span:nth-child(1) { height: 21px; }.brand-mark span:nth-child(2) { height: 31px; }.brand-mark span:nth-child(3) { height: 25px; }
.brand-name { font: 700 14px/1.03 'Unbounded', sans-serif; letter-spacing: -.05em; }.brand-name em { color: var(--orange); font-style: normal; }
.main-nav { display: flex; gap: 31px; margin-right: auto; font-size: 13px; font-weight: 600; }.main-nav a { padding: 13px 0; color: #6c6a63; }.main-nav a.active, .main-nav a:hover { color: var(--ink); }
.main-nav a.active { border-bottom: 2px solid var(--orange); }
.header-actions { display: flex; align-items: center; gap: 20px; }.search-box { display: flex; align-items: center; gap: 8px; width: 198px; padding: 10px 0; border-bottom: 1px solid var(--ink); color: #6c6a63; }.search-box span { font-size: 26px; line-height: 12px; transform: rotate(-20deg); }.search-box input { border: 0; outline: 0; width: 100%; background: transparent; font: 12px 'DM Sans'; color: var(--ink); }.search-box input::placeholder { color: #77746b; }
.small-button, .primary-button { display: inline-flex; align-items: center; gap: 18px; font-weight: 700; font-size: 12px; }.small-button { padding: 14px 17px; border: 1px solid var(--ink); }.small-button span, .primary-button span { font-size: 18px; line-height: 10px; }.small-button:hover { background: var(--ink); color: var(--cream); }
.hero { position: relative; }.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 28px; color: var(--orange); font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.eyebrow span { width: 23px; height: 1px; background: var(--orange); }
h1, h2 { margin: 0; font: 600 clamp(40px, 5.4vw, 78px)/1.06 'Unbounded', sans-serif; letter-spacing: -.085em; }.hero h1 { max-width: 600px; }.hero h1 i, h2 i { font-family: Georgia, serif; font-weight: 400; letter-spacing: -.07em; }.hero-intro { max-width: 375px; margin: 36px 0 38px; color: #626159; font-size: 16px; line-height: 1.7; }.primary-button { padding: 18px 22px; color: var(--paper); background: var(--orange); box-shadow: 8px 8px 0 rgba(74,40,53,.14); }.primary-button:hover { background: var(--plum); transform: translate(2px,2px); box-shadow: 5px 5px 0 rgba(74,40,53,.14); }
.scroll-note { position: absolute; bottom: 32px; left: 6.7%; display: flex; align-items: center; gap: 12px; color: #77746b; font-size: 10px; text-transform: uppercase; letter-spacing: .13em; }.scroll-line { width: 40px; height: 1px; background: #77746b; }
.library-preview { display: grid; grid-template-columns: 1.3fr 1fr .5fr; gap: 60px; align-items: end; padding: 110px 14%; background: var(--paper); }.library-preview .eyebrow { margin-bottom: 17px; }.library-preview h2 { font-size: clamp(30px, 3.5vw, 54px); }.library-preview > p { margin: 0 0 5px; color: #6c6a63; font-size: 15px; line-height: 1.7; max-width: 330px; }.text-link { justify-self: end; padding-bottom: 6px; border-bottom: 1px solid var(--orange); color: var(--orange); font-size: 12px; font-weight: 700; }.text-link span { padding-left: 12px; font-size: 18px; }.values-strip { display: flex; justify-content: space-around; padding: 28px 10%; color: var(--cream); background: var(--ink); }.values-strip div { display: flex; gap: 13px; align-items: center; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }.values-strip strong { color: var(--orange); font: 600 11px 'Unbounded'; }
.proof-section { position: relative; padding: 0 10% 120px; background: var(--paper); overflow: hidden; }.stats-row { display: grid; grid-template-columns: repeat(3, 1fr); padding: 57px 3% 65px; border-bottom: 1px solid var(--line); }.stat { display: flex; align-items: baseline; gap: 14px; border-right: 1px solid var(--line); padding-left: 10%; }.stat:first-child { padding-left: 0; }.stat:last-child { border-right: 0; }.stat strong { color: var(--orange); font: 600 clamp(25px, 3vw, 42px) 'Unbounded'; letter-spacing: -.08em; }.stat span { color: #6c6a63; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }.proof-heading { display: flex; justify-content: space-between; align-items: end; gap: 40px; padding: 92px 3% 45px; }.proof-heading .eyebrow { margin-bottom: 19px; }.proof-heading h2 { font-size: clamp(35px, 4.2vw, 59px); }.proof-heading > p { max-width: 355px; margin: 0 4% 5px 0; color: #6c6a63; font-size: 14px; line-height: 1.75; }.samples-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; padding: 0 3%; }.sample-card { min-width: 0; }.sample-preview { position: relative; height: 340px; overflow: hidden; padding: 23px 25px; color: var(--cream); }.sample-preview:after { content: ''; position: absolute; inset: 12px; border: 1px solid rgba(238,232,221,.27); pointer-events: none; }.sample-kicker { position: relative; z-index: 2; font: 600 9px 'Unbounded'; letter-spacing: .08em; }.preview-wilds { background: #53655a; }.preview-wilds:before { content: ''; position: absolute; width: 260px; height: 260px; right: -60px; top: 70px; border: 1px solid rgba(238,232,221,.45); border-radius: 50%; box-shadow: 0 0 0 30px rgba(238,232,221,.08), 0 0 0 68px rgba(238,232,221,.06); }.preview-wilds h3, .preview-city h3, .preview-odds h3 { position: absolute; z-index: 1; margin: 0; left: 25px; bottom: 53px; font: 600 34px/1.03 'Unbounded'; letter-spacing: -.08em; }.preview-wilds h3 i, .preview-city h3 i, .preview-odds h3 i { color: #efaa72; font-family: Georgia, serif; font-weight: 400; }.preview-compass { position: absolute; right: 50px; top: 100px; color: #efaa72; font-size: 60px; }.preview-footer { position: absolute; z-index: 1; left: 25px; bottom: 25px; font: italic 12px Georgia, serif; opacity: .8; }.preview-city { background: #bd6c46; }.city-sun { position: absolute; width: 185px; height: 185px; top: 72px; right: 18px; border-radius: 50%; background: #f0c987; }.city-tower { position: absolute; z-index: 1; right: 79px; bottom: 0; width: 60px; height: 195px; background: #4a2835; clip-path: polygon(30% 0, 70% 0, 100% 13%, 84% 13%, 84% 100%, 16% 100%, 16% 13%, 0 13%); }.tower-two { right: 22px; height: 135px; width: 42px; }.preview-city h3 { bottom: 59px; }.preview-city h3 i { color: #f3d89e; }.preview-odds { background: #42364e; }.preview-odds:before { content: ''; position: absolute; width: 210px; height: 210px; right: -25px; top: 43px; background: #e9693f; border-radius: 45% 55% 62% 38%; transform: rotate(26deg); }.dice-shape { position: absolute; z-index: 1; top: 83px; right: 71px; color: #f3d89e; font: 600 35px 'Unbounded'; transform: rotate(26deg); }.preview-odds h3 i { color: #ee8f61; }.sample-info { display: flex; align-items: center; justify-content: space-between; padding: 18px 4px 0; }.sample-info h3 { margin: 7px 0 0; font-size: 16px; }.sample-type { color: var(--orange); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }.sample-info a { display: grid; place-items: center; width: 32px; height: 32px; color: var(--paper); background: var(--orange); font-size: 18px; }.sample-info a:hover { background: var(--plum); }.testimonial { display: grid; grid-template-columns: 1fr 2.3fr 1fr; align-items: center; gap: 45px; margin: 98px 3% 0; padding: 52px 5%; color: var(--cream); background: var(--plum); }.quote-mark { color: #efaa72; font: 100px/.5 Georgia, serif; align-self: start; }.testimonial blockquote { margin: 0; font: italic 26px/1.35 Georgia, serif; letter-spacing: -.02em; }.quote-author { display: flex; align-items: center; gap: 12px; }.author-avatar { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; color: var(--plum); background: #efaa72; font-size: 11px; font-weight: 700; }.quote-author strong, .quote-author small { display: block; }.quote-author strong { font-size: 12px; }.quote-author small { margin-top: 4px; color: #c5a8a0; font-size: 10px; }
@media (max-width: 900px) { .site-header { flex-wrap: wrap; gap: 20px; padding: 24px 6%; }.main-nav { order: 3; width: 100%; }.header-actions { margin-left: auto; }.scroll-note { display: none; }.library-preview { grid-template-columns: 1fr 1fr; padding: 75px 10%; }.library-preview .text-link { justify-self: start; }.values-strip { padding: 25px 5%; }.proof-section { padding: 0 5% 80px; }.proof-heading { padding-left: 0; padding-right: 0; }.samples-grid { padding: 0; gap: 14px; }.testimonial { grid-template-columns: 55px 1fr; margin-left: 0; margin-right: 0; }.quote-author { grid-column: 2; } }
@media (max-width: 560px) { .site-header { min-height: 0; }.brand { min-width: 0; }.header-actions { width: 100%; }.search-box { flex: 1; }.small-button { padding: 12px; }.hero h1 { font-size: 43px; }.hero-intro { font-size: 14px; }.library-preview { grid-template-columns: 1fr; gap: 28px; padding: 62px 8%; }.values-strip { display: grid; grid-template-columns: 1fr; gap: 17px; padding: 24px 8%; }.main-nav { gap: 18px; overflow: auto; white-space: nowrap; }.stats-row { grid-template-columns: 1fr; gap: 23px; padding: 40px 0; }.stat, .stat:first-child { border-right: 0; border-bottom: 1px solid var(--line); padding: 0 0 17px; }.stat:last-child { border-bottom: 0; padding-bottom: 0; }.proof-heading { display: block; padding: 65px 0 35px; }.proof-heading > p { margin: 28px 0 0; }.samples-grid { grid-template-columns: 1fr; gap: 35px; }.sample-preview { height: 330px; }.testimonial { grid-template-columns: 1fr; gap: 20px; margin-top: 65px; padding: 38px 25px; }.quote-mark { height: 30px; }.testimonial blockquote { font-size: 22px; }.quote-author { grid-column: auto; } }

/* Interactive PDF-style flipbook */
.content-proof-grid { display: grid; grid-template-columns: 1fr; gap: 72px; align-items: stretch; padding: 0 3%; }
.flipbook-wrap { min-width: 0; }
.flipbook-label { display: flex; justify-content: space-between; margin-bottom: 15px; color: #6c6a63; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.flipbook-label span:first-child { color: var(--orange); }
.flipbook { position: relative; height: 460px; padding: 18px; background: #ddd3c4; box-shadow: 10px 10px 0 #dfd7cc; }
.book-page { display: none; position: relative; height: 100%; overflow: hidden; padding: 43px 50px; color: var(--ink); background: #f6f0e4; box-shadow: inset 0 0 35px rgba(99,73,49,.08); animation: pageIn .35s ease both; }
.book-page.page-visible { display: block; }
.book-page:after { content: ''; position: absolute; inset: 18px; border: 1px solid rgba(36,38,36,.16); pointer-events: none; }
.page-cover { color: var(--cream); background: #53655a; }
.page-cover:before { content: ''; position: absolute; width: 330px; height: 330px; right: -80px; top: 54px; border: 1px solid rgba(238,232,221,.4); border-radius: 50%; box-shadow: 0 0 0 25px rgba(238,232,221,.08), 0 0 0 60px rgba(238,232,221,.05); }
.page-code, .page-kicker, .page-number { position: relative; z-index: 2; font: 600 10px 'Unbounded'; letter-spacing: .08em; }
.page-star { position: absolute; z-index: 2; right: 14%; top: 21%; color: #efaa72; font-size: 76px; }
.book-page h3 { position: relative; z-index: 2; margin: 90px 0 16px; font: 600 clamp(32px, 4vw, 54px)/1.02 'Unbounded'; letter-spacing: -.09em; }
.page-cover h3 { color: var(--cream); margin-top: 84px; }.book-page h3 i { font-family: Georgia, serif; font-weight: 400; }.page-cover h3 i { color: #efaa72; }
.book-page p { position: relative; z-index: 2; max-width: 300px; margin: 34px 0 0; color: #66645d; font: italic 17px/1.55 Georgia, serif; }
.book-page small { position: absolute; z-index: 2; bottom: 43px; left: 50px; color: #77746b; font: italic 12px Georgia, serif; }.page-cover small { color: #d6c9bc; }
.page-map { background: #e7dfce; }.page-map .page-kicker { display: block; }.map-orbit { position: absolute; width: 300px; height: 300px; right: 4%; top: 54px; border: 1px solid #9c9c88; border-radius: 50%; transform: rotate(-25deg); }.map-mountain { position: absolute; right: 21%; top: 139px; width: 0; height: 0; border-left: 100px solid transparent; border-right: 100px solid transparent; border-bottom: 170px solid #8b8c77; }.map-label { position: absolute; z-index: 2; color: #4d5e55; font: italic 15px Georgia, serif; }.label-one { right: 18%; top: 96px; }.label-two { left: 19%; bottom: 130px; }.label-three { right: 20%; bottom: 122px; color: var(--orange); font-size: 28px; }
.encounter-stats { position: relative; z-index: 2; display: flex; gap: 23px; margin-top: 29px; color: #77746b; font-size: 10px; text-transform: uppercase; }.encounter-stats b { display: inline-block; margin-left: 5px; color: var(--orange); font: 600 17px 'Unbounded'; }
.page-end { color: var(--cream); background: var(--plum); }.end-symbol { position: absolute; right: 18%; top: 21%; color: #efaa72; font-size: 64px; }.page-end h3 { margin-top: 110px; }.page-end h3 i { color: #efaa72; }.page-end p { color: #dbc5bc; }.page-end small { color: #c5a8a0; }
.flip-controls { display: flex; align-items: center; gap: 13px; margin-top: 22px; padding: 9px 11px; border: 1px solid rgba(252,230,207,.22); border-radius: 999px; background: linear-gradient(110deg, rgba(252,230,207,.07), rgba(252,230,207,.025)); box-shadow: inset 0 1px rgba(252,230,207,.06), 0 8px 22px rgba(0,0,0,.16); }
.flip-button { display: grid; flex: 0 0 35px; place-items: center; width: 35px; height: 35px; border: 0; border-radius: 0; color: var(--ink); background: transparent; cursor: pointer; font-size: 17px; }
.flip-button svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.flip-button:hover:not(:disabled) { color: var(--paper); background: var(--ink); }
.flip-button:focus-visible, .page-dot:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
.flip-button:disabled { opacity: .35; cursor: not-allowed; }
.page-dots { display: flex; flex: 1 1 auto; align-items: center; justify-content: center; gap: 6px; min-width: 0; margin: 0; }
.page-dot { flex: 0 0 6px; width: 6px; height: 6px; padding: 0; border: 0; border-radius: 99px; background: rgba(252,230,207,.5); cursor: pointer; transition: width .25s ease, background .25s ease, transform .25s ease; }
.page-dot:hover { background: var(--ink); transform: scale(1.25); }
.page-dot.active { flex-basis: 20px; width: 20px; background: var(--orange); box-shadow: 0 0 12px rgba(210,168,70,.28); }
.page-count { flex: 0 0 auto; padding: 7px 10px; border: 1px solid rgba(252,230,207,.16); border-radius: 999px; color: rgba(252,230,207,.58); background: rgba(16,13,10,.35); font-size: 10px; letter-spacing: .08em; white-space: nowrap; }
.page-count strong { color: var(--orange); font-size: 11px; font-variant-numeric: tabular-nums; }
.content-proof-grid .testimonial { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 0; margin: 0; padding: 53px 12%; background: var(--plum); }.testimonial-top { display: flex; justify-content: space-between; width: 100%; }.testimonial-top .eyebrow { margin: 0; }.content-proof-grid .testimonial .quote-mark { margin-top: 34px; font-size: 82px; }.content-proof-grid .testimonial blockquote { margin: -8px 0 35px; font-size: clamp(23px, 2.3vw, 31px); }.content-proof-grid .testimonial .quote-author { margin-top: auto; }.testimonial-line { width: 100%; height: 1px; margin-top: 42px; background: rgba(238,232,221,.25); }.testimonial-note { margin-top: 14px; color: #c5a8a0; font: italic 12px Georgia, serif; }
@keyframes pageIn { from { opacity: .3; transform: rotateY(-8deg); } to { opacity: 1; transform: rotateY(0); } }
.flipbook { display: block; height: 680px; padding: 0; background: transparent; box-shadow: none; }.pdf-book { width: 100%; height: 100%; margin: 0 auto; }.pdf-book-page { display: flex; align-items: center; justify-content: center; overflow: hidden; background: #f8f4eb; }.pdf-book-page canvas { display: block; width: 100%; height: 100%; object-fit: contain; }.flipbook .stf__parent { top: 0 !important; margin: 0 auto; }.flipbook .stf__wrapper { top: 0 !important; }.pdf-loading { z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 24px; color: var(--ink); text-align: center; }.pdf-loading strong { font: 600 17px 'Unbounded'; letter-spacing: -.05em; }.pdf-loading p { max-width: 300px; margin: 0; color: #6c6a63; font-size: 12px; line-height: 1.6; }.pdf-loading[hidden] { display: none; }.flipbook-wrap .flip-controls { margin-top: 27px; }
.flipbook { display: grid; place-items: center; perspective: 1600px; }.book-spread { display: flex; width: min(100%, 760px); height: 100%; background: #b8aa99; box-shadow: 0 5px 18px rgba(36,38,36,.2); transform-style: preserve-3d; }.book-page-frame { position: relative; display: grid; place-items: center; width: 50%; height: 100%; overflow: hidden; background: #f6f0e4; }.book-page-frame:after { content: ''; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 25px rgba(36,38,36,.13); }.left-frame { border-right: 1px solid rgba(36,38,36,.25); }.right-frame { border-left: 1px solid rgba(36,38,36,.12); }.book-page-frame canvas { display: block; width: 100%; height: 100%; object-fit: contain; }.pdf-loading { position: absolute; color: #6c6a63; font-size: 12px; }.flip-button:disabled { opacity: .35; cursor: not-allowed; }.flipbook-wrap .page-dots { max-width: 260px; overflow: hidden; }.book-spread.turn-next .right-frame { transform-origin: left center; animation: turnNext .65s ease-in-out both; }.book-spread.turn-prev .left-frame { transform-origin: right center; animation: turnPrev .65s ease-in-out both; }@keyframes turnNext { 0% { transform: rotateY(0); } 45% { transform: rotateY(-92deg); } 100% { transform: rotateY(-180deg); } }@keyframes turnPrev { 0% { transform: rotateY(0); } 45% { transform: rotateY(92deg); } 100% { transform: rotateY(180deg); } }
@media (max-width: 900px) { .content-proof-grid { grid-template-columns: 1fr; padding: 0; gap: 58px; }.content-proof-grid .testimonial { min-height: 370px; } }
@media (max-width: 560px) { .flipbook { height: 450px; }.flipbook-label span:last-child { max-width: 155px; text-align: right; }.flip-controls { gap: 10px; }.page-dots { gap: 6px; }.content-proof-grid .testimonial { min-height: 430px; padding: 38px 25px; }.content-proof-grid .testimonial .quote-mark { margin-top: 24px; }.content-proof-grid .testimonial blockquote { font-size: 23px; } }
.stats-row { padding-top: 34px; padding-bottom: 40px; }.proof-heading { padding-top: 35px; padding-bottom: 20px; }.proof-heading h2 { font-size: clamp(31px, 3.6vw, 50px); }.content-proof-grid { gap: 20px; }.content-proof-grid .testimonial { margin-left: auto; margin-right: auto; padding: 34px 7%; }.content-proof-grid .testimonial .quote-mark { margin-top: 20px; font-size: 68px; }.content-proof-grid .testimonial blockquote { margin-top: -6px; margin-bottom: 25px; }.testimonial-line { margin-top: 28px; }.testimonial-note { margin-top: 10px; }
.stats-row { padding-top: 22px; padding-bottom: 26px; }.stat { gap: 8px; }.stat strong { font-size: clamp(22px, 2.4vw, 34px); }.proof-heading { padding-top: 25px; padding-bottom: 15px; }.proof-heading h2 { font-size: clamp(28px, 3vw, 43px); }.proof-heading > p { max-width: 310px; font-size: 13px; line-height: 1.55; }.flipbook-label { align-items: center; gap: 14px; }.preview-open { margin-left: auto; padding: 8px 12px; border: 1px solid var(--orange); color: var(--orange); background: transparent; cursor: pointer; font: 700 10px 'DM Sans'; text-transform: uppercase; letter-spacing: .06em; }.preview-open:hover { color: var(--paper); background: var(--orange); }
.pdf-modal { position: fixed; z-index: 20; inset: 0; display: grid; place-items: center; padding: 30px; background: rgba(36,38,36,.82); opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility .25s ease; }.pdf-modal.is-open { opacity: 1; visibility: visible; }.pdf-modal-content { position: relative; width: min(100%, 1120px); height: min(100%, 900px); padding: 25px 32px 22px; color: var(--ink); background: var(--cream); box-shadow: 0 15px 50px rgba(0,0,0,.25); }.pdf-modal-top { display: flex; align-items: center; justify-content: space-between; height: 58px; }.modal-kicker { color: var(--orange); font-size: 10px; font-weight: 700; letter-spacing: .1em; }.pdf-modal-top h3 { margin: 6px 0 0; font: 600 20px 'Unbounded'; letter-spacing: -.06em; }.modal-close { width: 36px; height: 36px; border: 1px solid var(--ink); color: var(--ink); background: transparent; cursor: pointer; font-size: 24px; line-height: 1; }.modal-close:hover { color: var(--paper); background: var(--ink); }.pdf-modal-book { width: 100%; height: calc(100% - 95px); }.pdf-modal-book .stf__parent { margin: 0 auto; }.modal-hint { margin: 10px 0 0; color: #77746b; font-size: 10px; text-align: center; }
@media (max-width: 560px) { .flipbook-label { flex-wrap: wrap; }.preview-open { order: 3; width: 100%; margin-left: 0; }.pdf-modal { padding: 10px; }.pdf-modal-content { height: 100%; padding: 18px 12px 12px; }.pdf-modal-top { height: 55px; }.pdf-modal-book { height: calc(100% - 92px); }.pdf-modal-top h3 { font-size: 16px; } }
.proof-intro-row { display: grid; grid-template-columns: 1fr 1.35fr; gap: 45px; align-items: center; padding: 0 3%; }.proof-intro-row .proof-heading { padding: 28px 0 24px; }.proof-intro-row .stats-row { padding: 24px 0; }.content-proof-grid { grid-template-columns: 1.25fr .75fr; gap: 52px; }.content-proof-grid .testimonial { width: auto; margin: 0; padding: 34px 12%; }.flipbook { height: 500px; }.pdf-modal { padding: 0; }.pdf-modal-content { width: 100%; height: 100%; max-width: none; max-height: none; padding: 25px 5% 22px; }
@media (max-width: 900px) { .proof-intro-row { grid-template-columns: 1fr; gap: 0; padding: 0; }.proof-intro-row .proof-heading { padding: 35px 0 20px; }.proof-intro-row .stats-row { padding: 22px 0 26px; }.content-proof-grid { grid-template-columns: 1fr; gap: 58px; }.content-proof-grid .testimonial { width: auto; margin: 0; } }
@media (max-width: 560px) { .flipbook { height: 450px; }.pdf-modal-content { padding: 18px 12px 12px; } }
.content-proof-grid { grid-template-columns: 1.3fr .7fr; }.preview-open { display: block; margin: 18px auto 0; }.proof-intro-row .proof-heading { padding-top: 12px; }
@media (max-width: 900px) { .content-proof-grid { grid-template-columns: 1fr; } }
.projects-section { padding: 120px 10% 130px; background: var(--cream); }.projects-heading { display: flex; justify-content: space-between; align-items: end; gap: 50px; max-width: 1120px; margin: 0 auto 75px; }.projects-heading .eyebrow { margin-bottom: 20px; }.projects-heading h2 { font-size: clamp(39px, 4.3vw, 60px); }.projects-heading h2 i { color: var(--orange); }.projects-heading > p { max-width: 350px; margin: 0 4% 4px 0; color: #6c6a63; font-size: 14px; line-height: 1.7; }.projects-group { max-width: 1120px; margin: 0 auto; }.group-label { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; }.group-label > span { color: var(--orange); font: 600 10px 'Unbounded'; }.group-label h3 { margin: 0; font: 600 17px 'Unbounded'; letter-spacing: -.06em; }.group-label > i { flex: 1; height: 1px; background: var(--line); }.group-label > a { color: var(--orange); font-size: 11px; font-weight: 700; }.group-label > a b { padding-left: 8px; font-size: 16px; }.project-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 22px; }.project-card { min-width: 0; background: var(--paper); }.project-art { position: relative; height: 310px; overflow: hidden; padding: 22px 25px; color: var(--cream); }.project-art:after { content: ''; position: absolute; inset: 13px; border: 1px solid rgba(238,232,221,.28); pointer-events: none; }.project-code { position: relative; z-index: 2; font: 600 9px 'Unbounded'; letter-spacing: .08em; }.project-art strong { position: absolute; z-index: 2; bottom: 45px; left: 25px; font: 600 37px/1.02 'Unbounded'; letter-spacing: -.09em; }.project-art strong i { color: #efaa72; font-family: Georgia, serif; font-weight: 400; }.project-art small { position: absolute; z-index: 2; bottom: 22px; left: 25px; font: italic 12px Georgia, serif; color: #d6c9bc; }.art-wilds { background: #53655a; }.art-sun { position: absolute; width: 190px; height: 190px; top: 73px; right: 13%; border-radius: 50%; background: var(--orange); box-shadow: 0 0 0 25px rgba(233,105,63,.12), 0 0 0 54px rgba(233,105,63,.08); }.art-ridge { position: absolute; right: -30px; bottom: 0; width: 72%; height: 53%; background: #30242e; clip-path: polygon(0 100%, 33% 25%, 50% 47%, 68% 0, 100% 100%); }.art-embers { background: #bd6c46; }.ember-sun { position: absolute; width: 185px; height: 185px; right: 13%; top: 66px; border-radius: 50%; background: #f0c987; }.ember-city { position: absolute; right: 9%; bottom: 0; width: 70%; height: 53%; background: #4a2835; clip-path: polygon(0 100%, 0 58%, 15% 58%, 15% 28%, 29% 28%, 29% 48%, 44% 48%, 44% 8%, 59% 8%, 59% 42%, 76% 42%, 76% 21%, 91% 21%, 91% 100%); }.project-card-body { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 19px; padding: 24px 25px 23px; }.project-status { display: block; margin-bottom: 9px; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }.project-status.live { color: var(--orange); }.project-status.upcoming { color: #6a7e73; }.project-card-body h3 { margin: 0; font-size: 20px; }.project-card-body p { max-width: 395px; margin: 10px 0 0; color: #6c6a63; font-size: 13px; line-height: 1.6; }.project-arrow { display: grid; place-items: center; width: 34px; height: 34px; color: var(--paper); background: var(--orange); font-size: 19px; }.project-arrow:hover { background: var(--plum); }.project-meta { display: flex; gap: 23px; grid-column: 1 / -1; margin-top: 12px; color: #77746b; font-size: 10px; text-transform: uppercase; letter-spacing: .06em; }.project-meta strong { display: block; margin-bottom: 3px; color: var(--ink); font: 600 14px 'Unbounded'; letter-spacing: -.06em; }.funding-bar { grid-column: 1 / -1; height: 3px; background: #d8d0c5; }.funding-bar span { display: block; height: 100%; background: var(--orange); }.upcoming-group { margin-top: 82px; }.upcoming-card { display: grid; grid-template-columns: .92fr 1.08fr; }.upcoming-card .project-art { height: 260px; }.art-glass { background: #42364e; }.glass-moon { position: absolute; top: 61px; right: 16%; width: 150px; height: 150px; border: 1px solid #efaa72; border-radius: 50%; box-shadow: 0 0 0 25px rgba(239,170,114,.08); }.glass-wave { position: absolute; right: -4%; bottom: 0; width: 85%; height: 45%; background: #2b2a3c; clip-path: polygon(0 72%, 23% 33%, 47% 66%, 68% 13%, 100% 70%, 100% 100%, 0 100%); }.notify-label { align-self: end; color: var(--orange); font-size: 11px; font-weight: 700; }.notify-label b { padding-left: 8px; font-size: 17px; }

.live-projects .project-card-body { height: 238px; min-height: 0; grid-template-rows: minmax(0, 1fr) auto auto; }.live-projects .project-card-body > div:first-child { min-height: 0; overflow: hidden; }.live-projects .project-card-body p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }.live-projects .project-meta { align-self: end; }

.live-projects .project-card-body { height: 270px; }.live-projects .project-card-body > div:first-child { overflow: visible; }.live-projects .project-card-body p { display: block; overflow: visible; -webkit-line-clamp: unset; -webkit-box-orient: initial; }
.live-projects .project-card-body { grid-template-rows: minmax(0, 1fr) auto auto; }.live-bottom-row { display: flex; grid-column: 1 / -1; align-items: center; gap: 12px; }.live-bottom-row .funding-bar { flex: 1; grid-column: auto; }.live-bottom-row .project-arrow { flex: 0 0 34px; }
@media (max-width: 900px) { .projects-section { padding: 85px 7% 95px; }.projects-heading { display: block; margin-bottom: 55px; }.projects-heading > p { margin: 26px 0 0; }.project-grid { grid-template-columns: 1fr; }.upcoming-card { grid-template-columns: 1fr; }.upcoming-card .project-art { height: 300px; } }
@media (max-width: 560px) { .projects-section { padding: 72px 8% 80px; }.projects-heading h2 { font-size: 40px; }.group-label { gap: 9px; }.group-label h3 { font-size: 14px; }.group-label > a { font-size: 10px; }.project-art { height: 270px; }.project-art strong { font-size: 31px; }.project-card-body { padding: 20px; }.project-card-body p { font-size: 12px; }.project-meta { gap: 12px; font-size: 9px; }.project-meta strong { font-size: 12px; }.upcoming-card .project-art { height: 270px; } }
.projects-section .project-art { height: auto; aspect-ratio: 16 / 9; padding: 0; background: #151515; }.projects-section .project-art:after { display: none; }.project-banner { display: block; width: 100%; height: 100%; object-fit: contain; }
.upcoming-deck-wrap { position: relative; height: 575px; overflow: hidden; }.upcoming-deck { position: relative; width: 100%; height: 100%; perspective: 1200px; }.upcoming-deck .upcoming-card { position: absolute; top: 0; left: 50%; display: block; width: min(62%, 680px); background: var(--paper); box-shadow: 0 18px 40px rgba(36,38,36,.14); transform: translateX(-50%) scale(.58); opacity: 0; filter: blur(3px); pointer-events: none; transition: transform .7s cubic-bezier(.2,.8,.2,1), opacity .7s ease, filter .7s ease; }.upcoming-deck .upcoming-card .project-art { height: auto; aspect-ratio: 16 / 9; }.upcoming-deck .upcoming-card .project-card-body { min-height: 154px; }.upcoming-deck .upcoming-card.deck-0 { z-index: 3; transform: translateX(-50%) scale(1); opacity: 1; filter: blur(0); pointer-events: auto; }.upcoming-deck .upcoming-card.deck-1 { z-index: 2; transform: translateX(35%) scale(.76) rotate(2deg); opacity: .54; }.upcoming-deck .upcoming-card.deck-2 { z-index: 1; transform: translateX(-135%) scale(.68) rotate(-3deg); opacity: .28; }.upcoming-deck .upcoming-card.deck-3 { transform: translateX(85%) scale(.56); opacity: .12; }.upcoming-nav { position: absolute; z-index: 5; top: 42%; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--ink); color: var(--ink); background: var(--cream); cursor: pointer; font-size: 19px; transition: background .2s ease, color .2s ease, transform .2s ease; }.upcoming-nav:hover { color: var(--paper); background: var(--ink); transform: scale(1.06); }.upcoming-prev { left: 4%; }.upcoming-next { right: 4%; }.upcoming-deck-meta { display: flex; align-items: center; gap: 12px; width: min(62%, 680px); margin: 5px auto 0; color: #77746b; font-size: 10px; letter-spacing: .08em; }.upcoming-progress { flex: 1; height: 2px; background: #cfc7bd; }.upcoming-progress span { display: block; height: 100%; background: var(--orange); transition: width .5s ease; }.upcoming-deck-meta span:first-child { color: var(--orange); }.upcoming-deck .notify-label { align-self: end; }
@media (max-width: 900px) { .upcoming-deck-wrap { height: 480px; }.upcoming-deck .upcoming-card { width: min(70%, 560px); }.upcoming-deck .upcoming-card.deck-1 { transform: translateX(25%) scale(.72); }.upcoming-deck .upcoming-card.deck-2 { transform: translateX(-125%) scale(.64); }.upcoming-deck-meta { width: 70%; }.upcoming-prev { left: 1%; }.upcoming-next { right: 1%; } }
@media (max-width: 560px) { .upcoming-deck-wrap { height: 440px; }.upcoming-deck .upcoming-card { width: 82%; }.upcoming-deck .upcoming-card.deck-1 { transform: translateX(18%) scale(.62); opacity: .28; }.upcoming-deck .upcoming-card.deck-2, .upcoming-deck .upcoming-card.deck-3 { opacity: 0; }.upcoming-deck .upcoming-card .project-card-body { min-height: 150px; padding: 18px; }.upcoming-deck .upcoming-card .project-card-body p { font-size: 12px; }.upcoming-nav { width: 36px; height: 36px; }.upcoming-deck-meta { width: 82%; } }
.upcoming-timer { width: min(62%, 680px); height: 3px; margin: 15px auto 0; background: #cfc7bd; }.upcoming-timer span { display: block; width: 0; height: 100%; background: var(--orange); transition: width .08s linear; }
@media (max-width: 900px) { .upcoming-timer { width: 70%; } }
@media (max-width: 560px) { .upcoming-timer { width: 82%; } }
.upcoming-deck-wrap .upcoming-timer { position: absolute; z-index: 6; top: 0; left: 50%; width: min(62%, 680px); margin: 0; transform: translateX(-50%); }.project-grid:has(> .project-card:nth-child(4)) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 900px) { .upcoming-deck-wrap .upcoming-timer { width: 70%; }.project-grid:has(> .project-card:nth-child(4)) { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .upcoming-deck-wrap .upcoming-timer { width: 82%; } }
.blog-section { padding: 125px 10% 135px; color: var(--ink); background: var(--paper); }.blog-heading { display: grid; grid-template-columns: 1fr 1fr auto; gap: 45px; align-items: end; max-width: 1120px; margin: 0 auto 70px; }.blog-heading .eyebrow { margin-bottom: 20px; }.blog-heading h2 { font-size: clamp(42px, 4.8vw, 68px); }.blog-heading h2 i { color: var(--orange); }.blog-heading > p { max-width: 330px; margin: 0 0 5px; color: #6c6a63; font-size: 14px; line-height: 1.7; }.blog-all-link, .blog-read-link { color: var(--orange); font-size: 11px; font-weight: 700; }.blog-all-link { padding-bottom: 8px; border-bottom: 1px solid var(--orange); white-space: nowrap; }.blog-all-link span, .blog-read-link span { padding-left: 10px; font-size: 17px; }.blog-feature { display: grid; grid-template-columns: 1.15fr .85fr; max-width: 1120px; min-height: 360px; margin: 0 auto; background: var(--cream); }.blog-feature-art { position: relative; overflow: hidden; padding: 23px 27px; color: var(--cream); background: var(--plum); }.blog-feature-art:before { content: ''; position: absolute; inset: 0; opacity: .18; background-image: radial-gradient(#fff 1px, transparent 1px); background-size: 17px 17px; }.blog-feature-art > span, .blog-card-art > span { position: relative; z-index: 2; font: 600 9px 'Unbounded'; letter-spacing: .08em; }.feature-sun { position: absolute; top: 54px; right: 14%; width: 210px; height: 210px; border: 1px solid rgba(239,170,114,.75); border-radius: 50%; box-shadow: 0 0 0 27px rgba(239,170,114,.08), 0 0 0 68px rgba(239,170,114,.05); }.feature-mountain { position: absolute; right: -20px; bottom: 0; width: 90%; height: 55%; background: #30242e; clip-path: polygon(0 100%, 24% 34%, 39% 60%, 61% 0, 100% 100%); }.blog-feature-art strong { position: absolute; z-index: 2; bottom: 48px; left: 27px; font: 600 38px/1.02 'Unbounded'; letter-spacing: -.09em; }.blog-feature-art strong i { color: #efaa72; font-family: Georgia, serif; font-weight: 400; }.blog-feature-art small { position: absolute; z-index: 2; bottom: 25px; left: 27px; color: #d6c9bc; font: italic 12px Georgia, serif; }.blog-feature-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 45px 12%; }.blog-category { color: var(--orange); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }.blog-feature-copy h3 { max-width: 390px; margin: 19px 0 17px; font: 600 clamp(23px, 2.5vw, 34px)/1.13 'Unbounded'; letter-spacing: -.07em; }.blog-feature-copy p { max-width: 385px; margin: 0 0 28px; color: #6c6a63; font: italic 16px/1.6 Georgia, serif; }.blog-toolbar { display: flex; align-items: center; justify-content: space-between; max-width: 1120px; margin: 70px auto 25px; padding-bottom: 14px; border-bottom: 1px solid var(--line); }.blog-filters { display: flex; gap: 23px; }.blog-filter { padding: 0 0 7px; border: 0; color: #77746b; background: transparent; cursor: pointer; font-size: 11px; font-weight: 700; }.blog-filter:hover, .blog-filter.active { color: var(--orange); border-bottom: 1px solid var(--orange); }.blog-count { color: #77746b; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; max-width: 1120px; margin: 0 auto; }.blog-card { background: var(--cream); transition: transform .25s ease, box-shadow .25s ease; }.blog-card:hover { transform: translateY(-7px); box-shadow: 0 14px 25px rgba(36,38,36,.1); }.blog-card-art { position: relative; height: 170px; overflow: hidden; padding: 19px 21px; color: var(--cream); }.blog-card-art strong { position: absolute; right: 18px; bottom: -20px; color: rgba(238,232,221,.18); font: 600 110px 'Unbounded'; letter-spacing: -.15em; }.card-art-one { background: #53655a; }.card-art-one:after { content: ''; position: absolute; right: 20%; bottom: -50px; width: 150px; height: 150px; border: 1px solid #efaa72; border-radius: 50%; }.card-art-two { background: #bd6c46; }.card-art-two:after { content: ''; position: absolute; right: 15%; bottom: -20px; width: 120px; height: 145px; border: 1px solid #f3d89e; transform: rotate(22deg); }.card-art-three { background: #42364e; }.card-art-three:after { content: 'Ã¢Å“Â¦'; position: absolute; right: 25%; top: 48px; color: #efaa72; font-size: 70px; }.blog-card-copy { padding: 20px 21px 23px; }.blog-card-copy h3 { min-height: 47px; margin: 10px 0 22px; font: 600 17px/1.2 'Unbounded'; letter-spacing: -.07em; }.blog-card-copy a { display: inline-block; padding-bottom: 5px; border-bottom: 1px solid var(--orange); }.blog-card[hidden] { display: none; }
@media (max-width: 900px) { .blog-section { padding: 85px 7% 95px; }.blog-heading { display: block; margin-bottom: 52px; }.blog-heading > p { margin: 26px 0; }.blog-feature { grid-template-columns: 1fr; }.blog-feature-art { min-height: 330px; }.blog-grid { grid-template-columns: 1fr 1fr; }.blog-toolbar { margin-top: 55px; } }
@media (max-width: 560px) { .blog-section { padding: 72px 8% 80px; }.blog-heading h2 { font-size: 42px; }.blog-feature-art { min-height: 270px; }.blog-feature-copy { padding: 35px 25px; }.blog-feature-copy h3 { font-size: 25px; }.blog-toolbar { display: block; }.blog-filters { gap: 14px; flex-wrap: wrap; margin-bottom: 15px; }.blog-grid { grid-template-columns: 1fr; }.blog-card-art { height: 190px; } }
.site-footer { padding: 78px 10% 30px; color: var(--cream); background: var(--ink); }.footer-top { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-bottom: 65px; border-bottom: 1px solid rgba(238,232,221,.22); }.footer-brand { min-width: 210px; }.footer-top > p { margin: 0; color: #c5a8a0; font: italic 23px/1.1 Georgia, serif; text-align: center; }.footer-top > p i { color: #efaa72; }.footer-up { color: #efaa72; font-size: 11px; font-weight: 700; }.footer-up span { padding-left: 12px; font-size: 17px; }.footer-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 50px; max-width: 610px; margin: 48px 0 70px auto; }.footer-links > div { display: flex; flex-direction: column; gap: 13px; }.footer-label { margin-bottom: 5px; color: #efaa72; font: 600 9px 'Unbounded'; letter-spacing: .1em; text-transform: uppercase; }.footer-links a { color: #c5a8a0; font-size: 12px; }.footer-links a:hover, .footer-up:hover { color: var(--paper); }.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 22px; border-top: 1px solid rgba(238,232,221,.22); color: #8d7774; font-size: 10px; }.footer-bottom span:last-child { color: #c5a8a0; }
@media (max-width: 700px) { .site-footer { padding: 60px 8% 25px; }.footer-top { display: grid; grid-template-columns: 1fr auto; padding-bottom: 45px; }.footer-top > p { grid-column: 1 / -1; grid-row: 1; justify-self: start; margin: 30px 0 0; text-align: left; }.footer-up { grid-column: 2; grid-row: 1; }.footer-links { margin: 38px 0 50px; gap: 24px; }.footer-bottom { flex-direction: column; gap: 9px; } }
.brand-logo { display: block; width: 72px; height: 72px; object-fit: contain; }.footer-brand .brand-logo { width: 86px; height: 86px; }.blog-feature-art { isolation: isolate; }.blog-feature-art > img, .blog-card-art > img { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; }.blog-feature-art:before { z-index: 1; opacity: .52; background: linear-gradient(180deg, rgba(36,38,36,.05) 20%, rgba(36,38,36,.78) 100%); }.blog-feature-art > span, .blog-feature-art > strong, .blog-feature-art > small { z-index: 2; }.blog-card-art { isolation: isolate; background: #242624; }.blog-card-art:after { display: none; }.blog-card-art > span { z-index: 2; color: var(--cream); text-shadow: 0 1px 4px rgba(0,0,0,.5); }
.footer-links { max-width: none; margin-left: 0; margin-right: 0; }
.blog-card-art { height: auto; aspect-ratio: 16 / 9; }
.lead-alt { min-height: 620px; overflow: hidden; }.alt-edition { color: var(--orange); font: 600 10px 'Unbounded'; letter-spacing: .1em; }.alt-success { color: var(--orange); font-size: 13px; }
.lead-alt-three { display: grid; grid-template-columns: 120px 1fr .65fr; color: var(--cream); background: #171617; }.alt-three-index { display: flex; flex-direction: column; align-items: center; gap: 19px; padding: 48px 0; color: #efaa72; border-right: 1px solid rgba(238,232,221,.18); }.alt-three-index span { font: 600 18px 'Unbounded'; }.alt-three-index i { width: 1px; height: 250px; background: rgba(238,232,221,.28); }.alt-three-index small { writing-mode: vertical-rl; font-size: 9px; letter-spacing: .15em; }.alt-three-copy { align-self: center; padding: 70px 11%; }.alt-three-copy h2 { margin: 28px 0 25px; color: var(--cream); font-size: clamp(44px, 5vw, 75px); }.alt-three-copy h2 em { color: #efaa72; font-family: Georgia, serif; font-weight: 400; }.alt-three-copy > p { max-width: 430px; margin: 0 0 37px; color: #c5a8a0; font-size: 15px; line-height: 1.7; }.alt-three-form > div { display: flex; gap: 25px; max-width: 510px; border-bottom: 1px solid rgba(238,232,221,.38); }.alt-three-form input { min-width: 0; flex: 1; padding: 13px 0; border: 0; outline: 0; color: var(--cream); background: transparent; font: 13px 'DM Sans'; }.alt-three-form input::placeholder { color: #9e807d; }.alt-three-form > button { display: inline-flex; align-items: center; gap: 20px; margin-top: 25px; padding: 15px 19px; border: 0; color: var(--plum); background: #efaa72; cursor: pointer; font-size: 11px; font-weight: 700; }.alt-three-form > button span { font-size: 18px; }.alt-three-form > button:hover { color: var(--cream); background: var(--orange); }.alt-three-form .alt-success { color: #efaa72; }.alt-three-mark { position: relative; display: flex; align-items: center; justify-content: center; color: #efaa72; font-size: 120px; }.alt-three-mark:before { content: ''; position: absolute; width: 340px; height: 340px; border: 1px solid rgba(239,170,114,.4); border-radius: 50%; box-shadow: 0 0 0 35px rgba(239,170,114,.05), 0 0 0 90px rgba(239,170,114,.03); }.alt-three-mark span { position: absolute; bottom: 44px; right: 25px; color: #c5a8a0; font: 600 10px/1.1 'Unbounded'; letter-spacing: .08em; }
@media (max-width: 900px) { .lead-alt-three { grid-template-columns: 70px 1fr; }.alt-three-mark { display: none; }.alt-three-copy { padding: 75px 9%; } }
@media (max-width: 560px) { .lead-alt { min-height: 0; }.alt-three-index { padding: 30px 0; }.alt-three-index i { height: 170px; }.alt-three-copy { padding: 65px 8%; }.alt-three-copy h2 { font-size: 43px; }.alt-three-form > div { flex-direction: column; gap: 0; border-bottom: 0; }.alt-three-form input { border-bottom: 1px solid var(--line); } }
.about-section { padding: 125px 10% 115px; color: var(--cream); background: var(--plum); }.about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9%; align-items: center; max-width: 1120px; margin: 0 auto; }.about-copy .eyebrow { margin-bottom: 25px; }.about-copy h2 { font-size: clamp(38px, 4.4vw, 62px); }.about-copy h2 i { color: #efaa72; }.about-lead { max-width: 430px; margin: 34px 0 20px; color: #f0e5d8; font: italic 21px/1.45 Georgia, serif; }.about-body { max-width: 405px; margin: 0; color: #c5a8a0; font-size: 14px; line-height: 1.75; }.about-art { position: relative; min-height: 420px; overflow: hidden; background: #53655a; }.about-art:before { content: ''; position: absolute; inset: 0; opacity: .2; background-image: radial-gradient(#f0e5d8 1px, transparent 1px); background-size: 17px 17px; }.about-orbit { position: absolute; width: 340px; height: 340px; top: 38px; left: 50%; border: 1px solid rgba(238,232,221,.42); border-radius: 50%; transform: translateX(-50%); box-shadow: 0 0 0 28px rgba(238,232,221,.06), 0 0 0 72px rgba(238,232,221,.04); }.about-door { position: absolute; left: 50%; bottom: 0; width: 150px; height: 275px; background: #e9693f; border-radius: 75px 75px 0 0; transform: translateX(-50%); box-shadow: 0 0 0 1px rgba(238,232,221,.22); }.about-door:after { content: ''; position: absolute; inset: 12px; border: 1px solid rgba(238,232,221,.45); border-radius: 65px 65px 0 0; }.about-door span { position: absolute; z-index: 1; top: 92px; left: 50%; color: #f3d89e; font-size: 45px; transform: translateX(-50%); }.about-star { position: absolute; color: #f3d89e; }.star-a { top: 75px; right: 16%; font-size: 22px; }.star-b { top: 145px; left: 14%; font: 32px Georgia, serif; }.about-art-note { position: absolute; right: 24px; bottom: 22px; left: 24px; display: flex; justify-content: space-between; align-items: end; color: var(--cream); }.about-art-note strong { font: 600 11px/1.15 'Unbounded'; letter-spacing: .02em; }.about-art-note span { color: #efaa72; font: 600 9px 'Unbounded'; }.about-values { display: grid; grid-template-columns: repeat(3, 1fr); gap: 35px; max-width: 1120px; margin: 105px auto 0; padding-top: 30px; border-top: 1px solid rgba(238,232,221,.24); }.about-values > div { display: flex; gap: 16px; }.about-values > div > span { color: #efaa72; font: 600 10px 'Unbounded'; }.about-values h3 { margin: 0; font-size: 15px; }.about-values p { max-width: 220px; margin: 9px 0 0; color: #c5a8a0; font-size: 12px; line-height: 1.6; }
@media (max-width: 900px) { .about-section { padding: 85px 7%; }.about-grid { grid-template-columns: 1fr; gap: 55px; }.about-art { min-height: 380px; }.about-values { margin-top: 75px; } }
@media (max-width: 560px) { .about-section { padding: 72px 8%; }.about-copy h2 { font-size: 39px; }.about-lead { font-size: 19px; }.about-art { min-height: 330px; }.about-orbit { width: 275px; height: 275px; }.about-door { width: 120px; height: 220px; }.about-door span { top: 72px; }.about-values { grid-template-columns: 1fr; gap: 25px; margin-top: 55px; } }
.project-art,
.blog-feature-art,
.blog-card-art { background: var(--ink); }
.project-art { isolation: isolate; }
.project-art:before,
.blog-card-art:before { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(36,38,36,.02) 36%, rgba(36,38,36,.68) 100%); }
.project-art:after { z-index: 2; }
.project-banner,
.blog-feature-art > img,
.blog-card-art > img { transition: transform .55s cubic-bezier(.2,.8,.2,1), filter .35s ease; }
.project-banner { position: relative; z-index: 0; }
.project-card,
.blog-card { transition: transform .3s ease, box-shadow .3s ease; }
.live-projects .project-card:hover,
.blog-card:hover { transform: translateY(-6px); box-shadow: 0 16px 32px rgba(36,38,36,.14); }
.project-card:hover .project-banner,
.blog-card:hover .blog-card-art > img,
.blog-feature:hover .blog-feature-art > img { transform: scale(1.04); filter: saturate(1.05); }
.blog-card-art > span { position: relative; z-index: 2; }

@media (prefers-reduced-motion: reduce) {
  .project-card,
  .blog-card,
  .project-banner,
  .blog-feature-art > img,
  .blog-card-art > img { transition: none; }
}
.brand { min-width: 232px; gap: 15px; }
.brand-copy { display: flex; flex-direction: column; gap: 6px; justify-content: center; }
.brand-name { font-size: 17px; letter-spacing: -.065em; }
.brand-descriptor { color: #77746b; font: 700 8px/1 'DM Sans', sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.footer-brand .brand-descriptor { color: #c5a8a0; }
.brand-logo { width: 76px; height: 76px; }
.footer-brand .brand-logo { width: 86px; height: 86px; }

@media (max-width: 560px) {
  .brand { min-width: 0; }
  .brand-logo { width: 64px; height: 64px; }
  .footer-brand .brand-logo { width: 72px; height: 72px; }
  .brand-name { font-size: 15px; }
  .brand-descriptor { font-size: 7px; letter-spacing: .11em; }
}

.lead-alt-three { color: var(--ink); background: var(--paper); }
.alt-three-index { color: var(--orange); border-right-color: var(--line); }
.alt-three-index i { background: var(--line); }
.alt-three-copy h2 { color: var(--ink); }
.alt-three-copy h2 em { color: var(--orange); }
.alt-three-copy > p { color: color-mix(in srgb, var(--ink) 72%, var(--paper)); }
.alt-three-form > div { border-bottom-color: var(--line); }
.alt-three-form input { color: var(--ink); border-bottom-color: var(--line); }
.alt-three-form input::placeholder { color: color-mix(in srgb, var(--ink) 55%, var(--paper)); }
.alt-three-form > button { color: var(--paper); background: var(--orange); }
.alt-three-form > button:hover { color: var(--paper); background: var(--plum); }
.alt-three-form .alt-success { color: var(--orange); }
.kit-newsletter-embed { width: min(100%, 510px); }
.alt-three-mark { color: var(--orange); }
.alt-three-mark:before { border-color: color-mix(in srgb, var(--ink) 45%, transparent); }
.alt-three-mark span { color: color-mix(in srgb, var(--ink) 68%, var(--paper)); }
.alt-three-mark { overflow: hidden; }
.alt-three-mark:before { inset: 0; z-index: 1; display: block; width: auto; height: auto; border: 0; border-radius: 0; box-shadow: none; background: linear-gradient(90deg, var(--paper) 0%, color-mix(in srgb, var(--paper) 94%, transparent) 14%, color-mix(in srgb, var(--paper) 56%, transparent) 31%, transparent 58%), linear-gradient(180deg, color-mix(in srgb, var(--paper) 22%, transparent), transparent 34%, color-mix(in srgb, var(--ink) 12%, transparent)); pointer-events: none; }
.newsletter-art-image { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease, filter .35s ease; }
.alt-three-mark:hover .newsletter-art-image { transform: scale(1.03); filter: saturate(1.06); }

/* The selected hero uses a moving archive behind a glass copy panel. */
.hero-carousel-hero { position: absolute; z-index: 4; inset: 0; overflow: hidden; color: var(--hero-text); background: var(--cream); isolation: isolate; }
.hero-carousel-hero:before { content: ''; position: absolute; z-index: 1; inset: 0; pointer-events: none; }
.hero-carousel-stage { position: absolute; z-index: 0; inset: -18% -11%; display: grid; grid-template-rows: repeat(3, 1fr); gap: 16px; overflow: hidden; transform: rotate(-4deg) scale(1.08); transform-origin: center; perspective: 1500px; background: #100d0a; }
.hero-carousel-stage:after { content: ''; position: absolute; z-index: 2; inset: 0; background: radial-gradient(circle at 66% 44%, transparent 0 17%, rgba(16,13,10,.08) 48%, rgba(16,13,10,.64) 100%); pointer-events: none; }
.hero-carousel-row { display: flex; width: max-content; gap: 16px; align-items: center; transform-style: preserve-3d; will-change: transform; }
.hero-carousel-row-one { animation: heroShelfLeft 46s linear infinite; }
.hero-carousel-row-two { margin-left: -12%; animation: heroShelfRight 56s linear infinite; }
.hero-carousel-row-three { margin-left: 4%; animation: heroShelfLeft 64s linear infinite; }
.hero-carousel-row img { display: block; flex: 0 0 clamp(135px, 15vw, 235px); width: clamp(135px, 15vw, 235px); aspect-ratio: 4 / 5; object-fit: cover; border: 1px solid rgba(252,230,207,.23); border-radius: 3px; opacity: .78; filter: saturate(.72) contrast(.94) brightness(.72); box-shadow: 9px 13px 0 rgba(0,0,0,.2), 0 18px 30px rgba(0,0,0,.25); user-select: none; }
.hero-carousel-row-one img { transform: rotateY(-17deg) rotateZ(-1deg); }
.hero-carousel-row-two img { flex-basis: clamp(122px, 13.5vw, 210px); width: clamp(122px, 13.5vw, 210px); opacity: .66; filter: saturate(.62) contrast(.92) brightness(.64); transform: rotateY(14deg) rotateZ(1deg); }
.hero-carousel-row-three img { flex-basis: clamp(110px, 12vw, 185px); width: clamp(110px, 12vw, 185px); opacity: .56; filter: saturate(.56) contrast(.9) brightness(.56); transform: rotateY(-12deg) rotateZ(-2deg); }
@keyframes heroShelfLeft { from { transform: translate3d(0, 0, 0); } to { transform: translate3d(-50%, 0, 0); } }
@keyframes heroShelfRight { from { transform: translate3d(-50%, 0, 0); } to { transform: translate3d(0, 0, 0); } }
.hero-glass { position: absolute; z-index: 3; top: 50%; left: 12%; width: min(49%, 700px); padding: 68px 70px 72px; border: 1px solid rgba(252,230,207,.36); background: linear-gradient(135deg, rgba(16,13,10,.72), rgba(28,23,18,.42)); box-shadow: 18px 18px 0 rgba(0,0,0,.2), inset 0 0 0 1px rgba(210,168,70,.11); backdrop-filter: blur(9px) saturate(.86); -webkit-backdrop-filter: blur(9px) saturate(.86); transform: translateY(-50%); }
.hero-glass:before { content: ''; position: absolute; inset: 12px; border: 1px solid rgba(252,230,207,.11); pointer-events: none; }
.hero-glass .eyebrow, .hero-glass h1, .hero-glass .hero-intro, .hero-glass .primary-button { position: relative; z-index: 1; }
.hero-glass h1 { color: var(--hero-text); }
.hero-glass .hero-intro { margin-bottom: 36px; }
@media (prefers-reduced-motion: reduce) { .hero-carousel-row-one, .hero-carousel-row-two, .hero-carousel-row-three { animation-play-state: paused; } }

:root { --hero-text: #f8f5ee; }
.hero { position: relative; display: block; min-height: 680px; overflow: hidden; background: #151515; }

.hero .hero-intro { color: var(--hero-text); opacity: .82; }

.scroll-note { z-index: 3; color: var(--hero-text); opacity: .72; }
.scroll-line { background: var(--hero-text); }

.about-art { isolation: isolate; background: #151515; }
.about-image { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 54%; }
.about-art:before { display: none; }
.about-art-note { z-index: 2; }
.about-section { background: var(--paper); }
.about-art { min-height: 0; aspect-ratio: 4 / 5; }
.about-image { object-fit: cover; }

main > section { position: relative; }
main > section + section::before { content: ''; position: absolute; z-index: 10; top: 0; left: 8%; right: 8%; height: 1px; pointer-events: none; background: linear-gradient(90deg, transparent, var(--line) 18%, var(--orange) 50%, var(--line) 82%, transparent); }
main > section + section::after { content: ''; position: absolute; z-index: 11; top: 0; left: 50%; width: 8px; height: 8px; border: 2px solid var(--cream); background: var(--orange); pointer-events: none; transform: translateX(-50%) rotate(45deg); }

@media (max-width: 900px) { .hero { min-height: 650px; } }
@media (max-width: 560px) { .hero { min-height: 650px; } }

/* Typography choices retained in the final design. */
:root {
  --font-normal: 'IBM Plex Serif', sans-serif;
  --font-alternative: 'VerseluftAlternativeBlackDeamond', Georgia, serif;
}

body,
body * {
  font-family: var(--font-normal) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
h1 i,
h2 i,
h3 i,
h4 i,
h5 i,
h6 i,
.brand-name,
.testimonial blockquote,
.stat strong,
.preview-wilds h3,
.preview-city h3,
.preview-odds h3,
.page-cover h3,
.project-art strong,
.group-label h3,
.blog-feature-art strong,
.blog-feature-copy h3,
.blog-card-copy h3,
.alt-three-copy h2 {
  font-family: var(--font-alternative) !important;
  font-weight: 400;
  letter-spacing: -.035em;
}

/* Dark-theme interaction states: keep hover contrast inside the oak/gold palette. */
.small-button:hover {
  border-color: var(--orange);
  color: var(--cream);
  background: var(--orange);
}

.primary-button:hover {
  color: var(--ink);
  background: var(--plum);
  box-shadow: 5px 5px 0 rgba(0, 0, 0, .22);
}

.flip-button:hover,
.preview-open:hover,
.upcoming-nav:hover {
  border-color: var(--orange);
  color: var(--cream);
  background: var(--orange);
}

.sample-info a:hover,
.project-arrow:hover {
  color: var(--cream);
  background: var(--ink);
}

.flip-button,
.upcoming-nav {
  display: grid;
  place-items: center;
  padding: 0;
  font-family: Arial, sans-serif;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  border-radius: 4px;
}

.flip-button {
  position: relative;
}

.flip-button > span,
.upcoming-nav > span {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  width: 1em;
  height: 1em;
  place-items: center;
  transform: translate(-50%, -50%);
  font-size: inherit;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

.about-action-creators:hover {
  border-color: var(--orange);
  color: var(--cream);
  background: var(--orange);
}

.about-action-creators[hidden],
#upcoming-projects-group[hidden] {
  display: none !important;
}

/* Let the hero grow with its copy and keep it readable on smaller screens. */
.hero-carousel-hero {
  position: relative;
  min-height: 680px;
  padding: 70px 0 90px;
}

.hero-carousel-hero .hero-glass {
  position: relative;
  top: auto;
  transform: none;
}

@media (max-width: 900px) {
  .hero-carousel-hero .hero-glass {
    left: 6%;
    width: 88%;
    padding: 48px 36px;
  }

}

@media (max-width: 560px) {
  .hero-carousel-hero {
    min-height: 0;
    padding: 40px 0 75px;
  }

  .hero-carousel-hero .hero-glass {
    left: 5%;
    width: 90%;
    padding: 38px 26px;
  }

  .hero-carousel-hero .hero-glass h1 {
    font-size: clamp(32px, 9.5vw, 48px);
  }

  .hero-glass .eyebrow {
    font-size: 9px;
    letter-spacing: .05em;
  }
}

/* Real bevel cuts requested for the testimonial and about boards. */
.content-proof-grid .testimonial,
.about-copy {
  --bevel-size: 18px;
  clip-path: polygon(
    0 0,
    calc(100% - var(--bevel-size)) 0,
    100% var(--bevel-size),
    100% 100%,
    var(--bevel-size) 100%,
    0 calc(100% - var(--bevel-size))
  );
}

.content-proof-grid .testimonial::before,
.content-proof-grid .testimonial::after,
.about-copy::before,
.about-copy::after {
  display: none;
}

.content-proof-grid .testimonial::before,
.about-copy::before {
  display: block;
  top: 10px;
  right: auto;
  left: 10px;
  border-top: 1px solid var(--orange);
  border-right: 0;
  border-left: 1px solid var(--orange);
  border-bottom: 0;
}

.content-proof-grid .testimonial::after,
.about-copy::after {
  display: block;
  right: 10px;
  bottom: 10px;
  left: auto;
  border-top: 0;
  border-right: 1px solid var(--orange);
  border-bottom: 1px solid var(--orange);
  border-left: 0;
}

/* Latest browser comment refinements. */
.hero-carousel-hero .hero-glass h1,
.hero-carousel-hero .hero-glass h1 i,
.proof-heading h2,
.proof-heading h2 i {
  font-family: var(--font-alternative) !important;
}

.hero-carousel-hero .hero-glass h1 {
  letter-spacing: .012em;
}

.hero-carousel-hero .hero-glass .primary-button {
  font-family: var(--font-alternative) !important;
  font-size: 14px;
  letter-spacing: .01em;
}

.content-proof-grid .testimonial::before {
  top: 10px;
  right: 10px;
  left: auto;
  border-top: 1px solid var(--orange);
  border-right: 1px solid var(--orange);
  border-left: 0;
}

.content-proof-grid .testimonial::after {
  right: auto;
  bottom: 10px;
  left: 10px;
  border-right: 0;
  border-bottom: 1px solid var(--orange);
  border-left: 1px solid var(--orange);
}

.flipbook {
  padding-inline: 8px;
}

.upcoming-group .group-label {
  gap: 18px;
}

.upcoming-group .group-label > span {
  font-size: 12px;
}

.upcoming-group .group-label h3 {
  font-size: clamp(24px, 1.7vw, 26px);
}

.upcoming-group .group-label > a {
  font-size: 13px;
}

.alt-three-copy .alt-three-form > button {
  font-size: 18px;
}

.proof-heading > div {
  flex: 0 0 220px;
}

.proof-heading h2 {
  white-space: nowrap;
}

.projects-heading > div {
  flex: 0 0 auto;
}

.projects-heading h2,
.projects-heading h2 i {
  font-family: var(--font-alternative) !important;
}

.projects-heading h2 {
  white-space: nowrap;
}

.projects-heading > p {
  max-width: 460px;
}

@media (max-width: 900px) {
  .proof-heading > div {
    flex-basis: auto;
  }

  .projects-heading h2 {
    white-space: normal;
  }

  .projects-heading > p {
    max-width: none;
  }
}

@media (max-width: 560px) {
  .upcoming-group .group-label {
    gap: 9px;
  }

  .upcoming-group .group-label h3 {
    font-size: 20px;
  }

  .upcoming-group .group-label > a {
    font-size: 11px;
  }

  .alt-three-copy .alt-three-form > button {
    font-size: 17px;
  }

  .proof-heading h2 {
    white-space: normal;
  }
}

/* Latest browser comment refinements. */
.about-values h3 {
  font-size: 20px;
}

.about-values {
  gap: 22px;
}

.hero-glass h1,
.hero-glass h1 i {
  letter-spacing: -.01em;
}

.flipbook {
  border: 1px solid rgba(252, 230, 207, .34);
  background: var(--plum);
  box-shadow: inset 0 0 0 7px rgba(252, 230, 207, .035), 0 14px 26px rgba(0, 0, 0, .12);
}

.hero-glass {
  clip-path: polygon(0 14px, 14px 0, calc(100% - 14px) 0, 100% 14px, 100% calc(100% - 14px), calc(100% - 14px) 100%, 14px 100%, 0 calc(100% - 14px));
}

.hero-glass::before {
  clip-path: polygon(0 10px, 10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px));
}

.group-label h3 {
  font-size: clamp(18px, 1.45vw, 22px);
}

.upcoming-card .project-card-body h3 {
  font-size: 24px;
  letter-spacing: -.02em;
}

.alt-three-form > button {
  font-family: var(--font-alternative) !important;
  font-size: 15px;
  letter-spacing: .01em;
}

.blog-card-copy h3 {
  font-size: 21px;
}

.blog-filter {
  font-size: 14px;
}

@media (max-width: 560px) {
  .about-values h3 {
    font-size: 18px;
  }

  .about-values {
    gap: 20px;
  }

  .group-label h3 {
    font-size: 16px;
  }

  .upcoming-card .project-card-body h3 {
    font-size: 20px;
  }

  .blog-card-copy h3 {
    font-size: 19px;
  }

  .blog-filter {
    font-size: 13px;
  }
}

.alt-three-form > button {
  transition: color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease;
}

.alt-three-form > button:hover {
  color: var(--ink);
  background: var(--plum);
  box-shadow: 5px 5px 0 rgba(0, 0, 0, .22);
  transform: translateY(-3px);
}

.alt-three-form > button:hover span {
  transform: translate(3px, -2px);
}

/* Editorial framing and contrast refinements from browser review comments. */
.content-proof-grid .testimonial {
  position: relative;
  border: 1px solid rgba(252, 230, 207, .34);
  color: var(--ink);
}

.content-proof-grid .testimonial::before,
.content-proof-grid .testimonial::after,
.about-copy::before,
.about-copy::after {
  content: '';
  position: absolute;
  width: 28px;
  height: 28px;
  pointer-events: none;
}

.content-proof-grid .testimonial::before {
  top: 10px;
  right: auto;
  left: 10px;
  border-top: 1px solid var(--orange);
  border-right: 0;
  border-left: 1px solid var(--orange);
}

.about-copy::before {
  top: 10px;
  right: auto;
  left: 10px;
  border-top: 1px solid var(--orange);
  border-right: 0;
  border-left: 1px solid var(--orange);
}

.content-proof-grid .testimonial::after {
  right: 10px;
  bottom: 10px;
  left: auto;
  border-right: 1px solid var(--orange);
  border-bottom: 1px solid var(--orange);
  border-left: 0;
}

.about-copy::after {
  right: 10px;
  bottom: 10px;
  left: auto;
  border-right: 1px solid var(--orange);
  border-bottom: 1px solid var(--orange);
  border-left: 0;
}

.about-copy {
  position: relative;
  padding: 34px 38px 38px;
  border: 1px solid rgba(252, 230, 207, .3);
  background: rgba(28, 23, 18, .32);
  box-shadow: inset 0 0 0 7px rgba(252, 230, 207, .025);
}

.about-copy h2 {
  color: var(--ink);
}

.about-copy h2 i {
  color: var(--orange);
}

.about-values h3 {
  color: var(--ink);
}

.about-values p {
  color: #d9c0ac;
}

.about-art {
  --bevel-size: 18px;
  clip-path: polygon(
    0 var(--bevel-size),
    var(--bevel-size) 0,
    calc(100% - var(--bevel-size)) 0,
    100% var(--bevel-size),
    100% calc(100% - var(--bevel-size)),
    calc(100% - var(--bevel-size)) 100%,
    var(--bevel-size) 100%,
    0 calc(100% - var(--bevel-size))
  );
  border: 1px solid rgba(252, 230, 207, .36);
  box-shadow: 0 0 0 7px rgba(252, 230, 207, .035), 0 14px 26px rgba(0, 0, 0, .14);
}

.about-art::before {
  content: '';
  position: absolute;
  z-index: 2;
  inset: 13px;
  display: block;
  border: 1px solid rgba(252, 230, 207, .5);
  box-shadow: inset 0 0 0 5px rgba(16, 13, 10, .08);
  pointer-events: none;
}

.lead-alt-three .alt-three-mark {
  border-left: 1px solid rgba(252, 230, 207, .22);
}

.site-footer {
  color: var(--cream);
  background: var(--ink);
}

.footer-top,
.footer-bottom {
  border-color: rgba(16, 13, 10, .2);
}

.footer-top > p {
  color: #7d6354;
}

.footer-top > p i {
  color: #a57b27;
}

.footer-links a {
  position: relative;
  align-self: flex-start;
  color: #866b5b;
}

.footer-up {
  position: relative;
  display: inline-flex;
  align-items: center;
  color: #815318;
}

.footer-links a,
.footer-up {
  transition: color .18s ease;
}

.footer-links a::after,
.footer-up::after {
  position: absolute;
  right: 0;
  bottom: -4px;
  left: 0;
  height: 1px;
  background: currentColor;
  content: '';
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .2s ease;
}

.footer-links a:hover,
.footer-links a:focus-visible,
.footer-up:hover,
.footer-up:focus-visible {
  color: #755210;
}

.footer-links a:hover::after,
.footer-links a:focus-visible::after,
.footer-up:hover::after,
.footer-up:focus-visible::after {
  transform: scaleX(1);
}

.footer-up span {
  transition: transform .18s ease;
}

.footer-up:hover span,
.footer-up:focus-visible span {
  transform: translateY(-3px);
}

@media (prefers-reduced-motion: reduce) {
  .footer-links a,
  .footer-up,
  .footer-links a::after,
  .footer-up::after,
  .footer-up span {
    transition: none;
  }

  .footer-up:hover span,
  .footer-up:focus-visible span {
    transform: none;
  }
}

.footer-bottom {
  color: #927868;
}

.footer-bottom span:last-child {
  color: #806353;
}

@media (max-width: 900px) {
  .about-copy {
    padding: 30px 32px 34px;
  }
}

@media (max-width: 560px) {
  .about-copy {
    padding: 28px 25px 32px;
  }

  .lead-alt-three .alt-three-mark {
    border-left: 0;
  }
}

/* Final spacing adjustments from the latest browser review. */
.content-proof-grid .testimonial blockquote {
  letter-spacing: .015em;
}

.about-values h3 {
  letter-spacing: .03em;
}

.lead-alt-three .alt-three-mark {
  margin-right: 18px;
  border-left: 0;
  border-right: 1px solid rgba(252, 230, 207, .22);
}

.blog-heading {
  max-width: 920px;
  gap: 32px;
}

.blog-heading h2 {
  white-space: nowrap;
}

.lead-alt-three .alt-three-mark {
  margin-right: clamp(32px, 4.2vw, 62px);
}

.lead-alt-three {
  grid-template-columns: 120px 1fr .65fr 120px;
}

.lead-alt-three .alt-three-mark {
  margin-right: 0;
  border-right: 0;
}

.lead-alt-three .alt-three-index-right {
  border-right: 0;
  border-left: 1px solid rgba(252, 230, 207, .22);
}

@media (max-width: 900px) {
  .lead-alt-three {
    grid-template-columns: 70px 1fr;
  }

  .lead-alt-three .alt-three-index-right {
    display: none;
  }
}

@media (max-width: 560px) {
  .lead-alt-three .alt-three-mark {
    margin-right: 0;
    border-right: 0;
  }

  .blog-heading h2 {
    white-space: normal;
  }

  .lead-alt-three {
    grid-template-columns: 70px 1fr;
  }

  .lead-alt-three .alt-three-index-right {
    display: none;
  }
}

/* Latest content and hierarchy refinements. */
.brand-name {
  font-family: var(--font-normal) !important;
}

.content-proof-grid .testimonial .quote-author {
  gap: 18px;
}

.content-proof-grid .testimonial .author-avatar {
  width: 60px;
  height: 60px;
  font-size: 16px;
}

.content-proof-grid .testimonial .quote-author strong {
  font-size: 18px;
}

.content-proof-grid .testimonial .quote-author small {
  margin-top: 6px;
  font-size: 15px;
}

.about-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 29px;
}

.about-action-button {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  padding: 12px 14px;
  border: 1px solid rgba(252, 230, 207, .32);
  color: var(--ink);
  background: transparent;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
}

.about-action-button span {
  color: var(--orange);
  font-size: 16px;
  line-height: .7;
}

.about-action-button:hover {
  border-color: var(--orange);
  color: var(--cream);
  background: var(--orange);
  transform: translateY(-2px);
}

.about-action-button:hover span {
  color: currentColor;
}

.blog-feature-art strong {
  right: auto;
  max-width: calc(100% - 54px);
  padding: 10px 13px 11px;
  color: var(--ink);
  background: rgba(16, 13, 10, .72);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .16);
}

@media (max-width: 560px) {
  .content-proof-grid .testimonial .author-avatar {
    width: 50px;
    height: 50px;
    font-size: 14px;
  }

  .content-proof-grid .testimonial .quote-author strong {
    font-size: 15px;
  }

  .content-proof-grid .testimonial .quote-author small {
    font-size: 12px;
  }

  .about-actions {
    gap: 8px;
  }

  .about-action-button {
    padding: 10px 11px;
    font-size: 9px;
  }
}

/* Final visual refinements from the latest browser review. */
.about-image {
  object-fit: contain;
  object-position: center;
  background: var(--plum);
}

.about-action-discord {
  border-color: rgba(252, 230, 207, .32);
  color: var(--ink);
  background: transparent;
}

.about-action-discord:hover {
  border-color: #5865f2;
  color: #fff;
  background: #5865f2;
}

.about-action-creators {
  border-color: var(--ink);
  color: var(--cream);
  background: var(--ink);
}

.about-action-creators:hover {
  border-color: var(--paper);
  color: var(--ink);
  background: var(--paper);
}

.stat strong .stat-plus {
  display: inline;
  margin-inline-end: .08em;
  color: inherit;
  font-family: 'DM Sans', Arial, sans-serif !important;
  font-size: .88em;
  font-weight: 500;
  letter-spacing: 0;
  vertical-align: baseline;
}

.blog-heading {
  max-width: 1120px;
  grid-template-columns: .9fr 1fr;
}

.blog-heading > p {
  justify-self: end;
}

/* Final dark-theme hover palette, kept last so it wins over legacy light-theme rules. */
.upcoming-deck .upcoming-card,
.upcoming-deck-meta,
.upcoming-deck-wrap .upcoming-timer {
  width: min(90%, 840px);
}

.upcoming-deck-meta {
  justify-content: center;
  gap: 5px;
}

.blog-heading h2,
.blog-heading h2 i {
  font-family: var(--font-alternative) !important;
}

@media (max-width: 900px) {
  .upcoming-deck .upcoming-card,
  .upcoming-deck-meta,
  .upcoming-deck-wrap .upcoming-timer {
    width: min(82%, 650px);
  }
}

@media (max-width: 560px) {
  .upcoming-deck .upcoming-card,
  .upcoming-deck-meta,
  .upcoming-deck-wrap .upcoming-timer {
    width: 94%;
  }
}

.small-button:hover {
  border-color: var(--orange);
  color: var(--cream);
  background: var(--orange);
}

.primary-button:hover {
  color: var(--ink);
  background: var(--plum);
  box-shadow: 5px 5px 0 rgba(0, 0, 0, .22);
}

.flip-button:hover,
.preview-open:hover,
.upcoming-nav:hover {
  border-color: var(--orange);
  color: var(--cream);
  background: var(--orange);
}

.sample-info a:hover,
.project-arrow:hover {
  color: var(--cream);
  background: var(--ink);
}

/* Make the values section read as a core part of the studio identity. */
.about-values {
  gap: clamp(28px, 3.2vw, 44px);
  padding-top: 38px;
}

.about-values > div > span {
  font-size: 12px;
}

.about-values h3 {
  font-size: clamp(22px, 2vw, 25px);
  line-height: 1.2;
}

.about-values p {
  max-width: 280px;
  margin-top: 11px;
  font-size: 15px;
  line-height: 1.7;
}

@media (max-width: 560px) {
  .about-values {
    gap: 28px;
    margin-top: 58px;
    padding-top: 30px;
  }

  .about-values > div {
    padding-bottom: 25px;
    border-bottom: 1px solid rgba(238, 232, 221, .2);
  }

  .about-values > div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .about-values > div > span {
    font-size: 13px;
  }

  .about-values h3 {
    font-size: 24px;
  }

  .about-values p {
    max-width: 330px;
    font-size: 16px;
  }
}
/* Keep the desktop footer proportionate to its compact set of links. */
.site-shell .site-footer {
  padding: 42px 10% 18px;
}

.site-shell .site-footer .footer-top {
  padding-bottom: 32px;
}

.site-shell .site-footer .footer-links {
  gap: 36px;
  margin: 28px 0 34px auto;
}

.site-shell .site-footer .footer-bottom {
  padding-top: 14px;
}
/* Improve text contrast in the light footer. */
.site-shell .site-footer .footer-brand .brand-descriptor {
  color: #80604d;
}

.site-shell .site-footer .footer-links .footer-label {
  color: #98532f;
}

.site-shell .site-footer .footer-links a,
.site-shell .site-footer .footer-up {
  color: #5f4637;
}

.site-shell .site-footer .footer-bottom {
  color: #6f5545;
}

.site-shell .site-footer .footer-bottom span:last-child {
  color: #5f4637;
}
/* Final compact footer spacing with slightly larger, clearer type. */
.site-shell .site-footer {
  padding: 24px 10% 10px;
}

.site-shell .site-footer .footer-top {
  padding-bottom: 20px;
}

.site-shell .site-footer .footer-brand .brand-descriptor {
  font-size: 9px;
}

.site-shell .site-footer .footer-links {
  gap: 30px;
  margin: 18px 0 20px auto;
}

.site-shell .site-footer .footer-label {
  margin-bottom: 2px;
  font-size: 10px;
}

.site-shell .site-footer .footer-links a {
  font-size: 13px;
}

.site-shell .site-footer .footer-bottom {
  padding-top: 10px;
  font-size: 11px;
}

.flip-button > span svg {
  display: block;
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.project-arrow {
  display: grid;
  place-items: center;
  padding: 0;
}

.project-arrow svg {
  display: block;
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.content-proof-grid .testimonial #testimonial-quote {
  font-size: clamp(18px, 1.8vw, 24px);
  line-height: 1.45;
  white-space: pre-line;
  transition: opacity .18s ease, transform .18s ease;
}

.content-proof-grid .testimonial #testimonial-quote.is-long {
  font-size: clamp(16px, 1.45vw, 19px);
  line-height: 1.5;
}

.content-proof-grid .testimonial .quote-author {
  transition: opacity .18s ease, transform .18s ease;
}

.content-proof-grid .testimonial.is-changing #testimonial-quote,
.content-proof-grid .testimonial.is-changing .quote-author {
  opacity: 0;
  transform: translateY(5px);
}

#testimonial-role[hidden] {
  display: none;
}

@media (max-width: 560px) {
  .content-proof-grid .testimonial #testimonial-quote {
    font-size: 20px;
  }

  .content-proof-grid .testimonial #testimonial-quote.is-long {
    font-size: 17px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .content-proof-grid .testimonial #testimonial-quote,
  .content-proof-grid .testimonial .quote-author {
    transition: none;
  }
}

/* Testimonial carousel navigation and five-second reading timer. */
.content-proof-grid .testimonial-footer {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
  margin-top: auto;
}

.content-proof-grid .testimonial .testimonial-footer .quote-author {
  width: 100%;
  margin-top: 0;
}

.content-proof-grid .testimonial-navigation {
  display: flex;
  flex: 0 0 auto;
  gap: 14px;
  align-items: center;
  margin-left: 78px;
}

.content-proof-grid .testimonial-navigation button {
  display: grid;
  flex: 0 0 36px;
  place-items: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid #e0b949;
  border-radius: 50%;
  color: #211914;
  background: #d9ae49;
  box-shadow: 0 3px 0 rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 244, 204, .35);
  cursor: pointer;
  transition: color .18s ease, background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.content-proof-grid .testimonial-navigation button span {
  font: 20px/1 Georgia, serif;
  transform: translateY(-1px);
}

.content-proof-grid .testimonial-navigation button:hover {
  transform: translateY(-2px);
  border-color: #f2cf71;
  color: #1b1512;
  background: #efc65d;
  box-shadow: 0 5px 0 rgba(0, 0, 0, .25), inset 0 1px 0 rgba(255, 249, 224, .55);
}

.content-proof-grid .testimonial-navigation button:focus-visible {
  outline: 2px solid var(--orange);
  outline-offset: 3px;
}

.content-proof-grid .testimonial-progress {
  width: 100%;
  height: 2px;
  margin: 14px 0 18px;
  overflow: hidden;
  background: rgba(238, 232, 221, .15);
}

.content-proof-grid .testimonial-progress span {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #efaa72, #d9ae49);
  transform: scaleX(0);
  transform-origin: left center;
  animation-name: testimonial-countdown;
  animation-duration: 5s;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
}

.content-proof-grid .testimonial-progress span[style*="paused"] {
  animation-play-state: paused;
}

@keyframes testimonial-countdown {
  to { transform: scaleX(1); }
}

@media (max-width: 560px) {
  .content-proof-grid .testimonial-footer { gap: 14px; }
  .content-proof-grid .testimonial-navigation { gap: 14px; margin-left: 68px; }
  .content-proof-grid .testimonial-navigation button { width: 34px; height: 34px; }
  .content-proof-grid .testimonial-progress { margin-top: 10px; margin-bottom: 18px; }
}

/* Keep the PDF page number centered, with the dots on their own centered row. */
.flipbook-wrap .flip-controls {
  display: grid;
  grid-template-columns: 35px minmax(0, 1fr) 35px;
  grid-template-rows: auto auto;
  justify-items: center;
  row-gap: 8px;
  justify-content: initial;
  padding: 9px 11px 10px;
}

.flipbook-wrap .flip-controls #flip-prev { grid-column: 1; grid-row: 1; }
.flipbook-wrap .flip-controls #flip-next { grid-column: 3; grid-row: 1; }
.flipbook-wrap .flip-controls .flip-button {
  flex-basis: 40px;
  width: 40px;
  height: 40px;
}
.flipbook-wrap .flip-controls .flip-button svg {
  width: 30px;
  height: 30px;
  stroke-width: 3.8;
}
.flipbook-wrap .flip-controls .page-count { grid-column: 2; grid-row: 1; justify-self: center; }
.flipbook-wrap .flip-controls .page-dots {
  grid-column: 1 / -1;
  grid-row: 2;
  justify-content: center;
  width: min(100%, 260px);
  max-width: 260px;
}

@media (max-width: 560px) {
  .flipbook-wrap .flip-controls {
    grid-template-columns: 40px minmax(0, 1fr) 40px;
    column-gap: 5px;
  }
  .flipbook-wrap .flip-controls .page-dots { width: min(100%, 260px); }
}

/* Keep testimonial typography consistent and navigation controls well spaced. */
.content-proof-grid .testimonial #testimonial-quote,
.content-proof-grid .testimonial #testimonial-quote.is-long,
.content-proof-grid .testimonial .quote-author strong,
.content-proof-grid .testimonial .quote-author small {
  font-size: 18px;
}

.content-proof-grid .testimonial-navigation {
  justify-content: center;
  width: 100%;
  gap: 0;
  margin-left: 0;
  column-gap: clamp(70px, 8vw, 100px);
}

.content-proof-grid .testimonial-navigation button {
  flex-basis: 40px;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  color: var(--orange);
  background: transparent;
  box-shadow: none;
  transition: color .18s ease, background .18s ease, border-color .18s ease;
}

.content-proof-grid .testimonial-navigation button svg {
  display: block;
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 3.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.content-proof-grid .testimonial-navigation button:hover {
  transform: none;
  color: var(--ink);
  background: var(--orange);
}

@media (max-width: 560px) {
  .content-proof-grid .testimonial-navigation {
    width: 100%;
    margin-left: 0;
    column-gap: 72px;
  }
}

.content-proof-grid .testimonial .quote-author strong {
  font-size: 14px;
}

.content-proof-grid .testimonial .author-avatar {
  width: 48px;
  height: 48px;
  font-size: 13px;
}

.content-proof-grid .testimonial #testimonial-quote,
.content-proof-grid .testimonial #testimonial-quote.is-long {
  font-size: 19px;
}

/* Match live campaign card dimensions across the desktop grid. */
.projects-section .live-projects {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
}

.projects-section .live-projects > .project-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.projects-section .live-projects .project-art {
  flex: 0 0 auto;
  height: auto;
  aspect-ratio: 16 / 9;
}

.projects-section .live-projects .project-card-body {
  flex: 1 0 270px;
  height: 270px;
}

@media (max-width: 900px) {
  .projects-section .live-projects { grid-template-columns: minmax(0, 1fr); }
}

/* Improve readability in the live project cards. */
.projects-section .live-projects .project-card-body {
  grid-template-rows: minmax(0, 1fr) auto;
  padding-bottom: 40px;
}

.projects-section .live-projects .project-card-body > div:first-child {
  grid-column: 1 / -1;
}

.projects-section .live-projects .project-meta {
  grid-column: 1;
  grid-row: 2;
  align-self: center;
  margin-top: 0;
}

.projects-section .live-projects .live-bottom-row {
  grid-column: 2;
  grid-row: 2;
  align-self: center;
  justify-content: flex-end;
}

.projects-section .live-projects .project-card-body h3 {
  font-size: 22px;
  line-height: 1.35;
  letter-spacing: normal;
}

.projects-section .live-projects .project-card-body p {
  color: #d9c0ac;
}

/* Keep the full-screen sample controls clear and easy to use. */
.pdf-modal-top {
  gap: 16px;
}

.pdf-modal-top h3 {
  font-family: 'DM Sans', Arial, sans-serif !important;
  font-size: clamp(18px, 2.5vw, 24px);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: normal;
}

.pdf-modal-top .modal-close {
  display: grid;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  place-items: center;
  padding: 0;
  border-radius: 6px;
}

.modal-close svg {
  display: block;
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
}

.modal-close:focus-visible {
  outline: 2px solid var(--orange);
  outline-offset: 3px;
}

body:has(#pdf-modal.is-open) > .scroll-to-top {
  display: none;
}

/* Keep unfinished footer destinations hidden until they are ready. */
.site-footer [hidden] {
  display: none !important;
}
