:root{--olive: #4b5320;--olive-dark: #2f3315;--olive-light: #6b7d3a;--khaki: #bdb76b;--bg: #1a1d12;--bg-alt: #15180e;--panel: #232719;--panel-2: #2c311c;--text: #e8e6d5;--text-dim: #a7a88f;--accent: #c9a227;--danger: #b3261e;--border: #3a3f25;--radius: 6px;--shadow: 0 10px 30px rgba(0, 0, 0, .45)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Noto Sans SC,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.7;overflow-x:hidden}.container{max-width:1180px;margin:0 auto;padding:0 24px}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:#0f1109eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);transition:padding .3s}.nav-container{max-width:1180px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font-family:Oswald,sans-serif}.logo-mark{color:var(--accent);font-size:1.5rem}.logo-text{font-size:1.4rem;font-weight:700;letter-spacing:2px}.nav-menu{display:flex;gap:28px}.nav-link{color:var(--text-dim);text-decoration:none;font-size:.95rem;font-weight:500;transition:color .2s;position:relative}.nav-link:hover,.nav-link.active{color:var(--khaki)}.nav-link:after{content:"";position:absolute;bottom:-6px;left:0;width:0;height:2px;background:var(--accent);transition:width .25s}.nav-link:hover:after{width:100%}.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px}.nav-toggle span{display:block;width:24px;height:2px;background:var(--text);transition:.3s}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(#14160e8c,#14160ed9),repeating-linear-gradient(45deg,var(--olive-dark) 0 12px,var(--bg-alt) 12px 24px);overflow:hidden}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 40%,rgba(75,83,32,.4),transparent 70%),radial-gradient(circle at 80% 80%,rgba(201,162,39,.12),transparent 60%)}.hero-content{position:relative;z-index:2;padding:0 24px;max-width:760px}.hero-eyebrow{color:var(--khaki);letter-spacing:8px;font-size:.9rem;margin-bottom:18px;text-transform:uppercase}.hero-title{font-family:Oswald,sans-serif;font-size:clamp(3rem,9vw,6.5rem);font-weight:700;letter-spacing:6px;color:var(--text);text-shadow:0 4px 24px rgba(0,0,0,.6);margin-bottom:18px}.hero-subtitle{font-size:1.15rem;color:var(--text-dim);margin-bottom:36px}.hero-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.scroll-hint{position:absolute;bottom:30px;left:50%;transform:translate(-50%);color:var(--text-dim);font-size:1.5rem;animation:bounce 1.8s infinite;z-index:2}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(10px)}}.btn{display:inline-block;padding:13px 32px;border:none;border-radius:var(--radius);font-family:Oswald,sans-serif;font-size:1rem;font-weight:600;letter-spacing:1.5px;text-decoration:none;cursor:pointer;transition:all .25s;text-transform:uppercase}.btn-primary{background:var(--olive);color:var(--text);border:1px solid var(--olive-light)}.btn-primary:hover{background:var(--olive-light);box-shadow:0 0 0 3px #6b7d3a40;transform:translateY(-2px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.section{padding:90px 0}.section-alt{background:var(--bg-alt);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.section-title{font-family:Oswald,sans-serif;font-size:2.4rem;text-align:center;letter-spacing:4px;color:var(--text);position:relative;margin-bottom:12px}.section-title:before,.section-title:after{content:"★";color:var(--accent);font-size:1rem;margin:0 18px;vertical-align:middle}.section-desc{text-align:center;color:var(--text-dim);margin-bottom:50px;font-size:1.05rem}.timeline{display:grid;gap:24px}.timeline-item{display:flex;gap:28px;align-items:flex-start;background:var(--panel);border-left:3px solid var(--accent);border-radius:var(--radius);padding:24px 28px;transition:transform .25s,background .25s}.timeline-item:hover{transform:translate(6px);background:var(--panel-2)}.timeline-year{font-family:Oswald,sans-serif;font-size:1.8rem;color:var(--accent);min-width:90px;font-weight:700}.timeline-body h3{margin-bottom:6px;color:var(--khaki)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:28px 24px;text-align:center;transition:transform .25s,border-color .25s,box-shadow .25s}.card:hover{transform:translateY(-6px);border-color:var(--accent);box-shadow:var(--shadow)}.card-img{width:100%;height:160px;object-fit:cover;border-radius:var(--radius);margin-bottom:16px;border:1px solid var(--border);transition:transform .4s}.card:hover .card-img{transform:scale(1.04)}.img-loading,img[data-src]:not([src]){background:linear-gradient(90deg,var(--panel) 25%,var(--panel-2) 50%,var(--panel) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.card h3{color:var(--khaki);margin-bottom:10px;font-size:1.15rem}.card p{color:var(--text-dim);font-size:.95rem}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.gallery img{width:100%;height:220px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border);transition:transform .4s,box-shadow .4s;cursor:pointer}.gallery img:hover{transform:scale(1.03);box-shadow:var(--shadow)}.msg-form{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:36px;display:flex;flex-direction:column;gap:14px}.form-row{display:flex;gap:14px;flex-wrap:wrap}.form-input{flex:1;min-width:0;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;color:var(--text);font-family:inherit;font-size:.95rem;transition:border-color .2s}.form-input:focus{outline:none;border-color:var(--accent)}textarea.form-input{resize:vertical;min-width:100%}.msg-form .btn{align-self:flex-start}.msg-list{display:grid;gap:14px}.msg-loading{color:var(--text-dim);text-align:center;padding:20px}.msg-empty{text-align:center;color:var(--text-dim);padding:30px;border:1px dashed var(--border);border-radius:var(--radius)}.msg-item{background:var(--panel);border:1px solid var(--border);border-left:3px solid var(--olive-light);border-radius:var(--radius);padding:18px 20px;transition:border-left-color .2s;animation:fadeIn .4s ease}.msg-item:hover{border-left-color:var(--accent)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.msg-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-wrap:wrap;gap:8px}.msg-author{display:flex;align-items:center;gap:10px}.msg-name{font-weight:700;color:var(--khaki)}.msg-rank{font-size:.72rem;background:var(--olive);color:var(--text);padding:2px 8px;border-radius:10px;letter-spacing:1px}.msg-time{font-size:.8rem;color:var(--text-dim)}.msg-text{color:var(--text);white-space:pre-wrap;word-break:break-word}.msg-error{background:#b3261e26;border:1px solid var(--danger);color:#f3b8b4;padding:12px 16px;border-radius:var(--radius);font-size:.9rem}.site-footer{background:var(--bg-alt);border-top:2px solid var(--olive);padding:40px 0;text-align:center}.footer-logo{color:var(--accent);font-size:1.3rem;letter-spacing:3px;margin-bottom:8px}.footer-text{color:var(--text-dim);font-size:.9rem;margin-bottom:12px}.footer-copy{color:var(--text-dim);font-size:.82rem;opacity:.7}@media (max-width: 768px){.nav-menu{position:fixed;top:64px;right:0;flex-direction:column;background:#0f1109f7;padding:20px;width:200px;gap:6px;transform:translate(110%);transition:transform .3s;border-left:1px solid var(--border);height:calc(100vh - 64px)}.nav-menu.open{transform:translate(0)}.nav-menu .nav-link{padding:12px 0}.nav-toggle{display:flex}.timeline-item{flex-direction:column;gap:6px}.timeline-year{min-width:auto}.section{padding:60px 0}}
