/* ============================================================
   SHIMMER SECURITY — styles.css  (Mobile-first responsive)
   Brand: Orange #F47920 | Cyan #00BCD4 | Navy #0D1B2A
   New accents: White #FFFFFF | Soft Pink #FFF0F6 | Soft Yellow #FFF7E0
   ============================================================ */

:root {
  --navy:   #0D1B2A;
  --navy2:  #112236;
  --navy3:  #163049;
  --orange: #F47920;
  --ora2:   #FF9A45;
  --cyan:   #00BCD4;
  --cyan2:  #26D4EC;
  --white:  #F4F8FA;
  --muted:  #7A90A8;
  --border: rgba(0,188,212,0.13);
  --glow-o: 0 0 40px rgba(244,121,32,0.3);
  --glow-c: 0 0 40px rgba(0,188,212,0.3);

  /* ── NEW ACCENT COLORS ── */
  --pink-pale:   #FFF0F6;
  --pink-mid:    #FFE0F0;
  --pink-bold:   #E91E8C;
  --pink-text:   #A0305A;
  --pink-border: #F4B8D4;

  --yellow-pale:   #FFF7E0;
  --yellow-mid:    #FFFBE8;
  --yellow-bold:   #FFC107;
  --yellow-text:   #7A4800;
  --yellow-border: #F4D080;

  --pure-white:        #FFFFFF;
  --white-border:      #E2E8F0;
  --white-text-dark:   #0D1B2A;
  --white-text-muted:  #4A5568;
}

*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'Outfit',sans-serif; background:var(--navy); color:var(--white); overflow-x:hidden; }
body::before {
  content:''; position:fixed; inset:0; z-index:0; pointer-events:none;
  background-image:radial-gradient(circle at 1px 1px,rgba(0,188,212,0.045) 1px,transparent 0);
  background-size:40px 40px;
}
img { max-width:100%; height:auto; display:block; }

/* ── CURSOR (desktop only) ── */
.cursor { position:fixed; width:9px; height:9px; background:var(--orange); border-radius:50%; pointer-events:none; z-index:9999; transform:translate(-50%,-50%); }
.cursor-ring { position:fixed; width:34px; height:34px; border:1.5px solid rgba(0,188,212,0.55); border-radius:50%; pointer-events:none; z-index:9998; transform:translate(-50%,-50%); transition:all .15s ease; }
@media(max-width:900px){ .cursor,.cursor-ring { display:none; } }

/* ── NAV ── */
nav {
  position:fixed; top:0; left:0; right:0; z-index:500;
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 48px;
  background:rgba(13,27,42,0.96); backdrop-filter:blur(22px);
  border-bottom:1px solid var(--border); transition:padding .3s;
}
.logo-wrap { display:flex; align-items:center; gap:12px; text-decoration:none; flex-shrink:0; }
.logo-icon {
  width:38px; height:38px;
  background:linear-gradient(135deg,var(--orange),var(--ora2));
  display:flex; align-items:center; justify-content:center;
  font-size:17px;
  clip-path:polygon(50% 0%,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);
  transition:transform .3s; flex-shrink:0;
}
.logo-wrap:hover .logo-icon { transform:scale(1.1); }
.logo-text { font-size:18px; font-weight:800; line-height:1.1; }
.logo-text .o { color:var(--orange); }
.logo-text .c { color:var(--cyan); }
.logo-sub { font-size:9px; letter-spacing:2.5px; color:var(--muted); text-transform:uppercase; font-family:'DM Mono',monospace; display:block; margin-top:1px; }
.nav-links { display:flex; gap:28px; list-style:none; }
.nav-links a { color:var(--muted); font-size:13px; font-weight:500; text-decoration:none; transition:color .2s; position:relative; padding-bottom:4px; }
.nav-links a::after { content:''; position:absolute; bottom:-4px; left:0; width:0; height:1.5px; background:var(--cyan); transition:width .3s; }
.nav-links a:hover,.nav-links a.active { color:var(--white); }
.nav-links a:hover::after,.nav-links a.active::after { width:100%; }
.nav-cta {
  background:linear-gradient(135deg,var(--orange),var(--ora2));
  color:#fff; padding:10px 22px;
  font-size:12px; font-weight:700; letter-spacing:1px;
  border:none; cursor:pointer; text-decoration:none;
  clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
  font-family:'Outfit',sans-serif; transition:box-shadow .25s,transform .2s;
  white-space:nowrap;
}
.nav-cta:hover { box-shadow:var(--glow-o); transform:translateY(-1px); }

