/* Targeted responsive fixes for the static WRLDWIDE Homes export. */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

@media (min-width: 1280px) {
  .nav {
    min-height: 88px;
    padding: 18px 48px;
  }

  .nav__logo {
    align-items: center;
  }

  .nav__product {
    align-items: baseline;
    gap: 8px;
    line-height: 1;
  }

  .nav__brand,
  .nav__homes {
    line-height: 1;
  }

  .nav__homes {
    transform: none;
  }

  .hero {
    min-height: 100svh;
    height: 100svh;
  }

  .hero__content {
    width: min(100% - 96px, 1280px);
    min-height: 100svh;
    margin: 0 auto;
    padding: 132px 0 34px;
    display: grid;
    align-content: start;
  }

  .hero__title {
    max-width: 7.1ch;
    font-size: clamp(72px, 5.8vw, 112px);
    line-height: 0.86;
  }

  .hero__sub {
    max-width: 27ch;
    margin-top: 20px;
    font-size: clamp(18px, 1.5vw, 28px);
    line-height: 1.35;
  }

  .hero__ctas {
    margin-top: 26px;
  }

  .hero__meta {
    margin-top: auto;
    padding-top: 32px;
  }

  .hero__scroll {
    bottom: 24px;
  }

  .hero__stats {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) repeat(3, minmax(0, 1fr));
    gap: 28px;
    align-items: start;
  }

  .hero__stat {
    min-width: 0;
  }

  .hero__stat .value {
    font-size: clamp(22px, 2vw, 36px);
    line-height: 1.02;
  }

  .hero__stat:first-child .value {
    font-size: clamp(22px, 2vw, 36px);
    line-height: 1.02;
  }
}

* {
  box-sizing: border-box;
}

img,
svg,
video,
canvas {
  max-width: 100%;
}

.hero,
.section,
.shell {
  overflow-x: clip;
}

@supports not (overflow: clip) {
  .hero,
  .section,
  .shell {
    overflow-x: hidden;
  }
}

.btn {
  min-height: 46px;
  white-space: nowrap;
}

@media (min-width: 901px) {
  .form .field + .field {
    margin-top: 12px;
  }

  .ks__tiers-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .ks__tier-grid,
  .ks__tiers-wrap > .reveal {
    grid-column: 1 / -1;
  }

  .ks__tiers-wrap > .reveal {
    display: block;
    width: 100%;
    margin-top: 24px;
  }

  .fund__honest {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
  }
}

