/* =========================================================
   LIGHT MODE
   Dark is the original design and lives in the other files.
   Everything below only applies when <html data-theme="light">.
   ========================================================= */
[data-theme="light"] {
  --bg: #f3f7fc;
  --bg-light: #e9f0f9;
  --card: #ffffff;
  --cyan: #0a8590;
  --blue: #0b6fd6;
  --white: #0c1a2e;
  --muted: #4a5d78;
  --border: rgba(11, 111, 214, .25);
}

/* ---------- header ---------- */
[data-theme="light"] .header-inner {
  background: rgba(255, 255, 255, .9);
  border-color: rgba(11, 111, 214, .22);
  box-shadow: 0 12px 35px rgba(20, 50, 90, .12);
}
[data-theme="light"] .brand-tagline { color: #5d7391; }
[data-theme="light"] .nav-link { color: #2b3f5c; }
[data-theme="light"] .nav-link:hover,
[data-theme="light"] .nav-link.active { color: var(--cyan); }
[data-theme="light"] .menu-toggle { color: #0c1a2e; border-color: rgba(12, 26, 46, .22); }
[data-theme="light"] .menu-toggle span { background: #0c1a2e; }
[data-theme="light"] .tool-btn { color: #2b3f5c; border-color: rgba(12, 26, 46, .22); }
[data-theme="light"] .tool-btn:hover,
[data-theme="light"] .tool-btn[aria-expanded="true"] { color: var(--cyan); border-color: var(--cyan); }
@media (max-width: 820px) {
  [data-theme="light"] .nav {
    background: rgba(255, 255, 255, .98);
    border-color: rgba(11, 111, 214, .22);
    box-shadow: 0 18px 38px rgba(20, 50, 90, .18);
  }
}

/* ---------- search panel ---------- */
[data-theme="light"] .search-panel {
  background: rgba(255, 255, 255, .97);
  border-color: rgba(11, 111, 214, .22);
  box-shadow: 0 18px 38px rgba(20, 50, 90, .18);
}
[data-theme="light"] .search-field input {
  background: #f4f8fd;
  border-color: rgba(20, 60, 120, .18);
}
[data-theme="light"] .search-field input::placeholder { color: #7a8aa3; }
[data-theme="light"] .search-field input::-webkit-search-cancel-button { filter: none; }
[data-theme="light"] .search-result {
  border-color: rgba(20, 60, 120, .1);
  background: rgba(15, 80, 160, .03);
}
[data-theme="light"] .search-result:hover,
[data-theme="light"] .search-result.is-active {
  border-color: rgba(11, 111, 214, .45);
  background: rgba(11, 111, 214, .07);
}
[data-theme="light"] .search-result .sr-type {
  border-color: rgba(10, 133, 144, .3);
  background: rgba(10, 133, 144, .08);
}

/* ---------- hero ---------- */
[data-theme="light"] .hero {
  background-image:
    radial-gradient(ellipse at 75% 30%, rgba(36, 155, 255, .18), transparent 45%),
    radial-gradient(ellipse at 10% 70%, rgba(19, 223, 208, .16), transparent 36%),
    linear-gradient(145deg, #f4f8fe, #e6f0fb 65%, #f4f8fe);
}
[data-theme="light"] .hero::before {
  background-image:
    linear-gradient(rgba(11, 111, 214, .1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(11, 111, 214, .1) 1px, transparent 1px);
}
[data-theme="light"] .hero-description { color: #3d516d; }
[data-theme="light"] .btn-primary {
  color: #041427;
  background: linear-gradient(110deg, #249bff, #13dfd0);
}
[data-theme="light"] .brand-icon { background: linear-gradient(135deg, #249bff, #13dfd0); }
[data-theme="light"] .btn-outline { color: #0c1a2e; border-color: var(--blue); }

/* ---------- services (home) ---------- */
[data-theme="light"] .dtx-services {
  --dtx-bg: #eaf1fa;
  --dtx-card: #ffffff;
  --dtx-blue: #1f6fe0;
  --dtx-cyan: #0a86b8;
  --dtx-white: #0c1a2e;
  --dtx-muted: #4a5d78;
}
[data-theme="light"] .dtx-services::before {
  background-image:
    linear-gradient(rgba(40, 100, 180, .1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(40, 100, 180, .1) 1px, transparent 1px);
}
[data-theme="light"] .dtx-heading h2 span {
  background-image: linear-gradient(90deg, #0a8fc0 0%, #1f6fe0 55%, #6b7fe8 100%);
}
[data-theme="light"] .dtx-card {
  --card-accent: #1f6fe0;
  --card-glow: rgba(31, 111, 224, .16);
  border-color: rgba(60, 100, 160, .18);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .6), transparent 55%),
    linear-gradient(145deg, #ffffff, #f1f6fd 78%);
  box-shadow: 0 15px 40px rgba(30, 60, 110, .1), inset 0 1px 0 #fff;
}
[data-theme="light"] .dtx-card.dtx-web { --card-accent: #0a86b8; --card-glow: rgba(10, 134, 184, .16); }
[data-theme="light"] .dtx-card.dtx-software { --card-accent: #7048e0; --card-glow: rgba(112, 72, 224, .15); }
[data-theme="light"] .dtx-card.dtx-management { --card-accent: #0c9a7a; --card-glow: rgba(12, 154, 122, .15); }
[data-theme="light"] .dtx-card:hover { box-shadow: 0 25px 55px rgba(30, 60, 110, .18), 0 0 30px var(--card-glow); }
[data-theme="light"] .dtx-card::after { border-color: rgba(40, 100, 180, .07); box-shadow: 0 0 0 24px rgba(40, 100, 180, .02), 0 0 0 48px rgba(40, 100, 180, .015); }
[data-theme="light"] .dtx-card-content h3 { color: #0c1a2e; }
[data-theme="light"] .dtx-card-content p { color: #4a5d78; }
[data-theme="light"] .dtx-card-bottom { border-top-color: rgba(60, 100, 160, .16); }
[data-theme="light"] .dtx-tags span {
  color: #3d516d;
  border-color: rgba(60, 100, 160, .2);
  background: rgba(15, 80, 160, .04);
}
[data-theme="light"] .dtx-link {
  color: #0c3a73;
  border-color: rgba(31, 111, 224, .3);
  background: rgba(31, 111, 224, .07);
}
[data-theme="light"] .dtx-link:hover { color: #fff; }
[data-theme="light"] .dtx-watermark { color: rgba(40, 90, 160, .07); }
[data-theme="light"] .dtx-footer > p { color: #3d516d; }

/* ---------- portfolio (home) ---------- */
[data-theme="light"] .dt-portfolio {
  --bg: #f1f6fc;
  --card: #ffffff;
  --text: #0c1a2e;
  --muted: #4a5d78;
  --blue: #0b6fd6;
  --cyan: #0a8590;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(36, 155, 255, .14), transparent 55%),
    var(--bg);
}
[data-theme="light"] .dt-portfolio .dt-eyebrow {
  border-color: rgba(10, 133, 144, .3);
  background: rgba(10, 133, 144, .08);
}
[data-theme="light"] .dt-portfolio .dt-eyebrow::before { box-shadow: 0 0 10px rgba(10, 133, 144, .5); }
[data-theme="light"] .dt-portfolio .dt-card {
  border-color: rgba(20, 60, 120, .12);
  background: linear-gradient(160deg, #ffffff, #f1f6fc);
  box-shadow: 0 12px 32px rgba(30, 60, 110, .08);
}
[data-theme="light"] .dt-portfolio .dt-card:hover {
  border-color: rgba(11, 111, 214, .55);
  box-shadow: 0 18px 40px rgba(30, 60, 110, .16);
}
[data-theme="light"] .dt-portfolio .dt-image { background: #dce8f6; }
[data-theme="light"] .dt-portfolio .dt-button {
  color: #0b3a73;
  border-color: rgba(11, 111, 214, .35);
  background: rgba(11, 111, 214, .07);
}
[data-theme="light"] .dt-portfolio .dt-button:hover { color: #fff; }

/* ---------- contact (home) ---------- */
[data-theme="light"] .dt-contact {
  --dc-blue: #0b6fd6;
  --dc-cyan: #0a8590;
  --dc-bg: #eaf1fa;
  --dc-panel: #ffffff;
  --dc-text: #0c1a2e;
  --dc-muted: #4a5d78;
  --dc-border: rgba(20, 60, 120, .14);
  background:
    radial-gradient(ellipse at 0% 10%, rgba(36, 155, 255, .14), transparent 38%),
    radial-gradient(ellipse at 100% 85%, rgba(19, 223, 208, .12), transparent 35%),
    var(--dc-bg);
}
[data-theme="light"] .dt-contact .dc-eyebrow {
  border-color: rgba(10, 133, 144, .3);
  background: rgba(10, 133, 144, .08);
}
[data-theme="light"] .dt-contact .dc-eyebrow::before { box-shadow: 0 0 10px rgba(10, 133, 144, .5); }
[data-theme="light"] .dt-contact .dc-info-panel { background: linear-gradient(145deg, #ffffff, #eef4fb); }
[data-theme="light"] .dt-contact .dc-info-panel::before {
  border-color: rgba(11, 111, 214, .14);
  box-shadow: 0 0 0 25px rgba(11, 111, 214, .02), 0 0 0 50px rgba(11, 111, 214, .015);
}
[data-theme="light"] .dt-contact .dc-detail {
  border-color: rgba(20, 60, 120, .1);
  background: rgba(15, 80, 160, .03);
}
[data-theme="light"] .dt-contact .dc-detail:hover {
  border-color: rgba(11, 111, 214, .4);
  background: rgba(11, 111, 214, .06);
}
[data-theme="light"] .dt-contact .dc-icon { background: rgba(11, 111, 214, .1); }
[data-theme="light"] .dt-contact .dc-whatsapp {
  color: #0b5d2e;
  border-color: rgba(37, 211, 102, .5);
  background: rgba(37, 211, 102, .12);
}
[data-theme="light"] .dt-contact .dc-whatsapp:hover { color: #064a22; background: rgba(37, 211, 102, .22); }
[data-theme="light"] .dt-contact .dc-form-panel {
  background: rgba(255, 255, 255, .95);
  box-shadow: 0 20px 50px rgba(30, 60, 110, .1);
}
[data-theme="light"] .dt-contact .dc-field label { color: #1a2c47; }
[data-theme="light"] .dt-contact .dc-field input,
[data-theme="light"] .dt-contact .dc-field select,
[data-theme="light"] .dt-contact .dc-field textarea {
  border-color: rgba(20, 60, 120, .18);
  background: #f4f8fd;
}
[data-theme="light"] .dt-contact .dc-field input::placeholder,
[data-theme="light"] .dt-contact .dc-field textarea::placeholder { color: #7a8aa3; }
[data-theme="light"] .dt-contact .dc-field select option { color: #0c1a2e; background: #fff; }
[data-theme="light"] .dt-contact .dc-status.dc-status-error { color: #8a1c1c; background: rgba(255, 80, 80, .1); }
[data-theme="light"] .dt-contact .dc-status.dc-status-success { color: #0b5d2e; background: rgba(37, 211, 102, .12); }

/* ---------- about page ---------- */
[data-theme="light"] .dt-about {
  --da-bg: #eaf1fa;
  --da-card: #ffffff;
  --da-border: rgba(20, 60, 120, .16);
  --da-cyan: #0a8590;
  --da-blue: #0b6fd6;
  --da-text: #0c1a2e;
  --da-muted: #4a5d78;
  background:
    radial-gradient(ellipse at 10% 5%, rgba(36, 155, 255, .13), transparent 35%),
    radial-gradient(ellipse at 90% 40%, rgba(19, 223, 208, .12), transparent 35%),
    var(--da-bg);
}
[data-theme="light"] .dt-about .da-company-visual { background: linear-gradient(145deg, #ffffff, #e4eef9); }
[data-theme="light"] .dt-about .da-company-visual::before {
  border-color: rgba(10, 133, 144, .22);
  box-shadow: 0 0 0 35px rgba(10, 133, 144, .04), 0 0 0 70px rgba(11, 111, 214, .03);
}
[data-theme="light"] .dt-about .da-tag { color: #2b3f5c; background: rgba(15, 80, 160, .05); }
[data-theme="light"] .dt-about .da-leader { background: linear-gradient(125deg, #ffffff, #eef4fb); }
[data-theme="light"] .dt-about .da-leader-photo {
  background: radial-gradient(circle at 50% 35%, #cfe4f5, transparent 50%), #e9f1fa;
}
[data-theme="light"] .dt-about .da-role { background: rgba(10, 133, 144, .1); border-color: rgba(10, 133, 144, .28); }
[data-theme="light"] .dt-about .da-stat,
[data-theme="light"] .dt-about .da-value,
[data-theme="light"] .dt-about .da-network-note { background: rgba(15, 80, 160, .04); }
[data-theme="light"] .dt-about .da-team-card { background: linear-gradient(145deg, #ffffff, #eff4fb); }
[data-theme="light"] .dt-about .da-team-card:hover { border-color: rgba(10, 133, 144, .5); }
[data-theme="light"] .dt-about .da-team-icon { background: rgba(10, 133, 144, .1); border-color: rgba(10, 133, 144, .25); }
[data-theme="light"] .dt-about .da-cta {
  border-color: rgba(11, 111, 214, .28);
  background:
    radial-gradient(ellipse at 50% 0%, rgba(36, 155, 255, .2), transparent 65%),
    #ffffff;
}
[data-theme="light"] .dt-about .da-button { color: #fff; }
[data-theme="light"] .dt-about .da-button:hover { color: var(--da-cyan); }

/* ---------- team (about page) ---------- */
[data-theme="light"] .dt-team .dt-hero h1 { color: #0c1a2e; }
[data-theme="light"] .dt-team .dt-hero p { color: #3d516d; }
[data-theme="light"] .dt-team .dt-card {
  border-color: rgba(20, 60, 120, .16);
  background: linear-gradient(160deg, #ffffff, #eef4fb);
  box-shadow: 0 12px 30px rgba(30, 60, 110, .1);
}
[data-theme="light"] .dt-team .dt-card:hover { border-color: var(--cyan); }
[data-theme="light"] .dt-team .dt-photo {
  background: radial-gradient(circle, #d6e9fb, #e6f0fb 70%);
  border-color: rgba(11, 111, 214, .45);
}
[data-theme="light"] .dt-team .dt-avatar {
  background: linear-gradient(145deg, #c6def5, #e6f0fb);
  color: #0b4f8a;
}
[data-theme="light"] .dt-team .dt-card h2 { color: #0c1a2e; }
[data-theme="light"] .dt-team .dt-bio { color: #3d516d; }
[data-theme="light"] .dt-team .dt-tags span {
  color: #0b4f8a;
  border-color: rgba(11, 111, 214, .35);
  background: rgba(11, 111, 214, .06);
}
[data-theme="light"] .dt-team .dt-link { color: #1a3a66; }
[data-theme="light"] .dt-team .dt-link .dt-icon { color: #0b4f8a; background: rgba(11, 111, 214, .08); }
[data-theme="light"] .dt-team .dt-link:hover .dt-icon { color: #fff; }
[data-theme="light"] .dt-team .dt-profile { color: #0b4f8a; }
[data-theme="light"] .dt-team .dt-profile:hover { color: #fff; }
[data-theme="light"] .dt-team .dt-value { color: #1a3a66; border-right-color: rgba(11, 111, 214, .4); }
[data-theme="light"] .dt-team .dt-note { color: #5d7391; }

/* ---------- footer ---------- */
[data-theme="light"] .dt-footer {
  --dt-bg: #e3ecf8;
  --dt-text: #0c1a2e;
  --dt-muted: #4a5d78;
  --dt-blue: #0b6fd6;
  --dt-cyan: #0a8590;
  border-top-color: rgba(11, 111, 214, .25);
}
[data-theme="light"] .dt-logo-name,
[data-theme="light"] .dt-footer-column h3 { color: #0c1a2e; }
[data-theme="light"] .dt-footer-socials a {
  color: #1a3a66;
  border-color: rgba(20, 60, 120, .2);
  background: rgba(15, 80, 160, .05);
}
[data-theme="light"] .dt-footer-socials a:hover { color: #fff; }
[data-theme="light"] .dt-contact-item strong { color: #0c1a2e; }
[data-theme="light"] .dt-footer-cta {
  color: #0c1a2e !important;
  border-color: rgba(10, 133, 144, .4);
  background: linear-gradient(110deg, rgba(11, 111, 214, .14), rgba(10, 133, 144, .08));
}
[data-theme="light"] .dt-footer-cta:hover { color: #fff !important; }
[data-theme="light"] .dt-footer-bottom {
  border-top-color: rgba(20, 60, 120, .14);
  background: rgba(255, 255, 255, .55);
}
[data-theme="light"] .dt-contact-icon { border-color: rgba(10, 133, 144, .3); background: rgba(11, 111, 214, .08); }

/* ---------- 404 page ---------- */
[data-theme="light"] .error-page {
  background:
    radial-gradient(ellipse at 75% 20%, rgba(36, 155, 255, .18), transparent 45%),
    radial-gradient(ellipse at 10% 80%, rgba(19, 223, 208, .16), transparent 36%),
    linear-gradient(145deg, #f4f8fe, #e6f0fb 65%, #f4f8fe);
}
[data-theme="light"] .error-page::before {
  background-image:
    linear-gradient(rgba(11, 111, 214, .1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(11, 111, 214, .1) 1px, transparent 1px);
}
[data-theme="light"] .error-code { filter: drop-shadow(0 0 30px rgba(11, 111, 214, .18)); }
[data-theme="light"] .error-kicker { border-color: rgba(10, 133, 144, .3); background: rgba(10, 133, 144, .08); }
[data-theme="light"] .error-text { color: #3d516d; }
[data-theme="light"] .error-chips a { border-color: rgba(20, 60, 120, .16); background: rgba(15, 80, 160, .04); }
[data-theme="light"] .error-chips a:hover { background: rgba(10, 133, 144, .08); }

/* smooth switch between themes */
body, .header-inner, .search-panel {
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
