:root{--ink:#2a1630;--rose:#a63d6b;--blush:#f6eef0;--mist:#e9d9df;--white:#fff}
*{box-sizing:border-box;margin:0}
body{font:17px/1.65 system-ui,sans-serif;color:var(--ink);background:var(--blush)}
h1,h2,h3{font-family:"Iowan Old Style",Palatino,Georgia,serif;font-weight:500;line-height:1.15}
h1{font-size:clamp(2.4rem,8vw,4.6rem)}h2{font-size:clamp(1.7rem,5vw,2.5rem);margin-bottom:1rem}
a{color:inherit}:focus-visible{outline:3px solid var(--rose);outline-offset:3px}
header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.2rem;padding:1rem 5vw;background:var(--white)}
.logo{font:600 1.25rem Georgia,serif;text-decoration:none}
nav{display:flex;gap:1.1rem;flex-wrap:wrap}nav a{text-decoration:none;padding:.3rem 0}nav a[aria-current]{border-bottom:2px solid var(--rose)}
section{padding:clamp(3rem,9vw,6rem) 5vw;max-width:1100px;margin:auto}
.hero{min-height:78vh;display:flex;flex-direction:column;justify-content:center;max-width:none;color:var(--white);background:linear-gradient(180deg,rgba(42,22,48,0.78),rgba(42,22,48,0.85)),url('img/hero.jpg') center/cover no-repeat;padding-inline:5vw}
.hero>*{max-width:760px}.hero p{font-size:1.2rem;margin:1.2rem 0 2rem;opacity:.92}
.btns{display:flex;gap:.8rem;flex-wrap:wrap}
.btn{display:inline-block;padding:.9rem 1.5rem;border-radius:99px;text-decoration:none;font-weight:600;background:var(--rose);color:var(--white);border:2px solid var(--rose);cursor:pointer;font-size:1rem}
.btn.alt{background:transparent;border-color:currentColor}
.grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--white);border-radius:8px;overflow:hidden;border-top:3px solid var(--rose);box-shadow:0 4px 15px rgba(0,0,0,0.05);transition:transform 0.2s}
.card:hover{transform:translateY(-4px)}
.card-img{width:100%;height:180px;object-fit:cover;display:block}
.card-body{padding:1.4rem}
.note{grid-column:1/-1;padding:1.4rem;background:var(--white);border-left:3px solid var(--rose)}
.ph{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.08);transition:transform 0.3s}
.ph:hover{transform:scale(1.03)}
.gal{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
form{display:grid;gap:1rem;max-width:560px}label{display:grid;gap:.3rem;font-weight:600}
input,textarea{font:inherit;padding:.8rem;border:1px solid #bfa3b0;border-radius:4px;background:var(--white)}
.hp{position:absolute;left:-9999px}
details{background:var(--white);padding:1rem 1.2rem;margin-bottom:.6rem;border-radius:4px}summary{cursor:pointer;font-weight:600}
dl{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1.5rem}dd{margin:0}
iframe{width:100%;height:340px;border:0;border-radius:4px}
.dark{background:var(--ink);color:var(--white);max-width:none}.dark>*{max-width:1100px;margin-inline:auto}
footer{padding:2rem 5vw;text-align:center;background:var(--white);font-size:.95rem}
@media(prefers-reduced-motion:no-preference){.btn{transition:transform .15s}.btn:hover{transform:translateY(-2px)}}
