/* [next]/internal/font/google/geist_855f4457.module.css [app-client] (css) */
@font-face {
  font-family: Geist;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Geist;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/8a480f0b521d4e75-s.p.1qq4vpdcun5oj.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Geist;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/53b9e256198e5412-s.390ncx5urfkfu.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Geist;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/7178b3e590c64307-s.21jp631_3pja2.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Geist;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Geist Fallback;
  src: local(Arial);
  ascent-override: 95.94%;
  descent-override: 28.16%;
  line-gap-override: 0.0%;
  size-adjust: 104.76%;
}

.geist_855f4457-module__UNybwq__className {
  font-family: Geist, Geist Fallback;
  font-style: normal;
}

.geist_855f4457-module__UNybwq__variable {
  --font-geist-sans: "Geist", "Geist Fallback";
}

/* [next]/internal/font/google/geist_mono_5fd6c9bf.module.css [app-client] (css) */
@font-face {
  font-family: Geist Mono;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/5ce348bf30bf5439-s.31988l_ccedte.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Geist Mono;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/4fa387ec64143e14-s.p.2tuy5pz7dlieh.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Geist Mono;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2") format("woff2");
  unicode-range: U+2000-2001, U+2004-2008, U+200A, U+23B8-23BD, U+2500-259F;
}

@font-face {
  font-family: Geist Mono;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Geist Mono;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Geist Mono;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Geist Mono Fallback;
  src: local(Arial);
  ascent-override: 74.67%;
  descent-override: 21.92%;
  line-gap-override: 0.0%;
  size-adjust: 134.59%;
}

.geist_mono_5fd6c9bf-module__mUfs1G__className {
  font-family: Geist Mono, Geist Mono Fallback;
  font-style: normal;
}

.geist_mono_5fd6c9bf-module__mUfs1G__variable {
  --font-geist-mono: "Geist Mono", "Geist Mono Fallback";
}