/* ── MOBILE MENU BUTTON ── */
.mobile-menu-btn {
  display:none; background:none; border:none; cursor:pointer;
  flex-direction:column; gap:5px; padding:4px; z-index:600;
}
.mobile-menu-btn span { display:block; width:23px; height:2px; background:var(--white); transition:all .3s; border-radius:1px; }
.mobile-menu-btn.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.mobile-menu-btn.open span:nth-child(2) { opacity:0; }
.mobile-menu-btn.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* ── MOBILE NAV DRAWER ── */
.mobile-nav {
  display:none; position:fixed; top:64px; left:0; right:0; bottom:0;
  background:rgba(13,27,42,0.99); backdrop-filter:blur(22px);
  border-top:1px solid var(--border);
  padding:16px 0; z-index:498;
  flex-direction:column; overflow-y:auto;
}
.mobile-nav.open { display:flex; }
.mobile-nav a {
  color:var(--muted); text-decoration:none;
  font-size:16px; font-weight:600;
  padding:15px 24px;
  border-bottom:1px solid rgba(0,188,212,0.07);
  transition:color .2s, background .2s;
  display:flex; align-items:center;
}
.mobile-nav a:hover,.mobile-nav a.active { color:var(--white); background:rgba(0,188,212,0.05); }
.mobile-nav .mob-cta {
  margin:16px 24px; padding:15px;
  background:linear-gradient(135deg,var(--orange),var(--ora2));
  color:#fff !important; text-align:center;
  font-weight:700; letter-spacing:1px;
  border-radius:2px; justify-content:center;
  border-bottom:none;
}

/* ── HERO SECTION ── */
#hero {
  position:relative;
  min-height:75vh;
  display:flex;
  align-items:center;
  overflow:hidden;
  padding:0;
}

