/* product style for kerusi-urut */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Poppins', sans-serif;color:#333;line-height:1.6}
nav{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--navy);border-bottom:1px solid #e8f4fd;position:sticky;top:0;z-index:100}
nav a{text-decoration:none;color:#002856;font-weight:600;font-size:14px}
nav .nav-logo{height:28px}
.nav-wa{background:#00a859;color:#fff;padding:8px 16px;border-radius:6px}
.hero{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);color:#fff;padding:80px 24px 60px;text-align:center}
.hero .brand-badge{display:inline-block;background:rgba(255,255,255,.15);color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;margin-bottom:12px}
.hero h1{font-size:clamp(36px,8vw,56px);font-weight:800}
.hero-sub{font-size:18px;opacity:0.85;margin:8px 0 16px}
.hero-img{max-width:500px;width:100%;margin:24px auto;display:block}
.hero-pricing{margin:24px 0}
.promo{font-size:48px;font-weight:800;color:#e31837}
.promo span{font-size:18px;font-weight:400;color:rgba(255,255,255,.7)}
.original{font-size:20px;color:rgba(255,255,255,.5);text-decoration:line-through;margin-left:8px}
.note{font-size:13px;color:rgba(255,255,255,.7);margin-top:4px}
.cta{display:inline-block;background:#00a859;color:#fff;padding:14px 32px;border-radius:8px;font-size:16px;font-weight:700;text-decoration:none;margin-top:12px}
.feat-main{padding:60px 24px}
.feat-main:nth-child(odd){background:#f8fafc}
.feat-content{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.feat-content.rev{direction:rtl}.feat-content.rev>*{direction:ltr}
.feat-content img{width:100%;border-radius:12px}
.feat-content h2{font-size:28px;color:#002856;margin-bottom:12px}
.feat-content p{font-size:15px;color:#555;line-height:1.7}
.icons-section{padding:60px 24px;background:#e8f4fd}
.icons-section h2{text-align:center;font-size:28px;color:#002856;margin-bottom:32px}
.icons-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.icon-card{background:#fff;border-radius:12px;padding:24px;text-align:center}
.icon-card img{width:100%;border-radius:8px;margin-bottom:16px;max-height:200px;object-fit:cover}
.icon-card h4{font-size:16px;color:#002856;margin-bottom:8px}
.icon-card p{font-size:13px;color:#555}
.massage-types{padding:60px 24px;text-align:center}
.massage-types h2{font-size:28px;color:#002856;margin-bottom:32px}
.massage-grid{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;max-width:1000px;margin:0 auto}
.massage-card{background:#fff;border-radius:12px;padding:20px;width:180px;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.massage-card img{width:100%;height:120px;object-fit:contain;margin-bottom:12px}
.massage-card p{font-weight:700;color:#002856;font-size:14px}
.gallery-section{padding:60px 24px;background:#f8fafc}
.gallery-section h2{text-align:center;font-size:28px;color:#002856;margin-bottom:32px}
.gallery-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.gallery-grid img{width:100%;border-radius:8px}
.benefits{padding:60px 24px;max-width:1100px;margin:0 auto}
.benefits h2{text-align:center;font-size:28px;color:#002856;margin-bottom:32px}
.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}
.ben-card{text-align:center;padding:24px}
.ben-card img{width:80px;margin-bottom:16px}
.ben-card h4{font-size:15px;color:#002856;margin-bottom:6px}
.ben-card p{font-size:13px;color:#777}
.heart{padding:60px 24px;background:linear-gradient(135deg,#002856,#0066b3);color:#fff;text-align:center}
.heart h2{font-size:28px;margin-bottom:12px}
.heart p{margin-bottom:24px;opacity:0.9}
.heart img{max-width:300px;border-radius:12px}
.heart a{display:inline-block;background:#fff;color:#002856;padding:12px 28px;border-radius:8px;font-weight:700;text-decoration:none;margin-top:16px}
.specs{padding:60px 24px;max-width:800px;margin:0 auto}
.specs h2{text-align:center;font-size:28px;color:#002856;margin-bottom:32px}
.specs table{width:100%;border-collapse:collapse}
.specs td,.specs th{padding:12px 16px;border-bottom:1px solid #e8f4fd;text-align:left;font-size:14px}
.specs th{color:#002856;font-weight:700;width:35%}
.specs-img{text-align:center;margin:24px 0}
.specs-img img{max-width:100%}
.pricing{padding:60px 24px;background:#e8f4fd}
.pricing h2{text-align:center;font-size:28px;color:#002856;margin-bottom:32px}
.price-grid{max-width:700px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.price-card{background:#fff;border-radius:12px;padding:32px 24px;text-align:center;position:relative}
.price-card.featured{border:2px solid #e31837}
.price-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:#e31837;color:#fff;padding:4px 16px;border-radius:20px;font-size:12px;font-weight:700}
.price-card h3{color:#002856;font-size:16px;margin-bottom:12px}
.price{font-size:36px;font-weight:800;color:#002856}
.price s{font-size:22px;color:#999;font-weight:400}
.price span{font-size:14px;font-weight:400;color:#666}
.price-note{font-size:12px;color:#666;margin:8px 0 16px}
.price-card .cta{display:inline-block;background:#00a859;color:#fff;padding:12px 24px;border-radius:8px;font-weight:700;text-decoration:none;font-size:14px}
.price-card .cta.outline{background:#fff;color:#00a859;border:2px solid #00a859}
.cta-bottom{padding:60px 24px;background:#002856;color:#fff;text-align:center}
.cta-bottom h2{font-size:28px}
.cta-bottom a{display:inline-block;background:#00a859;color:#fff;padding:14px 32px;border-radius:8px;font-size:16px;font-weight:700;text-decoration:none;margin-top:16px}
footer{padding:32px 24px;background:#001a3d;color:rgba(255,255,255,.7);text-align:center;font-size:13px}
footer a{color:rgba(255,255,255,.7);text-decoration:none;margin:0 8px}
.floating-wa{position:fixed;bottom:24px;right:24px;background:#00a859;color:#fff;padding:12px 20px;border-radius:50px;font-weight:700;text-decoration:none;box-shadow:0 4px 16px rgba(0,168,89,.3);z-index:200}
@media(max-width:768px){.feat-content{grid-template-columns:1fr;gap:24px}.price-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important}}

  .nav-toggle {
    display: none;
    flex-direction: column;
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 4px;
    gap: 5px;
    z-index: 101;
  }
  .nav-toggle span {
    display: block;
    width: 24px;
    height: 2.5px;
    background: var(--coway-navy, #002856);
    border-radius: 2px;
    transition: all 0.3s ease;
  }
  .nav-toggle.open span:nth-child(1) { transform: translateY(7.5px) rotate(45deg); }
  .nav-toggle.open span:nth-child(2) { opacity: 0; }
  .nav-toggle.open span:nth-child(3) { transform: translateY(-7.5px) rotate(-45deg); }
  .nav-links {
    display: flex;
    list-style: none;
    gap: 0.5rem;
    align-items: center;
    margin: 0;
    padding: 0;
  }
  .nav-links a {
    color: #fff;
    text-decoration: none;
    padding: 0.4rem 0.75rem;
    border-radius: 6px;
    font-size: 0.82rem;
    font-weight: 500;
    transition: background 0.2s;
    white-space: nowrap;
  }
  .nav-links a:hover { background: rgba(255,255,255,0.15); }
  .nav-cta {
    background: var(--coway-green, #00a859);
    color: white !important;
    padding: 0.4rem 1rem !important;
    border-radius: 50px !important;
    font-weight: 600 !important;
  }
  @media (max-width: 768px) {
    .nav-toggle { display: flex; }
    .nav-links {
      position: fixed;
      top: 0;
      right: 0;
      width: 260px;
      height: 100vh;
      background: white;
      flex-direction: column;
      padding: 80px 24px 24px;
      box-shadow: -4px 0 20px rgba(0,0,0,0.1);
      transform: translateX(100%);
      transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
      z-index: 100;
      gap: 0.25rem;
      align-items: stretch;
    }
    .nav-links.open { transform: translateX(0); }
    .nav-links a { font-size: 0.95rem; padding: 0.75rem 1rem; color: var(--navy); }
  }
  .footer {
    background: var(--coway-navy, #002856);
    color: rgba(255,255,255,0.8);
    padding: 2rem 1.5rem;
    text-align: center;
    margin-top: 2rem;
    font-size: 0.85rem;
  }
  .footer p { margin: 0.25rem 0; }
  .footer a { color: rgba(255,255,255,0.8); }
  .footer-social { margin: 1rem 0; display: flex; gap: 1rem; justify-content: center; }
  .footer-social a { opacity: 0.8; transition: opacity 0.2s; }
  .footer-social a:hover { opacity: 1; }
  .nav {
    background: #ffffff;
    border-bottom: 1px solid #e0e0e0;
    padding: 0.75rem 1.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: sticky;
    top: 0;
    z-index: 100;
  }
  .nav-logo { height: 36px; }
  .nav-links {
    display: flex;
    gap: 0.25rem;
    list-style: none;
    flex-wrap: wrap;
  }
  .nav-links a {
    padding: 0.5rem 0.85rem;
    border-radius: 6px;
    text-decoration: none;
    color: #1a1a1a;
    font-size: 0.85rem;
    font-weight: 500;
    transition: background 0.2s;
  }
  .nav-links a:hover { background: #e8f4fd; color: #002856; }
  .nav-cta {
    background: #00a859;
    color: #ffffff;
    padding: 0.5rem 1.25rem;
    border-radius: 50px;
    font-weight: 600;
  }
  .nav-toggle {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
    padding: 4px;
    background: none;
    border: none;
    z-index: 101;
  }
  .nav-toggle span {
    display: block;
    width: 24px;
    height: 2px;
    background: #002856;
    border-radius: 2px;
    transition: all 0.3s cubic-bezier(0.22,1,0.36,1);
  }
  .nav-toggle.open span:nth-child(1) { transform: rotate(45deg) translate(5px,5px); }
  .nav-toggle.open span:nth-child(2) { opacity: 0; }
  .nav-toggle.open span:nth-child(3) { transform: rotate(-45deg) translate(5px,-5px); }
  @media (max-width: 768px) {
    .nav { position: relative; }
    .nav-toggle { display: flex; }
    .nav-links {
      display: none;
      position: absolute;
      top: 100%;
      left: 0;
      right: 0;
      background: #ffffff;
      flex-direction: column;
      padding: 0.75rem 1.5rem;
      border-bottom: 3px solid #002856;
      box-shadow: 0 12px 32px rgba(0,0,0,0.12);
      gap: 0;
    }
    .nav-links.open { display: flex; }
    .nav-links li { width: 100%; }
    .nav-links a {
      display: block;
      padding: 0.75rem 0.25rem;
      border-bottom: 1px solid #e0e0e0;
      font-size: 0.95rem;
      font-weight: 500;
    }
    .nav-links a.nav-cta {
      margin-top: 0.5rem;
      text-align: center;
      border-radius: 8px;
      border-bottom: none;
      padding: 0.75rem;
    }
  }
