*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#fafaf7;--text:#1a1a1a;--accent:#c0392b;--accent-dark:#962d22;--muted:#6b6b6b;--border:#e0ddd5;--card:#ffffff;--radius:6px;--max-w:760px;--font-body:'Georgia','Times New Roman',serif;--font-heading:'Segoe UI','Helvetica Neue',Arial,sans-serif}
html{font-size:17px;scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--text);background:var(--bg);line-height:1.75}
a{color:var(--accent);text-decoration:none;transition:color .2s}
a:hover{color:var(--accent-dark);text-decoration:underline}
img{max-width:100%;height:auto;display:block}

.site-header{background:#fff;border-bottom:1px solid var(--border);padding:1rem 0;position:sticky;top:0;z-index:100}
.header-inner{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between}
.site-logo{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;color:var(--text);letter-spacing:-.02em}
.site-logo span{color:var(--accent)}
nav a{font-family:var(--font-heading);font-size:.85rem;color:var(--muted);margin-left:1.6rem;text-transform:uppercase;letter-spacing:.06em;font-weight:500;text-decoration:none}
nav a:hover{color:var(--accent)}

main{max-width:var(--max-w);margin:0 auto;padding:2.5rem 1.5rem 4rem}

.hero-label{font-family:var(--font-heading);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:600;margin-bottom:.5rem}
.hero-title{font-family:var(--font-heading);font-size:2rem;line-height:1.2;font-weight:800;margin-bottom:.75rem;color:var(--text)}
.hero-meta{font-size:.85rem;color:var(--muted);margin-bottom:2rem;font-family:var(--font-heading)}
.hero-meta time{font-weight:500}

article h2{font-family:var(--font-heading);font-size:1.35rem;font-weight:700;margin:2.2rem 0 .8rem;color:var(--text);border-bottom:2px solid var(--accent);display:inline-block;padding-bottom:.15rem}
article p{margin-bottom:1.25rem}
article blockquote{border-left:3px solid var(--accent);padding:.8rem 1.2rem;margin:1.5rem 0;background:#fdf6f5;font-style:italic;color:#444}
article ul,article ol{margin:1rem 0 1.5rem 1.5rem}
article li{margin-bottom:.4rem}

.rating-box{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin:2rem 0;display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.rating-box h3{grid-column:1/-1;font-family:var(--font-heading);font-size:1.1rem;margin-bottom:.3rem}
.rating-item{font-family:var(--font-heading);font-size:.9rem;color:var(--muted)}
.rating-item strong{color:var(--text);font-size:1rem}

.page-title{font-family:var(--font-heading);font-size:1.8rem;font-weight:800;margin-bottom:1.5rem;color:var(--text)}
.page-content h2{font-family:var(--font-heading);font-size:1.2rem;font-weight:700;margin:1.8rem 0 .6rem;color:var(--text);border-bottom:none;display:block;padding-bottom:0}
.page-content p,.page-content li{font-size:.95rem;margin-bottom:1rem}
.page-content ul{margin:0 0 1rem 1.5rem;list-style:disc}

.site-footer{background:#fff;border-top:1px solid var(--border);padding:2rem 0;text-align:center}
.footer-inner{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem}
.footer-nav{margin-bottom:.8rem}
.footer-nav a{font-family:var(--font-heading);font-size:.8rem;color:var(--muted);margin:0 .8rem;text-transform:uppercase;letter-spacing:.05em}
.footer-copy{font-family:var(--font-heading);font-size:.75rem;color:#999}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:1.5rem}
.contact-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}
.contact-card h3{font-family:var(--font-heading);font-size:1rem;margin-bottom:.6rem;color:var(--accent)}
.contact-card p{font-size:.9rem;margin-bottom:.3rem}

.comments-section{margin-top:3rem;border-top:2px solid var(--border);padding-top:2rem}
.comments-section h2{font-family:var(--font-heading);font-size:1.3rem;font-weight:700;margin-bottom:1.5rem;color:var(--text);border-bottom:none;display:block;padding-bottom:0}
.comment{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.2rem 1.4rem;margin-bottom:1rem}
.comment.reply{margin-left:2rem;border-left:3px solid var(--accent);background:#fdfcfa}
.comment-header{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem;font-family:var(--font-heading)}
.comment-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#fff;flex-shrink:0}
.comment-name{font-size:.9rem;font-weight:600;color:var(--text)}
.comment-date{font-size:.75rem;color:var(--muted);margin-left:auto}
.comment-body{font-size:.92rem;line-height:1.6;color:#333}
.comment-body p{margin-bottom:.4rem}
.comment-likes{font-family:var(--font-heading);font-size:.78rem;color:var(--muted);margin-top:.5rem}
.comments-note{font-family:var(--font-heading);font-size:.85rem;color:var(--muted);margin-top:1.5rem;padding:1rem;background:#f5f4f0;border-radius:var(--radius);text-align:center}

.blog-list{list-style:none;padding:0;margin:0}
.blog-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem 1.8rem;margin-bottom:1.2rem;transition:border-color .2s}
.blog-card:hover{border-color:var(--accent)}
.blog-card-label{font-family:var(--font-heading);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:600;margin-bottom:.3rem}
.blog-card h2{font-family:var(--font-heading);font-size:1.2rem;font-weight:700;margin-bottom:.4rem;border-bottom:none;display:block;padding-bottom:0}
.blog-card h2 a{color:var(--text);text-decoration:none}
.blog-card h2 a:hover{color:var(--accent)}
.blog-card-meta{font-family:var(--font-heading);font-size:.8rem;color:var(--muted);margin-bottom:.6rem}
.blog-card-excerpt{font-size:.9rem;color:#555;line-height:1.6}
.blog-card-read{font-family:var(--font-heading);font-size:.85rem;color:var(--accent);font-weight:600;display:inline-block;margin-top:.5rem}

#cookie-banner{position:fixed;bottom:0;left:0;right:0;background:#1a1a1a;color:#e0e0e0;z-index:9999;padding:0;box-shadow:0 -2px 12px rgba(0,0,0,.25)}
.cb-inner{max-width:var(--max-w);margin:0 auto;padding:1.2rem 1.5rem;display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}
.cb-inner p{font-family:var(--font-heading);font-size:.82rem;line-height:1.5;flex:1;min-width:250px;margin:0}
.cb-inner a{color:#e8a09a;text-decoration:underline}
.cb-btns{display:flex;gap:.6rem;flex-shrink:0}
.cb-btns button{font-family:var(--font-heading);font-size:.8rem;padding:.55rem 1.2rem;border:none;border-radius:4px;cursor:pointer;font-weight:600;transition:opacity .2s}
#cb-accept{background:var(--accent);color:#fff}
#cb-accept:hover{opacity:.85}
#cb-decline{background:transparent;color:#ccc;border:1px solid #555}
#cb-decline:hover{border-color:#999;color:#fff}

.comment-form{margin-top:2rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem 1.6rem}
.comment-form h3{font-family:var(--font-heading);font-size:1.05rem;font-weight:700;margin-bottom:.3rem}
.comment-form p.form-note{font-family:var(--font-heading);font-size:.8rem;color:var(--muted);margin-bottom:1.2rem}
.comment-form .form-row{display:flex;gap:.8rem;margin-bottom:.8rem}
.comment-form .form-row.full{display:block}
.comment-form label{display:block;font-family:var(--font-heading);font-size:.82rem;font-weight:600;color:var(--text);margin-bottom:.3rem}
.comment-form input,.comment-form textarea{width:100%;font-family:var(--font-body);font-size:.9rem;padding:.6rem .8rem;border:1px solid var(--border);border-radius:4px;background:#fafaf7;color:var(--text);transition:border-color .2s}
.comment-form input:focus,.comment-form textarea:focus{outline:none;border-color:var(--accent)}
.comment-form .form-row>div{flex:1}
.comment-form textarea{resize:vertical;min-height:100px}
.comment-form .form-check{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:1rem;font-family:var(--font-heading);font-size:.8rem;color:var(--muted)}
.comment-form .form-check input[type=checkbox]{margin-top:3px;accent-color:var(--accent)}
.comment-form button[type=submit]{font-family:var(--font-heading);font-size:.88rem;font-weight:600;padding:.65rem 1.8rem;background:var(--accent);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .2s}
.comment-form button[type=submit]:hover{background:var(--accent-dark)}
.comment-form .form-success{display:none;background:#eafaf1;border:1px solid #a3d9b1;border-radius:4px;padding:1rem 1.2rem;font-family:var(--font-heading);font-size:.88rem;color:#2d6a4f;margin-top:.8rem}

@media(max-width:600px){
  html{font-size:16px}
  .hero-title{font-size:1.5rem}
  .header-inner{flex-direction:column;gap:.6rem}
  nav a{margin-left:0;margin-right:1rem}
  .contact-grid{grid-template-columns:1fr}
  .rating-box{grid-template-columns:1fr}
  .comment-form .form-row{flex-direction:column;gap:.8rem}
}
