:root{color-scheme:light;--brown:#302b22;--cream:#f4f0e6;--green:#46513e;--sunset:#c99a64;--ink:#37362e}
*{box-sizing:border-box}
html{font-size:100%;background:var(--cream)}
body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.hero{background:var(--brown);color:var(--cream);text-align:center;border-top:5px solid var(--sunset)}
.hero-inner{max-width:1100px;margin:auto;padding:66px 24px 70px}
.eyebrow{margin:0;font-size:.8125rem;font-weight:500;letter-spacing:.22em;line-height:1.6;text-transform:uppercase}
.hero .eyebrow{color:#dbb990;margin-bottom:30px}
h1{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(3.1rem,7.6vw,6.5rem);font-weight:400;letter-spacing:.105em;line-height:1.04;padding-left:.105em}
h1>span{display:block;font-size:.49em;letter-spacing:.15em;margin-top:14px}
h1 small{font-size:.45em;letter-spacing:.1em;vertical-align:middle}
.rule{width:50px;height:1px;background:var(--sunset);margin:30px auto 23px}
.tagline{font-size:1rem;letter-spacing:.055em;line-height:1.9;margin:0}
.tagline span{color:var(--sunset);padding:0 .35em}
.landscape{margin:0;height:clamp(280px,34vw,490px);overflow:hidden;background:var(--green)}
.landscape img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 59%}
.about{padding:84px 7vw 92px}
.about-inner{display:grid;grid-template-columns:1fr 2fr;gap:60px;max-width:1120px;margin:0 auto}
.about .eyebrow{color:var(--green);padding-top:11px}
.about-copy{max-width:680px}
h2{font:400 clamp(2rem,3.5vw,3.25rem)/1.13 Georgia,'Times New Roman',serif;letter-spacing:-.025em;margin:0 0 28px;color:var(--green)}
.about-copy p{font-size:1.0625rem;line-height:1.85;margin:0 0 18px;max-width:610px}
.about-copy p:last-child{margin-bottom:0}
footer{border-top:1px solid #d4d0c4;text-align:center;padding:27px 20px;color:var(--green)}
footer p{margin:0;font-size:.875rem;line-height:1.6;letter-spacing:.045em}
footer span{padding:0 .5em;color:#936b43}
@media(min-width:1600px){.hero-inner{padding-top:85px;padding-bottom:85px}}
@media(max-width:640px){.hero-inner{padding:47px 18px 48px}.hero .eyebrow{margin-bottom:27px}h1{font-size:clamp(2.7rem,11.3vw,4.5rem);letter-spacing:.065em}.tagline{font-size:.875rem;letter-spacing:0}.tagline span{padding:0 .12em}.rule{margin:28px auto 22px}.landscape{height:310px}.landscape img{object-position:64% 60%}.about{padding:49px 25px 56px}.about-inner{grid-template-columns:1fr;gap:22px}.about .eyebrow{padding:0}.about-copy p{font-size:1rem;line-height:1.8}h2{margin-bottom:24px}footer{padding:25px 18px}}
/* The supplied emblem anchors the brand on every screen size. */
.hero-inner{max-width:1240px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:58px;padding:64px 40px}
.brand-emblem{display:block;width:100%;max-width:460px;height:auto;border-radius:50%;justify-self:center}
.brand-copy{min-width:0}
h1{font-size:clamp(3rem,5.6vw,5rem)}
.tagline{font-size:.9375rem;letter-spacing:.02em}
@media(max-width:800px){.hero-inner{grid-template-columns:1fr;gap:32px;padding:40px 24px 46px}.brand-emblem{max-width:340px}.hero .eyebrow{margin-bottom:18px}h1{font-size:clamp(2.7rem,9vw,4.5rem)}.tagline{font-size:.875rem}.rule{margin:24px auto 20px}}
@media(max-width:380px){.hero-inner{padding-inline:18px}.tagline{max-width:260px;margin-inline:auto}}
.brand-emblem{border-radius:0;clip-path:ellipse(49.8% 49% at 50% 49.1%)}
.brand-copy{container-type:inline-size}
#ranch-name{font-size:7.5cqw;letter-spacing:.035em;line-height:1.15;padding-left:0;white-space:nowrap}