/* ── HERO SLIDESHOW ── */
.hero-slides { position:absolute; inset:0; z-index:0; }
.hero-slide {
  position:absolute; inset:0; opacity:0;
  transition:opacity 1.4s ease-in-out;
  background-size:cover; background-position:center;
}
.hero-slide.active { opacity:1; }
.hero-slide.active .hs-img { animation:kenBurns 8s ease-out forwards; }
@keyframes kenBurns { from{transform:scale(1.06);} to{transform:scale(1.0);} }
.hs-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.hs-overlay {
  position:absolute; inset:0;
  background:
    linear-gradient(to right, rgba(5,12,22,0.92) 0%, rgba(5,12,22,0.65) 50%, rgba(5,12,22,0.3) 100%),
    linear-gradient(to top,   rgba(5,12,22,0.98) 0%, transparent 45%),
    linear-gradient(to bottom,rgba(5,12,22,0.75) 0%, transparent 25%);
  z-index:1;
}
.hs-accent-line { position:absolute; bottom:0; left:0; right:0; height:3px; background:linear-gradient(90deg,#f47920,#00bcd4,transparent); z-index:2; }
.hs-scan {
  position:absolute; inset:0; z-index:2;
  background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,0.04) 3px,rgba(0,0,0,0.04) 4px);
  pointer-events:none;
}
.hs-label { position:absolute; top:82px; left:0; z-index:5; display:flex; align-items:stretch; }
.hs-label-bar { width:4px; background:#f47920; }
.hs-label-text {
  background:rgba(7,15,26,0.8); border:1px solid rgba(244,121,32,0.4); border-left:none;
  padding:6px 14px; font-size:9px; font-weight:700; letter-spacing:3px;
  text-transform:uppercase; color:#f47920; font-family:'DM Mono',monospace;
}
.hs-counter {
  position:absolute; top:82px; right:20px; z-index:5;
  font-family:'DM Mono',monospace; font-size:10px; color:rgba(244,248,250,0.4);
  letter-spacing:2px; background:rgba(7,15,26,0.5); padding:5px 12px;
  border:1px solid rgba(255,255,255,0.08);
}
.hs-counter span { color:#f47920; font-size:15px; font-weight:700; }
.hs-progress-bar { position:absolute; top:0; left:0; height:3px; background:linear-gradient(90deg,#f47920,#00bcd4); z-index:20; transition:width 0.1s linear; width:0%; }
.hs-arrow {
  position:absolute; top:50%; transform:translateY(-50%); z-index:10;
  width:44px; height:44px;
  background:rgba(7,15,26,0.7); border:1px solid rgba(244,121,32,0.4);
  color:#f47920; font-size:20px;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; transition:background .25s,border-color .25s,transform .25s;
  user-select:none; backdrop-filter:blur(4px);
}
.hs-arrow:hover { background:rgba(244,121,32,0.3); border-color:#f47920; transform:translateY(-50%) scale(1.08); }
.hs-arrow.left  { left:12px; }
.hs-arrow.right { right:12px; }
.hs-dots { position:absolute; bottom:22px; left:50%; transform:translateX(-50%); z-index:10; display:flex; gap:8px; align-items:center; }
.hs-dot { width:7px; height:7px; border-radius:50%; background:rgba(255,255,255,0.3); cursor:pointer; transition:all .35s; }
.hs-dot.active { background:#f47920; width:24px; border-radius:4px; box-shadow:0 0 8px rgba(244,121,32,0.7); }
.hs-thumbs { position:absolute; bottom:16px; right:16px; z-index:10; display:flex; gap:5px; }
.hs-thumb { width:58px; height:38px; border:2px solid rgba(255,255,255,0.12); cursor:pointer; opacity:0.4; transition:opacity .25s,border-color .25s; overflow:hidden; border-radius:2px; }
.hs-thumb img { width:100%; height:100%; object-fit:cover; }
.hs-thumb.active { opacity:1; border-color:#f47920; box-shadow:0 0 8px rgba(244,121,32,0.5); }
.hs-thumb:hover  { opacity:0.78; }

/* ── HERO CONTENT ── */
.hero-content {
  position:relative; z-index:6;
  padding:80px 5% 60px 6%;
  max-width:680px;
  width:100%;
}
.hero-badge {
  display:inline-flex; align-items:center; gap:10px;
  background:rgba(0,188,212,0.08); border:1px solid rgba(0,188,212,0.25);
  padding:6px 16px; margin-bottom:24px;
  font-family:'DM Mono',monospace; font-size:10px; letter-spacing:2.5px;
  text-transform:uppercase; color:var(--cyan);
}
.hero-badge::before { content:'●'; font-size:7px; animation:blink 1.5s infinite; }
h1 { font-weight:800; font-size:clamp(32px,5vw,68px); line-height:1.05; margin-bottom:16px; }
h1 .o { color:var(--orange); }
h1 .c { color:var(--cyan); }
.hero-desc { font-size:clamp(12px,1.4vw,15px); color:rgba(244,248,250,0.62); line-height:1.85; max-width:500px; margin-bottom:28px; }
.hero-actions { display:flex; gap:14px; align-items:center; flex-wrap:wrap; margin-bottom:0; }
.hero-stats {
  display:flex; gap:28px; margin-top:28px;
  padding-top:24px; border-top:1px solid var(--border);
  flex-wrap:wrap;
}
.stat-num {
  font-size:clamp(22px,3vw,36px); font-weight:800;
  background:linear-gradient(135deg,var(--orange),var(--cyan));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text; line-height:1;
}
.stat-lbl { font-size:10px; letter-spacing:1.5px; color:var(--muted); text-transform:uppercase; margin-top:4px; }

/* ── TRUST STRIP ── */
.trust-strip {
  background:var(--pink-pale);
  border-top:1px solid var(--pink-border);
  border-bottom:1px solid var(--pink-border);
  padding:20px 48px; display:flex; align-items:center;
  justify-content:space-between; gap:20px; position:relative; z-index:1;
  flex-wrap:wrap;
}
.ti { display:flex; align-items:center; gap:9px; white-space:nowrap; cursor:pointer; transition:opacity .2s; }
.ti:hover { opacity:.75; }
.ti-icon { font-size:17px; }
.ti-txt { font-size:12px; font-weight:600; color:var(--pink-text); }
.tdv { width:1px; height:24px; background:var(--pink-border); flex-shrink:0; }

/* ── PAGE HERO ── */
.page-hero { padding:130px 48px 80px; position:relative; overflow:hidden; border-bottom:1px solid var(--border); }
.blob1,.blob2 { position:absolute; border-radius:50%; pointer-events:none; }
.blob1 { right:-60px; top:0; width:440px; height:440px; background:radial-gradient(circle,rgba(233,30,140,0.07),transparent 65%); }
.blob2 { left:-80px; bottom:0; width:320px; height:320px; background:radial-gradient(circle,rgba(255,193,7,0.07),transparent 65%); }
.breadcrumb { display:inline-flex; align-items:center; gap:9px; font-family:'DM Mono',monospace; font-size:10px; letter-spacing:2.5px; text-transform:uppercase; color:var(--muted); margin-bottom:20px; }
.breadcrumb a { color:var(--muted); text-decoration:none; transition:color .2s; }
.breadcrumb a:hover { color:var(--cyan); }
.breadcrumb .sep,.breadcrumb .cur { color:var(--cyan); }
.page-hero h1 { font-weight:800; font-size:clamp(36px,5.5vw,76px); line-height:1; margin-bottom:18px; }
.page-hero p { font-size:15px; color:rgba(244,248,250,0.6); line-height:1.85; max-width:540px; }

/* ── SECTION BASE ── */
section { padding:90px 48px; position:relative; z-index:1; }
.s-tag { display:inline-flex; align-items:center; gap:10px; font-family:'DM Mono',monospace; font-size:10px; letter-spacing:3px; text-transform:uppercase; color:var(--cyan); margin-bottom:14px; }
.s-tag::before { content:''; width:22px; height:1.5px; background:var(--cyan); }
h2 { font-size:clamp(28px,4vw,56px); font-weight:800; line-height:1.08; margin-bottom:14px; }
h2 .o { color:var(--orange); }
h2 .c { color:var(--cyan); }
.s-sub { font-size:14px; color:rgba(244,248,250,0.55); line-height:1.85; max-width:480px; }

/* ── SECTION BACKGROUND UTILITY CLASSES ── */
.bg-white-section {
  background: var(--pure-white) !important;
}
.bg-white-section h2,
.bg-white-section h3,
.bg-white-section .diff-title { color: var(--white-text-dark) !important; }
.bg-white-section p,
.bg-white-section .s-sub { color: var(--white-text-muted) !important; }
.bg-white-section .s-tag { color: var(--orange) !important; }
.bg-white-section .s-tag::before { background: var(--orange) !important; }

.bg-pink-section {
  background: var(--pink-pale) !important;
}
.bg-pink-section h2,
.bg-pink-section h3 { color: var(--white-text-dark) !important; }
.bg-pink-section p,
.bg-pink-section .s-sub { color: var(--pink-text) !important; }
.bg-pink-section .s-tag { color: var(--pink-bold) !important; }
.bg-pink-section .s-tag::before { background: var(--pink-bold) !important; }

.bg-yellow-section {
  background: var(--yellow-pale) !important;
}
.bg-yellow-section h2,
.bg-yellow-section h3 { color: var(--white-text-dark) !important; }
.bg-yellow-section p,
.bg-yellow-section .s-sub { color: var(--yellow-text) !important; }
.bg-yellow-section .s-tag { color: var(--yellow-text) !important; }
.bg-yellow-section .s-tag::before { background: var(--yellow-bold) !important; }

/* ── BUTTONS ── */
.btn-primary {
  background:linear-gradient(135deg,var(--orange),var(--ora2)); color:#fff;
  padding:14px 36px; font-size:13px; font-weight:700; letter-spacing:1px;
  border:none; cursor:pointer; text-decoration:none; display:inline-block;
  transition:box-shadow .25s,transform .2s; font-family:'Outfit',sans-serif;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
}
.btn-primary:hover { box-shadow:var(--glow-o); transform:translateY(-2px); }
.btn-outline-c {
  background:transparent; color:var(--cyan); border:1.5px solid rgba(0,188,212,0.4);
  padding:12px 28px; font-size:13px; font-weight:600; cursor:pointer;
  text-decoration:none; display:inline-block;
  transition:background .2s,border-color .2s; font-family:'Outfit',sans-serif;
}
.btn-outline-c:hover { background:rgba(0,188,212,0.08); border-color:var(--cyan); }
.btn-outline {
  background:transparent; color:var(--white); border:1.5px solid var(--border);
  padding:12px 28px; font-size:13px; font-weight:600; cursor:pointer;
  text-decoration:none; display:inline-block;
  transition:background .2s,border-color .2s; font-family:'Outfit',sans-serif;
}
.btn-outline:hover { background:rgba(255,255,255,0.05); border-color:rgba(255,255,255,0.3); }
.btn-cyan {
  background:linear-gradient(135deg,var(--cyan),var(--cyan2)); color:var(--navy);
  padding:14px 36px; font-size:13px; font-weight:800; letter-spacing:1px;
  border:none; cursor:pointer; text-decoration:none; display:inline-block;
  transition:box-shadow .25s,transform .2s; font-family:'Outfit',sans-serif;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
}
.btn-cyan:hover { box-shadow:var(--glow-c); transform:translateY(-2px); }

/* ── NEW: PINK BUTTON ── */
.btn-pink {
  background:linear-gradient(135deg,var(--pink-bold),#FF6AB0); color:#fff;
  padding:14px 36px; font-size:13px; font-weight:700; letter-spacing:1px;
  border:none; cursor:pointer; text-decoration:none; display:inline-block;
  transition:box-shadow .25s,transform .2s; font-family:'Outfit',sans-serif;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
}
.btn-pink:hover { box-shadow:0 0 40px rgba(233,30,140,0.35); transform:translateY(-2px); }

/* ── NEW: YELLOW BUTTON ── */
.btn-yellow {
  background:linear-gradient(135deg,var(--yellow-bold),#FFD740); color:var(--navy);
  padding:14px 36px; font-size:13px; font-weight:800; letter-spacing:1px;
  border:none; cursor:pointer; text-decoration:none; display:inline-block;
  transition:box-shadow .25s,transform .2s; font-family:'Outfit',sans-serif;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
}
.btn-yellow:hover { box-shadow:0 0 40px rgba(255,193,7,0.35); transform:translateY(-2px); }

/* ── WHY GRID (about page) ── */
.why-grid { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; }
.why-visual { position:relative; height:460px; }
.why-panel { position:absolute; background:var(--navy2); border:1px solid var(--border); padding:28px; }
.why-panel.main { inset:0; display:flex; flex-direction:column; justify-content:space-between; }
.why-panel.overlay { top:auto; bottom:-24px; right:-24px; left:50px; background:var(--navy3); border-color:rgba(244,121,32,0.35); padding:20px; }
.term-bar { display:flex; gap:6px; margin-bottom:18px; }
.term-bar span { width:10px; height:10px; border-radius:50%; }
.bar-row { margin-bottom:16px; }
.bar-label { display:flex; justify-content:space-between; font-size:12px; color:var(--muted); margin-bottom:6px; }
.bar-label span:last-child { color:var(--cyan); font-weight:700; }
.bar-track { height:4px; background:rgba(255,255,255,0.05); border-radius:2px; }
.bar-fill { height:100%; border-radius:2px; background:linear-gradient(90deg,var(--orange),var(--cyan)); animation:barG 1.6s ease forwards; }
.stat-row2 { display:flex; gap:28px; }
.sc .n { font-size:32px; font-weight:800; line-height:1; }
.sc .n.o { color:var(--orange); }
.sc .n.c { color:var(--cyan); }
.sc .l { font-size:10px; letter-spacing:2px; color:var(--muted); text-transform:uppercase; margin-top:4px; }
.cert-row { display:flex; align-items:center; gap:12px; }
.cert-icon { font-size:24px; }
.cert-text { font-size:13px; font-weight:700; }
.cert-text small { display:block; font-size:11px; color:var(--muted); font-weight:400; }
.why-list { margin-top:36px; }
.why-item { display:flex; gap:16px; padding:18px 0; border-bottom:1px solid var(--border); cursor:pointer; transition:padding-left .2s; }
.why-item:hover { padding-left:8px; }
.wi-icon { font-size:20px; margin-top:2px; }
.wi-title { font-size:14px; font-weight:700; margin-bottom:5px; }
.wi-desc { font-size:13px; color:var(--muted); line-height:1.75; }

/* ── PROCESS STEPS ── */
.proc-steps { display:grid; grid-template-columns:repeat(4,1fr); margin-top:60px; position:relative; }
.proc-steps::before { content:''; position:absolute; top:52px; left:12.5%; right:12.5%; height:1px; background:linear-gradient(90deg,var(--orange),var(--cyan)); }
.p-step { padding:0 18px; }
.p-num { width:104px; height:104px; border-radius:50%; border:1px solid var(--border); background:var(--navy); margin:0 auto 22px; display:flex; align-items:center; justify-content:center; font-size:30px; font-weight:800; position:relative; transition:border-color .3s,box-shadow .3s; cursor:pointer; }
.p-num.o { color:var(--orange); }
.p-num.c { color:var(--cyan); }
.p-step:hover .p-num { border-color:var(--cyan); box-shadow:var(--glow-c); }
.p-step h3 { font-size:16px; font-weight:700; margin-bottom:10px; text-align:center; }
.p-step p { font-size:13px; color:var(--muted); line-height:1.75; text-align:center; }

/* ── SERVICE CARDS ── */
.svc-intro { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:56px; gap:36px; }
.svc-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:rgba(0,188,212,0.05); }
.svc-card { background:var(--navy); padding:40px 30px; position:relative; cursor:pointer; overflow:hidden; transition:background .3s,transform .3s; }
.svc-card::after { content:''; position:absolute; bottom:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--orange),var(--cyan)); transform:scaleX(0); transform-origin:left; transition:transform .35s; }
.svc-card:hover { background:rgba(0,188,212,0.04); transform:translateY(-4px); }
.svc-card:hover::after { transform:scaleX(1); }
.svc-n { position:absolute; top:20px; right:22px; font-family:'DM Mono',monospace; font-size:10px; color:rgba(0,188,212,0.18); letter-spacing:2px; }
.svc-icon { font-size:32px; margin-bottom:18px; display:block; }
.svc-card h3 { font-size:18px; font-weight:700; margin-bottom:10px; }
.svc-card p { font-size:13px; color:var(--muted); line-height:1.8; }
.svc-more { margin-top:18px; font-size:11px; letter-spacing:2px; text-transform:uppercase; color:var(--orange); font-weight:700; display:flex; align-items:center; gap:6px; transition:gap .2s; }
.svc-card:hover .svc-more { gap:12px; }

/* ── NEW: PINK & YELLOW SERVICE CARD VARIANTS ── */
.svc-card.pink-card {
  background: var(--pink-pale);
  border: 1px solid var(--pink-border);
}
.svc-card.pink-card h3 { color: var(--white-text-dark); }
.svc-card.pink-card p { color: var(--pink-text); }
.svc-card.pink-card .svc-more { color: var(--pink-bold); }
.svc-card.pink-card:hover { background: var(--pink-mid); }

.svc-card.yellow-card {
  background: var(--yellow-pale);
  border: 1px solid var(--yellow-border);
}
.svc-card.yellow-card h3 { color: var(--white-text-dark); }
.svc-card.yellow-card p { color: var(--yellow-text); }
.svc-card.yellow-card .svc-more { color: var(--yellow-text); }
.svc-card.yellow-card:hover { background: var(--yellow-mid); }

.svc-card.white-card {
  background: var(--pure-white);
  border: 1px solid var(--white-border);
}
.svc-card.white-card h3 { color: var(--white-text-dark); }
.svc-card.white-card p { color: var(--white-text-muted); }
.svc-card.white-card .svc-more { color: var(--orange); }
.svc-card.white-card:hover { background: #F7FAFF; }

/* ── TESTIMONIALS ── */
.t-header { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:48px; gap:28px; }
.t-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.tc { background:var(--navy2); border:1px solid var(--border); padding:32px; position:relative; cursor:pointer; transition:border-color .3s,transform .3s; overflow:hidden; }
.tc::before { content:'"'; font-size:80px; font-weight:800; color:var(--cyan); opacity:.07; position:absolute; top:0; right:16px; line-height:1; }
.tc:hover { border-color:rgba(0,188,212,0.35); transform:translateY(-5px); }
.stars { color:var(--orange); font-size:13px; letter-spacing:2px; margin-bottom:14px; }
.tc-text { font-size:13px; color:rgba(244,248,250,0.6); line-height:1.85; margin-bottom:22px; }
.tc-author { display:flex; align-items:center; gap:12px; }
.tc-avatar { width:42px; height:42px; border-radius:50%; background:linear-gradient(135deg,var(--orange),var(--cyan)); display:flex; align-items:center; justify-content:center; font-weight:800; font-size:13px; color:var(--navy); flex-shrink:0; }
.tc-name { font-size:13px; font-weight:700; }
.tc-role { font-size:10px; color:var(--muted); letter-spacing:1px; text-transform:uppercase; margin-top:2px; }

/* ── NEW: PINK & YELLOW TESTIMONIAL VARIANTS ── */
.tc.pink-card {
  background: var(--pink-pale); border-color: var(--pink-border);
}
.tc.pink-card .tc-text { color: var(--pink-text); }
.tc.pink-card .tc-name { color: var(--white-text-dark); }
.tc.pink-card::before { color: var(--pink-bold); }

.tc.yellow-card {
  background: var(--yellow-pale); border-color: var(--yellow-border);
}
.tc.yellow-card .tc-text { color: var(--yellow-text); }
.tc.yellow-card .tc-name { color: var(--white-text-dark); }
.tc.yellow-card::before { color: var(--yellow-bold); }

.tc.white-card {
  background: var(--pure-white); border-color: var(--white-border);
}
.tc.white-card .tc-text { color: var(--white-text-muted); }
.tc.white-card .tc-name { color: var(--white-text-dark); }
.tc.white-card::before { color: var(--orange); }

/* ── TEAM ── */
.team-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:52px; }
.team-card { background:var(--navy2); border:1px solid var(--border); padding:30px 22px; text-align:center; cursor:pointer; transition:border-color .3s,transform .3s; }
.team-card:hover { border-color:rgba(0,188,212,0.35); transform:translateY(-5px); }
.team-avatar { width:64px; height:64px; border-radius:50%; background:linear-gradient(135deg,var(--orange),var(--cyan)); display:flex; align-items:center; justify-content:center; font-size:18px; font-weight:800; color:var(--navy); margin:0 auto 14px; }
.team-name { font-size:14px; font-weight:700; margin-bottom:4px; }
.team-role { font-size:10px; color:var(--cyan); letter-spacing:1px; text-transform:uppercase; margin-bottom:10px; }
.team-bio { font-size:12px; color:var(--muted); line-height:1.75; }

/* ── VALUES ── */
.values-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:52px; }
.value-card { background:var(--navy2); border:1px solid var(--border); padding:30px 22px; cursor:pointer; transition:border-color .3s,transform .3s; position:relative; overflow:hidden; }
.value-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--orange),var(--cyan)); transform:scaleX(0); transform-origin:left; transition:transform .35s; }
.value-card:hover { border-color:rgba(0,188,212,0.3); transform:translateY(-4px); }
.value-card:hover::before { transform:scaleX(1); }
.value-icon { font-size:28px; margin-bottom:14px; display:block; }
.value-card h3 { font-size:15px; font-weight:700; margin-bottom:8px; }
.value-card p { font-size:12.5px; color:var(--muted); line-height:1.75; }

/* ── NEW: PINK & YELLOW VALUE CARD VARIANTS ── */
.value-card.pink-card {
  background: var(--pink-pale); border-color: var(--pink-border);
}
.value-card.pink-card h3 { color: var(--white-text-dark); }
.value-card.pink-card p { color: var(--pink-text); }
.value-card.pink-card::before { background: linear-gradient(90deg, var(--pink-bold), var(--orange)); }

.value-card.yellow-card {
  background: var(--yellow-pale); border-color: var(--yellow-border);
}
.value-card.yellow-card h3 { color: var(--white-text-dark); }
.value-card.yellow-card p { color: var(--yellow-text); }
.value-card.yellow-card::before { background: linear-gradient(90deg, var(--yellow-bold), var(--orange)); }

.value-card.white-card {
  background: var(--pure-white); border-color: var(--white-border);
}
.value-card.white-card h3 { color: var(--white-text-dark); }
.value-card.white-card p { color: var(--white-text-muted); }

/* ── CONTACT ── */
.contact-grid { display:grid; grid-template-columns:1fr 1.3fr; gap:64px; margin-top:56px; }
.contact-info p { font-size:14px; color:var(--muted); line-height:1.85; margin-bottom:36px; }
.ci { display:flex; gap:16px; padding:18px 0; border-bottom:1px solid var(--border); align-items:flex-start; cursor:pointer; transition:padding-left .2s; }
.ci:hover { padding-left:6px; }
.ci-icon { font-size:20px; margin-top:2px; }
.ci-label { font-size:10px; letter-spacing:2px; text-transform:uppercase; color:var(--orange); margin-bottom:4px; font-weight:700; }
.ci-val { font-size:13px; color:var(--white); line-height:1.6; }
.ci-val a { color:var(--cyan); text-decoration:none; }
.ci-val a:hover { text-decoration:underline; }
.cf-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.cf-g { margin-bottom:16px; }
.cf-g label { display:block; font-size:10px; letter-spacing:2px; text-transform:uppercase; color:var(--cyan); font-weight:700; margin-bottom:8px; font-family:'DM Mono',monospace; }
.cf-g input,.cf-g select,.cf-g textarea { width:100%; background:var(--navy); border:1px solid rgba(0,188,212,0.15); color:var(--white); padding:12px 14px; font-family:'Outfit',sans-serif; font-size:13px; outline:none; transition:border-color .2s,background .2s; }
.cf-g input:focus,.cf-g select:focus,.cf-g textarea:focus { border-color:var(--cyan); background:rgba(0,188,212,0.03); }
.cf-g input::placeholder,.cf-g textarea::placeholder { color:var(--muted); }
.cf-g select { cursor:pointer; }
.cf-g select option { background:var(--navy); }
.cf-g textarea { resize:vertical; min-height:110px; }
.cf-submit { width:100%; padding:15px; background:linear-gradient(135deg,var(--orange),var(--cyan)); color:#fff; font-size:13px; font-weight:800; letter-spacing:2px; text-transform:uppercase; border:none; cursor:pointer; transition:box-shadow .25s,transform .2s; font-family:'Outfit',sans-serif; clip-path:polygon(12px 0%,100% 0%,calc(100% - 12px) 100%,0% 100%); }
.cf-submit:hover { box-shadow:0 0 40px rgba(244,121,32,0.25); transform:translateY(-2px); }

/* ── MAP ── */
.map-wrap { border:1px solid var(--border); overflow:hidden; position:relative; margin-top:52px; }
.map-wrap iframe { width:100%; height:380px; display:block; filter:invert(90%) hue-rotate(180deg) saturate(0.8); border:none; }
.map-label { position:absolute; top:16px; left:16px; background:var(--navy2); border:1px solid var(--border); padding:14px 18px; }
.map-label .ml-tag { font-family:'DM Mono',monospace; font-size:9px; letter-spacing:3px; text-transform:uppercase; color:var(--orange); margin-bottom:5px; }
.map-label .ml-name { font-size:13px; font-weight:700; margin-bottom:3px; }
.map-label .ml-addr { font-size:11px; color:var(--muted); line-height:1.5; }

/* ── FAQ ── */
.faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:48px; }
.faq-item { background:var(--navy); border:1px solid var(--border); padding:22px 26px; cursor:pointer; transition:border-color .2s; }
.faq-item:hover { border-color:rgba(0,188,212,0.3); }
.faq-q { display:flex; justify-content:space-between; align-items:center; gap:14px; }
.faq-q span { font-size:14px; font-weight:700; line-height:1.4; }
.faq-toggle { width:26px; height:26px; border:1px solid var(--border); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:16px; flex-shrink:0; color:var(--cyan); transition:transform .3s,background .2s; }
.faq-item.open .faq-toggle { transform:rotate(45deg); background:rgba(0,188,212,0.1); }
.faq-a { font-size:13px; color:var(--muted); line-height:1.8; max-height:0; overflow:hidden; transition:max-height .4s ease,margin-top .3s; }
.faq-item.open .faq-a { max-height:200px; margin-top:12px; }

/* ── NEW: PINK & YELLOW FAQ VARIANTS ── */
.faq-item.pink-faq {
  background: var(--pink-pale); border-color: var(--pink-border);
}
.faq-item.pink-faq .faq-q span { color: var(--white-text-dark); }
.faq-item.pink-faq .faq-toggle { color: var(--pink-bold); border-color: var(--pink-border); }
.faq-item.pink-faq .faq-a { color: var(--pink-text); }

.faq-item.yellow-faq {
  background: var(--yellow-pale); border-color: var(--yellow-border);
}
.faq-item.yellow-faq .faq-q span { color: var(--white-text-dark); }
.faq-item.yellow-faq .faq-toggle { color: var(--yellow-text); border-color: var(--yellow-border); }
.faq-item.yellow-faq .faq-a { color: var(--yellow-text); }

/* ── CTA BANNER ── */
.cta-banner {
  text-align:center;
  background: linear-gradient(160deg, var(--pink-pale), var(--yellow-mid), var(--pink-pale));
  border-top:1px solid var(--pink-border);
  border-bottom:1px solid var(--yellow-border);
  padding:90px 48px;
}
.cta-banner h2 { color: var(--white-text-dark); }
.cta-banner .s-sub { color: var(--white-text-muted); margin:18px auto 40px; text-align:center; }
.cta-banner .s-tag { color: var(--orange); }
.cta-banner .s-tag::before { background: var(--orange); }
.cta-btns { display:flex; gap:16px; justify-content:center; align-items:center; flex-wrap:wrap; }

/* ── FOOTER ── */
footer { background:var(--navy); border-top:1px solid var(--border); padding:64px 48px 32px; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; margin-bottom:48px; }
.footer-brand p { font-size:13px; color:var(--muted); line-height:1.85; max-width:260px; margin-top:14px; }
.footer-col h4 { font-size:10px; letter-spacing:3px; text-transform:uppercase; color:var(--cyan); margin-bottom:18px; font-weight:700; }
.footer-col ul { list-style:none; }
.footer-col ul li { margin-bottom:10px; }
.footer-col ul li a { color:var(--muted); text-decoration:none; font-size:13px; transition:color .2s; }
.footer-col ul li a:hover { color:var(--white); }
.footer-bottom { display:flex; justify-content:space-between; align-items:center; padding-top:28px; border-top:1px solid var(--border); font-size:11px; color:var(--muted); font-family:'DM Mono',monospace; flex-wrap:wrap; gap:12px; }
.footer-bottom a { color:var(--orange); text-decoration:none; }

/* ── TOAST ── */
.toast { position:fixed; bottom:20px; right:20px; z-index:9999; background:var(--navy2); border-left:3px solid var(--orange); padding:14px 18px; display:flex; align-items:center; gap:10px; transform:translateX(130%); transition:transform .4s cubic-bezier(.34,1.56,.64,1); max-width:300px; pointer-events:none; box-shadow:0 8px 32px rgba(0,0,0,.4); }
.toast.show { transform:translateX(0); }
.t-icon { color:var(--cyan); font-size:16px; }
.t-msg { font-size:12px; color:var(--white); line-height:1.4; }

/* ── REVEAL ANIMATION ── */
.reveal { opacity:0; transform:translateY(22px); transition:opacity .7s ease,transform .7s ease; }
.reveal.visible { opacity:1; transform:none; }

/* ── KEYFRAMES ── */
@keyframes rot    { to { transform:translate(-50%,-50%) rotate(360deg); } }
@keyframes flt    { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-14px)} }
@keyframes fadeUp { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:none} }
@keyframes blink  { 0%,100%{opacity:1} 50%{opacity:0} }
@keyframes barG   { from{width:0} }

