:root{--pri:#8B2020;--pri-light:#b03030;--bg-dark:#1a0808;--light:#f8f4f4;--text:#222;--muted:#666;--rad:8px;--trans:.22s ease}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Segoe UI',Arial,sans-serif;color:var(--text);background:#fff;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

header{position:sticky;top:0;z-index:100;background:var(--bg-dark);box-shadow:0 2px 12px rgba(0,0,0,.5)}
nav{max-width:1200px;margin:0 auto;padding:.8rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo-wrap img{height:45px;width:auto}
.logo-text{font-size:1.35rem;font-weight:800;color:#fff;letter-spacing:2px;border:2px solid var(--pri);padding:.25rem .8rem;display:none}
.logo-text span{color:var(--pri-light)}
.nav-links{display:flex;gap:1.8rem;list-style:none}
.nav-links a{color:rgba(255,255,255,.8);font-size:.9rem;font-weight:500;transition:color var(--trans)}
.nav-links a:hover{color:#fff}
.nav-cta{background:var(--pri);color:#fff;padding:.4rem 1rem;border-radius:var(--rad);font-weight:600;font-size:.9rem}
#menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:.3rem}
#menu-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0}

.breadcrumb{background:var(--light);padding:.7rem 1.5rem;font-size:.82rem;color:var(--muted);border-bottom:1px solid #e8dede}
.breadcrumb-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:.4rem}
.breadcrumb a{color:var(--pri)}

.page-hero{background:var(--bg-dark);color:#fff;padding:2.8rem 1.5rem 2.2rem;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,rgba(139,32,32,.2),transparent 70%)}
.page-hero-inner{max-width:1200px;margin:0 auto;position:relative;display:flex;align-items:center;gap:1.8rem}
.page-hero-icon{font-size:3.2rem}
.tag{display:inline-block;background:rgba(139,32,32,.25);color:#f5c6c6;font-size:.75rem;font-weight:700;padding:.2rem .7rem;border-radius:50px;margin-bottom:.6rem;letter-spacing:.3px}
.page-hero h1{font-size:clamp(1.5rem,3vw,2.2rem);font-weight:800;margin-bottom:.3rem}
.page-hero p{color:rgba(255,255,255,.7);font-size:.95rem}

/* CONTACT GRID */
.contact-wrap{max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem;display:grid;grid-template-columns:1fr 1.4fr;gap:3rem;align-items:start}

/* INFO BOX */
.info-box h2{font-size:1.2rem;font-weight:800;color:var(--pri);margin-bottom:1rem}
.info-item{display:flex;align-items:flex-start;gap:.9rem;margin-bottom:1.1rem;padding-bottom:1.1rem;border-bottom:1px solid #f0e8e8}
.info-item:last-of-type{border-bottom:none}
.info-icon{width:42px;height:42px;min-width:42px;background:var(--light);border:1px solid #e8dede;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.info-text strong{display:block;font-size:.83rem;color:var(--pri);font-weight:700;margin-bottom:.15rem}
.info-text span,.info-text a{font-size:.9rem;color:#444;line-height:1.5}
.info-text a:hover{color:var(--pri);text-decoration:underline}

.hours-table{width:100%;font-size:.85rem;border-collapse:collapse;margin-top:.3rem}
.hours-table td{padding:.25rem 0;color:#444}
.hours-table td:last-child{text-align:right;color:var(--pri);font-weight:600}

/* MAP */
.map-wrap{border-radius:var(--rad);overflow:hidden;height:220px;border:1px solid #e8dede;margin-top:1.5rem;background:var(--light)}
.map-wrap iframe{width:100%;height:100%;border:none}

/* FORM */
.form-box{background:var(--light);border:1px solid #e8dede;border-radius:var(--rad);padding:2rem}
.form-box h2{font-size:1.1rem;font-weight:700;color:var(--pri);margin-bottom:1.3rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.form-group{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.8rem}
label{font-size:.8rem;font-weight:700;color:var(--pri)}
input,textarea,select{padding:.65rem .9rem;border:1.5px solid #d4c4c4;border-radius:6px;font-size:.9rem;font-family:inherit;outline:none;transition:border-color var(--trans);background:#fff}
input:focus,textarea:focus,select:focus{border-color:var(--pri);box-shadow:0 0 0 3px rgba(139,32,32,.07)}
textarea{resize:vertical;min-height:120px}
.privacy-check{display:flex;align-items:flex-start;gap:.6rem;font-size:.78rem;color:#555;margin-bottom:1rem}
.privacy-check input[type=checkbox]{width:16px;height:16px;margin-top:2px;accent-color:var(--pri);flex-shrink:0}
.privacy-check a{color:var(--pri)}
.btn-submit{width:100%;background:var(--pri);color:#fff;border:none;padding:.85rem;border-radius:var(--rad);font-size:.95rem;font-weight:700;cursor:pointer;transition:var(--trans)}
.btn-submit:hover{background:var(--pri-light);transform:translateY(-1px)}
.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}

/* SUCCESS */
.success-msg{display:none;background:#d4edda;border:1px solid #c3e6cb;border-radius:var(--rad);padding:1rem 1.2rem;color:#155724;font-size:.9rem;margin-bottom:1rem;align-items:center;gap:.6rem}
.success-msg.show{display:flex}

footer{background:var(--bg-dark);color:rgba(255,255,255,.7);padding:2rem 1.5rem 1rem;margin-top:2rem}
.footer-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:1.5rem;margin-bottom:1.5rem}
footer p,footer li{font-size:.82rem}
footer h4{color:#fff;font-size:.87rem;margin-bottom:.5rem}
footer ul{list-style:none}
footer ul li{margin-bottom:.3rem}
footer ul li a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:.8rem;font-size:.77rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.3rem}

@media(max-width:820px){.contact-wrap{grid-template-columns:1fr}}
@media(max-width:480px){.form-row{grid-template-columns:1fr}}
@media(max-width:580px){
  .nav-links{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--bg-dark);padding:1rem 1.5rem;gap:.8rem;z-index:99}
  .nav-links.open{display:flex}
  #menu-toggle{display:block}
  nav{position:relative}
}