/* Dial House Gallery — lightweight, responsive static site */
:root{--ink:#25312b;--muted:#657168;--paper:#f7f6f1;--sage:#8e9a82;--sage-dark:#445542;--line:#e1e4dc;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Georgia,"Times New Roman",serif}
a{color:var(--sage-dark);text-underline-offset:3px}
a:hover{color:#182b1b}
img{max-width:100%;height:auto;display:block}
.site-header{background:var(--white);border-bottom:1px solid var(--line)}
.header-inner{max-width:1120px;margin:auto;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{width:min(100%,420px)}
nav{display:flex;gap:22px;flex-wrap:wrap}
nav a{text-decoration:none;font:600 14px/1.4 Arial,sans-serif;letter-spacing:.04em}
nav a[aria-current=page]{border-bottom:2px solid var(--sage);padding-bottom:6px}
.hero{background:#e9ece4;padding:38px 24px}
.hero-inner{max-width:1120px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:38px}
.hero h1{font-size:clamp(2rem,4vw,3.3rem);line-height:1.12;margin:0 0 18px;font-weight:500}
.lead{font-size:1.12rem;color:#47564a}
.hero-photo{width:100%;max-height:430px;object-fit:cover;object-position:center;border-radius:4px}
.button{display:inline-block;background:var(--sage-dark);color:white;text-decoration:none;padding:12px 19px;font:600 13px Arial,sans-serif;letter-spacing:.04em;border-radius:2px;margin:8px 10px 0 0}
.button:hover{background:#263a29;color:#fff}
.section{max-width:1120px;margin:auto;padding:48px 24px}
.section h2{font-size:clamp(1.6rem,3vw,2.25rem);font-weight:500;line-height:1.2;margin:0 0 14px}
.section-intro{max-width:700px;color:var(--muted);margin:0 0 26px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.feature{background:#fff;border:1px solid var(--line);padding:14px}
.feature img{width:100%;height:220px;object-fit:cover}
.feature h3{font-size:1.2rem;font-weight:500;margin:12px 0 5px}
.feature p{margin:0;color:var(--muted);font-size:.95rem}
.notice{background:#e9ece4;padding:22px 25px;border-left:4px solid var(--sage-dark)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.map-frame{width:100%;height:390px;border:0;background:#e5e5e5}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gallery-card{margin:0;background:#fff;border:1px solid var(--line);padding:10px}
.gallery-card a{display:block}
.gallery-card img{width:100%;height:245px;object-fit:cover;transition:opacity .2s}
.gallery-card a:hover img{opacity:.85}
.gallery-card figcaption{padding:10px 4px 3px;font-size:.98rem}
.page-heading{background:#e9ece4;padding:35px 24px}
.page-heading>div{max-width:1120px;margin:auto}
.page-heading h1{font-size:clamp(2rem,4vw,3rem);font-weight:500;margin:0}
.site-footer{background:#26362b;color:#eef0e9;padding:30px 24px}
.footer-inner{max-width:1120px;margin:auto;display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap}
.site-footer a{color:#eef0e9}
.site-footer p{margin:4px 0}
.small{font:13px/1.6 Arial,sans-serif;color:inherit}
@media(max-width:760px){.header-inner{align-items:flex-start;flex-direction:column}.hero-inner,.contact-grid{grid-template-columns:1fr}.hero{padding-top:26px}.feature-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-card img{height:210px}.map-frame{height:320px}}
@media(max-width:480px){.feature-grid,.gallery-grid{grid-template-columns:1fr}nav{gap:16px}.gallery-card img{height:auto;max-height:340px}.section{padding:34px 18px}}
