/* ============================================
   WhatsApp-style testimonials
   ============================================ */
.wa-rating{display:flex;align-items:center;gap:14px;padding:12px 16px;background:rgba(212,168,90,0.08);border:1px solid rgba(212,168,90,0.25);border-radius:14px}
.wa-rating-stars{font-size:14px;letter-spacing:2px;color:var(--gold)}
.wa-rating-v{font-family:var(--display);font-size:28px;color:var(--text);line-height:1;display:block}
.wa-rating-l{font-family:var(--mono);font-size:9px;letter-spacing:0.16em;color:var(--text-mute);text-transform:uppercase;display:block;margin-top:4px}
.wa-add-review{align-self:flex-end}

.wa-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:30px}
@media(max-width:1100px){.wa-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.wa-grid{grid-template-columns:1fr}}

.wa-chat{
  background:#0b141a;border:1px solid rgba(255,255,255,0.06);border-radius:18px;overflow:hidden;
  display:flex;flex-direction:column;
  box-shadow:0 20px 50px rgba(0,0,0,0.4);
  transition:transform .35s, box-shadow .35s;
  animation:waChatIn .8s cubic-bezier(.2,.7,.2,1) both;
}
.wa-chat:hover{transform:translateY(-6px);box-shadow:0 30px 70px rgba(0,224,255,0.12)}
.wa-chat:nth-child(2){animation-delay:.08s}
.wa-chat:nth-child(3){animation-delay:.16s}
.wa-chat:nth-child(4){animation-delay:.24s}
@keyframes waChatIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

