@import "https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,100..900&family=Oswald:wght@400;500;600;700&display=swap";:root{--heading-font:"Oswald", "Arial Narrow", sans-serif;--body-font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;color:#2a1010;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;font-weight:400;line-height:1.55}body{font-family:var(--body-font);font-optical-sizing:auto;margin:0}h1,h2,h3{font-family:var(--heading-font)}a{color:inherit}*{box-sizing:border-box}.container{width:min(1100px,100% - 2rem);margin:0 auto}.skip-link{z-index:2000;color:#b91c1c;background:#fff;border:2px solid #b91c1c;border-radius:.4rem;padding:.5rem .8rem;position:absolute;top:-4rem;left:1rem}.skip-link:focus-visible{top:1rem}.navbar{z-index:1000;background:#fff;border-bottom:1px solid #fecaca;position:sticky;top:0}.navbar__inner{justify-content:space-between;align-items:center;min-height:4rem;display:flex}.navbar__toggle{cursor:pointer;background:0 0;border:none;font-size:2rem;display:none}.navbar__links{flex-wrap:wrap;gap:.6rem;display:flex}.nav-btn{color:#991b1b;cursor:pointer;font-weight:600;font:inherit;background:0 0;border:1px solid #0000;border-radius:.5rem;padding:.45rem .65rem;text-decoration:none}.hero{color:#3f0a0a;background:linear-gradient(135deg,#fff1f2,#fff);padding:4rem 0 3rem}.hero__eyebrow{text-transform:uppercase;letter-spacing:.06em;margin:0}h1,h2,h3{margin:0;line-height:1.2}h1{margin-top:.8rem;font-size:clamp(2rem,3.1vw,3rem)}h2{margin-bottom:.9rem;font-size:clamp(1.55rem,2.7vw,2.2rem)}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.btn{color:#fff;cursor:pointer;background:#b91c1c;border:2px solid #b91c1c;border-radius:.6rem;justify-content:center;align-items:center;gap:.4rem;padding:.7rem 1.05rem;font-weight:700;text-decoration:none;display:inline-flex}.btn--secondary{background:#7f1d1d}button:hover,a.btn:hover,.nav-btn:hover{color:#b91c1c;background:#fff;border-color:#b91c1c}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #ef4444}.section{padding:3rem 0}.section--accent{background:#fff5f5}.about-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=600px){.about-grid{grid-template-columns:1fr}}.card{background:#fff;border:1px solid #fecaca;border-radius:.8rem;padding:1rem}.card p{margin:0}.card p+p{margin-top:.85rem}.services-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=600px){.services-grid{grid-template-columns:1fr}}.about-images{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.7rem;margin-top:.95rem;display:grid}.about-images img,.gallery-item img{object-fit:cover;border:1px solid #fca5a5;border-radius:.6rem;width:100%;height:100%}.image-placeholder{color:#7f1d1d;background:snow;border:2px dashed #fca5a5;border-radius:.6rem;justify-content:center;align-items:center;min-height:130px;margin-top:.75rem;display:flex}.highlights{gap:.5rem;margin:0;padding-left:1.2rem;display:grid}.faq-list{gap:.75rem;display:grid}.faq-item{background:#fff;border:1px solid #fecaca;border-radius:.6rem;padding:.75rem .85rem}.faq-item p{margin:.6rem 0 0}.contact-form{gap:.6rem;max-width:38rem;margin-top:1rem;display:grid}.contact-form input,.contact-form textarea{width:100%;font:inherit;background:#fff;border:1px solid #fca5a5;border-radius:.45rem;padding:.65rem .7rem}.consent-line{align-items:start;gap:.55rem;display:flex}.consent-line input{width:auto;margin-top:.2rem}.service-page p+p{margin-top:.8rem}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.85rem;margin-top:1rem;display:grid}.gallery-item{margin:0}.footer{color:#fff7f7;background:#7f1d1d;padding:2.2rem 0}.footer__grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.2rem;display:grid}.footer p{margin:0}.footer p+p{margin-top:.9rem}.to-top{z-index:1600;width:2.6rem;height:2.6rem;padding:0;font-size:1.2rem;position:fixed;bottom:1rem;right:1rem}@media (width<=780px){.hero{padding-top:3.3rem}.section{padding:2.3rem 0}}
