@font-face {font-family: Fraunces;font-style: normal;font-weight: 600;font-display: swap;src: url("../fonts/fraunces-600.woff2") format("woff2");}@font-face {font-family: Fraunces;font-style: normal;font-weight: 700;font-display: swap;src: url("../fonts/fraunces-700.woff2") format("woff2");}@font-face {font-family: Outfit;font-style: normal;font-weight: 400;font-display: swap;src: url("../fonts/outfit-400.woff2") format("woff2");}@font-face {font-family: Outfit;font-style: normal;font-weight: 500;font-display: swap;src: url("../fonts/outfit-500.woff2") format("woff2");}@font-face {font-family: Outfit;font-style: normal;font-weight: 600;font-display: swap;src: url("../fonts/outfit-600.woff2") format("woff2");}:root {--bg: #f3efe6;--bg-raised: #fbf8f2;--ink: #1c2420;--ink-soft: #3d4943;--muted: #5c675f;--line: #e3dacb;--forest: #1b4332;--forest-deep: #10281e;--sage: #7d9478;--sage-wash: #e5eee3;--rust: #8d4e34;--white: #fffdf9;--danger: #8a2f24;--ok: #1b4332;--shadow: 0 16px 40px rgba(28, 36, 32, 0.08);--radius: 22px;--header: 3.45rem;--serif: Fraunces, "Iowan Old Style", Palatino, Georgia, serif;--sans: Outfit, "Segoe UI", sans-serif;--wrap: 1120px;}*,*::before,*::after {box-sizing: border-box;}html {scroll-behavior: smooth;overflow-x: clip;}body {margin: 0;background: var(--bg);color: var(--ink);font-family: var(--sans);font-size: 1.0625rem;line-height: 1.65;text-rendering: optimizeLegibility;}img {max-width: 100%;display: block;}a {color: var(--forest);text-underline-offset: 0.18em;}a:hover {color: var(--forest-deep);}:focus-visible {outline: 3px solid var(--rust);outline-offset: 3px;}.skip {position: absolute;left: 1rem;top: -4rem;background: var(--white);color: var(--ink);padding: 0.6rem 0.9rem;z-index: 80;border-radius: 8px;}.skip:focus {top: 0.75rem;}.wrap {width: min(var(--wrap), calc(100% - 2.5rem));margin-inline: auto;}.wrap-narrow {width: min(44rem, calc(100% - 2.5rem));margin-inline: auto;}.site-header {position: sticky;top: 0;z-index: 40;background: rgba(243, 239, 230, 0.78);border-bottom: 1px solid rgba(227, 218, 203, 0.7);backdrop-filter: blur(8px);}body:has(.hero) .site-header {background: transparent;border-bottom-color: transparent;backdrop-filter: none;}body:has(.hero) .hero {margin-top: calc(var(--header) * -1);height: 100svh;}body:has(.hero) .site-header:not(.is-solid) .logo-text,body:has(.hero) .site-header:not(.is-solid) .header-actions,body:has(.hero) .site-header:not(.is-solid) .nav-toggle {background: #fffdf9;border-radius: 999px;box-shadow: 0 1px 2px rgba(16, 40, 30, 0.16);}body:has(.hero) .site-header:not(.is-solid) .logo-text {padding: 0.28rem 0.75rem 0.32rem;}body:has(.hero) .site-header:not(.is-solid) .logo-name,body:has(.hero) .site-header:not(.is-solid) .logo-sub,body:has(.hero) .site-header:not(.is-solid) .nav a:not(.menu-cta),body:has(.hero) .site-header:not(.is-solid) .nav-toggle {color: #1c2420;}body:has(.hero) .site-header:not(.is-solid) .header-actions {gap: 0.1rem;padding: 0.22rem 0.28rem 0.22rem 0.45rem;}body:has(.hero) .site-header:not(.is-solid) .header-actions .nav {gap: 0.15rem;}body:has(.hero) .site-header:not(.is-solid) .nav a:not(.menu-cta) {padding: 0.28rem 0.55rem;border-radius: 999px;}body:has(.hero) .site-header:not(.is-solid) .nav a[aria-current="page"] {color: #10281e;background: rgba(27, 67, 50, 0.08);box-shadow: none;}body:has(.hero) .site-header:not(.is-solid) .header-cta.btn-primary {color: #10281e;background: transparent;border-color: transparent;box-shadow: none;}body:has(.hero) .site-header.is-solid {background: rgba(243, 239, 230, 0.94);border-bottom-color: rgba(227, 218, 203, 0.9);backdrop-filter: blur(8px);}.header-inner {display: flex;align-items: center;gap: 1rem;min-height: var(--header);}.logo {display: flex;align-items: center;gap: 0.5rem;text-decoration: none;color: var(--ink-soft);flex: 0 0 auto;}.logo-mark {width: 1.7rem;height: 1.7rem;flex: 0 0 auto;}.logo-text {display: block;min-width: 0;}.logo-name {display: block;font-family: var(--serif);font-weight: 600;font-size: 0.92rem;letter-spacing: -0.02em;line-height: 1.05;white-space: nowrap;}.logo-sub {display: block;margin-top: 0.05rem;font-size: 0.58rem;letter-spacing: 0.08em;text-transform: uppercase;color: var(--muted);}.header-actions {display: flex;align-items: center;gap: 0.35rem;margin-left: auto;}.nav {display: flex;align-items: center;gap: 1.35rem;}.nav a {color: var(--muted);text-decoration: none;font-weight: 500;font-size: 0.88rem;}.nav a[aria-current="page"] {color: var(--forest);box-shadow: inset 0 -2px 0 var(--forest);}.header-cta {flex: 0 0 auto;}.header-cta.btn-primary {min-height: 2rem;padding: 0 0.8rem;font-size: 0.8rem;font-weight: 500;background: transparent;color: var(--forest);border-color: #d7d0c4;}.header-cta.btn-primary:hover {background: rgba(255, 253, 249, 0.7);color: var(--forest-deep);transform: none;}.nav-toggle {display: none;margin-left: auto;border: 1px solid var(--line);background: var(--bg-raised);color: var(--ink);border-radius: 999px;min-height: 2.75rem;padding: 0 1rem;font: inherit;font-weight: 600;cursor: pointer;}.btn {display: inline-flex;align-items: center;justify-content: center;gap: 0.45rem;min-height: 3.15rem;padding: 0 1.35rem;border-radius: 999px;border: 1px solid transparent;text-decoration: none;font-weight: 600;letter-spacing: 0.01em;cursor: pointer;transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease, border-color 0.2s ease;}.btn-primary {background: var(--forest-deep);color: var(--white);}.btn-primary:hover {background: #0b1d16;color: var(--white);transform: translateY(-1px);}.btn-light {background: transparent;color: var(--white);border-color: rgba(255, 255, 255, 0.55);}.btn-light:hover {background: rgba(255, 255, 255, 0.12);color: var(--white);}.btn-line {background: transparent;color: var(--forest-deep);border-color: #c9d4c4;}.btn-line:hover {background: var(--sage-wash);color: var(--forest-deep);}.hero {display: grid;height: calc(100svh - var(--header));min-height: 32rem;background: #14241c;color: var(--white);overflow: hidden;}.hero-media,.hero-copy {grid-area: 1 / 1;min-width: 0;min-height: 0;height: 100%;}.hero-media {width: 100%;max-width: none;object-fit: cover;object-position: center 58%;}.hero-copy {display: flex;align-items: center;position: relative;z-index: 1;background: linear-gradient(180deg, rgba(10, 18, 14, 0.35) 0%, rgba(10, 18, 14, 0.45) 45%, rgba(10, 18, 14, 0.72) 100%);padding: 2rem 0;}.hero-copy h1 {max-width: 18ch;margin: 0.35rem 0 0.8rem;color: var(--white);font-size: clamp(2.1rem, 4vw, 3.5rem);}.lede {max-width: 38rem;margin: 0 0 1.5rem;font-size: 1.12rem;color: rgba(255, 253, 249, 0.92);}.hero-actions {display: flex;flex-wrap: wrap;gap: 0.75rem;}.eyebrow {display: flex;align-items: center;gap: 0.7rem;margin: 0;color: #e7d3c6;font-size: 0.78rem;font-weight: 600;letter-spacing: 0.16em;text-transform: uppercase;}.eyebrow::before {content: "";width: 1.6rem;height: 2px;background: var(--rust);}.page-hero .eyebrow,.section-head .eyebrow,.band .eyebrow {color: var(--rust);}h1,h2,h3 {font-family: var(--serif);font-weight: 600;letter-spacing: -0.03em;line-height: 1.08;color: var(--ink);}h1 {font-size: clamp(2.4rem, 5vw, 4.4rem);margin: 0.35rem 0 1rem;}h2 {font-size: clamp(1.85rem, 3vw, 2.7rem);margin: 0 0 0.8rem;}h3 {font-size: 1.35rem;margin: 0 0 0.45rem;line-height: 1.2;}.page-hero {padding: 4.2rem 0 1.5rem;}.page-hero p {max-width: 42rem;color: var(--ink-soft);font-size: 1.12rem;}.crumbs {display: flex;flex-wrap: wrap;gap: 0.4rem;margin: 0 0 1.2rem;padding: 0;list-style: none;color: var(--muted);font-size: 0.92rem;}.crumbs a {color: var(--muted);text-decoration: none;}.crumbs a:hover {color: var(--forest);}.section {padding: 4.75rem 0;}.section-head {max-width: 40rem;margin-bottom: 2rem;}.section-head p,.prose p,.card p,.step p,.faq-list p,.note,.figure-card figcaption {color: var(--ink-soft);}.band {background: var(--sage-wash);}.band-dark {background: var(--forest-deep);color: var(--white);}.band-dark h2,.band-dark p {color: var(--white);}.card-grid {display: grid;grid-template-columns: repeat(4, minmax(0, 1fr));gap: 1rem;}.card {display: flex;flex-direction: column;background: var(--bg-raised);border: 1px solid var(--line);border-radius: var(--radius);overflow: hidden;min-width: 0;transition: transform 0.2s ease, box-shadow 0.2s ease;}.card:hover {transform: translateY(-3px);box-shadow: var(--shadow);}.card-media {aspect-ratio: 4 / 3;object-fit: cover;width: 100%;height: auto;background: #ddd4c6;}.card-media.contain,.figure-card img.contain {object-fit: contain;background: #f6f1e8;padding: 0.75rem;}.card-body {display: flex;flex-direction: column;gap: 0.55rem;padding: 1.1rem 1.1rem 1.25rem;flex: 1;}.card-body p {margin: 0;flex: 1;}.text-link {font-weight: 600;text-decoration: none;}.text-link:hover {text-decoration: underline;}.split {display: grid;grid-template-columns: 1.1fr 0.9fr;gap: 2.5rem;align-items: center;}.feature-list,.plain-list {margin: 0;padding: 0;list-style: none;}.feature-list li {display: grid;grid-template-columns: auto 1fr;gap: 0.9rem;padding: 1rem 0;border-top: 1px solid var(--line);}.feature-list strong {display: block;font-size: 1.05rem;}.num {font-family: var(--serif);color: var(--forest);font-size: 1.3rem;}.steps {display: grid;grid-template-columns: repeat(4, minmax(0, 1fr));gap: 1rem;}.step {background: var(--bg-raised);border: 1px solid var(--line);border-radius: var(--radius);padding: 1.25rem;min-width: 0;}.step span {display: block;margin-bottom: 0.8rem;color: var(--rust);font-family: var(--serif);font-size: 1.4rem;}.gallery {display: grid;grid-template-columns: 1.4fr 1fr;gap: 1rem;}.gallery-side {display: grid;gap: 1rem;}.figure-card {margin: 0;background: var(--bg-raised);border-radius: var(--radius);overflow: hidden;border: 1px solid var(--line);min-width: 0;}.figure-card img {width: 100%;height: 100%;max-height: 420px;object-fit: cover;}.gallery-side .figure-card img {max-height: 200px;}.figure-card figcaption {padding: 0.85rem 1rem 1rem;font-size: 0.95rem;}.photo-row,.photo-trio {display: grid;gap: 1rem;margin: 1.5rem 0 0.5rem;}.photo-row {grid-template-columns: 1.2fr 0.8fr;}.photo-trio {grid-template-columns: repeat(3, minmax(0, 1fr));}.photo-row .figure-card img,.photo-trio .figure-card img {max-height: 320px;aspect-ratio: 4 / 3;height: auto;}.faq-list {border-top: 1px solid var(--line);}.faq-list details {border-bottom: 1px solid var(--line);padding: 0.95rem 0;}.faq-list summary {cursor: pointer;font-weight: 600;color: var(--ink);}.faq-list details p {margin: 0.7rem 0 0.2rem;}.cta-panel {display: flex;justify-content: space-between;align-items: flex-end;gap: 1.5rem;}.cta-panel h2 {max-width: 14ch;}.form-card {background: var(--bg-raised);border: 1px solid var(--line);border-radius: var(--radius);padding: 1.4rem;box-shadow: var(--shadow);}form {display: grid;gap: 0.9rem;}.fields {display: grid;grid-template-columns: 1fr 1fr;gap: 0.9rem;}label {display: grid;gap: 0.35rem;font-weight: 600;font-size: 0.95rem;}.full {grid-column: 1 / -1;}input,select,textarea {width: 100%;border: 1px solid #d5ccbe;background: var(--white);color: var(--ink);border-radius: 12px;padding: 0.8rem 0.85rem;font: inherit;}textarea {min-height: 9rem;resize: vertical;}.check {display: flex;gap: 0.7rem;align-items: flex-start;font-weight: 500;}.check input {width: 1.15rem;height: 1.15rem;margin-top: 0.2rem;flex: 0 0 auto;}.hp {position: absolute;left: -10000px;width: 1px;height: 1px;overflow: hidden;}.form-note,.form-status {margin: 0;font-size: 0.95rem;}.form-status[data-state="error"] {color: var(--danger);}.form-status[data-state="ok"] {color: var(--ok);font-weight: 600;}.field-error {color: var(--danger);font-size: 0.86rem;font-weight: 500;}.prose {text-align: left;}.prose h2 {margin-top: 2.2rem;font-size: clamp(1.55rem, 2.4vw, 2rem);}.prose h3 {margin-top: 1.4rem;}.prose ul,.prose ol {padding-left: 1.2rem;color: var(--ink-soft);}.prose li + li {margin-top: 0.35rem;}.site-footer {background: var(--forest-deep);color: rgba(255, 253, 249, 0.86);padding: 3.5rem 0 1.5rem;}.footer-grid {display: grid;grid-template-columns: 1.3fr 1fr 0.8fr 1fr;gap: 2rem;}.site-footer h2 {color: var(--white);font-family: var(--sans);font-size: 0.78rem;letter-spacing: 0.14em;text-transform: uppercase;font-weight: 600;margin: 0 0 0.8rem;}.site-footer a {color: rgba(255, 253, 249, 0.9);text-decoration: none;}.site-footer a:hover {text-decoration: underline;}.site-footer ul {list-style: none;margin: 0;padding: 0;}.site-footer li + li {margin-top: 0.4rem;}.footer-base {display: flex;justify-content: space-between;gap: 1rem;flex-wrap: wrap;margin-top: 2.2rem;padding-top: 1rem;border-top: 1px solid rgba(255, 255, 255, 0.12);font-size: 0.92rem;}.credits {margin-top: 1rem;font-size: 0.85rem;}.credits summary {cursor: pointer;color: rgba(255, 253, 249, 0.75);}.credits p {margin: 0.7rem 0 0;max-width: 70rem;}.stat-row {display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 1rem;}.stat {background: var(--bg-raised);border: 1px solid var(--line);border-radius: 18px;padding: 1.1rem 1.15rem;box-shadow: var(--shadow);}.stat strong {display: block;font-family: var(--serif);font-size: 1.35rem;font-weight: 600;letter-spacing: -0.03em;margin-bottom: 0.25rem;}.two-col {display: grid;grid-template-columns: 0.9fr 1.1fr;gap: 2rem;align-items: start;}.contact-aside p {color: var(--ink-soft);}@media (max-width: 980px) {.card-grid,.steps {grid-template-columns: repeat(2, minmax(0, 1fr));}.split,.gallery,.photo-row,.photo-trio,.two-col,.footer-grid,.cta-panel {grid-template-columns: 1fr;display: grid;}.stat-row {grid-template-columns: 1fr;}}@media (max-width: 860px) {.header-actions,body:has(.hero) .site-header:not(.is-solid) .header-actions {width: 0;margin-left: 0;padding: 0;overflow: visible;background: transparent;box-shadow: none;}.nav-toggle {display: inline-flex;}.header-cta {display: none;}.nav {display: none;position: absolute;left: 1.25rem;right: 1.25rem;top: calc(100% + 0.45rem);flex-direction: column;align-items: stretch;gap: 0.2rem;padding: 0.7rem;background: var(--bg-raised);border: 1px solid var(--line);border-radius: 16px;box-shadow: var(--shadow);z-index: 50;}.nav.is-open {display: flex;}.nav a {padding: 0.75rem 0.7rem;border-radius: 10px;}.nav a:hover {background: var(--sage-wash);}body:has(.hero) .site-header:not(.is-solid) .nav a[aria-current="page"] {background: transparent;box-shadow: inset 0 -2px 0 var(--forest);}.nav .menu-cta {margin-top: 0.3rem;}}@media (min-width: 861px) {.menu-cta {display: none;}}@media (max-width: 720px) {.logo-name {font-size: 0.9rem;}}@media (max-width: 420px) {.logo-name {white-space: normal;max-width: 9.2rem;}}@media (max-width: 640px) {.wrap,.wrap-narrow {width: min(var(--wrap), calc(100% - 1.5rem));}.card-grid,.steps,.fields {grid-template-columns: 1fr;}.hero-copy h1 {max-width: 16ch;}.section {padding: 3.4rem 0;}}@media (prefers-reduced-motion: reduce) {html {scroll-behavior: auto;}.btn,.card {transition: none;}}