@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Rye&display=swap');
:root{--ink:#14221d;--forest:#0b392e;--gold:#f4b73b;--cream:#f7f1e4;--paper:#fffdf8;--rust:#9a492d;--line:#d7d0c1;--display:'Rye',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 var(--sans)}a{color:inherit}.skip{position:fixed;left:1rem;top:-5rem;background:#fff;padding:.8rem;z-index:99}.skip:focus{top:1rem}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.1rem,5vw,5rem);background:rgba(9,34,28,.96);color:white;position:absolute;top:0;z-index:10;width:100%;border-bottom:1px solid #ffffff2c}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;line-height:1}.brand b{display:block;font:400 1.05rem var(--display);letter-spacing:.03em}.brand small{display:block;text-transform:uppercase;letter-spacing:.24em;font-size:.62rem;margin-top:.35rem}.mark{width:42px;height:42px;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;border-radius:50%;font-size:1.3rem}.topbar nav{display:flex;align-items:center;gap:2rem}.topbar nav a{text-decoration:none;font-weight:600;font-size:.92rem}.nav-cta{border:1px solid var(--gold);padding:.7rem 1rem;color:var(--gold)}.menu{display:none}.hero{min-height:760px;height:94vh;position:relative;display:flex;align-items:center;overflow:hidden;background:#102a22}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,18,15,.91),rgba(3,18,15,.58) 38%,rgba(3,18,15,.07) 72%),linear-gradient(0deg,rgba(3,18,15,.35),transparent 45%)}.hero-copy{position:relative;color:white;width:min(720px,90%);margin-left:clamp(1.2rem,8vw,9rem);padding-top:4rem}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;color:var(--gold)}h1,h2,h3,p{margin-top:0}h1{font:400 clamp(3.4rem,7vw,6.8rem)/.95 var(--display);letter-spacing:-.035em;margin:.6rem 0 1.4rem}h1 em{font-style:normal;color:var(--gold)}.lead{font-size:clamp(1.05rem,1.6vw,1.25rem);max-width:610px;line-height:1.65}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin:2rem 0}.button{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;border:0;padding:1rem 1.35rem;font:700 1rem var(--sans);cursor:pointer;transition:.2s}.gold{background:var(--gold);color:#1c261e}.ghost{border:1px solid #ffffffa3;color:#fff;background:#0b392e55}.button:hover{transform:translateY(-2px)}.trust{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.86rem}.section{padding:clamp(4.5rem,9vw,8rem) clamp(1.2rem,7vw,7rem)}.split{display:grid;grid-template-columns:1.3fr .7fr;gap:4rem;align-items:end;margin-bottom:3rem}.split h2,.process h2,.faq h2,.booking h2{font:400 clamp(2.4rem,5vw,4.6rem)/1.05 var(--display);margin:.5rem 0}.split p{font-size:1.1rem;color:#4f5a55}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.card{padding:2rem;min-height:520px;display:flex;flex-direction:column;border:1px solid var(--line)}.card.dark{background:var(--forest);color:white;border:0}.card.cream{background:var(--cream)}.card.amber{background:#e3a04d;border:0}.num{font-size:.75rem;letter-spacing:.2em;opacity:.6}.icon{font-size:2.8rem;margin:2.6rem 0 1.4rem;filter:grayscale(1)}.card h3{font:400 1.65rem var(--display)}.card p{opacity:.8}.card ul{list-style:none;padding:0;margin:1rem 0 2rem}.card li{border-top:1px solid currentColor;padding:.65rem 0;opacity:.8}.price{margin-top:auto;display:flex;flex-wrap:wrap;gap:.3rem .6rem;align-items:end;border-top:1px solid currentColor;padding-top:1rem}.price small{width:100%;text-transform:uppercase;letter-spacing:.14em}.price strong{font-size:1.7rem}.price span{font-size:.82rem}.card>a{margin-top:1.3rem;text-decoration:none;font-weight:700}.band{display:flex;gap:2rem;align-items:center;overflow:hidden;white-space:nowrap;padding:1rem;background:var(--gold);font:1.15rem var(--display);text-transform:uppercase}.band i{font-style:normal}.process{background:var(--cream);display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,7vw,8rem)}.muted{color:#5e665f;max-width:520px}.process ol{list-style:none;margin:0;padding:0}.process li{display:flex;gap:1.5rem;padding:1.8rem 0;border-bottom:1px solid var(--line)}.process li>b{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:white;flex:none}.process h3{margin:0 0 .4rem;font-size:1.2rem}.process li p{margin:0;color:#66706a}.quote{background:var(--rust);color:white;text-align:center;padding:clamp(4rem,9vw,8rem) 1rem}.quote blockquote{font:400 clamp(2rem,4vw,3.8rem)/1.2 var(--display);max-width:1000px;margin:0 auto 1.5rem}.quote p{color:var(--gold);text-transform:uppercase;letter-spacing:.18em}.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:5rem}.faq details{border-top:1px solid var(--line);padding:1.2rem 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{font-weight:700;font-size:1.1rem;cursor:pointer}.faq details p{margin:.8rem 2rem 0 0;color:#5f6863}.booking{background:var(--forest);color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,9rem)}.booking>div>p{color:#dae6de}.booking aside{border-left:3px solid var(--gold);padding-left:1rem;margin-top:2rem;display:grid}.booking aside small{color:#bacac1}.booking aside a{font-size:1.5rem;color:var(--gold);font-weight:700;text-decoration:none}form{display:grid;grid-template-columns:1fr 1fr;gap:1rem}label{font-size:.85rem;font-weight:700}input,select{width:100%;margin-top:.4rem;border:1px solid #ffffff40;background:#fff;color:#17241e;padding:.9rem;font:1rem var(--sans);min-height:50px}form button{grid-column:1/-1;margin-top:.4rem}.form-note{grid-column:1/-1;text-align:center;color:#bacac1;font-size:.82rem}footer{background:#071d18;color:white;padding:3rem clamp(1.2rem,7vw,7rem);display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem}footer p{color:#b7c4bd;font-size:.9rem}footer>div{display:grid;gap:.4rem}footer>small{grid-column:1/-1;border-top:1px solid #ffffff24;padding-top:1.2rem;color:#8fa098}.mobile-book{display:none}
@media(max-width:900px){.topbar nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--forest);padding:1.3rem;flex-direction:column;align-items:stretch}.topbar nav.open{display:flex}.menu{display:block;background:transparent;border:1px solid #ffffff55;color:white;padding:.6rem .8rem}.hero>img{object-position:62% center}.shade{background:linear-gradient(90deg,rgba(3,18,15,.9),rgba(3,18,15,.25)),linear-gradient(0deg,rgba(3,18,15,.55),transparent)}.split,.process,.faq,.booking{grid-template-columns:1fr;gap:2.5rem}.cards{grid-template-columns:1fr}.card{min-height:470px}footer{grid-template-columns:1fr 1fr}.mobile-book{display:block;position:fixed;z-index:20;bottom:.7rem;left:1rem;right:1rem;text-align:center;padding:.9rem;background:var(--gold);text-decoration:none;font-weight:800;box-shadow:0 8px 30px #0005}body{padding-bottom:4rem}}
@media(max-width:560px){.topbar{height:72px}.topbar nav{top:72px}.brand b{font-size:.92rem}.mark{width:36px;height:36px}.hero-copy{margin-left:1.1rem;padding-top:2rem}.hero{height:90vh;min-height:680px}h1{font-size:clamp(3rem,15vw,4.6rem)}.trust{display:grid;gap:.35rem}.actions .button{width:100%}.section{padding:4rem 1.1rem}.split{margin-bottom:2rem}.card{padding:1.5rem}.icon{margin:1.6rem 0 1rem}.process li{gap:1rem}form{grid-template-columns:1fr}form button,.form-note{grid-column:auto}footer{grid-template-columns:1fr;padding-bottom:5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button:hover{transform:none}}
/* Milligan Ranch signature branding */
:root{--ink:#17170f;--forest:#192619;--gold:#d9a840;--cream:#f3e4bf;--paper:#fffaf0;--rust:#7b351f;--line:#c9af72}
.topbar{height:104px;background:rgba(0,0,0,.94);border-bottom-color:#d9a84055}.logo-brand img{display:block;width:136px;height:92px;object-fit:contain}.hero-copy{padding-top:7rem}.hero-seal{width:clamp(125px,12vw,180px);height:clamp(125px,12vw,180px);object-fit:contain;margin:0 0 .7rem -1rem;filter:drop-shadow(0 12px 24px #0008)}.gold{background:linear-gradient(135deg,#f0ca69,#bd8323);box-shadow:inset 0 0 0 1px #ffdf8b;color:#171309}.nav-cta{border-color:var(--gold);color:#f3c85d}.card{border-color:#b9964f}.card.dark{background:linear-gradient(145deg,#090b08,#23351e)}.card.cream{background:linear-gradient(145deg,#fff5d8,#ead29a)}.card.amber{background:linear-gradient(145deg,#e8b855,#aa6d21);color:#1d160b}.band{background:linear-gradient(90deg,#aa7626,#f1cc6f,#aa7626)}.process{background:#f6e8c8}.quote{background:linear-gradient(135deg,#5e2518,#9b4e28);border-top:4px solid #d9a840;border-bottom:4px solid #d9a840}.booking{background:radial-gradient(circle at 0 0,#31442a,#111a11 55%)}footer{background:#030403;border-top:2px solid #a87527}.footer-logo img{width:190px;height:150px;object-fit:contain;margin-top:-2rem}.mobile-book{background:linear-gradient(135deg,#f0ca69,#bd8323);color:#171309}
@media(max-width:900px){.topbar nav{top:104px;background:#070a07}.hero-copy{padding-top:8rem}}
@media(max-width:560px){.topbar{height:82px}.topbar nav{top:82px}.logo-brand img{width:102px;height:72px}.hero{min-height:760px}.hero-copy{padding-top:7rem}.hero-seal{width:120px;height:120px;margin-left:-.5rem}footer .footer-logo img{width:155px;height:120px}}
.owners{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(3rem,7vw,7rem);align-items:center;background:#080a07;color:#fff;position:relative;overflow:hidden}.owners:after{content:'♣';position:absolute;right:-4rem;bottom:-9rem;color:#d9a84010;font-size:25rem;line-height:1}.owners-photo{position:relative;z-index:1;padding:12px;border:1px solid #d9a840;background:#111}.owners-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.owners-photo span{position:absolute;left:2rem;bottom:2rem;background:#0a0b08e8;border-left:3px solid var(--gold);padding:.75rem 1rem;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.owners-copy{position:relative;z-index:1}.owners-copy h2{font:400 clamp(2.5rem,5vw,4.8rem)/1.05 var(--display);color:#f6d477;margin:.6rem 0 1.5rem}.owners-lead{font-size:1.28rem;line-height:1.6;color:#f3e4bf}.owners-copy>p:not(.kicker):not(.owners-lead):not(.signature){color:#cbd2c8}.signature{font:1.25rem var(--display);color:var(--gold);margin:2rem 0}.owners-copy .button{margin-top:.4rem}
@media(max-width:900px){.owners{grid-template-columns:1fr}.owners-photo{max-width:720px}.owners-copy{max-width:720px}}
@media(max-width:560px){.owners-photo{padding:7px}.owners-photo span{left:1rem;bottom:1rem;right:1rem;font-size:.68rem}.owners-lead{font-size:1.12rem}}
.ranch-shop{background:#f7ecd1}.shop-heading{display:grid;grid-template-columns:1.1fr .7fr;gap:4rem;align-items:end;margin-bottom:3rem}.shop-heading h2{font:400 clamp(2.5rem,5vw,4.5rem)/1.08 var(--display);margin:.5rem 0}.shop-heading>p{font-size:1.1rem;color:#5e5644}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}.product-card{background:#fffaf0;border:1px solid #b99143;box-shadow:0 15px 35px #5c3d1518;display:flex;flex-direction:column}.product-image{background:#10150e;padding:1rem;position:relative;overflow:hidden}.product-image img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top}.product-image span{position:absolute;left:1rem;right:1rem;bottom:1rem;background:#090b08e8;color:#f0cd70;padding:.7rem;text-align:center;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem}.product-copy{padding:1.5rem;display:flex;flex-direction:column;flex:1}.product-copy h3{font:400 1.35rem/1.3 var(--display);color:#2a2518}.product-copy p{color:#676050}.product-copy a{margin-top:auto;padding-top:1rem;border-top:1px solid #d5bf8d;color:#795515;text-decoration:none;font-weight:800}.product-copy a:hover{color:#111}
@media(max-width:900px){.shop-heading{grid-template-columns:1fr;gap:1rem}.product-grid{grid-template-columns:1fr 1fr}.product-card:last-child{grid-column:1/-1;max-width:calc(50% - .7rem);margin:auto}}
@media(max-width:560px){.product-grid{grid-template-columns:1fr}.product-card:last-child{grid-column:auto;max-width:none}.product-image img{aspect-ratio:4/4.8}}
.family-feature{position:relative;min-height:clamp(520px,72vw,820px);overflow:hidden;background:#0a0b08}.family-feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.family-feature:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.6) 30%,rgba(0,0,0,.08) 65%),linear-gradient(0deg,rgba(0,0,0,.35),transparent 50%)}.family-overlay{position:absolute;z-index:1;left:clamp(1.2rem,7vw,7rem);top:50%;transform:translateY(-50%);color:#fff;max-width:480px}.family-overlay p{text-transform:uppercase;letter-spacing:.2em;color:var(--gold);font-weight:800}.family-overlay h2{font:400 clamp(2.8rem,5.5vw,5.4rem)/1.02 var(--display);margin:.5rem 0 1.5rem}.family-overlay h2 em{font-style:normal;color:#f1ca65}.family-overlay span{display:block;font-size:1.12rem;line-height:1.6;max-width:390px;color:#f4e9d1;border-left:3px solid var(--gold);padding-left:1rem}
@media(max-width:700px){.family-feature{min-height:720px}.family-feature>img{object-position:63% center}.family-feature:after{background:linear-gradient(0deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.68) 44%,rgba(0,0,0,.05) 78%)}.family-overlay{left:1.2rem;right:1.2rem;top:auto;bottom:2rem;transform:none}.family-overlay h2{font-size:clamp(2.5rem,12vw,4rem)}}

/* Search-focused service pages */
.local-search{background:#fffaf0;border-top:1px solid var(--line)}
.local-links{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.local-links a{display:grid;gap:.55rem;padding:1.5rem;background:#192619;color:#fff;text-decoration:none;border-bottom:4px solid var(--gold)}
.local-links strong{font:400 1.25rem var(--display);color:#f3cf70}.local-links span{color:#d6ddd4}
.service-body{background:#fffaf0}.service-body .topbar{position:relative}.service-body main{min-height:60vh}
.service-hero{background:linear-gradient(120deg,#07120d 0%,#1d331f 60%,#744219 100%);color:#fff;padding:clamp(4.5rem,9vw,8rem) clamp(1.2rem,8vw,9rem);position:relative;overflow:hidden}
.service-hero:after{content:'♣';position:absolute;right:-1rem;bottom:-7rem;font-size:19rem;color:#d9a84012;line-height:1}
.service-hero .crumbs{font-size:.82rem;text-transform:uppercase;letter-spacing:.14em;color:#e9c966;margin-bottom:1.3rem}
.service-hero .crumbs a{text-decoration:none}.service-hero h1{max-width:920px;font-size:clamp(2.8rem,6.5vw,6rem);margin-bottom:1.4rem}
.service-hero .lead{color:#e7eadf;max-width:760px}.service-hero .actions{position:relative;z-index:1}
.service-content{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2.5rem,7vw,7rem);align-items:start}
.service-copy h2{font:400 clamp(2rem,4vw,3.7rem)/1.1 var(--display);margin:.4rem 0 1.5rem}.service-copy h3{font:400 1.35rem var(--display);margin-top:2rem}
.service-copy p,.service-copy li{color:#4e554d}.service-copy li{margin:.55rem 0}.service-panel{background:#192619;color:#fff;padding:2rem;border-top:5px solid var(--gold);position:sticky;top:1.5rem}
.service-panel h2{font:400 1.55rem var(--display);color:#f3cf70}.service-panel ul{padding-left:1.2rem}.service-panel a{width:100%;margin-top:1rem}
.service-areas{background:#f3e4bf}.service-areas h2{font:400 clamp(2rem,4vw,3.7rem)/1.1 var(--display)}
.service-areas p{max-width:820px}.service-areas .area-list{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}.area-list span{background:#fffaf0;border:1px solid #b9964f;padding:.6rem .9rem;font-weight:700}
.related-services{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.related-services a{padding:1.5rem;border:1px solid var(--line);text-decoration:none;background:#fff}.related-services strong{display:block;font:400 1.2rem var(--display);margin-bottom:.5rem}
@media(max-width:900px){.local-links,.related-services{grid-template-columns:1fr}.service-content{grid-template-columns:1fr}.service-panel{position:static}}
