:root{--forest:#12352c;--deep:#09251f;--cream:#f5f1e8;--ink:#17312b;--gold:#d6a846;--line:rgba(245,241,232,.28);--font-display:'Cormorant Garamond',Georgia,serif;--font-sans:'Montserrat',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-sans),sans-serif}a{color:inherit;text-decoration:none}
.hero{min-height:100svh;position:relative;overflow:hidden;color:#fff;background:url('/hero-pasture.png') center/cover no-repeat}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,26,21,.95),rgba(7,31,24,.65) 42%,rgba(7,24,18,.05) 75%)}.nav{height:104px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5;padding:0 5.5vw;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;font-size:12px;letter-spacing:.22em;font-weight:600}.brand em{display:block;font-style:normal;font-size:8px;letter-spacing:.45em;margin-top:5px;color:#d8c99c}.brandMark{width:42px;height:42px;border:1px solid #bda96d;border-radius:50%;display:grid;place-items:center;font:italic 25px var(--font-display)}.navLinks{display:flex;gap:38px;font-size:10px;text-transform:uppercase;letter-spacing:.2em}.navLinks a{opacity:.78}.navCta{font-size:10px;letter-spacing:.18em;text-transform:uppercase;padding:14px 18px;border:1px solid #ffffff73}.navCta span,.buttonLight span,.buttonDark span{margin-left:16px}.heroShade{position:absolute;inset:auto 0 0;height:28%;background:linear-gradient(transparent,#02140f99);z-index:1}.heroContent{position:relative;z-index:3;width:58%;padding:11vh 0 12vh 8.5vw}.eyebrow,.sectionKicker{display:flex;align-items:center;gap:12px;font-size:9px;text-transform:uppercase;letter-spacing:.32em;font-weight:600}.eyebrow span{width:32px;height:1px;background:var(--gold)}h1,h2{font-family:var(--font-display),serif;font-weight:400;margin:0;line-height:.86;letter-spacing:-.035em}h1{font-size:clamp(62px,7.2vw,116px);margin:28px 0 30px}h1 i,h2 i{color:#e5c56e;font-weight:400}.heroCopy{max-width:520px;font:20px/1.55 var(--font-display);color:#ffffffc7}.heroActions{display:flex;align-items:center;gap:34px;margin-top:40px}.buttonLight,.buttonDark{display:inline-block;background:var(--cream);color:var(--deep);padding:18px 23px;font-size:10px;text-transform:uppercase;letter-spacing:.15em;font-weight:600}.textLink{font-size:10px;text-transform:uppercase;letter-spacing:.15em}.textLink b{display:inline-grid;place-items:center;width:34px;height:34px;margin-right:9px;border:1px solid #ffffff66;border-radius:50%;font-size:8px}
.storyReel{position:absolute;z-index:4;right:4.5vw;bottom:8.5vh;width:350px;height:190px;border:1px solid #ffffff52;background:#08231c6b;backdrop-filter:blur(10px);overflow:hidden}.reelScene{position:absolute;inset:0;background:linear-gradient(135deg,transparent 35%,#d6a8461f);animation:fade 10s infinite}.reelRider{opacity:0;animation-delay:5s}.figure{position:absolute;right:62px;bottom:46px;background:#0a271f}.childFigure{width:15px;height:65px;border-radius:9px}.childFigure:before,.riderFigure:before{content:"";position:absolute;width:18px;height:18px;border-radius:50%;top:-17px;left:-2px;background:#0a271f}.childFigure:after,.riderFigure:after{content:"";position:absolute;width:48px;height:2px;top:22px;left:-31px;background:#0a271f;transform:rotate(-15deg)}.riderFigure{width:14px;height:82px}.riderFigure:after{background:#d8c99c;transform:rotate(14deg)}.sunflower{position:absolute;right:106px;bottom:91px;color:#e9bb3e;font-size:26px}.rein{position:absolute;right:102px;bottom:88px;width:75px;height:38px;border:1px solid #d8c99c;border-top:0;border-radius:0 0 80% 80%}.reelCaption{position:absolute;left:18px;right:18px;bottom:18px;display:grid;grid-template-columns:auto 1fr auto auto 1fr;align-items:center;gap:8px;font-size:7px;text-transform:uppercase;letter-spacing:.12em}.reelCaption strong{font-size:8px}.reelCaption span{opacity:.55}.reelProgress{position:absolute;top:0;left:0;right:0;height:2px;background:#ffffff2e}.reelProgress i{display:block;width:0;height:100%;background:var(--gold);animation:progress 10s linear infinite}.scrollCue{position:absolute;left:3vw;bottom:5vh;z-index:5;display:flex;gap:16px;align-items:center;writing-mode:vertical-rl;font-size:8px;text-transform:uppercase;letter-spacing:.2em}.scrollCue i{font-style:normal;font-size:14px}@keyframes fade{0%,42%{opacity:1}50%,92%{opacity:0}100%{opacity:1}}@keyframes progress{to{width:100%}}
.story{padding:130px 8.5vw 110px;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw}.sectionKicker{color:#8d6d2d;margin:0 0 30px}.story h2,.services h2,.contact h2{font-size:clamp(55px,6vw,92px)}.story h2 i,.contact h2 i{color:#98701f}.storyBody{padding-top:72px;max-width:480px}.storyBody .lead{font:29px/1.25 var(--font-display);color:#193f35}.storyBody p:not(.lead){font-size:13px;line-height:1.9;color:#60716c}.storyBody a{display:inline-block;margin-top:22px;padding-bottom:8px;border-bottom:1px solid #a98b49;font-size:10px;text-transform:uppercase;letter-spacing:.18em}.storyBody a span{margin-left:18px}.quote{grid-column:1/-1;margin-top:70px;padding:42px 0 0 29%;border-top:1px solid #c9c6ba;font:italic 32px/1.25 var(--font-display);color:#6c786f}
.services{background:var(--forest);color:#fff;padding:120px 8.5vw}.servicesTop{display:flex;justify-content:space-between;align-items:flex-end;gap:10vw}.sectionKicker.light{color:#d4b75f}.servicesTop>p{max-width:390px;color:#b8c4bf;font-size:13px;line-height:1.8}.serviceGrid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:80px;border-block:1px solid var(--line)}.serviceGrid article{position:relative;padding:42px 35px 55px;min-height:290px;border-right:1px solid var(--line)}.serviceGrid article:last-child{border:0}.serviceGrid article>span{font-size:9px;color:#d4b75f}.serviceGrid h3{font:38px var(--font-display);margin:55px 0 12px}.serviceGrid p{font-size:12px;line-height:1.75;color:#b8c4bf;max-width:290px}.serviceGrid a{position:absolute;right:28px;top:36px;width:38px;height:38px;border:1px solid var(--line);display:grid;place-items:center}.contact{text-align:center;padding:130px 24px;background:#eae5da}.contact .sectionKicker{justify-content:center}.contact>p:not(.sectionKicker){max-width:530px;margin:30px auto;font:20px/1.5 var(--font-display);color:#66716c}.buttonDark{background:var(--forest);color:#fff;margin-top:14px}footer{background:#09251f;color:#fff;min-height:120px;padding:34px 5.5vw;display:flex;align-items:center;justify-content:space-between}footer p{font-size:8px;text-transform:uppercase;letter-spacing:.2em;color:#9cafaa}.footerBrand{font-size:10px}
@media(max-width:900px){.navLinks,.navCta{display:none}.nav{height:84px;padding:0 20px}.heroContent{width:auto;padding:13vh 24px 260px}.heroCopy{font-size:18px;max-width:380px}.storyReel{right:20px;bottom:48px;width:310px}.scrollCue{display:none}.story{grid-template-columns:1fr;padding:90px 24px}.storyBody{padding-top:0}.quote{padding-left:0}.services{padding:90px 24px}.servicesTop{display:block}.servicesTop>p{margin-top:30px}.serviceGrid{grid-template-columns:1fr}.serviceGrid article{border-right:0;border-bottom:1px solid var(--line);min-height:240px}footer{flex-direction:column;gap:24px;text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reelScene,.reelProgress i{animation:none}.reelRider{display:none}}
.brand img{display:block;width:310px;height:100px;object-fit:contain;filter:drop-shadow(0 0 1px #ffffffcc) drop-shadow(0 3px 10px #00000088)}.footerBrand img{width:260px;height:120px}.brandMark,.brand em{display:none}@media(max-width:900px){.brand img{width:245px;height:80px}}@media(max-width:520px){.brand img{width:215px;height:72px}.nav{padding-inline:14px}}
.storyReel{height:220px;background:#0a271f;border-color:#ffffff59;isolation:isolate;transition:transform .35s ease,border-color .35s ease}.storyReel:hover{transform:translateY(-5px);border-color:#d6a846}.storyCardImage{position:absolute;inset:0;background:url('/hero-pasture.png') 71% 56%/155% auto no-repeat;transform:scale(1.02);transition:transform 1s ease}.storyReel:hover .storyCardImage{transform:scale(1.08)}.storyCardShade{position:absolute;inset:0;background:linear-gradient(180deg,#061c1617 18%,#061c16e8 100%)}.storyCardTop{position:absolute;z-index:2;left:20px;right:20px;top:18px;display:flex;justify-content:space-between;align-items:center;font-size:8px;text-transform:uppercase;letter-spacing:.24em}.storyCardTop i{font-style:normal;width:30px;height:30px;border:1px solid #ffffff75;border-radius:50%;display:grid;place-items:center;font-size:12px}.storyCardCopy{position:absolute;z-index:2;left:20px;right:20px;bottom:27px}.storyCardCopy small{display:block;margin-bottom:5px;color:#d8c99c;font-size:8px;text-transform:uppercase;letter-spacing:.2em}.storyCardCopy strong{display:block;font:30px/1 var(--font-display);font-weight:400}.storyCardLine{position:absolute;z-index:2;left:20px;right:20px;bottom:13px;height:1px;background:#ffffff38}.storyCardLine i{display:block;width:38%;height:1px;background:#d6a846}@media(max-width:900px){.storyReel{height:205px}}
.storyBody sup{font:600 10px var(--font-sans);color:#8d6d2d;vertical-align:super}.contactDetails{display:flex;justify-content:center;align-items:center;gap:0;margin:34px auto 8px}.contactDetails>*{padding:0 24px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.contactDetails>*+*{border-left:1px solid #b8b4a8}.contactDetails a{transition:color .2s}.contactDetails a:hover{color:#8d6d2d}footer p:last-child{text-align:right;line-height:1.8}footer p:last-child span{font-size:7px;letter-spacing:.1em;color:#728c84}@media(max-width:700px){.contactDetails{flex-direction:column;gap:12px}.contactDetails>*+*{border-left:0}.contactDetails>*{padding:0}footer p:last-child{text-align:center}}
