@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');
/* Elan Valley Past & Present shared theme · PHP 8.4 */
:root{--site-primary:#21443e;--site-dark:#132e2b;--site-bg:#f8f6ef;--site-card:#fff;--site-text:#263c37;--site-muted:#64746e;--site-border:#e1e6da;--site-accent:#eee9dd;--pine:#132e2b;--pine2:#21443e;--gold:#d6af72;--cream:#f8f6ef;--sand:#eee9dd;--text:#263c37;--muted:#64746e}
html{scroll-behavior:smooth;scroll-padding-top:84px}body{background:#f8f6ef!important;color:#263c37!important;font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif!important;min-width:320px;overflow-wrap:break-word}
a{color:#24584c}a:hover{color:#132e2b}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #d6af72!important;outline-offset:2px}
.top-strip{background:#102723;color:#e5ecdf;padding:7px 0;font-size:.78rem;letter-spacing:.08em}
.hero-section,.hero,.page-hero{background:linear-gradient(125deg,#132e2b,#21443e)!important;border-radius:18px!important;color:#fff!important;padding:clamp(1.5rem,4vw,3.5rem)!important;box-shadow:0 15px 35px #17372c24!important;max-width:100%}
.hero-section .hero-title,.hero-title,.hero-section h1{font-family:'Libre Baskerville',Georgia,serif!important;color:#fff!important;font-size:clamp(1.7rem,4vw,3rem)!important;line-height:1.2!important}
.hero-section .hero-text,.hero-section p,.hero-text{color:#ecf1ea!important;line-height:1.7}
.hero-badge,.info-badge,.card-badge,.eyebrow{border-color:#e0c398!important;letter-spacing:.06em}
.section-title,.site-name,.mine-name,.gallery-title,h1.text-primary,h2.text-primary,h3.text-primary,.text-primary{color:#21443e!important}
.section-title{border-left-color:#d6af72!important}h1,h2,h3{overflow-wrap:anywhere}h2,h3{font-family:'Libre Baskerville',Georgia,serif}
.btn-site,.btn-primary{background:#21443e!important;border-color:#21443e!important;color:#fff!important}.btn-site:hover,.btn-primary:hover{background:#132e2b!important;border-color:#132e2b!important}
.section-card,.site-card,.mine-card,.gallery-card,.crash-card,.intro-card,.note-card,.content-card,.card{border-radius:14px!important;border-color:#e6e5dc!important;box-shadow:0 6px 20px #1f352710;}
.site-card,.mine-card,.gallery-card,.crash-card{overflow:hidden}
.card img,.gallery-card img,.mine-card img,.site-card img,.crash-card img,.img-thumbnail{max-width:100%;height:auto;object-fit:contain}
.row img:not(.leaflet-marker-icon):not(.leaflet-marker-shadow){max-width:100%;height:auto}
article,section,main{max-width:100%}.container{max-width:1240px}p,li{line-height:1.67}figure{max-width:100%}img,video,iframe{max-width:100%}table{display:block;max-width:100%;overflow-x:auto}
.ev-skip-link{position:absolute;left:-10000px;top:auto}.ev-skip-link:focus{z-index:2000;left:1rem;top:1rem;background:#fff;padding:.7rem}
.ev-site-footer{background:#132e2b;color:#dce7de;padding:2rem 0;margin-top:2.5rem}.ev-site-footer .container{display:flex;gap:.8rem 2rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.ev-site-footer strong{color:#e7bf85;font-family:Georgia,serif}.ev-counter{display:inline-block;font-size:.8rem;color:#64746e;padding:.3rem .6rem}
.ev-map-panel{padding:0 12px!important;clear:both}.ev-map-heading{margin-bottom:1rem}.ev-eyebrow{display:inline-block;color:#80613f;font-weight:700;text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;margin-bottom:.6rem}.ev-map-heading h2{font-family:'Libre Baskerville',Georgia,serif;font-size:clamp(1.35rem,3.5vw,2.1rem);color:#21443e}.ev-map-heading p,.ev-map-note{color:#64746e;font-size:.93rem;max-width:900px}.ev-interactive-map{width:100%;height:clamp(320px,50vw,510px);border:1px solid #d8ded5;border-radius:16px;overflow:hidden;background:#e1e9df}.ev-map-note{margin-top:.7rem}
.ev-nav .ev-nav-menu{margin-bottom:0!important}.ev-nav .ev-nav-link{color:#e4ebe7!important}.ev-nav a{cursor:pointer}
@media(max-width:767px){.container{padding-left:16px;padding-right:16px}.hero-section{padding:1.4rem!important;border-radius:12px!important}.hero-section .hero-title{font-size:clamp(1.6rem,8vw,2.25rem)!important}.row>[class*=col-]{min-width:0}.row img{margin-bottom:.5rem}.ev-map-panel{padding:0 16px!important}.ev-interactive-map{height:340px}.section-card,.gallery-card,.site-card{border-radius:12px!important}body{font-size:1rem}}
@media print{.ev-nav,.ev-interactive-map,.ev-map-panel,.ev-site-footer,.top-strip{display:none!important}body{background:#fff!important}.card,.section-card{box-shadow:none!important}}
