
/* THE TETON STANDARD — refined editorial redesign */
:root{--navy:#10283d;--gold:#b58a45;--ivory:#f4f0e8;--paper:#fffefa;--ink:#28343c;--muted:#6e777c;--line:#e6dfd2;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif}
body{font-family:var(--sans);letter-spacing:.005em;color:#27343d;background:#fffefa} .container{width:min(1200px,calc(100% - 48px))}
.topline{background:#10283d;color:#e8dfd0;padding:9px 15px;font-size:.66rem;letter-spacing:.24em;font-weight:600}.topline span{color:#c49a57;padding:0 8px}
.site-header{position:relative;z-index:20;background:#fffefa;border-bottom:1px solid #e7e0d4;box-shadow:0 7px 24px #10283d0b}.brand-masthead{display:flex;justify-content:center;align-items:center;padding:13px 24px 8px;background:linear-gradient(180deg,#f6f2e9,#fffefa)}.brand-masthead a{display:block;width:min(570px,90vw);line-height:0}.brand-masthead img{width:100%;height:auto;display:block;mix-blend-mode:multiply}.nav-wrap{border-top:1px solid #eee8de}.nav{min-height:62px;justify-content:center;position:relative}.navlinks{display:flex;gap:clamp(16px,2.5vw,34px);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:#34434d}.navlinks a{padding:22px 0;position:relative}.navlinks a:after{content:"";position:absolute;left:0;right:100%;bottom:14px;height:1px;background:var(--gold);transition:right .25s}.navlinks a:hover:after,.navlinks a.active:after{right:0}.navlinks a:hover,.navlinks a.active{color:var(--gold)}.nav-cta{position:absolute;right:0;top:50%;transform:translateY(-50%);background:var(--navy);border:1px solid var(--navy);padding:12px 16px;color:#fff;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;font-weight:bold}.nav-cta span{color:#d6b579;margin-left:9px}.menu-btn{display:none}
.hero{min-height:670px;background-image:linear-gradient(90deg,rgba(8,26,41,.83) 0%,rgba(8,26,41,.56) 46%,rgba(8,26,41,.12) 100%),url('https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?auto=format&fit=crop&w=2200&q=90');background-position:center 54%;position:relative}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:7px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.hero-content{max-width:780px;padding:112px 0 126px}.eyebrow,.tag{color:#caa66a;letter-spacing:.25em;font-size:.68rem}.hero h1{font:normal clamp(3.1rem,6.4vw,5.6rem)/1.02 var(--serif);letter-spacing:-.025em;max-width:760px;margin:24px 0}.hero p{font-size:1.12rem;line-height:1.85;max-width:600px;color:#f3f0e9}.btn{padding:16px 23px;font-size:.68rem;letter-spacing:.14em;transition:all .2s}.hero .btn{background:var(--gold);border-color:var(--gold);color:#10283d}.hero .btn-outline{color:#fff;border-color:#fff;background:transparent}.hero .btn:hover,.btn:hover,.nav-cta:hover{background:#d0ad72;border-color:#d0ad72;color:#10283d}.section{padding:100px 0}.section-soft{background:#f5f2eb}.section h2{font-size:clamp(2.25rem,4vw,3.4rem);line-height:1.1;letter-spacing:-.02em}.lead{line-height:1.85}.gold-rule{width:76px;height:2px}.split{gap:80px}.photo{min-height:500px;box-shadow:22px 22px 0 #eee8dc}.grid{gap:22px}.card{padding:34px 30px;border:1px solid #e8e1d5;box-shadow:0 12px 32px #10283d08;transition:transform .25s,box-shadow .25s}.card:hover{transform:translateY(-4px);box-shadow:0 18px 38px #10283d13}.card h3{font-size:1.65rem}.icon{border-color:#d8c29c;background:#faf7f0}.checks li{padding:12px 0}.banner{padding:66px 0;background:linear-gradient(115deg,#10283d,#1b3a51)}.banner h2{font-size:clamp(2rem,3.6vw,2.8rem)}.page-hero{padding:112px 0;background-position:center 48%;position:relative}.page-hero h1{font-size:clamp(3rem,6vw,4.8rem);max-width:800px}.page-hero p{font-size:1.08rem;line-height:1.8}.price{font-size:3rem}.featured{border-top:3px solid var(--gold)}.contactbox{padding:34px;background:#f5f1e8;border:1px solid #e7dece}.form input,.form select,.form textarea{background:#fffefa;border-color:#dcd4c6;padding:14px}.form input:focus,.form select:focus,.form textarea:focus{outline:1px solid var(--gold);border-color:var(--gold)}footer{background:#0d2234;padding:64px 0 22px}footer h3{letter-spacing:.06em}footer a:hover{color:#d2ae70}.footbottom{letter-spacing:.08em}
@media(max-width:1000px){.nav{justify-content:flex-end}.navlinks{gap:16px}.nav-cta{display:none}.navlinks a{font-size:.65rem}}
@media(max-width:760px){.brand-masthead{padding:10px 15px 6px}.brand-masthead a{width:min(500px,94vw)}.nav{min-height:58px;justify-content:flex-start}.menu-btn{display:block;background:transparent;border:1px solid #d9d1c4;color:var(--navy);font-size:1rem;padding:8px 12px;margin:8px 0}.navlinks{display:none;position:absolute;top:58px;left:0;right:0;background:#fffefa;padding:10px 24px 22px;flex-direction:column;gap:0;box-shadow:0 16px 22px #10283d18}.navlinks.open{display:flex}.navlinks a{padding:13px 0;border-bottom:1px solid #eee8de;font-size:.72rem}.navlinks a:after{display:none}.hero{min-height:600px;background-position:58% center}.hero-content{padding:86px 0 100px}.hero h1{font-size:clamp(2.7rem,12vw,4.2rem)}.section{padding:70px 0}.split{gap:38px}.photo{min-height:330px;box-shadow:12px 12px 0 #eee8dc}.page-hero{padding:78px 0}.banner-inner{display:block}.banner .btn{margin-top:22px}.footgrid{gap:24px}}
@media(max-width:420px){.topline{font-size:.57rem;letter-spacing:.15em}.container{width:calc(100% - 34px)}.hero{min-height:560px}.hero-content{padding:72px 0 85px}.hero .btn{display:block;width:max-content;margin:10px 0}.brand-masthead a{width:96vw}}

/* Readability, full-brand masthead, and expanded photography */
.brand-masthead{padding:0;background:#fffefa;}
.brand-masthead a{width:min(1120px,96vw);}
.brand-masthead img{width:100%;height:auto;max-height:340px;object-fit:contain;mix-blend-mode:normal;}
/* Dark photographic page headers with consistently light, high-contrast type */
.page-hero{background-image:linear-gradient(90deg,rgba(7,25,40,.88),rgba(7,25,40,.67)),url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=2200&q=85');background-size:cover;color:#fff;}
.page-hero h1,.page-hero p,.page-hero .lead,.page-hero .tag{color:#fff;}
.page-hero .eyebrow,.page-hero .tag{color:#f0d49f;}
.banner{color:#fff;}
.banner h2,.banner p,.banner .lead,.banner a:not(.btn){color:#fff;}
.banner .btn{background:#e7c78e;border:1px solid #e7c78e;color:#10283d;}
.banner .btn:hover{background:#fff;color:#10283d;border-color:#fff;}
.hero h1,.hero p,.hero .eyebrow{color:#fff;}
.hero .eyebrow{color:#f2d39a;}
footer,footer h3,footer p,footer li,footer a{color:#f3f0e9;}
footer .brand-sub{color:#e7c78e;}
.photo-gallery{padding:84px 0;}
.gallery-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:20px;margin-top:36px;}
.gallery-card{position:relative;overflow:hidden;min-height:310px;margin:0;background:#10283d;box-shadow:0 16px 36px #10283d18;}
.gallery-card img{width:100%;height:100%;min-height:310px;object-fit:cover;display:block;transition:transform .6s;}
.gallery-card:hover img{transform:scale(1.045);}
.gallery-card:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(5,20,33,.76));}
.gallery-card figcaption{position:absolute;z-index:1;bottom:22px;left:24px;color:#fff;font:1.4rem Georgia,serif;letter-spacing:.02em;}
.photo.teton{background-image:url('https://images.unsplash.com/photo-1518837695005-2083093ee35b?auto=format&fit=crop&w=1200&q=85');background-size:cover;background-position:center;}
.photo.home{background-image:url('https://images.unsplash.com/photo-1600607687920-4e2a09cf159d?auto=format&fit=crop&w=1200&q=85');background-size:cover;background-position:center;}
@media(max-width:760px){.brand-masthead a{width:100%;}.brand-masthead img{max-height:260px;}.gallery-grid{grid-template-columns:1fr;}.gallery-card,.gallery-card img{min-height:260px;}}

/* Stronger contrast and more prominent gold accents */
.topline{color:#fff;}
.topline span{color:#f0cf91;}
.eyebrow,.tag{color:#a87525;font-size:.9rem;font-weight:800;letter-spacing:.19em;}
.hero .eyebrow,.page-hero .eyebrow,.page-hero .tag{color:#ffe0a6;}
.banner,.banner h2,.banner p,.banner .lead,.banner a:not(.btn){color:#fff!important;}
.banner .eyebrow,.banner .tag{color:#ffe0a6!important;}
.page-hero,.page-hero h1,.page-hero p,.page-hero .lead{color:#fff!important;}
.page-photo-strip{padding:46px 0 64px;background:#f5f2eb;}
.page-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.page-photo-grid figure{position:relative;margin:0;min-height:250px;overflow:hidden;background:#10283d;box-shadow:0 14px 30px #10283d18;}
.page-photo-grid img{display:block;width:100%;height:100%;min-height:250px;object-fit:cover;transition:transform .5s;}
.page-photo-grid figure:hover img{transform:scale(1.04);}
.page-photo-grid figure:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(5,20,33,.78));}
.page-photo-grid figcaption{position:absolute;z-index:1;left:22px;bottom:20px;color:#fff;font:1.35rem Georgia,serif;}
.gallery-card figcaption{font-size:1.55rem;font-weight:600;}
@media(max-width:760px){.page-photo-grid{grid-template-columns:1fr;}.page-photo-grid figure,.page-photo-grid img{min-height:230px;}.eyebrow,.tag{font-size:.82rem;}}


/* Teton ranch photography and high-contrast typography */
.hero{background-image:linear-gradient(90deg,rgba(6,20,33,.70) 0%,rgba(6,20,33,.34) 58%,rgba(6,20,33,.08) 100%),url("images/teton-scene-1.jpg");background-size:cover;background-position:center 52%;}
.page-hero{background-image:linear-gradient(90deg,rgba(6,20,33,.68),rgba(6,20,33,.42)),url("images/teton-scene-4.jpg");}
.page-services .page-hero{background-image:linear-gradient(90deg,rgba(6,20,33,.68),rgba(6,20,33,.42)),url("images/teton-scene-5.jpg");}
.page-plans .page-hero{background-image:linear-gradient(90deg,rgba(6,20,33,.68),rgba(6,20,33,.42)),url("images/teton-scene-6.jpg");}
.page-property-managers .page-hero{background-image:linear-gradient(90deg,rgba(6,20,33,.68),rgba(6,20,33,.42)),url("images/teton-scene-2.jpg");}
.page-about .page-hero{background-image:linear-gradient(90deg,rgba(6,20,33,.68),rgba(6,20,33,.42)),url("images/teton-scene-3.jpg");}
.page-contact .page-hero{background-image:linear-gradient(90deg,rgba(6,20,33,.68),rgba(6,20,33,.42)),url("images/teton-scene-5.jpg");}
.hero h1,.hero h2,.hero p,.hero .eyebrow,.page-hero h1,.page-hero h2,.page-hero p,.page-hero .eyebrow,.banner h1,.banner h2,.banner h3,.banner p,.banner a:not(.btn){color:#fff!important;}
.hero .eyebrow,.page-hero .eyebrow,.banner .eyebrow,.tag{color:#ffe2ad!important;font-size:1rem;font-weight:800;letter-spacing:.2em;text-shadow:0 1px 5px rgba(0,0,0,.55);}
.banner{background:linear-gradient(115deg,#081d30,#102f48);}
.banner h2{font-size:clamp(2.25rem,4vw,3.25rem);}
.page-hero h1{color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.55);}
.page-photo-grid figcaption,.gallery-card figcaption{color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.85);}
@media(max-width:760px){.hero{background-position:58% center;}}