@media (max-width: 900px) {
  .nav {
    min-height: 72px;
    height: auto;
    padding: 14px 24px;
    gap: 18px;
  }

  .nav__links {
    display: none !important;
  }

  .nav__logo {
    min-width: 0;
  }

  .nav__lockup-svg {
    width: 46px;
    height: auto;
  }

  .nav__product {
    min-width: 0;
  }

  .nav__brand {
    font-size: 15px;
    letter-spacing: 0.02em;
  }

  .nav__homes {
    font-size: 18px;
  }

  .nav__cta .btn {
    padding: 14px 18px;
    font-size: 10px;
    letter-spacing: 0.26em;
  }

  .container {
    width: min(100% - 40px, 1180px);
  }

  .section {
    padding-top: 84px;
    padding-bottom: 84px;
  }

  .section-head {
    grid-template-columns: 1fr !important;
    gap: 26px;
    margin-bottom: 42px;
  }

  .section-head h2 {
    font-size: clamp(42px, 11vw, 72px);
    line-height: 0.98;
  }

  .section-head__aside,
  .lede {
    max-width: 64ch;
  }

  .cave__stage,
  .philosophy__grid,
  .modules__grid,
  .wellness__grid,
  .place__grid,
  .founder__grid,
  .fund__shell,
  .budget__panel-head {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  .nav {
    align-items: center;
    min-height: 70px;
    padding: 12px 16px;
    display: flex;
    justify-content: space-between;
    gap: 14px;
  }

  .nav__lockup-svg {
    display: block !important;
    flex: 0 0 auto;
    width: 38px;
    height: auto;
  }

  .nav__product {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    line-height: 1;
    min-width: 0;
    white-space: nowrap;
  }

  .nav__logo {
    flex: 0 1 auto;
    gap: 10px;
    min-width: 0;
  }

  .nav__cta {
    flex: 0 0 auto;
    margin-left: auto;
  }

  .nav__brand {
    font-size: 12px;
    letter-spacing: 0.02em;
  }

  .nav__homes {
    font-size: 14px;
    line-height: 1;
    transform: translateY(-2px);
  }

  .nav__cta .btn {
    min-height: 48px;
    width: 112px;
    padding: 12px 12px;
    font-size: 0;
    letter-spacing: 0;
    line-height: 1.25;
    justify-content: center;
    gap: 8px;
    color: transparent;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
  }

  .nav__cta .btn::before {
    content: "PATRON";
    position: static;
    inset: auto;
    z-index: auto;
    flex: 0 0 auto;
    background: transparent;
    transform: none;
    transition: none;
    font-family: var(--font-mono);
    font-size: 10px;
    letter-spacing: 0.22em;
    line-height: 1;
    color: var(--ink-100);
  }

  .nav__cta .btn .arrow {
    flex: 0 0 14px;
    margin-left: 0;
    color: var(--ink-100);
  }

  .hero {
    min-height: 100svh;
    height: 100svh;
    align-items: stretch;
    overflow: hidden;
  }

  .hero__img {
    inset: 0 !important;
    width: auto !important;
    filter: saturate(0.68) contrast(1.06) brightness(0.54);
    background-position: 58% 50%;
  }

  .hero__veil {
    background:
      linear-gradient(180deg, rgba(10, 11, 10, 0.82) 0%, rgba(10, 11, 10, 0.36) 36%, rgba(10, 11, 10, 0.9) 100%),
      linear-gradient(90deg, rgba(10, 11, 10, 0.82) 0%, rgba(10, 11, 10, 0.34) 58%, rgba(10, 11, 10, 0.18) 100%) !important;
  }

  .hero__content .reveal {
    opacity: 1 !important;
    transform: none !important;
  }

  .fog {
    inset-inline: 0 !important;
    width: auto !important;
  }

  .hero__content {
    width: 100%;
    min-height: 100svh;
    padding: clamp(112px, 15svh, 128px) 20px 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .eyebrow {
    max-width: 100%;
    font-size: 9px;
    letter-spacing: 0.16em;
    line-height: 1.45;
  }

  .hero .eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0;
    letter-spacing: 0;
  }

  .hero .eyebrow .dot {
    flex: 0 0 auto;
    margin: 0;
  }

  .hero .eyebrow::after {
    content: "EDGE OF WORLD · ROUND I";
    font-family: var(--font-mono);
    font-size: 10px;
    letter-spacing: 0.18em;
    line-height: 1.35;
  }

  .hero__title {
    max-width: 9.8ch;
    font-size: clamp(42px, 11.2vw, 50px) !important;
    line-height: 0.9;
    letter-spacing: 0;
    margin-top: 20px;
  }

  .hero__title em {
    color: var(--bronze-lt);
  }

  .hero__title-small {
    display: block;
    max-width: 15ch;
    margin-top: 12px;
    font-family: var(--font-sans);
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 0;
    color: var(--bone-200);
  }

  .hero__sub {
    max-width: 31.5ch;
    margin-top: 24px;
    font-size: 15.5px;
    line-height: 1.48;
    color: var(--bone-300);
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
  }

  .hero__ctas {
    width: 100%;
    margin-top: 28px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .hero__ctas .btn {
    width: 100%;
    justify-content: space-between;
    padding-inline: 20px;
  }

  .hero__meta {
    display: none !important;
  }

  .hero__stats {
    width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
  }

  .hero__stat {
    min-width: 0;
    padding: 16px 12px;
  }

  .hero__stat .label,
  .hero__stat .value {
    width: auto;
  }

  .hero__stat .value {
    font-size: clamp(20px, 5.6vw, 24px);
    line-height: 1.05;
  }

  .hero__stat:first-child .value {
    font-size: clamp(18px, 5vw, 21px);
    line-height: 1.12;
  }

  .hero__scroll {
    display: none;
  }

  .marquee {
    padding: 14px 0;
  }

  .marquee__track {
    gap: 34px;
    animation-duration: 42s;
  }

  .marquee__item {
    gap: 10px;
    font-size: 21px;
  }

  .container {
    width: min(100% - 32px, 1180px);
  }

  .section > .container,
  .footer > .container,
  .fund > .container,
  .inquiry > .container {
    margin-inline: 0;
  }

  .section {
    padding-top: 70px;
    padding-bottom: 70px;
    padding-inline: 16px;
  }

  .wellness {
    padding-inline: 16px;
  }

  .wellness .container {
    width: 100%;
  }

  .cave__features,
  .features__grid,
  .service__grid,
  .risks__grid {
    grid-template-columns: 1fr !important;
  }

  .feature:nth-child(2n) {
    border-left: 0 !important;
    padding-left: 0 !important;
  }

  .section-head {
    margin-bottom: 34px;
  }

  .section-head h2 {
    font-size: clamp(38px, 12vw, 52px);
  }

  .lede,
  .philosophy__lede,
  .module__notes,
  .feature__copy,
  .risk__body,
  .tl__body p {
    font-size: 15px;
    line-height: 1.6;
  }

  .cave__features,
  .wellness__grid,
  .module__specs,
  .place__facts,
  .fund__stats,
  .founder__notes-list,
  .risks__grid,
  .ks__milestones {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .wellness__grid,
  .wellness__grid > .reveal,
  .well-card {
    min-width: 0;
    width: 100%;
  }

  .well-card {
    min-height: 440px;
  }

  .well-card__body {
    padding: 24px 20px;
  }

  .well-card__title {
    font-size: 36px;
  }

  .well-card__copy {
    font-size: 15px;
    line-height: 1.55;
  }

  .well-card__meta {
    flex-wrap: wrap;
    gap: 8px 14px;
    min-width: 0;
    line-height: 1.45;
    white-space: normal;
  }

  .well-card__meta span {
    min-width: 0;
    white-space: normal;
  }

  .feature,
  .module__body,
  .risk,
  .founder__manifesto,
  .fund__tier,
  .fund__honest {
    padding: 22px 20px;
  }

  .feature {
    padding-inline: 0;
  }

  .module__img,
  .cave__still,
  .fund__hero {
    aspect-ratio: 4 / 3;
  }

  .cave__still .hud,
  .cave__still .legend,
  .fund__hero .stamp,
  .modules__foot,
  .budget__foot {
    flex-wrap: wrap;
    gap: 8px 14px;
    line-height: 1.5;
  }

  .modules__foot,
  .budget__foot,
  .footer__base {
    align-items: flex-start;
    justify-content: flex-start;
    text-align: left;
  }

  .modules__foot,
  .footer__base {
    font-size: 10px;
    letter-spacing: 0.16em;
    overflow-wrap: anywhere;
  }

  .modules__foot .sep {
    opacity: 0.45;
  }

  .fund,
  .inquiry,
  .footer {
    padding-inline: 16px;
  }

  .reveal {
    opacity: 1 !important;
    transform: none !important;
  }

  .modules__foot {
    display: flex;
  }

  .fund .container,
  .inquiry .container,
  .footer .container {
    width: 100%;
  }

  .ks {
    min-width: 0;
    overflow: hidden;
  }

  .ks__title h3 {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 4px 8px;
    font-size: clamp(34px, 10vw, 44px);
    line-height: 1.05;
    text-align: left;
  }

  .ks__brand,
  .ks__homes {
    line-height: 1;
  }

  .ks__specs {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 8px 12px;
    font-size: 10px;
    letter-spacing: 0.16em;
    line-height: 1.45;
    text-align: left;
  }

  .ks__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .ks__media,
  .ks__stats,
  .ks__tiers-wrap,
  .ks__tier-grid {
    min-width: 0;
    width: 100%;
  }

  .ks__media {
    aspect-ratio: 4 / 3;
  }

  .ks__hero-title {
    left: 20px;
    right: 20px;
  }

  .ks__hero-h {
    font-size: clamp(28px, 8vw, 38px);
    line-height: 1;
  }

  .ks__hero-spec {
    left: 20px;
    right: 20px;
    flex-wrap: wrap;
    gap: 7px 12px;
    font-size: 10px;
    letter-spacing: 0.16em;
    line-height: 1.45;
  }

  .ks__stamp {
    opacity: 0.55;
    transform: scale(0.76);
    transform-origin: center;
  }

  .inquiry__grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 38px;
  }

  .inquiry__copy,
  .inquiry__list,
  .inquiry__list-item,
  .form {
    min-width: 0;
    width: 100%;
  }

  .inquiry__list-item {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 16px;
  }

  .inquiry__list-item .t {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .form {
    padding: 28px 20px;
  }

  .form__head,
  .form__foot,
  .field--row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px;
  }

  .field,
  .field input,
  .field textarea,
  .chips,
  .chip {
    min-width: 0;
    width: 100%;
  }

  .chips {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .chip {
    justify-content: center;
    min-height: 48px;
    padding: 12px 10px;
    white-space: normal;
    font-size: 10px;
    letter-spacing: 0.16em;
    line-height: 1.25;
    text-align: center;
  }

  .field input,
  .field textarea {
    font-size: 22px;
    line-height: 1.25;
  }

  .footer__base {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .budget__bar {
    height: auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }

  .budget__seg {
    min-height: 46px;
    border-bottom: 1px solid #262320d9;
  }

  .budget__table,
  .budget__table tbody,
  .budget__table tfoot,
  .budget__table tr,
  .budget__table td {
    display: block;
    width: 100% !important;
    text-align: left !important;
  }

  .budget__table tr {
    border-bottom: 1px solid var(--bronze-hair);
    padding: 14px 0;
  }

  .budget__table td {
    border-bottom: none;
    padding: 4px 0;
  }

  .tl__row {
    grid-template-columns: 70px 22px 1fr;
    gap: 14px;
  }

  .tl__head {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 380px) {
  .hero__content {
    padding-inline: 18px;
  }

  .hero__title {
    font-size: 38px !important;
  }

  .hero__sub {
    font-size: 15px;
  }

  .nav__cta .btn {
    width: 104px;
    padding-inline: 10px;
  }

  .nav__brand {
    font-size: 11px;
  }

  .nav__homes {
    font-size: 13px;
  }

  .chips {
    grid-template-columns: minmax(0, 1fr);
  }
}

.reveal {
  opacity: 1 !important;
  transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }

  .reveal {
    opacity: 1 !important;
    transform: none !important;
  }
}
