
  :root{
    --bg:#f1f4ff;
    --ink:#3a332c;
    --muted:#6b7280;
    --bronze:#8a6a44;
    --bronze-soft:#a9835a;
    --line:rgba(138,106,68,.22);
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,"Helvetica Neue",Arial,sans-serif;
    line-height:1.7;
    -webkit-font-smoothing:antialiased;
  }
  .wrap{max-width:960px;margin:0 auto;padding:0 20px 90px;}

  /* ---- Hero ---- */
  .hero{text-align:center;padding:60px 0 10px;}
  .kicker{
    display:inline-block;font-size:12px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--bronze-soft);font-weight:600;margin-bottom:18px;
  }
  .hero h1{
    font-family:Georgia,"Palatino Linotype","Book Antiqua","Times New Roman",serif;
    font-size:clamp(2rem,5vw,3.2rem);font-weight:500;line-height:1.12;
    color:var(--ink);margin:0 0 18px;letter-spacing:-.01em;
  }
  .tagline{color:var(--muted);font-size:1.08rem;max-width:620px;margin:0 auto;}

  /* ---- Intro ---- */
  .intro{max-width:680px;margin:34px auto 0;text-align:center;}
  .intro p{color:var(--ink);font-size:1.02rem;margin:0 0 16px;}

  /* ---- Section head ---- */
  .sec-head{text-align:center;margin:60px auto 28px;}
  .sec-head h2{
    font-family:Georgia,"Palatino Linotype","Book Antiqua","Times New Roman",serif;
    font-size:clamp(1.5rem,3.4vw,2rem);font-weight:500;margin:0 0 8px;color:var(--ink);
  }
  .sec-head p{color:var(--muted);margin:0;font-size:.98rem;}

  /* ---- Gallery (2 columns) ---- */
  .gallery{
    display:grid;grid-template-columns:1fr 1fr;gap:40px 18px;
  }
  figure.slot{margin:0;text-align:center;background:var(--bg);min-width:0;}
  .slot picture{display:block;}
  .slot img{
    width:100%;height:auto;display:block;margin:0 auto;
    border-radius:14px;background:var(--bg);
    box-shadow:0 16px 40px -28px rgba(74,60,40,.5);
  }
  figcaption{margin-top:13px;}
  figcaption .k{
    display:block;font-size:10px;letter-spacing:.26em;text-transform:uppercase;
    color:var(--bronze-soft);font-weight:600;margin-bottom:5px;
  }
  figcaption h2{
    font-family:Georgia,"Palatino Linotype","Book Antiqua","Times New Roman",serif;
    font-size:1.18rem;font-weight:500;margin:0 0 5px;color:var(--ink);line-height:1.25;
  }
  figcaption p{color:var(--muted);margin:0 auto;font-size:.9rem;max-width:340px;}

  /* ---- Features ---- */
  .features{margin:0 auto;max-width:760px;}
  .feat-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .feat{
    background:#ffffff;border:1px solid var(--line);border-radius:14px;
    padding:20px 22px;box-shadow:0 12px 30px -30px rgba(74,60,40,.45);
  }
  .feat h3{
    font-family:Georgia,"Palatino Linotype","Book Antiqua","Times New Roman",serif;
    font-size:1.06rem;font-weight:600;margin:0 0 6px;color:var(--bronze);
  }
  .feat p{margin:0;color:var(--ink);font-size:.94rem;}

  /* ---- FAQ ---- */
  .faq{margin:70px auto 0;max-width:760px;}
  .faq-head{text-align:center;margin-bottom:32px;}
  .faq-head h2{
    font-family:Georgia,"Palatino Linotype","Book Antiqua","Times New Roman",serif;
    font-size:clamp(1.6rem,3.4vw,2.2rem);font-weight:500;margin:0 0 8px;color:var(--ink);
  }
  .faq-head p{color:var(--muted);margin:0;font-size:.98rem;}
  .faq-item{
    background:#ffffff;border:1px solid var(--line);border-radius:14px;
    padding:22px 26px;margin-bottom:14px;
    box-shadow:0 12px 30px -30px rgba(74,60,40,.45);
  }
  .faq-item h3{
    font-family:Georgia,"Palatino Linotype","Book Antiqua","Times New Roman",serif;
    font-size:1.08rem;font-weight:600;margin:0 0 8px;color:var(--bronze);
  }
  .faq-item p{margin:0;color:var(--ink);font-size:.96rem;}

  /* ---- Closing ---- */
  .closing{text-align:center;margin:74px auto 0;max-width:640px;}
  .closing h2{
    font-family:Georgia,"Palatino Linotype","Book Antiqua","Times New Roman",serif;
    font-size:1.6rem;font-weight:500;margin:0 0 10px;color:var(--ink);
  }
  .closing p{color:var(--muted);margin:0 auto;font-size:.98rem;}

  @media (max-width:640px){
    .wrap{padding:0 16px 60px;}
    .hero{padding-top:42px;}
    .gallery{gap:26px 10px;}
    .slot img{border-radius:10px;}
    figcaption h2{font-size:1.02rem;}
    figcaption p{font-size:.82rem;}
    .feat-grid{grid-template-columns:1fr;}
    .faq-item{padding:18px 20px;}
  }
