:root{--c-forest-900: #1a2311;--c-forest-800: #243018;--c-forest-700: #2c3a1e;--c-forest-600: #3c4e29;--c-moss-500: #5a6b42;--c-moss-300: #8a966d;--c-cream-100: #f4efe4;--c-cream-200: #ead9b5;--c-khaki-400: #c9b286;--c-khaki-500: #a8926a;--c-stone-900: #141411;--c-stone-800: #1f1e1a;--c-stone-700: #2d2b25;--c-stone-500: #5a564d;--c-stone-300: #8e897c;--c-stone-200: #cac4b5;--c-stone-100: #e7e2d4;--c-white: #ffffff;--bg-page: var(--c-cream-100);--bg-alt: #ebe4d2;--bg-dark: var(--c-forest-800);--bg-darker: var(--c-forest-900);--bg-stone: var(--c-stone-800);--text-dark: var(--c-stone-900);--text-body: #3a3831;--text-muted: #6b6659;--text-light: var(--c-cream-100);--text-faint: rgba(244, 239, 228, .72);--accent: var(--c-khaki-500);--accent-light: var(--c-cream-200);--accent-deep: #8a7450;--brand: var(--c-forest-700);--brand-deep: var(--c-forest-900);--border-light: #d6ceba;--border-dark: rgba(234, 217, 181, .16);--shadow-xs: 0 1px 2px rgba(20, 20, 17, .08);--shadow-sm: 0 2px 6px rgba(20, 20, 17, .1);--shadow-md: 0 8px 24px rgba(20, 20, 17, .14);--shadow-lg: 0 16px 48px rgba(20, 20, 17, .22);--radius-sm: 2px;--radius: 4px;--radius-lg: 10px;--section-padding: 96px;--font-display: "Oswald", "Arial Narrow", Impact, sans-serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif: "Cormorant Garamond", Georgia, serif;--ease-out: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden;width:100%;max-width:100%}body{font-family:var(--font-sans);color:var(--text-body);background:var(--bg-page);line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{width:100%;max-width:100%;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-dark);font-weight:600;line-height:1.05;letter-spacing:.01em;text-transform:uppercase;margin:0}p{margin:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}ul{list-style:none;margin:0;padding:0}img{max-width:100%;display:block}.container{max-width:1240px;width:100%;margin:0 auto;padding:0 24px}@media(min-width:768px){.container{padding:0 40px}}.skip{position:absolute;left:-9999px;top:0;background:var(--accent);color:var(--c-white);padding:8px 16px;font-weight:700;z-index:10000}.skip:focus{left:16px;top:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;border-radius:var(--radius);border:2px solid transparent;cursor:pointer;text-decoration:none!important;transition:all .24s var(--ease-out);line-height:1;white-space:nowrap}.btn--primary{background:var(--c-cream-200);color:var(--c-forest-900);border-color:var(--c-cream-200)}.btn--primary:hover{background:var(--c-white);border-color:var(--c-white);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn--dark{background:var(--brand);color:var(--c-cream-100);border-color:var(--brand)}.btn--dark:hover{background:var(--brand-deep);border-color:var(--brand-deep);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn--ghost{background:transparent;color:var(--c-cream-100);border-color:#ead9b573}.btn--ghost:hover{background:#ead9b514;border-color:var(--c-cream-200)}.btn--outline-dark{background:transparent;color:var(--c-forest-900);border-color:var(--c-forest-700)}.btn--outline-dark:hover{background:var(--c-forest-700);color:var(--c-cream-100)}.btn--large{padding:18px 36px;font-size:15px}.header{position:sticky;top:0;z-index:1000;background:var(--c-cream-100);border-bottom:1px solid var(--border-light);transition:background .3s var(--ease-out),transform .3s var(--ease-out),border-color .3s var(--ease-out)}.header--transparent{background:transparent;border-bottom-color:transparent;position:absolute;left:0;right:0;top:0}.header--transparent .header__nav a{color:var(--c-cream-100)}.header--transparent .header__phone{color:var(--c-cream-100);border-color:#ead9b580}.header--transparent .header__phone:hover{background:var(--c-cream-200);color:var(--c-forest-900);border-color:var(--c-cream-200)}.header--transparent .header__menu-icon,.header--transparent .header__menu-icon:before,.header--transparent .header__menu-icon:after{background:var(--c-cream-100)}.header--transparent.is-scrolled{position:fixed;background:#1a2311f5;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom-color:var(--border-dark)}.header.is-hidden{transform:translateY(-100%);pointer-events:none}.header__inner{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:20px;flex-wrap:nowrap}.header__brand{display:inline-flex;align-items:center;flex-shrink:0}.header__brand:hover{text-decoration:none}.header__logo-img{height:56px;width:auto;display:block;transition:height .25s var(--ease-out)}.header__nav{display:none;align-items:center;gap:clamp(22px,2.4vw,40px);font-family:var(--font-display);font-size:14px;letter-spacing:.22em;font-weight:500;text-transform:uppercase}.header__nav a{color:var(--text-dark);position:relative;padding:8px 0;transition:color .2s var(--ease-out);white-space:nowrap}.header__nav a:after{content:"";position:absolute;left:0;right:0;bottom:2px;margin:0 auto;width:0;height:2px;background:var(--accent);transition:width .24s var(--ease-out)}.header__nav a:hover{text-decoration:none;color:var(--accent-deep)}.header--transparent .header__nav a:hover{color:var(--c-cream-200)}.header__nav a:hover:after{width:100%}.header__nav a.header__phone{display:inline-flex;align-items:center;gap:10px;padding:11px 22px;background:var(--c-forest-700);color:var(--c-cream-100);border:1.5px solid var(--c-forest-700);letter-spacing:.1em;font-size:13px;font-weight:600;border-radius:999px;transition:background .22s var(--ease-out),color .22s var(--ease-out),border-color .22s var(--ease-out),transform .22s var(--ease-out),box-shadow .22s var(--ease-out);white-space:nowrap;box-shadow:0 2px 6px #14141126}.header__nav a.header__phone:after{display:none!important}.header__nav a.header__phone:hover{background:var(--c-forest-900);color:var(--c-cream-100);border-color:var(--c-forest-900);text-decoration:none;transform:translateY(-1px);box-shadow:0 6px 16px #14141138}.header--transparent .header__nav a.header__phone{background:var(--c-cream-200);color:var(--c-forest-900);border-color:var(--c-cream-200);box-shadow:0 2px 12px #00000040}.header--transparent .header__nav a.header__phone:hover{background:var(--c-white);color:var(--c-forest-900);border-color:var(--c-white)}.header__phone-icon{flex-shrink:0;transition:transform .22s var(--ease-out)}.header__nav a.header__phone:hover .header__phone-icon{transform:rotate(-12deg)}.header__menu-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:none;cursor:pointer;padding:0;flex-shrink:0}.header__menu-icon,.header__menu-icon:before,.header__menu-icon:after{content:"";display:block;width:24px;height:2px;background:var(--text-dark);transition:transform .25s var(--ease-out),opacity .2s var(--ease-out),background .2s var(--ease-out)}.header__menu-icon{position:relative}.header__menu-icon:before{position:absolute;top:-8px;left:0}.header__menu-icon:after{position:absolute;top:8px;left:0}.header__menu-btn[aria-expanded=true] .header__menu-icon{background:transparent}.header__menu-btn[aria-expanded=true] .header__menu-icon:before{transform:translateY(8px) rotate(45deg)}.header__menu-btn[aria-expanded=true] .header__menu-icon:after{transform:translateY(-8px) rotate(-45deg)}@media(min-width:900px){.header__nav{display:flex}.header__menu-btn{display:none}.header__logo-img{height:60px}.header__inner{min-height:96px}}.mobile-nav{display:none;flex-direction:column;background:var(--c-forest-800);padding:24px;gap:4px;border-top:1px solid var(--border-dark)}.mobile-nav[aria-hidden=false]{display:flex}.mobile-nav__link{font-family:var(--font-display);font-size:16px;letter-spacing:.18em;text-transform:uppercase;color:var(--c-cream-100);padding:14px 0;border-bottom:1px solid var(--border-dark)}.mobile-nav__link:last-child{border-bottom:none}.mobile-nav__link--cta{margin-top:12px;background:var(--c-cream-200);color:var(--c-forest-900);border:none;text-align:center;border-radius:var(--radius);font-weight:600}.mobile-nav__link--cta:hover{text-decoration:none;background:var(--c-white)}.section{padding:var(--section-padding) 0}@media(max-width:768px){.section{padding:64px 0}:root{--section-padding: 64px}}.section--dark{background:var(--bg-dark);color:var(--text-light);position:relative}.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4{color:var(--c-cream-200)}.section--darker{background:var(--bg-darker);color:var(--text-light)}.section--darker h1,.section--darker h2,.section--darker h3,.section--darker h4{color:var(--c-cream-200)}.section--alt{background:var(--bg-alt)}.section--stone{background:var(--bg-stone);color:var(--text-light)}.section--stone h2{color:var(--c-cream-200)}.section__kicker{display:inline-block;font-family:var(--font-display);font-size:12px;font-weight:600;letter-spacing:.28em;color:var(--accent);text-transform:uppercase;margin-bottom:16px;padding-bottom:6px;border-bottom:2px solid var(--accent)}.section--dark .section__kicker,.section--darker .section__kicker,.section--stone .section__kicker{color:var(--c-cream-200);border-bottom-color:var(--c-cream-200)}.section__title{font-size:clamp(32px,4.5vw,54px);line-height:1.05;letter-spacing:.015em;margin-bottom:20px}.section__subtitle{font-family:var(--font-serif);font-style:italic;font-size:clamp(18px,1.6vw,22px);color:var(--text-muted);line-height:1.55;max-width:760px;margin-bottom:48px}.section--dark .section__subtitle,.section--darker .section__subtitle,.section--stone .section__subtitle{color:var(--text-faint)}.section__header{text-align:center;margin:0 auto 64px;max-width:780px}.section__header .section__subtitle{margin-left:auto;margin-right:auto}.section-cta{text-align:center;margin-top:56px}.page-hero{padding:180px 0 96px;background:var(--bg-darker);color:var(--c-cream-100);position:relative;overflow:hidden}.page-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(ellipse at top,rgba(234,217,181,.1),transparent 60%),linear-gradient(180deg,rgba(0,0,0,.5),transparent 60%);pointer-events:none}.page-hero .container{position:relative;z-index:1}.page-hero__kicker{display:inline-block;font-family:var(--font-display);font-size:12px;letter-spacing:.3em;color:var(--c-cream-200);text-transform:uppercase;margin-bottom:20px;padding-bottom:6px;border-bottom:2px solid var(--c-cream-200)}.page-hero__title{font-size:clamp(40px,6.5vw,80px);line-height:1;color:var(--c-cream-100);max-width:900px;margin-bottom:20px}.page-hero__subtitle{font-family:var(--font-serif);font-style:italic;font-size:clamp(18px,1.8vw,24px);color:var(--text-faint);max-width:720px;line-height:1.5}@media(max-width:768px){.page-hero{padding:140px 0 72px}}.cta-band{background:var(--c-forest-900);color:var(--c-cream-100);padding:96px 0;text-align:center;position:relative;overflow:hidden}.cta-band:before{content:"";position:absolute;inset:0;background-image:radial-gradient(ellipse at center top,rgba(234,217,181,.08),transparent 60%)}.cta-band .container{position:relative;z-index:1}.cta-band__kicker{display:inline-block;font-family:var(--font-display);font-size:12px;letter-spacing:.28em;color:var(--c-cream-200);text-transform:uppercase;margin-bottom:16px;padding-bottom:6px;border-bottom:2px solid var(--c-cream-200)}.cta-band__title{font-family:var(--font-display);font-size:clamp(32px,4.5vw,54px);line-height:1.05;color:var(--c-cream-100);margin-bottom:18px}.cta-band__subtitle{font-family:var(--font-serif);font-style:italic;font-size:clamp(18px,1.6vw,22px);color:var(--text-faint);max-width:720px;margin:0 auto 32px}.cta-band__contact{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;margin-bottom:32px;font-family:var(--font-display);letter-spacing:.12em}.cta-band__contact a{color:var(--c-cream-100);border-bottom:1px solid transparent;transition:border-color .2s var(--ease-out)}.cta-band__contact a:hover{text-decoration:none;border-bottom-color:var(--c-cream-200)}.footer{background:var(--c-forest-900);color:var(--text-faint);padding:80px 0 36px;border-top:4px solid var(--c-cream-200)}.footer__grid{display:grid;grid-template-columns:1fr;gap:48px;margin-bottom:48px}@media(min-width:768px){.footer__grid{grid-template-columns:2fr 1fr 1fr 1.3fr;gap:56px}}.footer__col--brand{max-width:380px}.footer__brand{display:inline-block;margin-bottom:20px}.footer__logo-img{height:80px;width:auto}.footer__tagline{font-family:var(--font-serif);font-style:italic;color:var(--text-faint);font-size:16px;line-height:1.55;margin-bottom:20px}.footer__social{display:flex;gap:12px}.footer__social a{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-dark);border-radius:50%;color:var(--c-cream-200);transition:all .22s var(--ease-out)}.footer__social a:hover{background:var(--c-cream-200);color:var(--c-forest-900);border-color:var(--c-cream-200)}.footer__heading{font-family:var(--font-display);font-size:13px;letter-spacing:.28em;color:var(--c-cream-200);text-transform:uppercase;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid var(--border-dark)}.footer__links li{margin-bottom:10px}.footer__links a{color:var(--text-faint);transition:color .18s var(--ease-out);font-size:14px}.footer__links a:hover{color:var(--c-cream-200);text-decoration:none}.footer__contact{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.footer__contact li{display:flex;align-items:flex-start;gap:10px;font-size:14px}.footer__icon{flex-shrink:0;width:18px;height:18px;color:var(--c-cream-200)}.footer__icon svg{width:18px;height:18px;fill:currentColor}.footer__contact a{color:var(--text-faint)}.footer__contact a:hover{color:var(--c-cream-200);text-decoration:none}.footer__service-area{border-top:1px solid var(--border-dark);padding-top:16px;font-size:13px;font-style:italic}.footer__bottom{border-top:1px solid var(--border-dark);padding-top:28px;text-align:center;font-size:13px;display:flex;flex-direction:column;gap:6px}.footer__fine{font-size:12px;color:#f4efe473;letter-spacing:.1em;text-transform:uppercase}[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}}.img-placeholder{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--c-forest-700),var(--c-forest-900)),var(--c-forest-700);color:var(--c-cream-200);font-family:var(--font-display);letter-spacing:.25em;font-size:12px;text-transform:uppercase;text-align:center;padding:24px;overflow:hidden}.img-placeholder:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,rgba(234,217,181,.04) 0,rgba(234,217,181,.04) 2px,transparent 2px,transparent 12px);pointer-events:none}.img-placeholder span{position:relative;z-index:1;opacity:.85}.img-placeholder--video:after{content:"▶";position:absolute;display:flex;align-items:center;justify-content:center;width:68px;height:68px;border:2px solid var(--c-cream-200);border-radius:50%;color:var(--c-cream-200);font-size:20px;z-index:2;padding-left:4px}.form-group{margin-bottom:20px}.form-label{display:block;font-family:var(--font-display);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-dark);margin-bottom:8px;font-weight:600}.form-input,.form-select,.form-textarea{width:100%;padding:14px 16px;font-family:var(--font-sans);font-size:15px;color:var(--text-dark);background:var(--c-white);border:1.5px solid var(--border-light);border-radius:var(--radius);transition:border-color .18s var(--ease-out),box-shadow .18s var(--ease-out)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--c-forest-700);box-shadow:0 0 0 3px #2c3a1e1f}.form-textarea{min-height:160px;resize:vertical;font-family:var(--font-sans)}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%232c3a1e' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}