/* ════════════════════════════════════════════
   RESPONSIVE — TABLET (max 900px)
════════════════════════════════════════════ */
@media(max-width:900px){
  nav { padding:12px 20px; }
  .nav-links,.nav-cta { display:none; }
  .mobile-menu-btn { display:flex; }

  #hero { min-height:65svh; align-items:flex-end; }
  .hero-content { padding:0 20px 60px 20px; max-width:100%; }
  .hero-badge { font-size:8px; padding:5px 12px; margin-bottom:16px; }
  .hero-desc { font-size:13px; margin-bottom:24px; max-width:100%; }
  .hero-actions { gap:10px; }
  .hero-stats { gap:20px; margin-top:22px; padding-top:20px; }
  .hs-thumbs { display:none; }
  .hs-label { top:68px; }
  .hs-counter { top:68px; right:10px; font-size:9px; }
  .hs-arrow { width:36px; height:36px; font-size:16px; }
  .hs-arrow.left  { left:8px; }
  .hs-arrow.right { right:8px; }
  .hs-dots { bottom:16px; }

  .trust-strip { padding:14px 20px; gap:12px; justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; }
  .ti-txt { font-size:11px; }
  .tdv { display:none; }

  .page-hero { padding:100px 20px 56px; }
  .blob1,.blob2 { display:none; }

  section { padding:60px 20px; }

  .why-grid,.contact-grid { grid-template-columns:1fr; gap:40px; }
  .why-visual { display:none; }
  .proc-steps { grid-template-columns:1fr 1fr; gap:36px; }
  .proc-steps::before { display:none; }
  .p-step { padding:0 10px; }
  .t-header { flex-direction:column; align-items:flex-start; gap:16px; }
  .t-grid,.team-grid { grid-template-columns:1fr; }
  .values-grid { grid-template-columns:1fr 1fr; }
  .svc-intro { flex-direction:column; align-items:flex-start; gap:20px; }
  .svc-grid { grid-template-columns:1fr; }
  .cf-row { grid-template-columns:1fr; }
  .faq-grid { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:32px; }
  .cta-banner { padding:60px 20px; }
  footer { padding:52px 20px 28px; }
  .footer-bottom { font-size:10px; }
}

