*, *::before, *::after {box-sizing: border-box;margin: 0;padding: 0;}:root {--ink900: #16251b;--ink800: #1f3226;--ink700: #3d4d42;--stone700: #515a53;--stone500: #78827a;--stone400: #9aa39c;--stone300: #c5ccc6;--stone200: #e1e6e1;--stone100: #eef1ec;--stone50: #f7f9f5;--white: #ffffff;--leaf: #55934a;--leafDark: #44793b;--leafSoft: #9ccb8c;--clay: #c8763c;--claySoft: #e5a877;--gold: #e0a93a;--sectionPad: clamp(3.5rem, 7.5vw, 6.5rem) 1rem;--grain: repeating-linear-gradient( 118deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 9px ), repeating-linear-gradient( 62deg, rgba(255, 255, 255, 0.022) 0 1px, transparent 1px 14px );}@font-face {font-family: "Roboto";font-style: normal;font-weight: 400;font-display: swap;src: url("/assets/fonts/roboto-v29-latin-regular.woff2") format("woff2"), url("/assets/fonts/roboto-v29-latin-regular.woff") format("woff");}@font-face {font-family: "Roboto";font-style: normal;font-weight: 700;font-display: swap;src: url("/assets/fonts/roboto-v29-latin-700.woff2") format("woff2"), url("/assets/fonts/roboto-v29-latin-700.woff") format("woff");}@font-face {font-family: "Roboto";font-style: normal;font-weight: 900;font-display: swap;src: url("/assets/fonts/roboto-v29-latin-900.woff2") format("woff2"), url("/assets/fonts/roboto-v29-latin-900.woff") format("woff");}html {scroll-behavior: smooth;}body {font-family: "Roboto", Arial, sans-serif;color: var(--stone700);background: var(--white);overflow-x: hidden;-webkit-font-smoothing: antialiased;padding-bottom: 4.25rem;}img {display: block;max-width: 100%;}:focus-visible {outline: 3px solid var(--leaf);outline-offset: 3px;}.shell {width: 100%;max-width: 80rem;margin: 0 auto;}.center {text-align: center;}#lead-form {scroll-margin-top: 1.5rem;}.kicker {position: relative;display: inline-block;padding-bottom: 0.8125rem;margin-bottom: 0.875rem;font-size: 0.75rem;font-weight: 700;line-height: 1.2em;text-transform: uppercase;letter-spacing: 0.18em;color: var(--leaf);}.kicker::after {content: "";position: absolute;bottom: 0;left: 50%;transform: translateX(-50%);width: 4.5rem;height: 2px;border-radius: 2px;background: var(--leaf);}.kicker-warm {color: var(--claySoft);}.kicker-warm::after {background: var(--clay);}.section-title {font-size: clamp(1.75rem, 4vw, 3rem);font-weight: 900;letter-spacing: -0.03em;line-height: 1.08;color: var(--ink900);max-width: 22ch;margin: 0 auto;}.section-title-light {color: var(--white);}.section-lede {font-size: 1.0625rem;line-height: 1.7;color: var(--stone700);max-width: 44rem;margin: 1.125rem auto 0;}.section-lede-light {color: rgba(255, 255, 255, 0.72);}.center-btn {display: flex;justify-content: center;margin-top: 2.75rem;}.btn {font-family: inherit;font-size: 1.0625rem;font-weight: 900;letter-spacing: -0.01em;line-height: 3.5rem;text-align: center;text-decoration: none;display: inline-block;height: 3.5rem;padding: 0 2.25rem;border: none;border-radius: 0.5rem;cursor: pointer;transition: background-color 0.2s, transform 0.12s;}.btn-solid {background-color: var(--leaf);color: var(--white);}.btn-solid:hover {background-color: var(--leafDark);}.btn-warm {background-color: var(--clay);color: var(--white);}.btn-warm:hover {background-color: #b16633;}.btn:active {transform: translateY(1px);}.btn-block {display: block;width: 100%;}.btn[disabled] {opacity: 0.55;cursor: default;}@media only screen and (min-width: 0rem) {#topbar {background: var(--white);border-bottom: 1px solid var(--stone200);}.topbar-inner {width: 100%;max-width: 80rem;margin: 0 auto;padding: 0.625rem 1rem;display: flex;align-items: center;justify-content: space-between;gap: 0.75rem;}.topbar-brand {display: flex;align-items: center;gap: 0.5rem;min-width: 0;}.topbar-logo {width: auto;height: clamp(3rem, 10.5vw, 5.5rem);object-fit: contain;flex: none;}.topbar-name {display: block;font-size: clamp(0.75rem, 2.7vw, 1.0625rem);font-weight: 900;letter-spacing: -0.02em;line-height: 1.2;color: var(--ink900);}.topbar-call {display: flex;flex-direction: column;align-items: flex-end;text-decoration: none;flex: none;}.topbar-call-label {font-size: 0.625rem;font-weight: 700;text-transform: uppercase;letter-spacing: 0.16em;color: var(--stone500);}.topbar-call-number {font-size: clamp(1rem, 4.2vw, 2rem);font-weight: 900;letter-spacing: -0.03em;line-height: 1.15;color: var(--ink900);white-space: nowrap;}}@media only screen and (min-width: 48rem) {.topbar-brand {gap: 0.875rem;}.topbar-name {padding-left: 0.875rem;border-left: 1px solid var(--stone200);}}@media only screen and (min-width: 0rem) {#hero {position: relative;background: var(--ink900);overflow: hidden;isolation: isolate;}.hero-photo {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;object-position: center 52%;z-index: 0;}.hero-veil {position: absolute;inset: 0;z-index: 1;background-image: var(--grain), linear-gradient( to bottom, rgba(22, 37, 27, 0.74) 0%, rgba(22, 37, 27, 0.89) 55%, rgba(22, 37, 27, 0.96) 100% );}.hero-inner {position: relative;z-index: 2;width: 100%;max-width: 80rem;margin: 0 auto;padding: clamp(2rem, 6vw, 3.5rem) 0.75rem clamp(2.5rem, 6vw, 4.5rem);display: grid;grid-template-columns: 1fr;gap: 2rem;align-items: center;}.hero-copy {text-align: center;}.hero-kicker {font-size: 0.6875rem;font-weight: 700;text-transform: uppercase;letter-spacing: 0.18em;color: var(--leafSoft);margin-bottom: 0.875rem;}.hero-title {font-size: clamp(1.875rem, 6.2vw, 3.625rem);font-weight: 900;letter-spacing: -0.03em;line-height: 1.05;color: var(--white);max-width: 16ch;margin: 0 auto;text-shadow: 0 0.125rem 1.25rem rgba(0, 0, 0, 0.5);}.hero-lede {margin: 1.125rem auto 0;font-size: 1rem;line-height: 1.65;max-width: 32rem;color: rgba(255, 255, 255, 0.8);}.hero-facts {margin: 1.75rem 0 0;padding: 1.5rem 0 0;border-top: 1px solid rgba(255, 255, 255, 0.2);list-style: none;display: flex;flex-direction: column;align-items: center;gap: 0.5rem;}.hero-facts li {font-size: 0.9375rem;font-weight: 700;letter-spacing: 0.01em;color: rgba(255, 255, 255, 0.92);position: relative;padding-left: 1.5rem;}.hero-facts li::before {content: "";position: absolute;top: 0.375rem;left: 0.125rem;width: 0.875rem;height: 0.4375rem;border-left: 2px solid var(--leafSoft);border-bottom: 2px solid var(--leafSoft);transform: rotate(-45deg);}.hero-proof {margin-top: 1rem;display: flex;flex-wrap: wrap;align-items: center;justify-content: center;gap: 0.5rem 0.75rem;}.hero-stars {font-size: 1.0625rem;letter-spacing: 0.12em;color: var(--gold);}.hero-proof-text {font-size: 0.875rem;font-weight: 700;color: rgba(255, 255, 255, 0.82);}.hero-chips {margin: 1.125rem 0 0;padding: 0;list-style: none;display: flex;flex-wrap: wrap;justify-content: center;gap: 0.5rem;}.hero-chips li {padding: 0.4375rem 0.8125rem;font-size: 0.8125rem;font-weight: 700;letter-spacing: 0.02em;color: rgba(255, 255, 255, 0.88);background: rgba(156, 203, 140, 0.12);border: 1px solid rgba(156, 203, 140, 0.3);border-radius: 2rem;}}@media only screen and (min-width: 64rem) {.hero-veil {background-image: var(--grain), linear-gradient( to right, rgba(22, 37, 27, 0.94) 0%, rgba(22, 37, 27, 0.82) 45%, rgba(22, 37, 27, 0.46) 100% );}.hero-inner {grid-template-columns: 1fr 27rem;gap: 3.5rem;padding-left: 2rem;padding-right: 2rem;}.hero-copy {text-align: left;}.hero-title {margin-left: 0;margin-right: 0;}.hero-lede {margin-left: 0;margin-right: 0;font-size: 1.0625rem;}.hero-facts {align-items: flex-start;gap: 0.625rem;}.hero-facts li {font-size: 1.0625rem;}.hero-proof {justify-content: flex-start;}.hero-chips {justify-content: flex-start;}}@media only screen and (min-width: 81.25rem) {.hero-inner {grid-template-columns: 1fr 29rem;gap: 4rem;}}@media only screen and (min-width: 0rem) {.ticket {position: relative;max-width: 32rem;margin: 0 auto;background: var(--white);border-radius: 0.625rem;padding: 1.875rem 1.5rem 1.75rem;box-shadow: 0 1.5rem 3.5rem rgba(0, 0, 0, 0.45);overflow: hidden;}.ticket-strip {position: absolute;top: 0;left: 0;right: 0;height: 0.375rem;background: var(--leaf);}.ticket-head {padding-bottom: 1rem;margin-bottom: 1.125rem;border-bottom: 1px solid var(--stone200);}.ticket-title {font-size: 1.375rem;font-weight: 900;letter-spacing: -0.025em;line-height: 1.1;color: var(--ink900);}.hp-field {position: absolute;left: -9999px;width: 1px;height: 1px;overflow: hidden;}.field {display: block;margin-bottom: 1rem;}.field-label {display: block;font-size: 0.6875rem;font-weight: 700;text-transform: uppercase;letter-spacing: 0.14em;color: var(--stone700);margin-bottom: 0.4375rem;}.field input, .field textarea {width: 100%;padding: 0.9375rem 1rem;font-family: inherit;font-size: 1rem;color: var(--ink900);background: var(--stone50);border: 1px solid var(--stone200);border-radius: 0.5rem;transition: border-color 0.2s, background-color 0.2s;}.field input:focus, .field textarea:focus {outline: none;border-color: var(--leaf);background: var(--white);}.field textarea {min-height: 7rem;resize: vertical;line-height: 1.5;}.ticket .btn-block {margin-top: 1.25rem;font-size: 1.0625rem;height: 3.5rem;line-height: 3.5rem;padding: 0 1rem;}.ticket-note {margin-top: 0.6875rem;font-size: 0.75rem;text-align: center;color: var(--stone500);}.form-error {margin-top: 0.875rem;padding: 0.75rem 0.875rem;font-size: 0.8125rem;line-height: 1.5;text-align: center;color: #8a2020;background: #fbeaea;border: 1px solid #e6bfbf;border-radius: 0.5rem;}.form-error a {color: #8a2020;font-weight: 700;}.form-error[hidden] {display: none;}.form-success {padding: 2.25rem 0.5rem;text-align: center;}.form-success[hidden] {display: none;}.form-success-head {font-size: 1.25rem;font-weight: 900;letter-spacing: -0.025em;color: var(--leaf);margin-bottom: 0.5rem;}.form-success p:last-child {font-size: 0.9375rem;line-height: 1.65;color: var(--stone700);}}@media only screen and (min-width: 48rem) {.ticket {max-width: 30rem;padding: 2rem 1.75rem 1.75rem;}.ticket-title {font-size: 1.5rem;}}@media only screen and (min-width: 64rem) {.ticket {max-width: none;}}@media only screen and (min-width: 0rem) {#services {padding: var(--sectionPad);background: var(--white);}.service-grid {margin: 2.75rem 0 0;padding: 0;list-style: none;display: flex;flex-wrap: wrap;justify-content: center;gap: 0.875rem;}.service-card {flex: 1 1 100%;padding: 1.625rem 1.5rem;background: var(--stone50);border: 1px solid var(--stone200);border-left: 4px solid var(--leaf);border-radius: 0.625rem;transition: border-color 0.2s, transform 0.2s;}.service-card:hover {border-color: var(--stone300);border-left-color: var(--leafDark);transform: translateY(-3px);}.service-name {display: block;font-size: 1.1875rem;font-weight: 900;letter-spacing: -0.02em;color: var(--ink900);margin-bottom: 0.4375rem;}.service-desc {display: block;font-size: 0.9375rem;line-height: 1.6;color: var(--stone700);}}@media only screen and (min-width: 48rem) {.service-grid {gap: 1.125rem;}.service-card {flex: 0 1 calc(50% - 0.5625rem);}}@media only screen and (min-width: 64rem) {.service-grid {gap: 1.25rem;}.service-card {flex: 0 1 calc(33.333% - 0.834rem);}}@media only screen and (min-width: 0rem) {#fall-services {padding: var(--sectionPad);background-color: var(--ink800);background-image: var(--grain);scroll-margin-top: 1rem;}.fall-grid {margin: 2.75rem 0 0;padding: 0;list-style: none;display: grid;grid-template-columns: 1fr;gap: 1rem;}.fall-card {padding: 1.625rem 1.5rem;background: rgba(255, 255, 255, 0.05);border: 1px solid rgba(255, 255, 255, 0.12);border-top: 4px solid var(--clay);border-radius: 0.625rem;}.fall-name {display: block;font-size: 1.125rem;font-weight: 900;letter-spacing: -0.02em;color: var(--white);margin-bottom: 0.4375rem;}.fall-desc {display: block;font-size: 0.9375rem;line-height: 1.6;color: rgba(255, 255, 255, 0.62);}}@media only screen and (min-width: 48rem) {.fall-grid {grid-template-columns: repeat(2, 1fr);gap: 1.125rem;}}@media only screen and (min-width: 64rem) {.fall-grid {grid-template-columns: repeat(3, 1fr);gap: 1.25rem;}}@media only screen and (min-width: 0rem) {#work {padding: clamp(3.5rem, 7vw, 6rem) 0;background: var(--stone100);}#work .shell {padding: 0 1rem;}.work-rail {display: flex;gap: 0.75rem;overflow-x: auto;scroll-snap-type: x mandatory;scroll-behavior: smooth;scrollbar-width: none;padding: 0 1rem;margin-top: 2.5rem;}.work-rail::-webkit-scrollbar {display: none;}.work-slide {flex: 0 0 84%;scroll-snap-align: center;background: var(--white);border-radius: 0.625rem;overflow: hidden;}.work-slide img {width: 100%;height: clamp(14rem, 52vw, 25rem);object-fit: cover;}.work-slide figcaption {padding: 0.875rem 1rem;font-size: 0.875rem;font-weight: 700;letter-spacing: 0.02em;color: var(--ink900);}.work-nav {display: flex;justify-content: center;gap: 0.75rem;margin-top: 1.75rem;}.work-btn {width: 3.25rem;height: 3.25rem;background: var(--white);border: 1px solid var(--stone300);border-radius: 50%;cursor: pointer;display: flex;align-items: center;justify-content: center;transition: background-color 0.2s, border-color 0.2s, opacity 0.2s;}.work-btn:hover {background: var(--leaf);border-color: var(--leaf);}.work-btn svg {width: 1.25rem;height: 1.25rem;fill: none;stroke: var(--ink900);stroke-width: 2.4;stroke-linecap: round;stroke-linejoin: round;}.work-btn:hover svg {stroke: var(--white);}.work-btn[disabled] {opacity: 0.3;cursor: default;}.work-btn[disabled]:hover {background: var(--white);border-color: var(--stone300);}.work-btn[disabled]:hover svg {stroke: var(--ink900);}}@media only screen and (min-width: 48rem) {.work-slide {flex: 0 0 46%;}}@media only screen and (min-width: 64rem) {.work-rail {gap: 1rem;padding-left: max(2rem, calc((100vw - 80rem) / 2));padding-right: max(2rem, calc((100vw - 80rem) / 2));}.work-slide {flex: 0 0 31%;}}@media only screen and (min-width: 0rem) {#why-us {padding: var(--sectionPad);background: var(--stone100);}.why-shell {display: grid;grid-template-columns: 1fr;gap: 2.5rem;align-items: center;}.why-photo {margin: 0;border-radius: 0.625rem;overflow: hidden;border: 1px solid var(--stone200);}.why-photo img {width: 100%;height: auto;aspect-ratio: 4 / 3;object-fit: cover;}.why-title {margin: 0 0 1.125rem;}.why-lede {font-size: 1rem;line-height: 1.65;color: var(--stone700);margin-bottom: 2rem;}.why-list {margin: 0;padding: 0;list-style: none;}.why-list li {position: relative;padding: 0 0 1.5rem 2.25rem;}.why-list li:last-child {padding-bottom: 0;}.why-list li::before {content: "";position: absolute;top: 0.3125rem;left: 0.125rem;width: 1.125rem;height: 0.5625rem;border-left: 3px solid var(--leaf);border-bottom: 3px solid var(--leaf);transform: rotate(-45deg);}.why-name {display: block;font-size: 1.0625rem;font-weight: 900;letter-spacing: -0.02em;color: var(--ink900);margin-bottom: 0.3125rem;}.why-desc {display: block;font-size: 0.9375rem;line-height: 1.6;color: var(--stone700);}}@media only screen and (min-width: 64rem) {.why-shell {grid-template-columns: 0.9fr 1fr;gap: 4.5rem;padding: 0 1rem;}.why-title {max-width: 20ch;margin-left: 0;margin-right: 0;}.why-photo img {aspect-ratio: auto;height: 31rem;}}@media only screen and (min-width: 0rem) {#reviews {padding: var(--sectionPad);background: var(--white);}.review-grid {margin: 2.75rem 0 0;padding: 0;list-style: none;display: grid;grid-template-columns: 1fr;gap: 1.25rem;}.review {padding: 1.875rem 1.625rem;background: var(--stone50);border-radius: 0.625rem;display: flex;flex-direction: column;gap: 0.875rem;}.stars {font-size: 1.0625rem;letter-spacing: 0.14em;color: var(--gold);}.review-text {font-size: 0.9375rem;line-height: 1.75;color: var(--stone700);}.review-name {margin-top: auto;padding-top: 0.5rem;font-size: 0.9375rem;font-weight: 900;letter-spacing: -0.01em;color: var(--ink900);}}@media only screen and (min-width: 64rem) {.review-grid {grid-template-columns: repeat(3, 1fr);gap: 1.5rem;}}@media only screen and (min-width: 0rem) {#closer {position: relative;padding: clamp(3.5rem, 7vw, 6rem) 1rem;background: var(--ink900);overflow: hidden;isolation: isolate;}.closer-photo {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;z-index: 0;}.closer-veil {position: absolute;inset: 0;z-index: 1;background-image: var(--grain), linear-gradient(rgba(22, 37, 27, 0.85), rgba(22, 37, 27, 0.85));}.closer-inner {position: relative;z-index: 2;max-width: 40rem;margin: 0 auto;}.closer-title {font-size: clamp(1.75rem, 4.4vw, 3rem);font-weight: 900;letter-spacing: -0.03em;line-height: 1.06;color: var(--white);margin-bottom: 0.875rem;}.closer-text {font-size: 1.0625rem;line-height: 1.65;color: rgba(255, 255, 255, 0.72);}.closer-inner .center-btn {margin-top: 2rem;}.closer-phone {display: block;margin-top: 1.5rem;font-size: 1.625rem;font-weight: 900;letter-spacing: -0.03em;color: var(--white);text-decoration: none;line-height: 1.15;}.closer-phone span {display: block;font-size: 0.6875rem;font-weight: 700;text-transform: uppercase;letter-spacing: 0.16em;color: var(--stone400);margin-bottom: 0.3125rem;}.closer-phone:hover {color: var(--leafSoft);}}@media only screen and (min-width: 0rem) {#foot {padding: 2.5rem 1rem 2rem;background: var(--white);border-top: 1px solid var(--stone200);}.foot-name {font-size: 1.0625rem;font-weight: 900;letter-spacing: -0.02em;color: var(--ink900);margin-bottom: 0.5rem;}.foot-detail {font-size: 0.9375rem;line-height: 1.7;color: var(--stone700);}.foot-detail a {color: var(--ink900);font-weight: 700;text-decoration: none;}.foot-detail a:hover {color: var(--leaf);}.foot-legal {max-width: 44rem;margin: 1.75rem auto 0;padding-top: 1.5rem;border-top: 1px solid var(--stone200);font-size: 0.8125rem;color: var(--stone400);}}@media only screen and (min-width: 0rem) {#callbar {position: fixed;bottom: 0;left: 0;right: 0;z-index: 900;display: flex;box-shadow: 0 -0.25rem 1.25rem rgba(0, 0, 0, 0.22);}.callbar-phone, .callbar-cta {flex: 1;height: 3.75rem;line-height: 3.75rem;text-align: center;text-decoration: none;font-size: 1rem;font-weight: 900;letter-spacing: -0.01em;}.callbar-phone {background: var(--ink900);color: var(--white);}.callbar-cta {background: var(--leaf);color: var(--white);}}@media only screen and (min-width: 64rem) {#callbar {display: none;}body {padding-bottom: 0;}}@media (prefers-reduced-motion: reduce) {html {scroll-behavior: auto;}.work-rail {scroll-behavior: auto;}* {transition: none !important;animation: none !important;}}