/* Public Residency design candidate. Offer details and shared styles stay intact. */
@font-face {
  font-family: Oswald;
  src: url("../assets/preview-oswald-500.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
:root {
  --hero-face: Oswald, "Arial Narrow", sans-serif;
  --headline: Oswald, "Arial Narrow", sans-serif;
  --display: Inter, "Helvetica Neue", Arial, sans-serif;
  --text-muted: #a7aeb8;
}
html { color-scheme: dark; scrollbar-color: #555a60 #050607; }
body::after { display: none; }
::selection { color: #050607; background: #8edaff; }
.residency-skip { position: fixed; z-index: 100; top: 12px; left: 12px; padding: 14px 18px; border-radius: 8px; background: #f7f8fa; color: #050607; transform: translateY(-160%); }
.residency-skip:focus { transform: none; }
.residency-public [data-reveal] { opacity: 1; transform: none; transition: none; }
.residency-public .shop-announcement { min-height: 36px; background: #0d1013; color: #c7ccd2; font: 500 12px/1.5 var(--display); text-transform: none; letter-spacing: .025em; border-bottom: 1px solid var(--line); }
.residency-public .shop-announcement i { background: var(--cyan); box-shadow: none; animation: none; }
.residency-public .shop-header__location { font: 500 13px/1.4 var(--display); letter-spacing: .035em; }
.residency-public .shop-drawer { max-height: calc(100dvh - 148px); overflow-y: auto; }
.residency-public .shop-drawer__contact a { display: grid; gap: 6px; min-height: 44px; overflow-wrap: anywhere; }
.residency-public .shop-kicker { display: none; }
.residency-public h1,.residency-public h2,.residency-public h3,.residency-public .public-value-grid strong { text-transform: capitalize; }
.residency-public .residency-hero { min-height: 640px; padding-block: 90px 110px; align-items: center; }
.residency-public .residency-hero::after,.residency-public .residency-hero .shop-hero__grid::before { display: none; }
.residency-public .residency-hero .shop-hero__scrim { background: linear-gradient(90deg,rgba(4,6,8,.84),rgba(4,6,8,.72) 50%,rgba(4,6,8,.82)),linear-gradient(0deg,#050607,transparent 38%); }
.residency-public .shop-hero__grid { grid-template-columns: 1fr .9fr; align-items: center; gap: 64px; }
.residency-public .shop-hero h1 { font-size: clamp(64px,7vw,96px); font-weight: 500; line-height: 1.08; letter-spacing: -.015em; }
.residency-public .shop-hero h1 em,.residency-public .residency-intro-copy h2 em,.residency-public .public-residency-next h2 em { color: #f7f8fa; text-shadow: none; }
.residency-public .shop-hero__aside > p { color: #e0e4e8; font-size: 18px; line-height: 1.65; }
.residency-public .shop-baseline { gap: 14px 20px; }
.residency-public .shop-baseline span { color: #d6dee4; font-size: 14px; line-height: 1.5; }
.residency-public .shop-baseline span::before { top: .65em; box-shadow: none; }
.residency-public .shop-hero__proof { border-color: #66717a; margin-top: 28px; padding-top: 22px; }
.residency-public .shop-hero__proof span { color: #bdd3df; font: 500 13px/1.5 var(--display); letter-spacing: 0; text-transform: none; }
.residency-public .shop-hero__proof strong { font: 500 27px/1.25 var(--headline); }
.residency-motion { position: absolute; right: max(24px,calc((100% - 1180px)/2)); bottom: 24px; z-index: 3; min-height: 44px; padding: 10px 14px; border: 1px solid #65717b; border-radius: 8px; background: #0d1218; color: #e0e4e8; font: 500 12px/1.5 var(--display); cursor: pointer; }
.residency-motion:hover { background: #26323e; }
.residency-public .shop-section { padding-block: clamp(64px,7vw,100px); }
.residency-public .shop-section__heading { margin-bottom: 40px; }
.residency-public .shop-section__heading h2,.residency-public .residency-intro-copy h2,.residency-public .public-residency-next h2 { font-size: clamp(40px,4.8vw,62px); font-weight: 500; line-height: 1.12; letter-spacing: -.015em; }
.residency-public .shop-section__heading p { max-width: 65ch; font-size: 17px; line-height: 1.65; }
.residency-public .public-residency-grid { gap: 24px; }
.residency-public .public-residency-card { border-color: #343b44; background: #111419; box-shadow: none; border-radius: 20px; }
.residency-public .public-residency-card__media { min-height: 230px; }
.residency-public .public-residency-card__media span { display: none; }
.residency-public .public-residency-card__body { padding: 28px; }
.residency-public .public-residency-card__body > small { display: none; }
.residency-public .public-residency-card h3 { min-height: 82px; margin: 0 0 22px; font-size: 36px; font-weight: 500; line-height: 1.14; letter-spacing: -.015em; }
.residency-public .public-residency-offer { min-height: 142px; margin: 0 0 24px; padding-block: 18px; border-color: #39434c; align-content: start; gap: 12px; }
.residency-public .public-residency-offer > div { align-items: baseline; flex-wrap: wrap; gap: 8px; }
.residency-public .public-residency-offer strong { font: 600 38px/1.1 var(--display); letter-spacing: -.025em; font-variant-numeric: tabular-nums; }
.residency-public .public-residency-offer span { color: #c3d1db; font: 500 12px/1.4 var(--display); letter-spacing: .01em; }
.residency-public .public-residency-offer > small { color: #c3d1db; font: 500 12px/1.5 var(--display); letter-spacing: 0; }
.residency-public .public-residency-card p { min-height: 125px; font-size: 16px; line-height: 1.6; }
.residency-public .public-residency-card ul { gap: 14px; }
.residency-public .public-residency-card li { font-size: 15px; line-height: 1.6; }
.residency-public .public-residency-card li::before { box-shadow: none; }
.residency-public .public-residency-value .shop-shell { grid-template-columns: .85fr 1.15fr; gap: 64px; }
.residency-public .public-value-grid { gap: 32px; }
.residency-public .public-value-grid article { min-height: 0; padding: 24px 0 0; border: 0; border-top: 1px solid #39434c; border-radius: 0; background: none; }
.residency-public .public-value-grid small { display: none; }
.residency-public .public-value-grid strong { margin: 0 0 12px; font: 500 28px/1.25 var(--headline); }
.residency-public .public-value-grid p { color: #bbc3cc; font-size: 16px; line-height: 1.65; }
.residency-public .residency-intro-layout { gap: 64px; grid-template-columns: 1fr .85fr; }
.residency-public .residency-intro-ticket { padding: 32px; border-color: #39434c; background: #0e1419; box-shadow: none; }
.residency-public .residency-intro-ticket > small { color: #a7dfff; font: 600 12px/1.5 var(--display); letter-spacing: .04em; }
.residency-public .residency-intro-ticket__price { align-items: baseline; flex-wrap: wrap; }
.residency-public .residency-intro-ticket__price strong { font: 600 64px/1.1 var(--display); letter-spacing: -.03em; }
.residency-public .residency-intro-ticket__price span { font: 500 13px/1.5 var(--display); letter-spacing: 0; }
.residency-public .residency-intro-ticket li { font-size: 16px; line-height: 1.6; }
.residency-public .public-residency-next { padding-top: 0; }
.residency-public .public-residency-next__card { grid-template-columns: 1fr .7fr; gap: 48px; padding: 48px; border-color: #39434c; border-radius: 24px; background: #0e1419; }
.residency-public .public-residency-next li { padding-left: 32px; position: relative; font-size: 15px; line-height: 1.6; }
.residency-public .public-residency-next li::before { position: absolute; left: 0; top: 5px; font-family: var(--display); }
.residency-public .public-residency-next__actions { gap: 24px; min-width: 0; }
.residency-public .public-residency-next__return { font-size: 15px; line-height: 1.6; }
.residency-public .public-residency-next__return strong { display: block; margin-top: 6px; font-weight: 600; }
.residency-public .public-residency-next__actions > small { color: #a7b2bd; font: 400 14px/1.6 var(--display); text-transform: none; letter-spacing: 0; }
.residency-public .shop-button { min-height: 58px; padding: 16px 20px; border-radius: 14px; background: linear-gradient(180deg,rgba(0,174,255,.18),rgba(0,174,255,.07)); box-shadow: none; text-shadow: none; font: 600 16px/1.5 var(--display); letter-spacing: 0; }
.residency-public .shop-button:hover { background: rgba(0,174,255,.2); }
.residency-public .shop-footer { font: 500 12px/1.5 var(--display); letter-spacing: .035em; }
.residency-public a:focus-visible,.residency-public button:focus-visible { outline: 2px solid #8edaff; outline-offset: 4px; }
@media (max-width: 1050px) {
  .residency-public .public-residency-grid { grid-template-columns: 1fr; }
  .residency-public .public-residency-card { display: grid; grid-template-columns: .65fr 1fr; }
  .residency-public .public-residency-card--founding { grid-column: auto; }
  .residency-public .public-residency-card h3 { min-height: 0; }
  .residency-public .public-residency-card p { min-height: 0; }
  .residency-public .public-residency-offer { min-height: 0; }
  .residency-public .public-residency-value .shop-shell,.residency-public .residency-intro-layout,.residency-public .public-residency-next__card { grid-template-columns: 1fr; gap: 36px; }
}
@media (max-width: 900px) {
  .residency-public .residency-hero { min-height: 0; padding-block: 64px 100px; }
  .residency-public .shop-hero__grid { grid-template-columns: 1fr; gap: 32px; }
  .residency-public .shop-hero__aside { max-width: 600px; }
}
@media (max-width: 620px) {
  .residency-public .shop-shell { width: calc(100% - 40px); }
  .residency-public .shop-hero h1 { font-size: clamp(56px,15vw,80px); }
  .residency-public .shop-hero__aside > p { font-size: 17px; }
  .residency-public .public-residency-card { display: block; }
  .residency-public .public-residency-card__body,.residency-public .residency-intro-ticket,.residency-public .public-residency-next__card { padding: 28px 24px; }
  .residency-public .public-value-grid { grid-template-columns: 1fr; gap: 24px; }
  .residency-public .shop-section__heading h2,.residency-public .residency-intro-copy h2,.residency-public .public-residency-next h2 { font-size: 40px; }
}
@media (prefers-reduced-motion: reduce) {
  .residency-public *, .residency-public *::before,.residency-public *::after { animation: none !important; transition: none !important; }
}
