:root{--red:#D7000F;--gold:#F2C037;--bg:#fff;--text:#222;--muted:#666}
*{box-sizing:border-box}
body{margin:0;font-family:'Noto Sans SC',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--text);background:var(--bg)}
.container{max-width:1080px;margin:0 auto;padding:0 16px}
.site-header{position:sticky;top:0;background:var(--red);color:#fff;z-index:10}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:56px}
.brand{font-weight:700;letter-spacing:.5px}
.nav a{color:#fff;margin:0 10px;text-decoration:none;padding:8px;border-radius:6px}
.nav a:hover{background:rgba(255,255,255,.15)}
.progress{height:3px;background:var(--gold);width:0;transition:width .2s}
.hero{background:linear-gradient(135deg,var(--red),#a4000b);color:#fff;padding:80px 0;text-align:center}
.hero h1{font-size:38px;margin:0 0 8px}
.hero p{margin:0 0 16px;color:#ffe7e9}
.cta{display:inline-block;background:var(--gold);color:#000;padding:10px 16px;border-radius:6px;text-decoration:none;font-weight:600}
.section{padding:56px 0}
.section h2{margin:0 0 16px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.card{background:#fff;border:1px solid #eee;border-radius:12px;padding:16px;box-shadow:0 2px 6px rgba(0,0,0,.06)}
.card h3{margin:0 0 8px}
.card .tag{display:inline-block;background:var(--red);color:#fff;border-radius:999px;padding:4px 10px;font-size:12px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.tile{display:block;background:#fff;border:1px solid #eee;border-radius:12px;padding:16px;text-decoration:none;color:var(--text);box-shadow:0 2px 6px rgba(0,0,0,.06)}
.tile:hover{border-color:var(--gold)}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}
.photo{background:linear-gradient(135deg,#f7e2e2,#fff1f1);border:1px solid #f0d2d2;border-radius:12px;height:120px}
.timeline{position:relative;border-left:3px solid var(--gold);padding-left:16px}
.tl-item{position:relative;margin:12px 0;padding-left:16px}
.tl-item .dot{position:absolute;left:-10px;top:6px;width:14px;height:14px;background:var(--gold);border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 2px var(--gold)}
.tl-item .content h3{margin:0 0 6px}
.tl-item .content p{margin:0;color:var(--muted)}
.contact-form{display:grid;grid-template-columns:1fr;gap:12px}
.contact-form input,.contact-form textarea{padding:10px;border:1px solid #ddd;border-radius:8px;font:inherit}
.contact-form button{padding:10px 14px;border:0;border-radius:8px;background:var(--red);color:#fff;font-weight:600}
.btn{display:inline-block;padding:8px 12px;border:0;border-radius:8px;background:var(--red);color:#fff;font-weight:600;cursor:pointer}
.btn-secondary{background:var(--gold);color:#000}
.btn-danger{background:#a4000b}
.form-actions{display:flex;gap:8px}
.card-actions{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.site-footer{background:#111;color:#aaa;padding:24px 0;text-align:center}
@media (max-width:768px){.nav{display:flex;flex-wrap:wrap}.hero{padding:64px 0}.hero h1{font-size:30px}}
