/* Public farm presentation. Generated aerial is a concept, not inventory geometry. */
:root {
 --color-primary:#123543; --color-primary-light:#245363; --color-primary-dark:#092631;
 --color-accent:#d5a846; --color-accent-light:#edc56b;
 --color-bg:#f7f3e9; --color-bg-alt:#eee8da;
 --radius-lg:8px; --radius-xl:10px;
}
body { background:#f7f3e9; }
.site-header { background:#fffdf5; border-bottom:1px solid #dcd5c3; }
.logo img { height:64px; }
.nav-menu a { border-radius:4px; }
.mobile-menu-toggle { position:relative; }
.btn { border-radius:999px; box-shadow:none; font-weight:750; }
.btn:hover { transform:none; }
.btn-primary { background:#e8b94f; color:#102f3b; border-color:#e8b94f; }
.btn-primary:hover { background:#f3ca6b; color:#102f3b; }
.home-hero.hero.farm-map-hero { position:relative; isolation:isolate; padding:0; min-height:0; background:#102f3b; color:white; overflow:hidden; }
.home-hero.hero.farm-map-hero::before { content:none; }
.farm-hero-grid { position:relative; width:100%; display:flex; align-items:flex-end; justify-content:center; padding:0 1.25rem 2.6rem; }
.farm-map-hero .hero-copy { position:relative; z-index:2; max-width:920px; width:100%; text-align:center; padding-top:clamp(180px,min(25vw,calc(100svh - 480px)),330px); }
.home-hero.farm-map-hero .eyebrow { color:#f6d689; font-size:.8rem; letter-spacing:.15em; margin-bottom:.8rem; }
.home-hero.hero.farm-map-hero h1 { color:#fffdf2; font-family:Impact,'Arial Narrow','Franklin Gothic Medium',sans-serif; font-weight:800; font-size:clamp(2.6rem,5vw,4.2rem); line-height:1.05; letter-spacing:.025em; text-shadow:0 2px 15px #0005; max-width:none; margin-bottom:.65rem; }
.farm-location-line { font-family:Georgia,'Times New Roman',serif; font-size:clamp(1.3rem,2.4vw,1.85rem); font-style:italic; line-height:1.3; color:#ffe2a0; margin:0 0 .7rem; }
.home-hero.farm-map-hero .hero-tagline { color:#fffdf3; font-size:1rem; line-height:1.7; max-width:650px; margin:0 auto 1.3rem; }
.farm-map-hero .hero-actions { justify-content:center; gap:.75rem; flex-direction:row; max-width:none; margin-inline:auto; }
.farm-map-hero .hero-actions .btn { font-size:.9rem; padding:.85rem 1.7rem; }
.farm-map-hero .btn-primary { background:#edbe51; color:#102f3b; border-color:#edbe51; }
.farm-map-hero .btn-primary:hover { background:#f7d482; }
.farm-map-hero .btn-secondary { color:#fffdf2; background:#12354388; border:1px solid #fff9; backdrop-filter:none; }
.farm-map-hero .btn-secondary:hover { background:#123543; }
.farm-map-hero .hero-note { color:#e0e6df; font-size:.8rem; margin:.9rem auto 0; }
.farm-map { position:absolute; z-index:-1; inset:0 calc((100vw - 100%)/-2); margin:0; }
.farm-map-art { position:absolute; inset:0; }
.farm-map-art::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 12%,#07232b08 32%,#082631a6 66%,#082631f5 100%); }
.farm-map-art > img { width:100%; height:auto; object-fit:contain; opacity:.82; mask-image:linear-gradient(to bottom,#000 65%,transparent 100%); }
.farm-storage-links { display:flex; justify-content:center; background:#102f3b; border-top:1px solid #ffffff20; gap:0; padding:.15rem 1rem; }
.farm-storage-links a { display:flex; align-items:center; justify-content:space-between; gap:3rem; padding:1rem 2.25rem; color:#fff7e4; font-size:.9rem; font-weight:650; border-right:1px solid #ffffff20; }
.farm-storage-links a:first-child { border-left:1px solid #ffffff20; }
.farm-storage-links span { color:#edbe51; }
.farm-storage-links a:hover { background:#244650; color:#fff; }
.trust-strip { background:#fffaf0; box-shadow:none; border-bottom:1px solid #e4dcc9; }
.trust-strip strong { font-family:Georgia,serif; color:#123543; font-size:1.1rem; }
.trust-strip span { font-size:.875rem; }
.notice-banner { background:#ede2c6; color:#253c42; }
.why-choose { background:#123543; }
.feature-card { border-radius:5px; box-shadow:none; }
.feature-card:hover { transform:none; }
.feature-card .feature-icon { color:#edbe51; }
.location-block { scroll-margin-top:7rem; border-radius:8px; box-shadow:0 5px 25px #3a332509; }
.location-images { gap:1rem; }
.storage-image { border-radius:4px; }
.section-heading h2 { max-width:24ch; }
.section-heading .eyebrow { color:#977122; }
.cta-section { background:#123543; }
@media (min-width:801px) {
 .farm-map-art > img { height:100%; object-fit:cover; object-position:center bottom; transform:translateY(-48px); }
}
@media (min-width:801px) and (max-height:850px) {
 .farm-map-hero .hero-copy { padding-top:clamp(80px,calc(100svh - 510px),250px); }
}
@media (max-width:800px) {
 .farm-map-hero .hero-copy { padding-top:36vw; }
 .home-hero.hero.farm-map-hero h1 { font-size:clamp(2.6rem,6vw,3.4rem); }
 .home-hero.farm-map-hero .hero-tagline { line-height:1.5; margin-bottom:1rem; }
 .farm-map-art > img { height:auto; object-fit:contain; mask-image:linear-gradient(to bottom,#000 62%,transparent 100%); }
 .farm-map-art::after { background:none; }
 .farm-storage-links a { padding:.9rem 1.25rem; gap:1rem; }
}
@media (max-width:480px) {
 .logo img { height:56px; }
 .farm-hero-grid { padding-inline:1rem; padding-bottom:2.2rem; }
 .farm-map-hero .hero-copy { padding-top:40vw; }
 .home-hero.hero.farm-map-hero h1 { font-size:clamp(2.4rem,10.5vw,3rem); line-height:1.02; }
 .home-hero.hero.farm-map-hero h1 span { display:block; }
 .home-hero.farm-map-hero .eyebrow { font-size:.65rem; letter-spacing:.1em; }
 .home-hero.farm-map-hero .hero-tagline { font-size:.9rem; }
 .farm-map-hero .hero-actions { display:grid; grid-template-columns:1fr 1fr; align-items:stretch; gap:.6rem; }
 .farm-map-hero .hero-actions .btn { width:auto; min-height:48px; padding:.65rem .6rem; font-size:.78rem; line-height:1.35; display:flex; align-items:center; justify-content:center; }
 .farm-map-hero .hero-note { max-width:none; font-size:.7rem; line-height:1.45; }
 .farm-map-art > img { height:auto; object-fit:contain; }
 .farm-storage-links { padding:0; }
 .farm-storage-links a { padding:.9rem .8rem; font-size:.75rem; gap:.7rem; border:0; }
 .farm-storage-links a:first-child { border-left:0; }
}
@media print {
 .farm-map { position:relative; inset:auto; height:300px; }
 .farm-hero-grid { display:block; min-height:0; }
 .farm-map-hero .hero-copy { padding-top:1rem; }
}
