:root{
    --bg:#ffffff;
    --card:#ffffff;
    --muted:#6b7280;
    --text:#0f172a;
    --accent:#dc2626;      /* Rot */
    --accent-2:#ef4444;
    --border:#e5e7eb;
    --shadow:0 10px 30px rgba(0,0,0,.08);
    --radius:16px;
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font:16px/1.6 Inter,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
  img{max-width:100%;display:block}
  a{color:var(--accent)}
  .container{width:min(1100px,92vw);margin-inline:auto}
  
  /* Header */
  .site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);
    backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--border)}
  .header-inner{display:flex;align-items:center;justify-content:space-between;padding:.9rem 0}
  .brand{font-weight:800;letter-spacing:.2px;text-decoration:none;color:var(--text)}
  .nav{display:flex;gap:1rem;list-style:none;margin:0;padding:0}
  .nav a{color:#111827;text-decoration:none;padding:.4rem .6rem;border-radius:10px}
  .nav a:hover{background:#f3f4f6}
  .nav-toggle{display:none;background:transparent;border:1px solid var(--border);color:#111;border-radius:12px;padding:.4rem .6rem}
  @media (max-width:780px){
    .nav-toggle{display:inline-block}
    .nav{position:absolute;right:1rem;top:60px;background:#fff;border:1px solid var(--border);
      border-radius:12px;padding:.6rem;flex-direction:column;display:none;min-width:200px;box-shadow:var(--shadow)}
    .nav.open{display:flex}
  }
  
  /* Hero */
  .hero{position:relative;isolation:isolate}
  .hero-inner{padding:6rem 0 3rem;text-align:center}
  .hero .lead{color:#374151}
  .hero .btn{margin-top:1rem}
  .hero-bg{position:absolute;inset:0;z-index:-1;background:
    radial-gradient(900px 420px at 50% -10%, rgba(220,38,38,.10), transparent 60%),
    radial-gradient(700px 350px at 15% 10%, rgba(239,68,68,.08), transparent 60%);}
  
  /* Sections */
  .section{padding:3.5rem 0}
  .section.alt{background:linear-gradient(180deg,#fff,#fafafa);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
  .grid-2{display:grid;gap:1.8rem;grid-template-columns:2fr 1.2fr}
  @media (max-width:900px){.grid-2{grid-template-columns:1fr}}
  .card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.2rem;box-shadow:var(--shadow)}
  .checklist{padding-left:1.1rem}.checklist li{margin:.35rem 0}
  
  /* Buttons */
  .btn{display:inline-block;background:linear-gradient(135deg,var(--accent),var(--accent-2));
    color:#fff;font-weight:700;padding:.7rem 1rem;border-radius:12px;text-decoration:none;border:none;cursor:pointer}
  .btn:hover{filter:brightness(1.06)}
  .btn-ghost{background:#fff;color:var(--accent);border:1px solid var(--border)}
  .btn-ghost:hover{background:#f9fafb}
  
  /* Muted text */
  .muted{color:var(--muted)} .tiny{font-size:.85rem}
  
  /* Timeline */
  .timeline{display:grid;gap:1.2rem}
  .step{display:grid;grid-template-columns:40px 1fr;gap:1rem;align-items:start}
  .step-number{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;
    background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-weight:800}
  .inline-figure{margin:.8rem 0}
  .inline-figure img{border-radius:12px;border:1px solid var(--border);box-shadow:var(--shadow)}
  
  /* Gallery + Lightbox */
  .gallery{display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}
  @media (max-width:900px){.gallery{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:560px){.gallery{grid-template-columns:1fr}}
  .gallery-item{border-radius:12px;overflow:hidden;border:1px solid var(--border);cursor:zoom-in;box-shadow:var(--shadow)}
  .gallery-item img{aspect-ratio:4/3;object-fit:cover;transition:transform .3s ease}
  .gallery-item:hover img{transform:scale(1.03)}
  .lightbox{position:fixed;inset:0;background:rgba(0,0,0,.8);display:none;align-items:center;justify-content:center;padding:2rem}
  .lightbox.open{display:flex}
  .lightbox-img{max-width:90vw;max-height:80vh;border-radius:14px;box-shadow:0 10px 40px rgba(0,0,0,.5)}
  .lightbox-close{position:absolute;top:18px;right:18px;width:42px;height:42px;border-radius:50%;
    border:none;background:#ffffff22;color:#fff;font-size:26px;cursor:pointer}
  .lightbox-caption{margin-top:.6rem;color:#f9fafb;text-align:center}
  
  /* Reviews */
  .reviews{display:grid;gap:1rem;margin-top:1.2rem}
  .review{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1rem;box-shadow:var(--shadow)}
  .review-header{display:flex;justify-content:space-between;gap:1rem;align-items:center}
  .stars{letter-spacing:.1em;color:#f59e0b}
  .review .name{font-weight:700}
  
  .review-form{margin-top:1.6rem;display:grid;gap:.8rem;background:#fff;border:1px solid var(--border);
    border-radius:14px;padding:1rem;box-shadow:var(--shadow)}
  .review-form input,.review-form textarea{
    width:100%;background:#fff;border:1px solid var(--border);border-radius:10px;color:#111;padding:.7rem}
  .stars-input{display:flex;gap:.25rem;direction:rtl}
  .stars-input input{display:none}
  .stars-input label{cursor:pointer;font-size:1.6rem;color:#d1d5db}
  .stars-input input:checked ~ label, .stars-input label:hover, .stars-input label:hover ~ label{color:#f59e0b}
  
  /* Footer */
  .site-footer{border-top:1px solid var(--border);padding:2rem 0;background:#fff}
  .footer-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem}
  .back-to-top{color:var(--accent);text-decoration:none}
  