@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Outfit:wght@300;400;500;600&display=swap");:root{--ink:#25281f;--olive:#5f634f;--olive-soft:#878d72;--stone:#c8c9b8;--cream:#f6f2e8;--white:#ffffff;--sand:#ece5d4;--shadow:0 24px 60px rgba(37,40,31,0.15);--radius:24px;--radius-sm:16px;--max-width:1160px;--hero-shift:0px;--hero-scale:1.06}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Outfit,sans-serif;color:var(--ink);background:radial-gradient(circle at top left,rgba(200,201,184,.18),transparent 30%),linear-gradient(180deg,#f7f4ec,#f4efe2)}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{position:fixed;inset:0 0 auto;z-index:50}.nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;width:min(calc(100% - 2rem),var(--max-width));margin:1rem auto 0;padding:.85rem 1.1rem;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(37,40,31,.18);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.nav.scrolled{background:rgba(37,40,31,.9);border-color:rgba(200,201,184,.2);box-shadow:0 18px 40px rgba(37,40,31,.28)}.brand,.footer-brand{display:inline-flex;align-items:center;gap:.8rem}.brand-logo{width:3.25rem;height:3.25rem;flex-shrink:0;display:block}.brand-logo-footer{width:3rem;height:3rem}.brand-text{font-family:Cormorant Garamond,serif;font-size:1.45rem;letter-spacing:.03em;color:var(--white)}.nav-links{display:flex;align-items:center;gap:1.6rem;margin:0;padding:0;list-style:none}.nav-links a{color:rgba(255,255,255,.82);font-size:.82rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.nav-cta{padding:.8rem 1.2rem;border-radius:999px;background:var(--olive);color:var(--white)}.nav-toggle{display:none;width:2.9rem;height:2.9rem;border:0;border-radius:999px;background:rgba(255,255,255,.08);cursor:pointer}.nav-toggle span{display:block;width:1.2rem;height:2px;margin:.22rem auto;background:var(--white)}.hero{position:relative;min-height:100svh;display:grid;place-items:center;padding:8rem 1.5rem 4rem;overflow:clip}.hero-media,.hero-overlay{position:absolute;inset:0}.hero-media{background:url(/images/hero.jpeg) center 32%/cover no-repeat;transform:translate3d(0,var(--hero-shift),0) scale(var(--hero-scale));transform-origin:center center;will-change:transform;transition:transform .9s cubic-bezier(.22,1,.36,1)}.hero-media.loaded{--hero-scale:1}.hero-overlay{background:linear-gradient(135deg,rgba(37,40,31,.78),rgba(95,99,79,.3)),linear-gradient(180deg,rgba(37,40,31,.1),rgba(37,40,31,.72))}.hero-content{position:relative;z-index:1;max-width:54rem;text-align:center;color:var(--white)}.eyebrow,.section-kicker{margin:0 0 1rem;font-size:.76rem;font-weight:500;letter-spacing:.3em;text-transform:uppercase}.eyebrow{color:var(--stone)}.form-heading h3,.hero h1,.section-title{margin:0;font-family:Cormorant Garamond,serif;line-height:.98}.hero h1{font-size:clamp(4rem,11vw,8rem)}.section-title{font-size:clamp(2.5rem,5vw,4rem)}.hero h1 em,.section-title em{color:var(--stone);font-style:italic}.hero-lead{max-width:36rem;margin:1.25rem auto 0;font-family:Cormorant Garamond,serif;font-size:clamp(1.45rem,3vw,2.2rem);font-weight:600}.about-copy p,.contact-copy p,.form-note,.form-success p,.hero-copy,.note,.section-intro p,.service-card p{line-height:1.75}.hero-copy{max-width:38rem;margin:1rem auto 0;color:rgba(255,255,255,.82);font-size:1.06rem}.hero-actions{display:flex;gap:1rem;margin-top:2rem;flex-wrap:wrap}.btn,.hero-actions{justify-content:center}.btn{display:inline-flex;align-items:center;min-width:13rem;padding:1rem 1.5rem;border-radius:999px;border:1px solid transparent;font-size:.86rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;transition:transform .2s ease,background .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--olive);color:var(--white)}.btn-secondary{border-color:rgba(255,255,255,.5);color:var(--white);background:rgba(255,255,255,.08)}.hero-scroll{position:absolute;bottom:2rem;z-index:1;color:rgba(255,255,255,.72);font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;animation:hero-bob 2.8s ease-in-out infinite}.section{padding:7rem 1.5rem}.section-light{background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(250,248,243,.95))}.section-cream{background:radial-gradient(circle at top right,rgba(95,99,79,.08),transparent 28%),var(--cream)}.section-dark{background:linear-gradient(160deg,rgba(37,40,31,.94),rgba(64,69,54,.95)),var(--ink);color:var(--white)}.section-inner{width:min(100%,var(--max-width));margin:0 auto}.section-intro{max-width:42rem;margin-bottom:2.6rem}.divider{width:4rem;height:2px;margin:1.1rem 0 1.4rem;background:var(--olive)}.section-dark .divider{background:var(--stone)}.about-grid,.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;grid-gap:3rem;gap:3rem;align-items:center}.photo-frame{overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow)}.photo-frame img{width:100%;height:100%;object-fit:cover}.stack>*+*{margin-top:1rem}.value-list{display:grid;grid-gap:1rem;gap:1rem;margin-top:2rem}.value-card{display:grid;grid-template-columns:auto 1fr;grid-gap:1rem;gap:1rem;align-items:center;padding:1.35rem 1.5rem;border-left:3px solid rgba(95,99,79,.9);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:rgba(248,246,239,.92)}.value-icon{display:grid;place-items:center;width:3.5rem;height:3.5rem;border-radius:999px;background:var(--olive);color:var(--white);flex-shrink:0}.form-success h3,.service-card h3,.value-card h3{margin:0 0 .45rem;font-size:1.1rem}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1.4rem;gap:1.4rem}.service-card{overflow:hidden;border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow)}.service-card img{aspect-ratio:4/3;width:100%;object-fit:cover}.service-card-body{padding:1.45rem}.service-number,.service-tag{display:inline-flex;align-items:center;justify-content:center;border-radius:999px}.service-number{min-width:2.5rem;min-height:2.5rem;margin-bottom:1rem;background:rgba(95,99,79,.12);color:var(--olive);font-weight:700}.service-tag{margin-top:1rem;padding:.45rem .8rem;background:var(--sand);color:var(--ink);font-size:.76rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.note{margin-top:1.6rem;padding:1.15rem 1.2rem;border:1px solid rgba(95,99,79,.16);border-radius:var(--radius-sm);background:rgba(255,255,255,.72)}.contact-grid{align-items:start}.contact-list{display:grid;grid-gap:1rem;gap:1rem;margin-top:2rem}.contact-item{display:block;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-sm);background:rgba(255,255,255,.05)}.contact-label{display:block;margin-bottom:.3rem;color:rgba(255,255,255,.68);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}.contact-value{font-size:1.05rem}.social-row{display:flex;gap:1rem;margin-top:1.3rem}.social-link{display:inline-flex;align-items:center;gap:.6rem;padding:.8rem 1rem;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.05);color:var(--stone);text-transform:uppercase;letter-spacing:.12em;font-size:.8rem}.social-link svg{flex-shrink:0}.form-shell{padding:2rem;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);background:rgba(255,255,255,.06);box-shadow:0 30px 70px rgba(0,0,0,.18)}.form-heading h3{font-size:clamp(2rem,4vw,3rem)}.form-heading .section-kicker{color:var(--stone)}form{margin-top:1.6rem}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}label{display:block;margin-top:1rem}label span{display:inline-block;margin-bottom:.45rem;font-size:.86rem;font-weight:500}input,select,textarea{width:100%;padding:.95rem 1rem;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.94);color:var(--ink)}textarea{resize:vertical}.form-note{margin:1rem 0 1.3rem;color:rgba(255,255,255,.72);font-size:.95rem}.submit-button{width:100%}.form-success{padding:1.2rem 0 0}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem;background:#21241c;color:rgba(255,255,255,.72)}.site-footer .brand-text{color:var(--white)}.site-footer p{margin:0}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes hero-bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@media (max-width:960px){.about-grid,.contact-grid,.services-grid{grid-template-columns:1fr}.nav{border-radius:28px}.nav-toggle{display:inline-block}.nav-links{position:absolute;top:calc(100% + .7rem);right:0;left:0;display:none;flex-direction:column;align-items:stretch;padding:1rem;border-radius:24px;background:rgba(37,40,31,.96);box-shadow:0 24px 50px rgba(37,40,31,.3)}.nav-links.open{display:flex}}@media (max-width:720px){.section{padding:5.5rem 1rem}.nav{width:min(calc(100% - 1rem),var(--max-width));margin-top:.5rem;padding:.75rem .9rem}.brand-text{font-size:1.2rem}.hero{padding-top:7.5rem}.hero-actions,.site-footer,.social-row{flex-direction:column;align-items:stretch}.btn{width:100%}.form-shell{padding:1.2rem}.form-row{grid-template-columns:1fr}}