/* [project]/src/app/globals.css [app-client] (css) */
@layer theme {
  :root, :host {
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
      "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
      "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring:where(:not(iframe)) {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components;

@layer utilities {
  .visible {
    visibility: visible;
  }

  .block {
    display: block;
  }
}

:root {
  --cream: #f2eadc;
  --paper: #e8ddca;
  --brown: #31251d;
  --deep: #1d1713;
  --rust: #a84f2a;
  --orange: #d46b32;
  --muted: #8c7a69;
  --line: #31251d2e;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--cream);
  color: var(--brown);
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
}

.header {
  border-bottom: 1px solid var(--line);
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  height: 92px;
  padding: 0 6vw;
  display: grid;
}

.brand {
  letter-spacing: .08em;
  font-size: 14px;
  font-weight: 700;
}

.brand span {
  color: var(--muted);
  letter-spacing: .13em;
  margin-top: 5px;
  font-size: 9px;
  font-weight: 400;
  display: block;
}

.nav {
  gap: 34px;
  font-size: 12px;
  display: flex;
}

.nav a:hover, .footer a:hover {
  opacity: .6;
}

.cabinet {
  border-bottom: 1px solid var(--brown);
  justify-self: end;
  padding-bottom: 4px;
  font-size: 12px;
}

.hero {
  grid-template-columns: 52% 48%;
  min-height: calc(100vh - 92px);
  display: grid;
}

.hero-copy {
  flex-direction: column;
  justify-content: center;
  padding: 9vh 7vw 6vh;
  display: flex;
}

.eyebrow {
  letter-spacing: .18em;
  text-transform: uppercase;
  margin: 0 0 25px;
  font-size: 10px;
  font-weight: 700;
}

.hero h1, .intro h2, .section-heading h2, .about h2, .final-cta h2 {
  font-family: Georgia, Times New Roman, serif;
  font-weight: 400;
}

.hero h1 {
  letter-spacing: -.055em;
  margin: 0;
  font-size: clamp(58px, 6.8vw, 112px);
  line-height: .87;
}

em {
  color: var(--rust);
  font-weight: 400;
}

.hero-text {
  max-width: 520px;
  margin: 38px 0;
  font-family: Georgia, Times New Roman, serif;
  font-size: 19px;
  line-height: 1.55;
}

.hero-actions {
  align-items: center;
  gap: 32px;
  display: flex;
}

.button {
  letter-spacing: .08em;
  text-transform: uppercase;
  justify-content: center;
  align-items: center;
  min-height: 52px;
  padding: 0 28px;
  font-size: 11px;
  font-weight: 700;
  transition: transform .2s, opacity .2s;
  display: inline-flex;
}

.button:hover {
  transform: translateY(-2px);
}

.button-dark {
  background: var(--brown);
  color: var(--cream);
}

.button-light {
  background: var(--cream);
  color: var(--brown);
}

.text-link {
  border-bottom: 1px solid;
  padding-bottom: 5px;
  font-size: 12px;
}

.hero-stats {
  border-top: 1px solid var(--line);
  gap: 55px;
  margin-top: 70px;
  padding-top: 25px;
  display: flex;
}

.hero-stats strong {
  font-family: Georgia, serif;
  font-size: 25px;
  font-weight: 400;
  display: block;
}

.hero-stats span {
  color: var(--muted);
  margin-top: 4px;
  font-size: 10px;
  display: block;
}

.hero-photo {
  background: #80654e;
  min-height: 700px;
  position: relative;
  overflow: hidden;
}

.photo-placeholder {
  color: #f7efe4;
  background: linear-gradient(#36221414, #36221459), linear-gradient(135deg, #b07a50, #6b4c38 55%, #34281f);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 700px;
  display: flex;
}

.photo-placeholder span, .about-photo span {
  letter-spacing: .2em;
  font-size: 11px;
}

.photo-placeholder small {
  opacity: .65;
  margin-top: 12px;
}

.autumn-note {
  background: var(--rust);
  color: #fff;
  align-items: center;
  gap: 16px;
  width: 245px;
  padding: 22px;
  display: flex;
  position: absolute;
  bottom: 55px;
  left: -55px;
}

.autumn-note span {
  font-size: 25px;
}

.autumn-note p {
  margin: 0;
  font-family: Georgia, serif;
  font-size: 14px;
  line-height: 1.4;
}

.intro {
  text-align: center;
  border-bottom: 1px solid var(--line);
  padding: 130px 7vw;
}

.intro h2 {
  letter-spacing: -.035em;
  max-width: 1000px;
  margin: 0 auto;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 1.02;
}

.courses, .reviews {
  padding: 110px 6vw;
}

.section-heading {
  justify-content: space-between;
  align-items: end;
  gap: 60px;
  margin-bottom: 55px;
  display: flex;
}

.section-heading h2 {
  letter-spacing: -.04em;
  margin: 0;
  font-size: clamp(45px, 5vw, 72px);
}

.section-heading > p {
  max-width: 420px;
  color: var(--muted);
  margin: 0 0 8px;
  font-family: Georgia, serif;
  font-size: 16px;
  line-height: 1.55;
}

.course-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  display: grid;
}

.course-card {
  border: 1px solid var(--line);
  background: #ffffff38;
}

.course-image {
  height: 360px;
  color: var(--cream);
  background: linear-gradient(145deg, #4a392d, #a65c34);
  justify-content: space-between;
  align-items: flex-start;
  padding: 24px;
  display: flex;
}

.course-card:nth-child(2) .course-image {
  background: linear-gradient(145deg, #8a6748, #3d3027);
}

.course-card:nth-child(3) .course-image {
  background: linear-gradient(145deg, #b96a39, #5b3827);
}

.course-image span {
  letter-spacing: .2em;
  font-size: 9px;
}

.course-image strong {
  opacity: .65;
  font-family: Georgia, serif;
  font-size: 40px;
  font-weight: 400;
}

.course-content {
  padding: 28px;
}

.course-meta {
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .08em;
  gap: 20px;
  font-size: 9px;
  display: flex;
}

.course-content h3 {
  margin: 22px 0 14px;
  font-family: Georgia, serif;
  font-size: 31px;
  font-weight: 400;
}

.course-content > p {
  color: #6f6257;
  min-height: 75px;
  font-size: 13px;
  line-height: 1.55;
}

.course-bottom {
  border-top: 1px solid var(--line);
  justify-content: space-between;
  align-items: center;
  margin-top: 30px;
  padding-top: 20px;
  display: flex;
}

.course-bottom strong {
  font-family: Georgia, serif;
  font-size: 22px;
  font-weight: 400;
}

.course-bottom a {
  border-bottom: 1px solid;
  padding-bottom: 4px;
  font-size: 11px;
}

.benefits {
  background: var(--brown);
  color: var(--cream);
  grid-template-columns: repeat(3, 1fr);
  padding: 85px 7vw;
  display: grid;
}

.benefits article {
  border-right: 1px solid #ffffff2b;
  padding: 0 55px;
}

.benefits article:first-child {
  padding-left: 0;
}

.benefits article:last-child {
  border: 0;
}

.benefits span {
  color: #bc9b7e;
  font-family: Georgia, serif;
  font-size: 14px;
}

.benefits h3 {
  margin: 30px 0 15px;
  font-family: Georgia, serif;
  font-size: 29px;
  font-weight: 400;
}

.benefits p {
  color: #cbbcae;
  font-size: 12px;
  line-height: 1.65;
}

.about {
  grid-template-columns: 47% 53%;
  min-height: 760px;
  display: grid;
}

.about-photo {
  min-height: 760px;
  color: var(--cream);
  background: linear-gradient(145deg, #54392a, #ba7445);
  justify-content: center;
  align-items: center;
  display: flex;
}

.about-copy {
  flex-direction: column;
  justify-content: center;
  padding: 110px 8vw;
  display: flex;
}

.about-copy h2 {
  letter-spacing: -.04em;
  margin: 0 0 35px;
  font-size: clamp(40px, 4.3vw, 66px);
  line-height: 1.04;
}

.about-copy > p:not(.eyebrow) {
  color: #66594e;
  max-width: 580px;
  font-family: Georgia, serif;
  font-size: 16px;
  line-height: 1.6;
}

.about-copy .text-link {
  align-self: flex-start;
  margin-top: 25px;
}

.reviews {
  background: var(--paper);
}

.review-grid {
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  display: grid;
}

blockquote {
  border: 1px solid var(--line);
  background: #ffffff40;
  margin: 0;
  padding: 50px;
}

.quote {
  color: var(--rust);
  font-family: Georgia, serif;
  font-size: 70px;
  line-height: .7;
}

blockquote p {
  font-family: Georgia, serif;
  font-size: 20px;
  line-height: 1.5;
}

blockquote footer {
  letter-spacing: .15em;
  text-transform: uppercase;
  margin-top: 35px;
  font-size: 10px;
  font-weight: 700;
}

.final-cta {
  text-align: center;
  background: var(--rust);
  color: #f5eadc;
  padding: 130px 6vw;
}

.final-cta .eyebrow {
  color: #e9c8b3;
}

.final-cta h2 {
  letter-spacing: -.045em;
  max-width: 1000px;
  margin: 0 auto 45px;
  font-size: clamp(50px, 6vw, 90px);
  line-height: .98;
}

.final-cta em {
  color: #f2d2bb;
}

.footer {
  background: var(--deep);
  color: #d9cbbc;
  grid-template-columns: 1fr auto 1fr;
  align-items: end;
  gap: 30px;
  padding: 45px 6vw;
  display: grid;
}

.footer strong {
  letter-spacing: .1em;
  font-size: 12px;
  display: block;
}

.footer span {
  color: #89796c;
  margin-top: 5px;
  font-size: 9px;
  display: block;
}

.footer p {
  color: #89796c;
  margin: 0;
  font-size: 9px;
}

.footer-links {
  justify-self: end;
  gap: 25px;
  font-size: 9px;
  display: flex;
}

@media (max-width: 900px) {
  .header {
    grid-template-columns: 1fr auto;
    height: 75px;
    padding: 0 20px;
  }

  .nav {
    display: none;
  }

  .brand {
    font-size: 11px;
  }

  .cabinet {
    font-size: 10px;
  }

  .hero {
    grid-template-columns: 1fr;
  }

  .hero-copy {
    padding: 75px 24px 55px;
  }

  .hero h1 {
    font-size: clamp(57px, 17vw, 85px);
  }

  .hero-text {
    margin: 30px 0;
    font-size: 16px;
  }

  .hero-actions {
    flex-direction: column;
    align-items: flex-start;
    gap: 22px;
  }

  .hero-stats {
    justify-content: space-between;
    gap: 25px;
    margin-top: 55px;
  }

  .hero-photo, .photo-placeholder {
    min-height: 570px;
  }

  .autumn-note {
    bottom: 20px;
    left: 20px;
  }

  .intro {
    text-align: left;
    padding: 90px 24px;
  }

  .section-heading {
    display: block;
  }

  .section-heading > p {
    margin-top: 25px;
  }

  .courses, .reviews {
    padding: 80px 20px;
  }

  .course-grid, .benefits, .review-grid {
    grid-template-columns: 1fr;
  }

  .course-image {
    height: 300px;
  }

  .benefits {
    padding: 35px 24px;
  }

  .benefits article, .benefits article:first-child {
    border-bottom: 1px solid #ffffff2b;
    border-right: 0;
    padding: 35px 0;
  }

  .benefits article:last-child {
    border-bottom: 0;
  }

  .about {
    grid-template-columns: 1fr;
  }

  .about-photo {
    min-height: 500px;
  }

  .about-copy {
    padding: 80px 24px;
  }

  blockquote {
    padding: 35px 28px;
  }

  .final-cta {
    padding: 100px 24px;
  }

  .footer {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .footer-links {
    justify-self: start;
  }
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__1u3ka_o._.css.map*/