/* ════════════════════════════════════════════
   RESPONSIVE — MOBILE (max 480px)
════════════════════════════════════════════ */
@media(max-width:480px){
  #hero { min-height:65svh; }
  .hero-content { padding:0 16px 64px 16px; }
  .hero-stats { gap:14px; }
  .stat-num { font-size:22px; }
  .stat-lbl { font-size:9px; }
  .hero-actions { flex-direction:column; align-items:flex-start; gap:10px; }
  .btn-primary,.btn-outline-c,.btn-cyan,.btn-pink,.btn-yellow { padding:12px 24px; font-size:12px; width:100%; text-align:center; }

  .logo-text { font-size:15px; }
  .logo-sub { display:none; }

  .trust-strip { padding:12px 16px; }

  .page-hero { padding:90px 16px 48px; }

  section { padding:48px 16px; }
  h2 { font-size:clamp(24px,7vw,36px); }

  .proc-steps { grid-template-columns:1fr; }
  .p-num { width:80px; height:80px; font-size:24px; }

  .values-grid { grid-template-columns:1fr; }

  .footer-grid { grid-template-columns:1fr; gap:28px; }
  .footer-brand p { max-width:100%; }

  .cta-btns { flex-direction:column; }
  .cta-btns .btn-primary,.cta-btns .btn-outline-c,.cta-btns .btn-cyan,.cta-btns .btn-pink,.cta-btns .btn-yellow { width:100%; text-align:center; }

  .toast { left:16px; right:16px; bottom:16px; max-width:none; }

  .mobile-nav { top:58px; }
}