.wa-head{padding:12px 14px;background:#202c33;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(0,0,0,0.2)}
.wa-avatar{
  width:38px;height:38px;border-radius:50%;
  background:linear-gradient(135deg, var(--c,#5ad4c4), #1a1f24);
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:600;font-size:13px;
  font-family:var(--body);
  flex-shrink:0;
}
.wa-head-info{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}
.wa-name{color:#e9edef;font-size:14px;font-weight:500;font-family:var(--body);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
.wa-status{font-size:11px;color:#8696a0;display:flex;align-items:center;gap:6px}
.wa-dot{width:6px;height:6px;background:#25d366;border-radius:50%;animation:wmpulse 1.4s infinite}
.wa-head-icons{display:flex;gap:14px;color:#aebac1}

.wa-body{
  background:#0b141a;
  background-image:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,0.012), transparent 40%),
    radial-gradient(circle at 80% 70%, rgba(0,224,255,0.012), transparent 40%);
  padding:14px 12px;display:flex;flex-direction:column;gap:6px;flex:1;min-height:240px;
}
.wa-date{align-self:center;font-size:10px;letter-spacing:0.08em;color:#8696a0;background:rgba(28,42,53,0.5);padding:5px 12px;border-radius:8px;margin-bottom:6px}
.wa-msg{
  align-self:flex-start;max-width:88%;
  background:#202c33;color:#e9edef;
  padding:8px 12px 18px;border-radius:0 8px 8px 8px;
  position:relative;font-size:13.5px;line-height:1.45;
}
.wa-msg.in{align-self:flex-start;background:#202c33}
.wa-msg p{color:#e9edef;font-family:var(--body);font-size:13.5px;line-height:1.45;max-width:none}
.wa-msg .wa-time{position:absolute;right:8px;bottom:3px;font-size:10px;color:#8696a0;letter-spacing:0.02em}
.wa-msg.stars-msg{background:rgba(37,211,102,0.10);border:1px solid rgba(37,211,102,0.25)}
.wa-msg .msg-stars{color:var(--gold);letter-spacing:2px;font-size:14px}

/* ============================================
   20% Discount section
   ============================================ */
.discount{padding:120px var(--pad)}
.discount-card{
  position:relative;overflow:hidden;
  border-radius:28px;
  background:linear-gradient(135deg, #1a1408 0%, #0c0a06 100%);
  border:1px solid rgba(212,168,90,0.25);
  padding:80px 60px;
}
.discount-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.d-shape{position:absolute;border-radius:50%;filter:blur(60px)}
.d-shape.s1{width:600px;height:600px;top:-200px;right:-200px;background:radial-gradient(circle,rgba(212,168,90,0.4),transparent 70%);animation:dShape 16s ease-in-out infinite}
.d-shape.s2{width:400px;height:400px;bottom:-150px;left:-100px;background:radial-gradient(circle,rgba(0,224,255,0.18),transparent 70%);animation:dShape 14s ease-in-out infinite reverse}
.d-shape.s3{width:300px;height:300px;top:30%;left:50%;background:radial-gradient(circle,rgba(255,225,160,0.15),transparent 70%);animation:dShape 10s ease-in-out infinite}
@keyframes dShape{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(40px,-40px) scale(1.1)}}

.discount-grid{position:relative;display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center;z-index:1}
.discount-copy h2{font-size:clamp(48px,8vw,120px);line-height:0.95}
.discount-copy h2 .acc-gold{color:var(--gold)}
.discount-copy .lead{margin-top:24px;max-width:48ch}
.discount-cta{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
.discount-fine{margin-top:24px;display:block;font-size:10px;letter-spacing:0.18em;color:var(--text-mute);text-transform:uppercase}

.discount-ticket{
  position:relative;background:linear-gradient(180deg,#0a0904 0%,#1a1408 100%);
  border:1px solid rgba(212,168,90,0.4);border-radius:24px;padding:36px;
  transform:rotate(-3deg);transition:transform .4s cubic-bezier(.2,.7,.2,1);
  box-shadow:0 30px 80px rgba(212,168,90,0.15);
}
.discount-ticket:hover{transform:rotate(-1deg) scale(1.02)}
.ticket-stamp{text-align:center;padding-bottom:24px}
.ticket-stamp .ts-l{font-family:var(--mono);font-size:11px;letter-spacing:0.22em;color:var(--gold);text-transform:uppercase;display:block}
.ticket-stamp .ts-v{font-family:var(--display);font-size:140px;line-height:0.85;color:var(--gold);display:block;margin:6px 0;text-shadow:0 0 30px rgba(212,168,90,0.4)}
.ticket-stamp .ts-pc{font-size:0.5em;vertical-align:top;margin-left:-10px;color:var(--gold);opacity:0.7}
.ticket-divider{
  height:1px;background:transparent;
  border-top:1px dashed rgba(212,168,90,0.4);
  position:relative;margin:14px -36px;
}
.ticket-divider::before,.ticket-divider::after{
  content:"";position:absolute;top:-12px;width:24px;height:24px;
  background:#06080c;border-radius:50%;
  border:1px solid rgba(212,168,90,0.4);
}
.ticket-divider::before{left:-12px}
.ticket-divider::after{right:-12px}
.ticket-meta{padding:20px 0 14px;display:flex;flex-direction:column;gap:12px}
.ticket-meta > div{display:flex;justify-content:space-between;align-items:baseline}
.ticket-meta .tm-l{font-family:var(--mono);font-size:10px;letter-spacing:0.16em;color:var(--text-mute);text-transform:uppercase}
.ticket-meta .tm-v{font-family:var(--body);font-size:16px;color:var(--text);font-weight:500}
.ticket-meta .tm-v.strike{text-decoration:line-through;color:var(--text-mute);font-weight:400}
.ticket-meta .tm-v.big{font-family:var(--display);font-size:28px;color:var(--gold)}
.ticket-code{margin-top:14px;text-align:center;font-size:10px;letter-spacing:0.18em;color:var(--text-mute);text-transform:uppercase}

@media(max-width:900px){
  .discount-card{padding:50px 30px}
  .discount-grid{grid-template-columns:1fr;gap:40px}
  .discount-ticket{transform:rotate(0deg);max-width:380px;margin:0 auto}
}

/* ============================================
   Where We Wash
   ============================================ */
.wherewash{padding:120px var(--pad);background:var(--bg-1);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.acc-cyan{color:var(--accent)}
.ww-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:30px;align-items:stretch}
@media(max-width:1000px){.ww-grid{grid-template-columns:1fr}}

.ww-map{background:linear-gradient(180deg,#0a1018,#04060a);border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column}
.ww-map-head{padding:16px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase}
.ww-map-l{color:var(--accent)}
.ww-map-r{color:var(--text-mute);display:flex;align-items:center;gap:8px}
.ww-live-dot{width:8px;height:8px;border-radius:50%;background:#10e070;box-shadow:0 0 10px #10e070;animation:wmpulse 1.4s infinite}
.ww-map-area{flex:1;position:relative;aspect-ratio:4/3;background:#02060c;overflow:hidden}
.ww-map-area::before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 50% 50%, rgba(0,224,255,0.08), transparent 70%),
  linear-gradient(rgba(0,224,255,0.05) 1px, transparent 1px) 0 0 / 100% 50px,
  linear-gradient(90deg, rgba(0,224,255,0.05) 1px, transparent 1px) 0 0 / 50px 100%}

.ww-rings{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}
.ww-rings span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;border:1px dashed rgba(0,224,255,0.18);animation:wwRing 4.5s ease-out infinite}
.ww-rings span:nth-child(1){animation-delay:0s}
.ww-rings span:nth-child(2){animation-delay:1.5s}
.ww-rings span:nth-child(3){animation-delay:3s}
@keyframes wwRing{0%{width:60px;height:60px;opacity:0.7}100%{width:500px;height:500px;opacity:0}}

.ww-hq{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:5}
.ww-hq-dot{display:block;width:18px;height:18px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 8px rgba(0,224,255,0.18), 0 0 30px var(--accent)}
.ww-hq-l{position:absolute;top:26px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:0.18em;color:var(--accent);white-space:nowrap;background:rgba(0,0,0,0.6);padding:3px 8px;border-radius:4px}

.ww-pin{position:absolute;transform:translate(-50%,-50%);z-index:4;cursor:pointer}
.ww-pin > span:first-child{display:block;width:10px;height:10px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px rgba(0,224,255,0.18);transition:all .25s}
.ww-pin .t{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:10px;letter-spacing:0.14em;color:var(--text);background:rgba(0,0,0,0.8);padding:3px 8px;border-radius:4px;white-space:nowrap;opacity:0;transition:opacity .2s;pointer-events:none;text-transform:uppercase}
.ww-pin:hover > span:first-child{transform:scale(1.6);box-shadow:0 0 0 8px rgba(0,224,255,0.3), 0 0 12px var(--accent)}
.ww-pin:hover .t{opacity:1}

.ww-map-foot{padding:16px 24px;border-top:1px solid var(--line);display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:11px;letter-spacing:0.14em;color:var(--text-mute)}

.ww-check{background:linear-gradient(180deg,#0e1218,#0a0d13);border:1px solid var(--line);border-radius:22px;padding:36px;display:flex;flex-direction:column;gap:18px}
.ww-check h3{font-family:var(--display);font-size:clamp(32px,4vw,52px);line-height:0.95;text-transform:uppercase;letter-spacing:-0.01em}
.ww-check p{font-size:14px;line-height:1.55;color:#c8ccd4}
.ww-check form{display:flex;flex-direction:column;gap:10px}
.ww-check input{background:#0a0d13;border:1px solid var(--line);border-radius:10px;padding:14px 16px;color:var(--text);font:inherit}
.ww-check input:focus{outline:none;border-color:var(--accent);background:#0e1820}
.ww-result{padding:14px 16px;border-radius:10px;font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;display:none}
.ww-result.ok{display:block;background:rgba(16,224,112,0.08);border:1px solid rgba(16,224,112,0.3);color:#10e070}
.ww-result.no{display:block;background:rgba(255,92,92,0.08);border:1px solid rgba(255,92,92,0.3);color:#ff5c5c}

.ww-quick-zones{margin-top:8px}
.ww-quick-l{display:block;font-size:9px;letter-spacing:0.2em;color:var(--text-mute);text-transform:uppercase;margin-bottom:10px}
.ww-chips{display:flex;flex-wrap:wrap;gap:6px}
.ww-chip{
  padding:7px 12px;border-radius:999px;background:rgba(0,224,255,0.06);
  border:1px solid rgba(0,224,255,0.2);color:var(--accent);
  font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;
  cursor:pointer;transition:all .2s;
}
.ww-chip:hover{background:var(--accent);color:#000;border-color:var(--accent)}

/* ============================================
   Blog preview
   ============================================ */
.blog-preview{padding:120px var(--pad)}
.bp-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:30px}
@media(max-width:900px){.bp-grid{grid-template-columns:1fr}}

.bp-feature{
  display:flex;flex-direction:column;background:var(--bg-2);
  border:1px solid var(--line);border-radius:22px;overflow:hidden;
  transition:all .3s cubic-bezier(.2,.7,.2,1);
}
.bp-feature:hover{transform:translateY(-6px);border-color:var(--line-strong);box-shadow:0 30px 70px rgba(0,224,255,0.12)}
.bp-feat-img{aspect-ratio:16/9;background:var(--bg-1);position:relative}
.bp-feat-img .slot{height:100%;border-radius:0;border:0;background:
  repeating-linear-gradient(135deg, rgba(0,224,255,0.04) 0 14px, rgba(0,224,255,0.08) 14px 28px),
  linear-gradient(180deg,#0e1822,#06080c)}
.bp-feat-tag{position:absolute;top:18px;left:18px;font-family:var(--mono);font-size:10px;letter-spacing:0.18em;color:var(--accent);background:rgba(0,224,255,0.12);border:1px solid rgba(0,224,255,0.3);padding:5px 10px;border-radius:999px;backdrop-filter:blur(8px)}
.bp-feat-body{padding:36px;display:flex;flex-direction:column;gap:14px;flex:1}
.bp-meta{font-family:var(--mono);font-size:10px;letter-spacing:0.16em;color:var(--text-mute);text-transform:uppercase}
.bp-feature h3{font-family:var(--body);font-size:clamp(24px,2.4vw,32px);font-weight:600;text-transform:none;letter-spacing:-0.01em;line-height:1.25}
.bp-feature p{font-size:15px;line-height:1.55;color:#c8ccd4;flex:1}
.bp-read{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--accent);margin-top:6px;align-self:flex-start;border-bottom:1px solid transparent;padding-bottom:3px;transition:border-color .2s}
.bp-read:hover{border-bottom-color:var(--accent)}

.bp-side{display:flex;flex-direction:column;gap:18px}
.bp-mini{
  display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:center;
  background:var(--bg-2);border:1px solid var(--line);border-radius:18px;padding:18px;
  transition:all .25s;
}
.bp-mini:hover{border-color:var(--line-strong);background:#0e1822;transform:translateX(4px)}
.bp-mini-img{aspect-ratio:1;background:var(--bg-1);border-radius:12px;overflow:hidden}
.bp-mini-img .slot{height:100%;border-radius:0;border:0;font-size:8px;letter-spacing:0.15em}
.bp-mini h4{font-family:var(--body);font-size:15px;font-weight:600;text-transform:none;letter-spacing:0;line-height:1.4;margin-top:6px}

/* ============================================
   Home FAQ
   ============================================ */
.faq-home{padding:120px var(--pad);background:var(--bg-1);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.faq-home-list{display:flex;flex-direction:column;gap:6px;margin-top:20px}
.faq-h-item{
  background:var(--bg-2);border:1px solid var(--line);border-radius:14px;
  transition:all .3s;overflow:hidden;
}
.faq-h-item[open]{border-color:rgba(0,224,255,0.25);background:linear-gradient(180deg,#0e1822,#0a0d13)}
.faq-h-item:hover{border-color:var(--line-strong)}
.faq-h-item summary{
  list-style:none;padding:24px 28px;cursor:pointer;
  display:grid;grid-template-columns:60px 1fr 40px;gap:20px;align-items:center;
}
.faq-h-item summary::-webkit-details-marker{display:none}
.fh-num{font-family:var(--display);font-size:20px;color:var(--accent);line-height:1}
.fh-q{font-family:var(--body);font-size:18px;font-weight:500;color:var(--text);line-height:1.4}
.fh-icon{width:32px;height:32px;border-radius:50%;background:var(--bg-1);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--text-mute);transition:all .3s;font-family:var(--display)}
.faq-h-item[open] .fh-icon{background:var(--accent);color:#000;transform:rotate(45deg);border-color:var(--accent)}
.fh-a{
  padding:0 28px 24px 108px;
  font-size:15px;line-height:1.65;color:#c8ccd4;
  max-width:68ch;
  animation:fhSlide .35s ease both;
}
@keyframes fhSlide{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.faq-home-foot{margin-top:40px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;letter-spacing:0.16em;color:var(--text-mute);text-transform:uppercase}

@media(max-width:600px){
  .faq-h-item summary{grid-template-columns:40px 1fr 32px;padding:20px 18px;gap:14px}
  .fh-num{font-size:16px}
  .fh-q{font-size:15px}
  .fh-a{padding:0 18px 20px 72px;font-size:14px}
}
