
:root{
  --green:#103f25; --green-2:#355f3b; --cream:#f7f2e8; --cream-2:#edf1df;
  --paper:#fffdf8; --orange:#f07c2b; --navy:#102d46; --line:#d8ded3; --empty:#dbe3d5;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);font-family:"Montserrat",Arial,sans-serif;color:#20342b}
.wrap{width:min(1180px,calc(100% - 32px));margin:auto}
.topbar{background:#102b3e;color:white}
.nav{height:68px;display:flex;align-items:center;justify-content:space-between}
.logo{font-weight:800;letter-spacing:.08em}
.nav nav{display:flex;gap:24px}.nav a{color:white;text-decoration:none;font-size:14px}.nav a.active{border-bottom:2px solid var(--orange);padding-bottom:7px}
.hero{height:410px;background:linear-gradient(130deg,#17394a 0%,#39634f 48%,#7d916b 100%);position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;left:-4%;right:-4%;bottom:-17%;height:58%;background:#204b32;clip-path:polygon(0 80%,12% 44%,25% 58%,38% 24%,52% 66%,66% 31%,79% 56%,90% 22%,100% 62%,100% 100%,0 100%);opacity:.92}
.hero-inner{height:100%;display:flex;align-items:flex-end;position:relative;z-index:2}
.hero-copy{padding:0 0 46px;color:white}
.script{font-family:"Caveat",cursive;font-size:40px;font-weight:600;color:#fff0df}
.hero h1,.header-card h2,.section-heading h2{font-family:"Cormorant Garamond",Georgia,serif}
.hero h1{font-size:72px;line-height:.95;margin:4px 0 22px}
.hero-stats{display:flex;gap:26px;flex-wrap:wrap;font-weight:700}.hero-stats b{color:#ff9c45}
.page{padding:32px 0 70px}
.card{background:var(--paper);border:1px solid #e1e2db;border-radius:18px;box-shadow:0 7px 22px rgba(24,49,37,.07)}
.header-card{padding:24px 28px;margin-bottom:18px}
.title-line{display:flex;align-items:flex-start;justify-content:space-between}
.kicker{font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--green)}
.header-card h2,.section-heading h2{color:var(--navy);font-size:46px;margin:5px 0}
.location{margin:0;color:#53645d}
.badge{background:var(--green-2);color:white;padding:12px 22px;text-align:center;font-family:"Cormorant Garamond",serif;font-size:20px;line-height:1.25;clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%)}
.badge strong{display:block;font-size:36px}
.map-card{overflow:hidden;position:relative}
.map-title{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.map-title h3{margin:2px 0 0;color:var(--navy);font-size:22px}
.btn{background:var(--green);color:white;text-decoration:none;padding:12px 17px;border-radius:999px;font-weight:800;font-size:13px}
#map{height:520px;width:100%;border-top:1px solid #e5e7e1}
.map-credit{position:absolute;z-index:500;right:10px;bottom:10px;background:rgba(255,255,255,.92);font-size:11px;padding:5px 8px;border-radius:6px}
.leaflet-control-attribution{display:none}
.stat-row{display:grid;grid-template-columns:repeat(5,1fr);margin-top:16px;overflow:hidden}
.stat-row div{padding:22px;text-align:center;border-right:1px solid var(--line)}.stat-row div:last-child{border-right:0}
.stat-row b{display:block;font-size:23px;color:var(--navy)}.stat-row small,.detail-row small{display:block;margin-top:8px;text-transform:uppercase;font-weight:800;font-size:11px}
.detail-row{margin-top:12px;background:var(--cream-2);display:grid;grid-template-columns:repeat(3,1fr);padding:16px 22px}
.detail-row div{padding:5px 24px;border-right:1px solid #aeb7a8}.detail-row div:last-child{border-right:0}
.detail-row b{display:block;margin-top:6px;font-size:19px;color:var(--navy)}.detail-row .orange{color:var(--orange)}
.profile{margin-top:14px;padding:16px 24px}
.section-label{font-weight:900;color:var(--navy);margin-bottom:8px}
.profile-wrap{position:relative}
#elevation-profile{width:100%;height:160px;display:block}
#elevation-profile .fill{fill:#d7ddcf}
#elevation-profile .line{fill:none;stroke:var(--green);stroke-width:4}
.profile-labels{display:flex;justify-content:space-between;font-size:12px;color:#53645d;margin-top:-4px}
.lower-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:16px;margin-top:14px}
.dog{overflow:hidden;padding:0}
.dark-head{background:#0d4a26;color:white;padding:14px 18px;font-weight:900}
.dog-item{display:grid;grid-template-columns:1.05fr .8fr 1.5fr;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid var(--line);font-size:14px}
.dog-item.simple{grid-template-columns:1fr 1.4fr}.dog-item.simple span{text-align:right}
.score{display:flex;gap:7px}.score i{display:block;background:var(--orange)}.score i.off{background:var(--empty)}
.droplets i{width:11px;height:16px;border-radius:60% 60% 60% 60%/70% 70% 40% 40%}
.bottles i{width:8px;height:17px;border-radius:2px;position:relative}.bottles i:before{content:"";position:absolute;top:-4px;left:2px;width:4px;height:4px;background:inherit}
.trees i{width:15px;height:18px;clip-path:polygon(50% 0,100% 70%,67% 70%,67% 100%,33% 100%,33% 70%,0 70%)}
.pastures i{width:15px;height:12px;border-radius:50%}
.secret{background:var(--cream-2);padding:26px 30px}
.secret-title{font-family:"Caveat",cursive;font-weight:700;font-size:32px;color:var(--green)}
.secret p{font-family:"Caveat",cursive;font-size:24px;line-height:1.25;color:#17384f}
.mountain-mark{text-align:right;font-size:64px;color:#9cad91;letter-spacing:-14px}
.web-extra{margin-top:54px}
.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:16px}
.extra-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}
.extra{padding:22px}.extra h3{margin-top:0;color:var(--navy)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.gallery div{height:190px;border-radius:12px;background:linear-gradient(160deg,#a8c3a0,#496b53)}
.video-placeholder{height:190px;border-radius:12px;background:linear-gradient(140deg,#284b43,#7f996e);display:grid;place-items:center;color:white;font-size:48px}
footer{background:var(--green);color:white;padding:28px 0}.footer{display:flex;justify-content:space-between;gap:18px}
@media(max-width:780px){
  .nav nav{display:none}.hero{height:360px}.hero h1{font-size:50px}.script{font-size:32px}.hero-stats{gap:14px}
  .stat-row{grid-template-columns:repeat(2,1fr)}.stat-row div{border-bottom:1px solid var(--line)}
  .detail-row{grid-template-columns:1fr}.detail-row div{border-right:0;border-bottom:1px solid #aeb7a8}
  .lower-grid,.extra-grid{grid-template-columns:1fr}.dog-item{grid-template-columns:1fr}.dog-item.simple{grid-template-columns:1fr}.dog-item.simple span{text-align:left}
  #map{height:390px}.map-title{align-items:flex-start;flex-direction:column}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}
  .gallery{grid-template-columns:1fr 1fr}.footer{flex-direction:column}
}
