  :root{
    --cream:#F5F0E4;
    --cream-2:#EFE8D6;
    --forest:#1F4A34;
    --forest-2:#173a29;
    --wood:#8a5a2b;
    --ink:#1c1c1a;
    --ink-2:#4a4a44;
    --line:#d8cfb8;
    --tan-box:#EFE2C8;
    --white:#FFFFFF;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--cream);
    color:var(--ink);
    font-family:'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
    line-height:1.5;
  }
  .wrap{max-width:1180px; margin:0 auto; padding:0 22px;}

  /* ===== TOP BAR ===== */
  .topbar{
    display:flex; justify-content:space-between; align-items:flex-start;
    gap:20px; padding:26px 0 18px;
    border-bottom:3px solid var(--forest);
    flex-wrap:wrap;
  }
  .brand h1{
    font-size:clamp(28px,4vw,40px);
    letter-spacing:0.5px;
    margin:0 0 6px;
    font-weight:900;
    color:var(--ink);
  }
  .brand .tag{
    font-size:15px; color:var(--forest); font-weight:600; letter-spacing:0.3px;
    display:flex; align-items:center; gap:8px;
  }
  .leaf{display:inline-block; width:16px; height:16px; vertical-align:-2px;}
  .badge{
    text-align:right; min-width:230px;
  }
  .badge .pill{
    background:var(--forest); color:#fff; border-radius:8px;
    padding:10px 18px; display:inline-block;
  }
  .badge .pill .name{font-size:19px; font-weight:800; letter-spacing:0.5px;}
  .badge .pill .dims{font-size:15px; font-weight:700; color:#e8c94a; margin-top:2px;}
  .badge .sub{font-size:12.5px; color:var(--ink-2); margin-top:8px; line-height:1.4;}

  /* ===== HERO TWO-COL ===== */
  .hero{
    display:grid; grid-template-columns: 1.05fr 1fr; gap:34px;
    padding:32px 0 10px;
    align-items:start;
  }
  @media (max-width:860px){ .hero{grid-template-columns:1fr;} }

  .hero-copy h2{
    font-size:clamp(22px,3vw,29px);
    line-height:1.22; margin:0 0 14px;
    font-weight:900; letter-spacing:0.2px;
  }
  .hero-copy p{font-size:14.5px; color:var(--ink-2); margin:0 0 14px;}
  .enquire{
    margin:18px 0 20px; display:flex; align-items:flex-start; gap:10px;
  }
  .enquire .leaf{margin-top:6px;}
  .enquire .lines b{display:block; font-size:17px; font-weight:800;}
  .enquire .lines .email{font-size:15px; color:var(--forest); font-weight:700;}

  .report-box{
    border:1.5px solid var(--line); border-radius:10px; padding:18px 20px;
    background:var(--white);
  }
  .report-box .rb-head{
    display:flex; align-items:center; gap:8px;
    font-weight:800; font-size:14.5px; letter-spacing:0.2px;
    margin-bottom:10px; color:var(--ink);
  }
  .report-box p{font-size:13px; color:var(--ink-2); margin:0 0 10px;}
  .report-box p:last-child{margin-bottom:0;}
  .report-box em{font-style:italic;}

  .hero-media img.hero-photo{
    width:100%; border-radius:14px; display:block; object-fit:cover;
  }
  .hero-caption{
    margin-top:14px; background:var(--tan-box); border-radius:10px;
    padding:14px 18px; text-align:center; font-size:14px; font-weight:700;
    line-height:1.45;
  }

  /* ===== WHY BAND ===== */
  .why-band{
    background:var(--forest); color:#fff; text-align:center;
    font-weight:800; letter-spacing:0.5px; font-size:16px;
    padding:12px 0; border-radius:8px; margin-top:34px;
  }
  .why-grid{
    display:grid; grid-template-columns:repeat(5,1fr); gap:14px;
    padding:24px 6px 20px;
  }
  @media (max-width:760px){ .why-grid{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:420px){ .why-grid{grid-template-columns:1fr;} }
  .why-item{text-align:center;}
  .why-item svg{width:38px; height:38px;}
  .why-item .wt{
    margin-top:10px; font-size:12.5px; font-weight:800; letter-spacing:0.2px;
    color:var(--ink); line-height:1.3;
  }
  .why-note{
    background:var(--tan-box); border-radius:10px; padding:16px 22px;
    text-align:center; font-size:14px; font-weight:600; line-height:1.5;
    margin-bottom:34px;
  }

  /* ===== TWIN PHOTOS ===== */
  .twin{
    display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:34px;
  }
  @media (max-width:600px){ .twin{grid-template-columns:1fr;} }
  .twin figure{margin:0; border-radius:12px; overflow:hidden; position:relative;}
  .twin figure img{width:100%; display:block; height:auto; object-fit:cover;}
  .twin figcaption{
    background:var(--forest); color:#fff; text-align:center;
    font-weight:800; letter-spacing:0.4px; font-size:15px; padding:9px 0;
  }

  /* ===== BOTTOM GRID ===== */
  .bottom-grid{
    display:grid; grid-template-columns: 1.05fr 0.85fr 0.85fr; gap:26px;
    margin-bottom:0;
  }
  @media (max-width:900px){ .bottom-grid{grid-template-columns:1fr;} }

  .feat-box{
    border:1.5px solid var(--line); border-radius:10px; padding:18px 20px;
    background:var(--white); margin-bottom:18px;
  }
  .feat-box h3{
    font-size:14.5px; font-weight:800; margin:0 0 12px; letter-spacing:0.2px;
    display:flex; align-items:center; gap:8px;
  }
  .feat-list{list-style:none; margin:0; padding:0;}
  .feat-list li{
    font-size:13.5px; color:var(--ink-2); margin-bottom:9px; padding-left:22px;
    position:relative; line-height:1.4;
  }
  .feat-list li:last-child{margin-bottom:0;}
  .feat-list li::before{
    content:"✓"; position:absolute; left:0; top:0; color:var(--forest); font-weight:900;
  }

  .spec-panel{border-radius:10px; overflow:hidden; border:1.5px solid var(--line); margin-bottom:18px;}
  .spec-head{
    background:var(--forest); color:#fff; font-weight:800; font-size:13px;
    letter-spacing:0.3px; padding:9px 16px;
  }
  .spec-body{padding:14px 18px; background:var(--white); font-size:13px; color:var(--ink-2);}
  .spec-body ul{margin:0; padding-left:18px;}
  .spec-body li{margin-bottom:6px;}
  table.dims{width:100%; border-collapse:collapse; font-size:13px;}
  table.dims td{padding:7px 10px; border-bottom:1px solid var(--line); color:var(--ink-2);}
  table.dims td:first-child{font-weight:700; color:var(--ink); width:45%;}
  .cushion-note{font-size:13px; font-weight:800; margin-top:12px; color:var(--ink);}

  .topview-panel{text-align:center;}
  .topview-panel img{max-width:100%; border-radius:8px;}

  .bounce-copy{font-size:16px; font-weight:700; line-height:1.4; margin:0 0 16px;}
  .order-box{
    border:2px solid var(--ink); border-radius:8px; min-height:170px;
    padding:14px 16px; font-weight:700; font-size:14px; background:var(--white);
  }
  .order-box a{color:var(--forest);}

  /* ===== FOOTER BAND ===== */
  .foot-band{
    background:var(--forest-2); color:#fff; margin-top:38px;
    padding:20px 0;
  }
  .foot-grid{
    display:grid; grid-template-columns:repeat(4,1fr); gap:16px;
    text-align:center;
  }
  @media (max-width:760px){ .foot-grid{grid-template-columns:repeat(2,1fr);} }
  .foot-grid .fi{display:flex; flex-direction:column; align-items:center; gap:8px;}
  .foot-grid svg{width:26px; height:26px;}
  .foot-grid .ft{font-size:12px; font-weight:800; letter-spacing:0.3px; line-height:1.3;}

  /* ===== PROMO / CTA CARDS ===== */
  .promo-wrap{
    max-width:1180px; margin:38px auto 0; padding:0 22px 42px;
    display:grid; grid-template-columns:1fr 1fr; gap:22px;
  }
  @media (max-width:760px){ .promo-wrap{grid-template-columns:1fr;} }
  .promo-card{
    border:2px solid var(--ink); border-radius:14px; padding:22px 24px;
    background:var(--white);
  }
  .promo-card.share p{font-size:14px; color:#2255aa; margin:0 0 12px; line-height:1.5;}
  .promo-card.share p:last-of-type{margin-bottom:0;}
  .promo-card.share a{color:#2255aa; font-weight:700;}
  .promo-card.launch{
    display:flex; align-items:center;
  }
  .promo-card.launch p{
    font-size:21px; color:#2255aa; font-weight:600; line-height:1.35; margin:0;
  }
  .promo-card.launch a{color:#2255aa; font-weight:800;}

  .top-strip{
    height:6px; width:100%;
    background:linear-gradient(90deg, var(--wood), var(--forest));
  }
