:root {
  --brand-950: #071b4d;
  --brand-900: #0b286d;
  --brand-800: #103b93;
  --brand-700: #1553ad;
  --brand-600: #1972c4;
  --brand-500: #1598d4;
  --brand-400: #43b4e8;
  --brand-100: #e6f4fc;
  --brand-50: #f3f9fd;
  --ink-950: #0a1733;
  --ink-900: #102343;
  --ink-700: #38506f;
  --ink-600: #526983;
  --ink-500: #6f8299;
  --line: #dbe6f2;
  --line-strong: #c6d7e9;
  --surface: #ffffff;
  --surface-soft: #f6f9fd;
  --surface-blue: #edf6fc;
  --success: #159b72;
  --danger: #c44343;
  --shadow-sm: 0 8px 24px rgba(8, 35, 83, .07);
  --shadow-md: 0 18px 48px rgba(8, 35, 83, .11);
  --shadow-lg: 0 28px 80px rgba(5, 26, 68, .18);
  --radius-sm: 12px;
  --radius: 20px;
  --radius-lg: 30px;
  --container: 1210px;
  --ease: cubic-bezier(.22, .8, .24, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink-900);
  background: #fff;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
body.no-scroll { overflow: hidden; }
img, svg { max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
::selection { color: #fff; background: var(--brand-600); }

.container { width: min(calc(100% - 42px), var(--container)); margin-inline: auto; }
.skip-link {
  position: fixed; top: 12px; left: 12px; z-index: 3000;
  padding: 11px 16px; border-radius: 10px;
  color: #fff; background: var(--brand-900);
  transform: translateY(-160%); transition: transform .2s ease;
}
.skip-link:focus { transform: none; }
.icon { display: inline-flex; width: 20px; height: 20px; flex: 0 0 20px; }
.icon svg {
  width: 100%; height: 100%; fill: none; stroke: currentColor;
  stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round;
}

/* Header */
.topbar {
  position: relative; z-index: 130;
  color: #e8f5ff;
  background: linear-gradient(90deg, var(--brand-950), var(--brand-800) 62%, var(--brand-600));
  font-size: 13px;
}
.topbar-inner {
  min-height: 42px; padding: 5px 0;
  display: flex; align-items: center; justify-content: space-between; gap: 22px;
}
.topbar-contact, .topbar-links { display: flex; align-items: center; gap: 24px; }
.topbar a { display: inline-flex; align-items: center; gap: 7px; transition: opacity .2s ease; }
.topbar a:hover { opacity: .78; }
.topbar-office { font-weight: 800; color: #fff; }
.site-header {
  position: sticky; top: 0; z-index: 120;
  height: 88px;
  background: rgba(255, 255, 255, .94);
  border-bottom: 1px solid rgba(207, 222, 237, .9);
  backdrop-filter: blur(18px) saturate(150%);
  transition: height .25s var(--ease), box-shadow .25s var(--ease), background .25s ease;
}
.site-header::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px;
  background: linear-gradient(90deg, transparent 3%, var(--brand-500) 28%, var(--brand-800) 62%, transparent 96%);
  opacity: .7;
}
.site-header.scrolled { height: 74px; box-shadow: 0 12px 34px rgba(7, 31, 77, .1); background: rgba(255,255,255,.97); }
.header-inner { height: 100%; display: flex; align-items: center; gap: 24px; }
.brand {
  display: flex; align-items: center; flex: 0 0 auto;
  width: 272px; height: 64px; overflow: hidden;
}
.brand img {
  display: block; width: 100%; height: 100%; object-fit: contain; object-position: left center;
  filter: drop-shadow(0 8px 18px rgba(17, 76, 151, .1));
  transition: transform .3s var(--ease), filter .3s ease;
}
.brand:hover img { transform: scale(1.012); filter: drop-shadow(0 12px 22px rgba(17, 76, 151, .17)); }
.desktop-nav { margin-left: auto; display: flex; align-items: center; gap: 3px; }
.nav-item { position: relative; }
.nav-link {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 11px 12px; border-radius: 11px;
  color: #273f5e; font-size: 14px; font-weight: 750;
  transition: color .2s ease, background .2s ease, transform .2s ease;
}
.nav-link:hover, .nav-link.active, .nav-item.active > .nav-link {
  color: var(--brand-800); background: var(--brand-50);
}
.nav-link:hover { transform: translateY(-1px); }
.chevron { font-size: 15px; transition: transform .2s ease; }
.nav-item:hover .chevron, .nav-item:focus-within .chevron { transform: rotate(180deg); }
.dropdown-menu {
  position: absolute; top: calc(100% + 12px); left: 0; min-width: 250px;
  padding: 10px; border: 1px solid var(--line); border-radius: 17px;
  background: rgba(255,255,255,.98); box-shadow: var(--shadow-md); backdrop-filter: blur(16px);
  opacity: 0; visibility: hidden; transform: translateY(8px) scale(.98); transform-origin: top left;
  transition: opacity .2s ease, visibility .2s ease, transform .2s var(--ease);
}
.dropdown-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 15px; }
.nav-item:hover .dropdown-menu, .nav-item:focus-within .dropdown-menu { opacity: 1; visibility: visible; transform: none; }
.dropdown-link {
  display: block; padding: 10px 12px; border-radius: 10px;
  color: var(--ink-700); font-size: 14px; transition: color .2s ease, background .2s ease, padding-left .2s ease;
}
.dropdown-link:hover, .dropdown-link.active { color: var(--brand-800); background: var(--brand-50); padding-left: 16px; }
.header-actions { display: flex; align-items: center; gap: 9px; }
.icon-button {
  width: 42px; height: 42px; display: grid; place-items: center;
  border: 1px solid var(--line); border-radius: 12px;
  color: var(--brand-800); background: #fff;
  transition: transform .2s var(--ease), border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.icon-button:hover { transform: translateY(-2px); border-color: #aacde8; background: var(--brand-50); box-shadow: var(--shadow-sm); }
.menu-toggle { display: none; }

/* Buttons */
.btn {
  position: relative; isolation: isolate; overflow: hidden;
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  min-height: 47px; padding: 13px 20px;
  border: 1px solid transparent; border-radius: 13px;
  font-weight: 800; line-height: 1.15;
  transition: transform .22s var(--ease), box-shadow .22s ease, background .22s ease, border-color .22s ease;
}
.btn::after {
  content: ""; position: absolute; inset: -120% auto -120% -35%; width: 28%; z-index: -1;
  transform: rotate(16deg); background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent);
  transition: transform .8s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn:hover::after { transform: translateX(430%) rotate(16deg); }
.btn-primary { color: #fff; background: linear-gradient(135deg, var(--brand-600), var(--brand-800)); box-shadow: 0 12px 28px rgba(16, 59, 147, .22); }
.btn-primary:hover { box-shadow: 0 16px 35px rgba(16, 59, 147, .3); }
.btn-secondary { color: var(--brand-900); background: #fff; border-color: rgba(255,255,255,.65); box-shadow: var(--shadow-sm); }
.btn-secondary:hover { background: var(--brand-50); }
.btn-outline { color: var(--brand-800); background: #fff; border-color: var(--line-strong); }
.btn-outline:hover { border-color: var(--brand-500); box-shadow: var(--shadow-sm); }
.btn-ghost { color: #fff; background: rgba(255,255,255,.11); border-color: rgba(255,255,255,.28); backdrop-filter: blur(10px); }
.btn-ghost:hover { background: rgba(255,255,255,.18); }
.btn-small { min-height: 40px; padding: 10px 15px; border-radius: 10px; font-size: 13px; }

/* Mobile navigation */
.mobile-panel, .panel-backdrop { display: none; }
.mobile-panel {
  position: fixed; top: 0; right: 0; z-index: 1000;
  width: min(420px, 91vw); height: 100dvh; overflow: auto;
  padding: 22px; background: #fff;
  transform: translateX(105%); transition: transform .3s var(--ease);
  box-shadow: -30px 0 70px rgba(5, 26, 68, .22);
}
.mobile-panel.open { transform: none; }
.panel-backdrop {
  position: fixed; inset: 0; z-index: 999;
  background: rgba(4, 18, 48, .58); backdrop-filter: blur(5px);
  opacity: 0; visibility: hidden; transition: opacity .2s ease, visibility .2s ease;
}
.panel-backdrop.open { opacity: 1; visibility: visible; }
.mobile-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.mobile-panel-head img { width: 230px; height: 58px; object-fit: contain; object-position: left center; }
.mobile-nav { display: grid; padding-top: 12px; }
.mobile-nav > a, .mobile-nav summary {
  list-style: none; padding: 14px 8px; border-bottom: 1px solid var(--line);
  color: var(--ink-900); font-weight: 800;
}
.mobile-nav summary::-webkit-details-marker { display: none; }
.mobile-nav summary::after { content: "+"; float: right; color: var(--brand-600); }
.mobile-nav details[open] summary::after { content: "−"; }
.mobile-nav details > a { display: block; padding: 10px 18px; color: var(--ink-600); font-size: 14px; }
.mobile-nav a:hover { color: var(--brand-700); }

/* Search */
.search-dialog {
  position: fixed; inset: 0; z-index: 1500;
  display: flex; align-items: flex-start; justify-content: center;
  padding: 105px 20px 30px;
  background: rgba(4, 18, 48, .7); backdrop-filter: blur(12px);
  opacity: 0; visibility: hidden; transition: opacity .22s ease, visibility .22s ease;
}
.search-dialog.open { opacity: 1; visibility: visible; }
.search-box {
  width: min(720px, 100%); padding: 25px;
  border: 1px solid rgba(255,255,255,.55); border-radius: 25px;
  background: #fff; box-shadow: var(--shadow-lg);
  transform: translateY(-12px) scale(.98); transition: transform .24s var(--ease);
}
.search-dialog.open .search-box { transform: none; }
.search-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.search-head h2 { margin: 0; color: var(--ink-950); font-size: 22px; }
.search-input-wrap {
  display: flex; align-items: center; gap: 10px;
  margin-top: 18px; padding: 14px 16px;
  border: 2px solid var(--line); border-radius: 14px;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.search-input-wrap:focus-within { border-color: var(--brand-500); box-shadow: 0 0 0 4px rgba(21, 152, 212, .11); }
.search-input-wrap input { width: 100%; border: 0; outline: 0; color: var(--ink-900); background: transparent; font-size: 17px; }
.search-results { max-height: 420px; overflow: auto; margin-top: 14px; }
.search-results > p { color: var(--ink-500); }
.search-result { display: block; padding: 14px 12px; border-bottom: 1px solid var(--line); border-radius: 11px; }
.search-result:hover { background: var(--brand-50); }
.search-result strong { display: block; color: var(--brand-900); }
.search-result span { color: var(--ink-500); font-size: 13px; }

/* Home hero */
.hero {
  position: relative; overflow: hidden; min-height: 660px;
  display: flex; align-items: center; color: #fff;
  background:
    radial-gradient(circle at 85% 10%, rgba(64, 186, 236, .38), transparent 34%),
    radial-gradient(circle at 22% 85%, rgba(37, 126, 209, .26), transparent 35%),
    linear-gradient(128deg, var(--brand-950) 0%, var(--brand-800) 48%, var(--brand-600) 100%);
}
.hero::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(90deg, rgba(0,0,0,.7), transparent 78%);
}
.hero::after {
  content: ""; position: absolute; right: -9%; bottom: -48%;
  width: 700px; aspect-ratio: 1; border-radius: 50%;
  border: 95px solid rgba(255,255,255,.055); pointer-events: none;
}
.hero-grid {
  position: relative; z-index: 2;
  display: grid; grid-template-columns: 1.04fr .96fr; align-items: center; gap: 62px;
  padding: 82px 0 104px;
}
.eyebrow {
  display: inline-flex; align-items: center; gap: 9px;
  color: var(--brand-600); font-size: 12px; font-weight: 900; letter-spacing: .15em; text-transform: uppercase;
}
.eyebrow::before { content: ""; width: 30px; height: 2px; border-radius: 99px; background: currentColor; }
.hero .eyebrow, .inner-hero .eyebrow, .dark-section .eyebrow { color: #bdeaff; }
.hero h1 {
  max-width: 760px; margin: 19px 0 22px;
  color: #fff; font-size: clamp(46px, 5.3vw, 76px); line-height: 1.02; letter-spacing: -.048em;
}
.hero h1 em { color: #cbefff; font-style: normal; }
.hero-copy { max-width: 650px; margin: 0; color: #dfedfb; font-size: 19px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 30px; }
.hero-trust { display: flex; flex-wrap: wrap; gap: 21px; margin-top: 33px; color: #d7e8fa; font-size: 14px; }
.hero-trust > span { display: inline-flex; align-items: center; gap: 8px; }
.hero-trust .icon { color: #7ad0f3; }
.hero-orb { position: absolute; border-radius: 50%; pointer-events: none; animation: float 9s ease-in-out infinite; }
.hero-orb-a { width: 390px; height: 390px; right: -80px; top: -150px; background: radial-gradient(circle at 30% 30%, rgba(99, 211, 250, .34), transparent 66%); }
.hero-orb-b { width: 280px; height: 280px; right: 26%; bottom: -170px; background: radial-gradient(circle at 35% 35%, rgba(255,255,255,.16), transparent 68%); animation-duration: 12s; }
.hero-visual { position: relative; min-height: 450px; }
.visual-card {
  position: absolute; border: 1px solid rgba(255,255,255,.65); border-radius: 24px;
  background: rgba(255,255,255,.95); box-shadow: 0 30px 80px rgba(2, 18, 55, .25); backdrop-filter: blur(18px);
}
.visual-main {
  inset: 32px 8px 24px 48px; padding: 30px;
  display: flex; flex-direction: column; justify-content: space-between;
  color: var(--ink-900);
}
.visual-main::before {
  content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none;
  background: radial-gradient(circle at 100% 0, rgba(21,152,212,.13), transparent 35%);
}
.visual-main-top { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.visual-logo-mark {
  width: 78px; height: 78px; border: 1px solid var(--line); border-radius: 19px;
  background: #fff url('../img/logo-symbol.png') center / 62% no-repeat;
  box-shadow: var(--shadow-sm);
}
.visual-logo-mark .icon { opacity: 0; }
.visual-badge { padding: 8px 11px; border-radius: 999px; color: var(--brand-800); background: var(--brand-100); font-size: 11px; font-weight: 900; }
.visual-main h3 { position: relative; margin: 27px 0 10px; color: var(--brand-900); font-size: 32px; line-height: 1.08; letter-spacing: -.025em; }
.visual-main p { position: relative; margin: 0; color: var(--ink-600); }
.visual-stats { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; margin-top: 24px; }
.visual-stat { padding: 14px 12px; border: 1px solid #e3edf7; border-radius: 14px; background: var(--surface-soft); }
.visual-stat strong { display: block; color: var(--brand-900); font-size: 19px; }
.visual-stat span { display: block; color: var(--ink-500); font-size: 11px; line-height: 1.35; }
.visual-float { padding: 15px 17px; display: flex; align-items: center; gap: 12px; color: var(--ink-900); animation: float 6.5s ease-in-out infinite; }
.visual-float .feature-icon { width: 45px; height: 45px; margin: 0; flex: 0 0 45px; }
.visual-float strong { display: block; font-size: 14px; }
.visual-float span { display: block; color: var(--ink-500); font-size: 12px; }
.visual-float.one { left: 0; top: 0; }
.visual-float.two { right: -18px; bottom: 0; animation-delay: -2s; }

/* Quick links */
.quick-strip { position: relative; z-index: 8; margin-top: -56px; }
.quick-grid {
  display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px;
  padding: 14px; border: 1px solid var(--line); border-radius: 25px;
  background: rgba(255,255,255,.96); box-shadow: var(--shadow-md); backdrop-filter: blur(16px);
}
.quick-card {
  position: relative; overflow: hidden;
  display: flex; align-items: center; gap: 14px; min-height: 88px;
  padding: 17px; border: 1px solid transparent; border-radius: 17px;
  transition: transform .22s var(--ease), background .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.quick-card:hover { transform: translateY(-4px); border-color: #d8e8f4; background: var(--brand-50); box-shadow: var(--shadow-sm); }
.quick-card .feature-icon { width: 48px; height: 48px; margin: 0; flex: 0 0 48px; }
.quick-card strong { display: block; color: var(--brand-900); }
.quick-card span { display: block; color: var(--ink-500); font-size: 12px; }

/* Sections and typography */
.section { position: relative; padding: 94px 0; background: #fff; }
.section-soft { background: var(--surface-soft); }
.content-wrap { padding: 65px 0 96px; background: #fff; }
.section-heading { max-width: 720px; margin-bottom: 42px; }
.section-heading.center { margin-inline: auto; text-align: center; }
.section-heading.center .eyebrow { justify-content: center; }
.section-heading h2 {
  margin: 14px 0 14px; color: var(--ink-950);
  font-size: clamp(34px, 4vw, 52px); line-height: 1.08; letter-spacing: -.04em;
}
.section-heading p { margin: 0; color: var(--ink-600); font-size: 17px; }
.lead { color: var(--ink-700); font-size: 19px; }
.prose { color: var(--ink-700); }
.prose h2, .prose h3 { color: var(--ink-950); }
.prose a { color: var(--brand-700); font-weight: 750; }
.center { text-align: center; }
.left { text-align: left; }
.mt-0 { margin-top: 0 !important; }
.mt-2 { margin-top: 20px !important; }
.mt-4 { margin-top: 40px !important; }
.mb-0 { margin-bottom: 0 !important; }
.hidden { display: none !important; }

/* Card systems */
.cards-3 { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.cards-4 { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 20px; }
.feature-card, .service-card, .product-card, .document-card, .contact-card, .form-card, .value-card, .team-card, .notice, .property-empty, .social-hero {
  border: 1px solid var(--line); background: #fff; box-shadow: 0 10px 32px rgba(8,35,83,.045);
}
.feature-card {
  position: relative; overflow: hidden; height: 100%; padding: 29px; border-radius: var(--radius);
  transition: transform .25s var(--ease), border-color .25s ease, box-shadow .25s ease;
}
.feature-card::after {
  content: ""; position: absolute; right: -65px; top: -65px; width: 145px; height: 145px; border-radius: 50%;
  background: radial-gradient(circle, rgba(21,152,212,.13), transparent 70%); transition: transform .35s ease;
}
.feature-card:hover { transform: translateY(-7px); border-color: #bad8ed; box-shadow: var(--shadow-md); }
.feature-card:hover::after { transform: scale(1.35); }
.feature-icon {
  position: relative; z-index: 1;
  width: 57px; height: 57px; display: grid; place-items: center;
  margin-bottom: 21px; border: 1px solid #d9eaf6; border-radius: 16px;
  color: var(--brand-800); background: linear-gradient(135deg, #f2f9fd, #e2f2fb);
}
.feature-icon .icon { width: 28px; height: 28px; }
.feature-card h3 { position: relative; z-index: 1; margin: 0 0 10px; color: var(--brand-900); font-size: 21px; }
.feature-card p { position: relative; z-index: 1; margin: 0 0 18px; color: var(--ink-600); }
.text-link { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 7px; color: var(--brand-700); font-weight: 800; }
.text-link .icon { width: 17px; transition: transform .2s ease; }
.text-link:hover .icon { transform: translateX(4px); }

/* Story and split */
.split { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 62px; }
.story-visual {
  position: relative; min-height: 470px; padding: 30px; display: flex; align-items: stretch;
  border-radius: var(--radius-lg);
  background:
    linear-gradient(135deg, rgba(18, 72, 156, .08), rgba(21, 152, 212, .13)),
    radial-gradient(circle at 20% 20%, #fff, transparent 38%);
}
.story-visual::before {
  content: ""; position: absolute; inset: 18px; border: 1px dashed rgba(21, 91, 176, .22); border-radius: 24px; pointer-events: none;
}
.story-panel {
  position: relative; z-index: 1; width: 100%; padding: 34px;
  border: 1px solid rgba(255,255,255,.8); border-radius: 24px;
  background: rgba(255,255,255,.88); box-shadow: var(--shadow-md); backdrop-filter: blur(16px);
}
.big-number { color: var(--brand-800); font-size: clamp(58px,8vw,92px); font-weight: 900; line-height: .9; letter-spacing: -.07em; }
.story-panel h3 { margin: 20px 0 10px; color: var(--ink-950); font-size: 29px; line-height: 1.12; }
.story-panel p { margin: 0; color: var(--ink-600); }
.stat-row { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-top: 28px; }
.stat-box { padding: 15px 13px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-soft); }
.stat-box strong { display: block; color: var(--brand-900); font-size: 19px; }
.stat-box span { display: block; color: var(--ink-500); font-size: 11px; line-height: 1.35; }
.mini-list { display: grid; gap: 13px; margin: 25px 0 30px; }
.mini-list > div { display: flex; gap: 11px; align-items: flex-start; color: var(--ink-700); }
.mini-list .icon { margin-top: 2px; color: var(--brand-600); }

/* Inner page hero */
.inner-hero {
  position: relative; overflow: hidden; padding: 76px 0;
  color: #fff;
  background:
    radial-gradient(circle at 88% 20%, rgba(63, 184, 235, .34), transparent 30%),
    linear-gradient(128deg, var(--brand-950), var(--brand-800) 56%, var(--brand-600));
}
.inner-hero::before {
  content: ""; position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px), linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(90deg,#000,transparent 85%);
}
.inner-hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 50px; }
.inner-hero h1 { margin: 13px 0 13px; color: #fff; font-size: clamp(40px,5vw,64px); line-height: 1.04; letter-spacing: -.045em; }
.inner-hero p { max-width: 750px; margin: 0; color: #deedfb; font-size: 18px; }
.inner-hero-mark {
  position: relative; width: 170px; height: 170px; overflow: hidden;
  display: grid; place-items: center;
  border: 1px solid rgba(255,255,255,.24); border-radius: 35px;
  color: #fff; background: rgba(255,255,255,.11); box-shadow: 0 24px 60px rgba(3,18,54,.2); backdrop-filter: blur(14px);
  transform: rotate(5deg);
}
.inner-hero-mark::before { content: ""; position: absolute; inset: 24px; background: url('../img/logo-symbol.png') center/contain no-repeat; opacity: .96; }
.inner-hero-mark::after { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg,rgba(255,255,255,.16),transparent 55%); }
.inner-hero-mark .icon { opacity: 0; }
.breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; padding-top: 18px; color: var(--ink-500); font-size: 13px; }
.breadcrumb a { color: var(--brand-700); }
.breadcrumb strong { color: var(--ink-700); }

/* Services and products */
.service-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.service-card {
  display: grid; grid-template-columns: 70px 1fr; gap: 21px;
  padding: 28px; border-radius: var(--radius);
  transition: transform .24s var(--ease), border-color .24s ease, box-shadow .24s ease;
}
.service-card:hover { transform: translateY(-5px); border-color: #bad8ed; box-shadow: var(--shadow-md); }
.service-card .feature-icon { width: 70px; height: 70px; margin: 0; }
.service-card h3 { margin: 0 0 8px; color: var(--brand-900); font-size: 23px; }
.service-card p { margin: 0 0 15px; color: var(--ink-600); }
.product-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.product-card { overflow: hidden; border-radius: var(--radius); transition: transform .24s var(--ease), border-color .24s ease, box-shadow .24s ease; }
.product-card:hover { transform: translateY(-6px); border-color: #bad8ed; box-shadow: var(--shadow-md); }
.product-visual {
  position: relative; height: 170px; display: grid; place-items: center;
  color: var(--brand-800); background: linear-gradient(135deg,#edf7fd,#f9fcff);
}
.product-visual::before { content: ""; position: absolute; width: 125px; height: 125px; border-radius: 50%; background: #fff; box-shadow: 0 20px 45px rgba(11, 55, 122, .08); }
.product-visual .icon { position: relative; z-index: 1; width: 66px; height: 66px; }
.product-body { padding: 24px; }
.product-body h3 { margin: 0 0 10px; color: var(--brand-900); font-size: 21px; }
.product-body p { margin: 0 0 17px; color: var(--ink-600); }
.tag-row { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 17px; }
.tag { display: inline-flex; padding: 6px 10px; border-radius: 999px; color: var(--brand-800); background: var(--brand-100); font-size: 11px; font-weight: 850; }

/* Documents */
.filters { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 24px; }
.filter-btn { padding: 10px 15px; border: 1px solid var(--line); border-radius: 999px; color: var(--ink-700); background: #fff; font-weight: 750; }
.filter-btn:hover, .filter-btn.active { color: #fff; border-color: var(--brand-700); background: var(--brand-700); }
.documents-grid { display: grid; gap: 14px; }
.document-card {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 18px;
  padding: 20px; border-radius: 18px;
  transition: transform .22s var(--ease), border-color .22s ease, box-shadow .22s ease;
}
.document-card:hover { transform: translateY(-3px); border-color: #bad8ed; box-shadow: var(--shadow-sm); }
.document-icon { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 14px; color: var(--brand-800); background: var(--brand-100); }
.document-icon .icon { width: 26px; height: 26px; }
.document-info > span { color: var(--brand-600); font-size: 10px; font-weight: 900; letter-spacing: .12em; }
.document-info h3 { margin: 2px 0 4px; color: var(--ink-950); font-size: 18px; }
.document-info p { margin: 0; color: var(--ink-500); font-size: 13px; }

/* Dark transparency section */
.dark-section {
  position: relative; overflow: hidden;
  color: #fff !important;
  background:
    radial-gradient(circle at 92% 10%, rgba(63,184,235,.28), transparent 32%),
    radial-gradient(circle at 10% 92%, rgba(27,99,190,.25), transparent 38%),
    linear-gradient(128deg, var(--brand-950), var(--brand-800) 58%, var(--brand-600)) !important;
}
.dark-section::before {
  content: ""; position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px), linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size: 48px 48px; pointer-events: none;
}
.dark-section .container { position: relative; z-index: 2; }
.dark-section .section-heading h2, .dark-section h2, .dark-section h3, .dark-section strong { color: #fff !important; }
.dark-section .section-heading p, .dark-section p { color: #dceafb !important; }
.transparency-grid { display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 44px; }
.doc-kpis { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; margin-top: 27px; }
.doc-kpis > div { padding: 16px 14px; border: 1px solid rgba(255,255,255,.17); border-radius: 16px; background: rgba(255,255,255,.085); backdrop-filter: blur(10px); }
.doc-kpis strong { display: block; margin-bottom: 5px; font-size: 25px; line-height: 1; }
.doc-kpis span { display: block; color: #d4e6fa; font-size: 11px; line-height: 1.35; }
.transparency-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.transparency-card {
  position: relative; overflow: hidden; min-height: 275px; padding: 23px;
  border: 1px solid rgba(255,255,255,.2); border-radius: 22px;
  color: #fff; background: rgba(255,255,255,.11); box-shadow: 0 24px 55px rgba(2,17,52,.2); backdrop-filter: blur(16px);
  transition: transform .24s var(--ease), background .24s ease, border-color .24s ease;
}
.transparency-card::after { content: ""; position: absolute; right: -55px; bottom: -55px; width: 160px; height: 160px; border-radius: 50%; background: radial-gradient(circle,rgba(255,255,255,.13),transparent 70%); }
.transparency-card:hover { transform: translateY(-5px); border-color: rgba(255,255,255,.36); background: rgba(255,255,255,.15); }
.transparency-card.featured { grid-column: 1 / -1; min-height: 240px; background: linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.1)); }
.transparency-meta { display: flex; flex-wrap: wrap; gap: 7px; }
.pill { display: inline-flex; padding: 6px 9px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; color: #fff; background: rgba(255,255,255,.12); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.pill.soft { background: rgba(85,195,240,.2); }
.transparency-card h3 { margin: 15px 0 9px; font-size: 24px; line-height: 1.14; }
.transparency-card p { margin: 0 0 17px; font-size: 15px; }
.transparency-links { position: relative; z-index: 2; display: flex; flex-wrap: wrap; gap: 8px; }
.transparency-links a { display: inline-flex; padding: 9px 11px; border: 1px solid rgba(255,255,255,.19); border-radius: 11px; color: #fff; background: rgba(255,255,255,.1); font-size: 12px; font-weight: 800; }
.transparency-links a:hover { background: rgba(255,255,255,.18); }

/* FAQ */
.search-faq { max-width: 900px; margin-bottom: 24px; }
.search-faq input { width: 100%; padding: 15px 17px; border: 2px solid var(--line); border-radius: 14px; outline: 0; color: var(--ink-900); }
.search-faq input:focus { border-color: var(--brand-500); box-shadow: 0 0 0 4px rgba(21,152,212,.1); }
.faq-list { display: grid; gap: 12px; max-width: 900px; }
.faq-item { overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.faq-question { width: 100%; padding: 19px 21px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 0; color: var(--brand-900); background: #fff; text-align: left; font-weight: 800; }
.faq-question:hover { background: var(--brand-50); }
.faq-question span:last-child { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; background: var(--brand-100); transition: transform .2s ease, background .2s ease, color .2s ease; }
.faq-item.open .faq-question span:last-child { transform: rotate(45deg); color: #fff; background: var(--brand-700); }
.faq-answer { max-height: 0; overflow: hidden; transition: max-height .35s var(--ease); }
.faq-answer-inner { padding: 0 21px 20px; color: var(--ink-600); }

/* Contact and forms */
.contact-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 34px; align-items: start; }
.contact-cards { display: grid; gap: 13px; }
.contact-card { display: flex; gap: 14px; padding: 19px; border-radius: 17px; }
.contact-card .feature-icon { width: 48px; height: 48px; margin: 0; flex: 0 0 48px; }
.contact-card strong { display: block; color: var(--brand-900); }
.contact-card span, .contact-card p { margin: 2px 0; color: var(--ink-500); font-size: 14px; }
.form-card { padding: 31px; border-radius: 24px; box-shadow: var(--shadow-sm); }
.form-card h2 { margin-top: 0; color: var(--ink-950); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.field { display: grid; gap: 7px; }
.field.full { grid-column: 1 / -1; }
.field label { color: var(--ink-700); font-size: 13px; font-weight: 800; }
.field input, .field textarea, .field select { width: 100%; padding: 13px 14px; border: 1px solid var(--line-strong); border-radius: 12px; outline: 0; color: var(--ink-900); background: #fff; }
.field input:focus, .field textarea:focus, .field select:focus { border-color: var(--brand-500); box-shadow: 0 0 0 4px rgba(21,152,212,.1); }
.field textarea { min-height: 145px; resize: vertical; }
.honeypot { position: absolute; left: -9999px; }
.form-note { margin-top: 12px; color: var(--ink-500); font-size: 12px; }
.map-frame { width: 100%; height: 390px; border: 0; border-radius: 24px; box-shadow: var(--shadow-sm); }

/* Office, policy, notices */
.office-panel { display: grid; grid-template-columns: 1fr .8fr; gap: 40px; align-items: center; padding: 43px; border: 1px solid var(--line); border-radius: 28px; background: linear-gradient(135deg,#f3f9fd,#fff); }
.office-login { padding: 30px; border-radius: 22px; color: #fff; background: linear-gradient(135deg,var(--brand-900),var(--brand-600)); box-shadow: var(--shadow-md); }
.office-login h3 { margin: 0 0 10px; color: #fff; font-size: 25px; }
.office-login p { color: #dfedfb; }
.office-feature { display: flex; gap: 12px; margin: 14px 0; color: #e7f3ff; }
.office-feature .icon { color: #8ed7f5; }
.notice { display: flex; align-items: flex-start; gap: 13px; padding: 18px 20px; border-radius: 16px; color: var(--ink-700); background: var(--brand-50); }
.notice > .icon { color: var(--brand-700); margin-top: 2px; }
.policy-banner { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 25px; padding: 37px; border-radius: 25px; color: #fff; background: linear-gradient(135deg,var(--brand-900),var(--brand-600)); box-shadow: var(--shadow-md); }
.policy-banner h2 { margin: 0 0 8px; color: #fff; }
.policy-banner p { margin: 0; color: #e1effd; }
.property-empty { padding: 52px; border-style: dashed; border-radius: 24px; text-align: center; background: var(--surface-soft); }
.property-empty .feature-icon { margin: 0 auto 18px; }
.property-empty h2 { color: var(--brand-900); }
.social-hero { display: flex; align-items: center; gap: 23px; margin-bottom: 34px; padding: 32px; border-radius: 23px; background: linear-gradient(135deg,#edf7fd,#fff); }
.social-hero .feature-icon { width: 64px; height: 64px; margin: 0; flex: 0 0 64px; }

/* Team and values */
.values-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.value-card { padding: 24px; border-radius: 19px; }
.value-card h3 { margin: 13px 0 7px; color: var(--brand-900); }
.value-card p { margin: 0; color: var(--ink-600); }
.team-section { background: var(--surface-soft); }
.team-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.team-card { padding: 24px; border-radius: 19px; }
.team-card h3 { margin: 0 0 5px; color: var(--brand-900); }
.team-card p { color: var(--ink-500); }
.team-list { display: grid; gap: 8px; margin-top: 14px; color: var(--ink-600); }

/* CTA */
.cta { position: relative; padding: 72px 0; background: #fff; }
.cta-box {
  position: relative; overflow: hidden;
  display: flex; align-items: center; justify-content: space-between; gap: 35px;
  padding: 40px 43px; border-radius: 28px; color: #fff;
  background:
    radial-gradient(circle at 85% 20%,rgba(75,196,240,.28),transparent 30%),
    linear-gradient(135deg,var(--brand-950),var(--brand-800) 55%,var(--brand-600));
  box-shadow: var(--shadow-lg);
}
.cta-box::after { content: ""; position: absolute; right: -60px; bottom: -95px; width: 270px; height: 270px; border: 45px solid rgba(255,255,255,.06); border-radius: 50%; }
.cta-box > * { position: relative; z-index: 2; }
.cta-box h2 { margin: 0 0 7px; color: #fff; font-size: clamp(30px,3vw,42px); line-height: 1.08; }
.cta-box p { margin: 0; color: #dceafb; }
.cta-actions { display: flex; flex-wrap: wrap; gap: 11px; flex: 0 0 auto; }

/* Footer */
.site-footer {
  position: relative; overflow: hidden; padding: 76px 0 25px;
  color: #cfe0f4;
  background:
    radial-gradient(circle at 82% 10%,rgba(38,158,214,.2),transparent 30%),
    linear-gradient(135deg,#061945,#0b286d 62%,#10498f);
}
.site-footer::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size: 50px 50px; }
.footer-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.45fr .8fr .8fr 1.15fr; gap: 42px; }
.footer-brand { padding: 24px; border: 1px solid rgba(255,255,255,.12); border-radius: 23px; background: rgba(255,255,255,.07); backdrop-filter: blur(13px); }
.footer-brand img { display: block; width: 280px; height: 92px; padding: 10px 14px; object-fit: contain; object-position: left center; border-radius: 15px; background: #fff; }
.footer-brand p { max-width: 360px; margin-bottom: 0; color: #d7e6f7; }
.site-footer h3 { position: relative; margin: 5px 0 18px; padding-bottom: 10px; color: #fff; font-size: 15px; }
.site-footer h3::after { content: ""; position: absolute; left: 0; bottom: 0; width: 40px; height: 2px; background: linear-gradient(90deg,#76d0f2,transparent); }
.site-footer a { display: block; margin: 9px 0; color: #d4e3f4; font-size: 14px; }
.site-footer a:hover { color: #fff; }
.site-footer p { font-size: 14px; }
.social-links { display: flex; gap: 9px; margin-top: 18px; }
.social-links a { width: 37px; height: 37px; display: grid; place-items: center; margin: 0; border: 1px solid rgba(255,255,255,.18); border-radius: 10px; background: rgba(255,255,255,.06); font-weight: 900; }
.footer-bottom { position: relative; z-index: 2; display: flex; justify-content: space-between; gap: 20px; margin-top: 44px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); color: #afc5df; font-size: 12px; }
.floating-whatsapp {
  position: fixed; right: 22px; bottom: 22px; z-index: 90;
  width: 57px; height: 57px; display: grid; place-items: center;
  border: 2px solid rgba(255,255,255,.85); border-radius: 50%;
  color: #fff; background: linear-gradient(135deg,#1fc682,#10916f); box-shadow: 0 14px 32px rgba(4,36,28,.3);
  font-size: 12px; font-weight: 900; letter-spacing: .04em;
  transition: transform .22s var(--ease), box-shadow .22s ease;
}
.floating-whatsapp:hover { transform: translateY(-5px) scale(1.04); box-shadow: 0 20px 38px rgba(4,36,28,.36); }

/* Motion that cannot hide content */
.reveal { opacity: 1; transform: none; }
.motion-ready .reveal { animation: revealUp .7s var(--ease) both; animation-play-state: paused; }
.motion-ready .reveal.visible { animation-play-state: running; }
.scroll-progress { position: fixed; top: 0; left: 0; z-index: 2500; width: 0; height: 3px; background: linear-gradient(90deg,var(--brand-500),var(--brand-800)); box-shadow: 0 0 12px rgba(21,152,212,.45); }
.fx-card { --mx: 50%; --my: 50%; position: relative; }
.fx-card::before { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0; background: radial-gradient(280px circle at var(--mx) var(--my),rgba(21,152,212,.11),transparent 42%); transition: opacity .2s ease; }
.fx-card:hover::before { opacity: 1; }

@keyframes float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-15px); } }
@keyframes revealUp { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }

/* Responsive */
@media (max-width: 1120px) {
  .desktop-nav { display: none; }
  .menu-toggle { display: grid; }
  .brand { width: 260px; }
  .mobile-panel, .panel-backdrop { display: block; }
  .hero-grid { grid-template-columns: 1fr 1fr; gap: 34px; }
  .cards-4 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .footer-grid { grid-template-columns: 1.25fr 1fr 1fr; }
  .footer-grid > div:last-child { grid-column: 1 / -1; }
}

@media (max-width: 900px) {
  .topbar-contact a:nth-child(2) { display: none; }
  .hero { min-height: auto; }
  .hero-grid { grid-template-columns: 1fr; padding: 65px 0 116px; }
  .hero-visual { width: min(600px,100%); min-height: 410px; margin-inline: auto; }
  .quick-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .cards-3, .product-grid, .team-grid, .values-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .split, .contact-grid, .office-panel, .transparency-grid { grid-template-columns: 1fr; }
  .story-visual { order: -1; }
  .service-grid { grid-template-columns: 1fr; }
  .inner-hero-mark { display: none; }
  .inner-hero-grid { grid-template-columns: 1fr; }
  .transparency-cards { max-width: 760px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-grid > div:last-child { grid-column: auto; }
  .cta-box { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 640px) {
  .container { width: min(calc(100% - 28px), var(--container)); }
  .topbar { display: none; }
  .site-header, .site-header.scrolled { height: 72px; }
  .brand { width: 202px; height: 54px; }
  .header-actions { gap: 6px; }
  .desktop-only { display: none; }
  .icon-button { width: 39px; height: 39px; }
  .mobile-panel-head img { width: 205px; height: 52px; }
  .hero-grid { padding: 48px 0 82px; }
  .hero h1 { font-size: 43px; }
  .hero-copy { font-size: 17px; }
  .hero-actions .btn { width: 100%; }
  .hero-trust { display: grid; gap: 10px; }
  .hero-visual { min-height: 350px; }
  .visual-main { inset: 25px 0 18px 18px; padding: 21px; }
  .visual-main h3 { font-size: 24px; }
  .visual-logo-mark { width: 60px; height: 60px; }
  .visual-stats { grid-template-columns: 1fr 1fr; }
  .visual-stat:last-child { display: none; }
  .visual-float { padding: 10px; }
  .visual-float.one { left: -4px; }
  .visual-float.two { right: -4px; }
  .quick-strip { margin-top: -37px; }
  .quick-grid { grid-template-columns: 1fr; padding: 10px; }
  .section { padding: 68px 0; }
  .content-wrap { padding: 45px 0 72px; }
  .section-heading { margin-bottom: 31px; }
  .section-heading h2 { font-size: 36px; }
  .cards-3, .cards-4, .product-grid, .team-grid, .values-grid { grid-template-columns: 1fr; }
  .split { gap: 34px; }
  .story-visual { min-height: 400px; padding: 17px; }
  .story-panel { padding: 23px; }
  .stat-row { grid-template-columns: 1fr; }
  .inner-hero { padding: 55px 0; }
  .inner-hero h1 { font-size: 39px; }
  .document-card { grid-template-columns: auto 1fr; }
  .document-card .btn { grid-column: 1 / -1; width: 100%; }
  .service-card { grid-template-columns: 1fr; }
  .service-card .feature-icon { width: 59px; height: 59px; }
  .transparency-cards { grid-template-columns: 1fr; }
  .transparency-card.featured { grid-column: auto; }
  .doc-kpis { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: 1fr; }
  .field.full { grid-column: auto; }
  .policy-banner { grid-template-columns: 1fr; padding: 27px 22px; }
  .office-panel { padding: 27px 21px; }
  .social-hero { align-items: flex-start; flex-direction: column; }
  .cta { padding: 55px 0; }
  .cta-box { padding: 32px 23px; }
  .cta-actions { width: 100%; }
  .cta-actions .btn { width: 100%; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-brand, .footer-grid > div:last-child { grid-column: auto; }
  .footer-brand img { width: 230px; height: 80px; }
  .footer-bottom { flex-direction: column; }
  .search-dialog { padding-top: 25px; }
  .search-box { padding: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Horizontal logo variant used only in navigation */
.brand { width: 230px; height: 76px; }
.mobile-panel-head img { width: 225px; height: 70px; }
@media (max-width: 1120px) { .brand { width: 220px; height: 72px; } }
@media (max-width: 640px) {
  .brand { width: 176px; height: 62px; }
  .mobile-panel-head img { width: 195px; height: 66px; }
}


/* === Logo cleanup pass === */
.brand img{height:52px!important;width:auto!important;max-width:min(52vw,360px)!important;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(18,60,150,.12));}
.mobile-panel-head img{height:42px!important;width:auto!important;max-width:210px!important;object-fit:contain;}
.footer-brand img{height:92px!important;width:auto!important;max-width:100%!important;object-fit:contain;}
.visual-main-top{align-items:flex-start;gap:18px;}
.visual-logo-mark{width:170px!important;height:74px!important;border-radius:18px!important;background:#fff url('../img/logo-header.png') center / 88% no-repeat!important;box-shadow:0 12px 24px rgba(18,60,150,.12)!important;}
.inner-hero-grid{grid-template-columns:1fr 210px!important;}
.inner-hero-mark{width:210px!important;height:140px!important;border-radius:30px!important;transform:rotate(4deg)!important;}
.inner-hero-mark::before{inset:18px!important;background:url('../img/logo-header.png') center/contain no-repeat!important;opacity:1!important;}
@media(max-width:850px){
  .brand img{height:48px!important;max-width:280px!important;}
  .inner-hero-grid{grid-template-columns:1fr 170px!important;gap:26px!important;}
  .inner-hero-mark{width:170px!important;height:116px!important;}
  .inner-hero-mark::before{inset:14px!important;}
}
@media(max-width:620px){
  .brand img{height:40px!important;max-width:190px!important;}
  .mobile-panel-head img{height:36px!important;max-width:170px!important;}
  .footer-brand img{height:74px!important;}
  .visual-logo-mark{width:146px!important;height:66px!important;}
}


/* logo cleanup overrides */
.brand img, .mobile-panel-head img, .footer-brand img, .visual-logo-mark, .inner-hero-mark::before { image-rendering:auto; }
.brand { width: 250px; height: 70px; }
.brand img { width: 100%; height: 100%; object-fit: contain; }
.mobile-panel-head img { width: 220px; height: 66px; object-fit: contain; }
.footer-brand img { width: auto; max-width: 100%; height: 92px; object-fit: contain; }
.visual-logo-mark { background-size: 58% !important; }
.inner-hero-mark::before { inset: 28px !important; opacity: .92 !important; }
@media (max-width: 1120px) { .brand { width: 230px; height: 66px; } }
@media (max-width: 640px) { .brand { width: 180px; height: 54px; } .mobile-panel-head img { width: 185px; height: 56px; } .footer-brand img { height: 76px; } }


/* === Home motion layer === */
.home-page{overflow-x:hidden}
.home-hero{isolation:isolate;background:linear-gradient(125deg,#0b2f78 0%,#12479f 48%,#0d86c7 100%);background-size:180% 180%;animation:homeGradient 16s ease-in-out infinite}
.home-hero .container{position:relative;z-index:5}
.hero-aurora{position:absolute;inset:-18%;z-index:0;overflow:hidden;pointer-events:none;filter:blur(18px)}
.hero-aurora span{position:absolute;border-radius:50%;mix-blend-mode:screen;opacity:.42;animation:auroraDrift 18s ease-in-out infinite alternate}
.hero-aurora span:nth-child(1){width:46vw;height:46vw;left:-7vw;top:-15vw;background:radial-gradient(circle,rgba(50,183,244,.52),transparent 66%)}
.hero-aurora span:nth-child(2){width:38vw;height:38vw;right:-3vw;top:2vw;background:radial-gradient(circle,rgba(121,207,255,.45),transparent 68%);animation-delay:-7s;animation-duration:22s}
.hero-aurora span:nth-child(3){width:34vw;height:34vw;left:38%;bottom:-22vw;background:radial-gradient(circle,rgba(255,255,255,.24),transparent 70%);animation-delay:-12s;animation-duration:26s}
.hero-network{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.48}
.hero-network svg{width:100%;height:100%;overflow:visible}
.hero-network path{fill:none;stroke:rgba(192,232,255,.3);stroke-width:1.3;stroke-dasharray:8 12;animation:networkFlow 18s linear infinite}
.hero-network path:nth-child(2){stroke:rgba(255,255,255,.16);animation-duration:25s;animation-direction:reverse}
.hero-network circle{fill:#d9f4ff;filter:drop-shadow(0 0 8px rgba(120,216,255,.9));animation:nodePulse 3.6s ease-in-out infinite}
.hero-network circle:nth-of-type(2){animation-delay:-.7s}.hero-network circle:nth-of-type(3){animation-delay:-1.4s}.hero-network circle:nth-of-type(4){animation-delay:-2.1s}.hero-network circle:nth-of-type(5){animation-delay:-2.8s}
.hero-particles{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.hero-particles i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);border-radius:50%;background:rgba(220,246,255,.85);box-shadow:0 0 18px rgba(102,211,255,.8);animation:particleFloat var(--d) ease-in-out infinite alternate}
.home-hero::after{content:"";position:absolute;inset:auto -8% -36% -8%;height:55%;z-index:2;background:radial-gradient(ellipse at center,rgba(37,145,220,.28),transparent 66%);filter:blur(16px);pointer-events:none}
.home-hero .hero-grid{position:relative}
.home-hero .visual-main{animation:visualHover 7s ease-in-out infinite}
.home-hero .visual-float.one{animation:floatOne 6s ease-in-out infinite}
.home-hero .visual-float.two{animation:floatTwo 7.5s ease-in-out infinite}
.home-hero .visual-main::after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(255,255,255,.65),rgba(96,195,245,.1),rgba(255,255,255,.35));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.home-services-section{overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)}
.home-section-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 20%,rgba(20,147,211,.08),transparent 24%),radial-gradient(circle at 88% 65%,rgba(18,60,150,.07),transparent 28%)}
.home-services-section::after{content:"";position:absolute;width:520px;height:520px;right:-260px;top:10%;border-radius:50%;border:1px solid rgba(18,60,150,.07);box-shadow:0 0 0 42px rgba(20,147,211,.025),0 0 0 86px rgba(18,60,150,.018);animation:ringRotate 22s linear infinite;pointer-events:none}
.home-services-section .feature-card{background:rgba(255,255,255,.82);backdrop-filter:blur(14px)}
.home-story-section{overflow:hidden;background:linear-gradient(135deg,#f5f9ff 0%,#eef6ff 48%,#f9fcff 100%)}
.home-story-rings{position:absolute;right:-120px;top:50%;width:480px;height:480px;transform:translateY(-50%);pointer-events:none}
.home-story-rings span{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(20,147,211,.12);animation:ringPulse 8s ease-in-out infinite}
.home-story-rings span:nth-child(2){inset:70px;animation-delay:-2.5s}.home-story-rings span:nth-child(3){inset:140px;animation-delay:-5s}
.transparency-section{background-size:180% 180%;animation:transparencyGradient 18s ease-in-out infinite}
.transparency-card{transition:transform .35s var(--ease),box-shadow .35s ease,border-color .35s ease}
.transparency-card:hover{transform:translateY(-8px) scale(1.01)}
@keyframes homeGradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes auroraDrift{0%{transform:translate3d(-2%,0,0) scale(.96)}100%{transform:translate3d(8%,5%,0) scale(1.08)}}
@keyframes networkFlow{to{stroke-dashoffset:-240}}
@keyframes nodePulse{0%,100%{opacity:.45;transform:scale(.8);transform-origin:center}50%{opacity:1;transform:scale(1.45);transform-origin:center}}
@keyframes particleFloat{0%{transform:translate3d(0,0,0);opacity:.25}50%{opacity:1}100%{transform:translate3d(22px,-42px,0);opacity:.35}}
@keyframes visualHover{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-10px,0)}}
@keyframes floatOne{0%,100%{transform:translate3d(0,0,0) rotate(-1deg)}50%{transform:translate3d(8px,-15px,0) rotate(1deg)}}
@keyframes floatTwo{0%,100%{transform:translate3d(0,0,0) rotate(1deg)}50%{transform:translate3d(-10px,-12px,0) rotate(-1deg)}}
@keyframes ringRotate{to{transform:rotate(360deg)}}
@keyframes ringPulse{0%,100%{transform:scale(.88);opacity:.28}50%{transform:scale(1.08);opacity:.75}}
@keyframes transparencyGradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@media(max-width:850px){.hero-network{opacity:.3}.hero-aurora span:nth-child(1){width:85vw;height:85vw}.hero-aurora span:nth-child(2){width:70vw;height:70vw}.home-services-section::after{opacity:.5}.home-story-rings{opacity:.55;right:-260px}}
@media(max-width:620px){.hero-network{opacity:.22}.hero-particles i:nth-child(even){display:none}.home-hero .visual-main{animation-duration:9s}.home-services-section::after{display:none}.home-story-rings{display:none}}
@media(prefers-reduced-motion:reduce){.home-hero,.hero-aurora span,.hero-network path,.hero-network circle,.hero-particles i,.home-hero .visual-main,.home-hero .visual-float,.home-services-section::after,.home-story-rings span,.transparency-section{animation:none!important}}

/* =====================================================================
   ASETRABAJO V2 — Corporate Editorial Theme
   Separate visual direction: light premium, bento layout, soft motion.
   ===================================================================== */
.theme-v2 {
  --brand-950:#081a3a;
  --brand-900:#0d2f6f;
  --brand-850:#123d8b;
  --brand-800:#174a9e;
  --brand-700:#1d64bd;
  --brand-600:#168fd0;
  --brand-500:#27a8e5;
  --brand-200:#cdeaff;
  --brand-100:#e9f6ff;
  --brand-50:#f5fbff;
  --ink-950:#0b1425;
  --ink-900:#14213a;
  --ink-700:#354460;
  --ink-600:#52617a;
  --ink-500:#748198;
  --line:#dfe7f1;
  --surface:#ffffff;
  --surface-soft:#f5f8fc;
  --surface-blue:#eef6ff;
  --shadow-sm:0 10px 26px rgba(13,47,111,.08);
  --shadow-md:0 22px 60px rgba(13,47,111,.12);
  --shadow-lg:0 34px 90px rgba(8,26,58,.17);
  background:#f6f8fb;
  color:var(--ink-900);
}
.theme-v2::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 10%,rgba(39,168,229,.08),transparent 28%),
    radial-gradient(circle at 90% 24%,rgba(23,74,158,.07),transparent 32%),
    linear-gradient(180deg,#f9fbfe 0%,#f4f7fb 100%);
}
.theme-v2 .container{width:min(calc(100% - 48px),1240px)}
.theme-v2 .topbar{
  background:#0a214d;
  color:#dcecff;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.theme-v2 .topbar-inner{height:38px}
.theme-v2 .topbar-office{color:#fff}
.theme-v2 .site-header{
  height:86px;
  background:rgba(255,255,255,.86);
  border-bottom:1px solid rgba(214,225,239,.9);
  box-shadow:0 10px 35px rgba(13,47,111,.055);
  backdrop-filter:blur(22px) saturate(150%);
}
.theme-v2 .site-header.scrolled{height:74px;background:rgba(255,255,255,.94);box-shadow:0 15px 40px rgba(13,47,111,.09)}
.theme-v2 .site-header::before{display:none}
.theme-v2 .header-inner{gap:30px}
.theme-v2 .brand{width:250px;height:auto;display:flex;align-items:center}
.theme-v2 .brand img{width:auto!important;height:52px!important;max-width:250px!important;filter:none!important;animation:none!important}
.theme-v2 .desktop-nav{gap:2px;padding:5px;border:1px solid rgba(217,227,240,.85);border-radius:16px;background:rgba(246,249,253,.82)}
.theme-v2 .nav-link{padding:10px 13px;border-radius:11px;color:#34445f;font-size:13px;letter-spacing:.005em}
.theme-v2 .nav-link:hover,.theme-v2 .nav-link.active,.theme-v2 .nav-item.active>.nav-link{background:#fff;color:var(--brand-800);box-shadow:0 7px 18px rgba(13,47,111,.08)}
.theme-v2 .dropdown-menu{top:calc(100% + 18px);border-color:#e0e8f2;border-radius:18px;box-shadow:0 25px 65px rgba(8,26,58,.15)}
.theme-v2 .dropdown-link{color:#40506a}
.theme-v2 .dropdown-link:hover,.theme-v2 .dropdown-link.active{background:#eef6ff;color:var(--brand-800)}
.theme-v2 .icon-button{background:#fff;border-color:#dce6f1;color:var(--brand-800);box-shadow:0 8px 20px rgba(13,47,111,.06)}
.theme-v2 .icon-button:hover{background:#edf7ff;border-color:#a9d8f4;color:var(--brand-700)}
.theme-v2 .btn{border-radius:14px;padding:13px 20px;box-shadow:none}
.theme-v2 .btn::after{display:none}
.theme-v2 .btn-primary{background:linear-gradient(135deg,#174a9e,#168fd0);box-shadow:0 14px 30px rgba(23,74,158,.22)}
.theme-v2 .btn-primary:hover{background:linear-gradient(135deg,#103e88,#137eb9);transform:translateY(-2px)}
.theme-v2 .btn-secondary{background:#fff;color:var(--brand-900);border:1px solid #d8e7f5;box-shadow:0 12px 30px rgba(13,47,111,.10)}
.theme-v2 .btn-secondary:hover{background:#f5fbff;border-color:#add8f2}
.theme-v2 .btn-outline{background:transparent;border-color:#bfcde0;color:var(--brand-900)}
.theme-v2 .btn-outline:hover{background:#fff;border-color:#9dcce8;box-shadow:0 10px 26px rgba(13,47,111,.08)}
.theme-v2 .btn-ghost{color:var(--brand-900);border-color:#c5d4e7;background:rgba(255,255,255,.65);backdrop-filter:blur(12px)}
.theme-v2 .btn-ghost:hover{background:#fff;border-color:#a9cce5}

/* Home hero: editorial, fluid, professional */
.theme-v2 .home-hero{
  min-height:700px;
  color:var(--ink-900);
  background:
    radial-gradient(ellipse at 75% 18%,rgba(39,168,229,.18),transparent 34%),
    radial-gradient(ellipse at 15% 75%,rgba(23,74,158,.10),transparent 33%),
    linear-gradient(135deg,#fafdff 0%,#f3f8fe 52%,#eef6ff 100%);
  border-bottom:1px solid #dde8f3;
  isolation:isolate;
}
.theme-v2 .home-hero::before{
  content:"";
  position:absolute;
  inset:-30% -15%;
  z-index:0;
  pointer-events:none;
  background:
    conic-gradient(from 210deg at 70% 50%,transparent 0 18%,rgba(22,143,208,.12) 25%,transparent 36% 100%);
  filter:blur(32px);
  animation:v2Aurora 18s ease-in-out infinite alternate;
  mask-image:radial-gradient(ellipse at center,#000 0 56%,transparent 78%);
}
.theme-v2 .home-hero::after{
  content:"";
  position:absolute;
  width:760px;
  height:760px;
  right:-330px;
  top:-280px;
  border-radius:50%;
  border:1px solid rgba(23,74,158,.12);
  box-shadow:0 0 0 80px rgba(23,74,158,.025),0 0 0 160px rgba(22,143,208,.02);
  animation:v2Orbit 22s linear infinite;
  pointer-events:none;
}
.theme-v2 .hero-network,.theme-v2 .hero-particles,.theme-v2 .hero-aurora{display:none!important}
.theme-v2 .hero-orb{display:block;filter:blur(2px);opacity:.75;animation:v2Drift 13s ease-in-out infinite}
.theme-v2 .hero-orb-a{width:370px;height:370px;right:4%;top:2%;background:radial-gradient(circle at 35% 35%,rgba(54,188,238,.35),rgba(22,143,208,.03) 68%)}
.theme-v2 .hero-orb-b{width:330px;height:330px;left:-100px;right:auto;bottom:-140px;background:radial-gradient(circle,rgba(23,74,158,.13),transparent 70%);animation-duration:17s}
.theme-v2 .hero-grid{grid-template-columns:1.03fr .97fr;gap:72px;padding:92px 0 120px;position:relative;z-index:2}
.theme-v2 .hero .eyebrow{color:var(--brand-700)}
.theme-v2 .hero h1{color:var(--ink-950);font-size:clamp(48px,5.45vw,78px);max-width:780px;letter-spacing:-.055em}
.theme-v2 .hero h1 em{color:var(--brand-700);background:linear-gradient(90deg,#174a9e,#168fd0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.theme-v2 .hero-copy{color:var(--ink-600);font-size:19px;max-width:660px}
.theme-v2 .hero-trust{color:#4d5e79}
.theme-v2 .hero-trust .icon{color:var(--brand-600)}
.theme-v2 .hero-visual{min-height:490px;perspective:1200px}
.theme-v2 .visual-card{border-color:rgba(207,222,238,.95);box-shadow:var(--shadow-lg);backdrop-filter:blur(20px);animation:none}
.theme-v2 .visual-main{
  inset:15px 0 34px 42px;
  padding:34px;
  color:#fff;
  background:
    radial-gradient(circle at 85% 10%,rgba(67,192,242,.28),transparent 32%),
    linear-gradient(145deg,#0c2b66 0%,#164b9e 58%,#168fd0 120%);
  border:1px solid rgba(255,255,255,.18);
  transform:rotateY(-3deg) rotateX(1deg);
}
.theme-v2 .visual-main::before{
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:34px 34px;
  opacity:.55;
}
.theme-v2 .visual-logo-mark{width:180px!important;height:70px!important;background:rgba(255,255,255,.96) url('../img/logo-header.png') center/86% no-repeat!important;border:0!important}
.theme-v2 .visual-badge{background:rgba(255,255,255,.13);color:#e6f6ff;border:1px solid rgba(255,255,255,.16)}
.theme-v2 .visual-main h3{color:#fff;font-size:34px}
.theme-v2 .visual-main p{color:#d9eaff}
.theme-v2 .visual-stats{gap:12px}
.theme-v2 .visual-stat{background:rgba(255,255,255,.105);border-color:rgba(255,255,255,.15);backdrop-filter:blur(10px)}
.theme-v2 .visual-stat strong{color:#fff}
.theme-v2 .visual-stat span{color:#d6e8fb}
.theme-v2 .visual-float{background:rgba(255,255,255,.96);border-color:#d8e6f3;box-shadow:var(--shadow-md);animation:v2FloatCard 7s ease-in-out infinite}
.theme-v2 .visual-float.one{left:-8px;top:4px}
.theme-v2 .visual-float.two{right:-26px;bottom:4px;animation-delay:-3s}

/* Bento quick links */
.theme-v2 .quick-strip{margin-top:-63px}
.theme-v2 .quick-grid{padding:10px;gap:10px;border-radius:28px;background:rgba(255,255,255,.72);border:1px solid rgba(207,222,238,.85);box-shadow:var(--shadow-md);backdrop-filter:blur(20px)}
.theme-v2 .quick-card{min-height:100px;border-radius:20px;padding:20px;background:#fff;border-color:#e3eaf2}
.theme-v2 .quick-card:nth-child(2){background:linear-gradient(135deg,#f1f8ff,#fff)}
.theme-v2 .quick-card:nth-child(3){background:linear-gradient(135deg,#f7f9fd,#edf6ff)}
.theme-v2 .quick-card:hover{background:#fff;border-color:#b9d8ee;box-shadow:0 18px 42px rgba(13,47,111,.11)}
.theme-v2 .quick-card .feature-icon{background:#edf7ff;color:var(--brand-700);border:1px solid #d5eaf8}

/* General sections */
.theme-v2 .section{padding:106px 0;background:#fff}
.theme-v2 .section::before{display:none}
.theme-v2 .section-soft{background:#f2f6fb}
.theme-v2 .section-heading h2{color:var(--ink-950);font-size:clamp(35px,4vw,55px)}
.theme-v2 .section-heading p{color:var(--ink-600)}
.theme-v2 .eyebrow{color:var(--brand-700)}
.theme-v2 .feature-card,.theme-v2 .service-card,.theme-v2 .product-card,.theme-v2 .document-card,.theme-v2 .contact-card,.theme-v2 .form-card,.theme-v2 .value-card,.theme-v2 .team-card{
  border:1px solid #e1e8f1;
  background:#fff;
  box-shadow:0 10px 30px rgba(13,47,111,.045);
}
.theme-v2 .feature-card{padding:32px;border-radius:25px}
.theme-v2 .feature-card::after{width:160px;height:160px;right:-95px;top:-95px;background:radial-gradient(circle,rgba(22,143,208,.14),transparent 70%)}
.theme-v2 .feature-card:hover,.theme-v2 .service-card:hover,.theme-v2 .product-card:hover,.theme-v2 .document-card:hover,.theme-v2 .contact-card:hover{
  transform:translateY(-7px);border-color:#b9d7eb;box-shadow:var(--shadow-md)
}
.theme-v2 .feature-icon{background:linear-gradient(135deg,#eef7ff,#e5f2fd);color:var(--brand-700);border:1px solid #d8eaf7}
.theme-v2 .feature-card h3,.theme-v2 .service-card h3,.theme-v2 .product-body h3{color:var(--brand-900)}
.theme-v2 .text-link{color:var(--brand-700)}
.theme-v2 .home-services-section{position:relative;overflow:hidden}
.theme-v2 .home-services-section::after{content:"";position:absolute;width:520px;height:520px;left:-300px;bottom:-340px;border-radius:50%;background:radial-gradient(circle,rgba(22,143,208,.08),transparent 70%);pointer-events:none}
.theme-v2 .home-section-glow{display:none}

/* Story becomes an editorial dark/light spread */
.theme-v2 .home-story-section{background:linear-gradient(180deg,#f3f7fb,#eef4fa)}
.theme-v2 .home-story-rings{display:none}
.theme-v2 .home-story-section .split{gap:70px}
.theme-v2 .story-visual{padding:16px;border-radius:34px;background:linear-gradient(145deg,#0b285e,#174a9e);box-shadow:var(--shadow-lg);min-height:520px}
.theme-v2 .story-panel{height:100%;padding:42px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:#fff;box-shadow:none;backdrop-filter:blur(16px)}
.theme-v2 .story-panel::after{display:none}
.theme-v2 .story-panel h3,.theme-v2 .story-panel .big-number{color:#fff}
.theme-v2 .story-panel p{color:#dceafb}
.theme-v2 .stat-box{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.14)}
.theme-v2 .stat-box strong{color:#fff}
.theme-v2 .stat-box span{color:#d9e9fb}
.theme-v2 .mini-list>div{border-color:#dfe7f1;background:rgba(255,255,255,.7)}

/* Transparency: premium bento, not glass-on-dark */
.theme-v2 .dark-section,.theme-v2 .transparency-section{
  color:var(--ink-900);
  background:
    radial-gradient(circle at 90% 0,rgba(22,143,208,.10),transparent 30%),
    linear-gradient(180deg,#ffffff,#f3f7fb);
  border-top:1px solid #e1e9f2;
  border-bottom:1px solid #e1e9f2;
}
.theme-v2 .dark-section .eyebrow{color:var(--brand-700)}
.theme-v2 .dark-section .section-heading h2{color:var(--ink-950)}
.theme-v2 .dark-section .section-heading p{color:var(--ink-600)}
.theme-v2 .doc-kpis>div{background:#fff;border:1px solid #dce6f1;box-shadow:var(--shadow-sm)}
.theme-v2 .doc-kpis strong{color:var(--brand-900)}
.theme-v2 .doc-kpis span{color:var(--ink-600)}
.theme-v2 .transparency-card{color:var(--ink-900);background:#fff;border:1px solid #dfe7f1;box-shadow:var(--shadow-sm)}
.theme-v2 .transparency-card.featured{background:linear-gradient(145deg,#0d2f6f,#174a9e);border-color:transparent;color:#fff;box-shadow:var(--shadow-lg)}
.theme-v2 .transparency-card h3{color:var(--brand-900)}
.theme-v2 .transparency-card p{color:var(--ink-600)}
.theme-v2 .transparency-card.featured h3{color:#fff}
.theme-v2 .transparency-card.featured p{color:#dcecff}
.theme-v2 .pill{background:#edf6ff;border-color:#d5e7f6;color:var(--brand-800)}
.theme-v2 .transparency-card.featured .pill{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.16);color:#fff}
.theme-v2 .transparency-links a{background:#f4f8fc;border-color:#dbe5ef;color:var(--brand-800)}
.theme-v2 .transparency-links a:hover{background:#eaf5ff}
.theme-v2 .transparency-card.featured .transparency-links a{background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.16);color:#fff}
.theme-v2 .transparency-card.featured .transparency-links a:hover{background:rgba(255,255,255,.18)}

/* CTA */
.theme-v2 .cta{padding:82px 0;background:#fff}
.theme-v2 .cta::before{display:none}
.theme-v2 .cta-box{padding:44px 48px;border:0;border-radius:30px;background:linear-gradient(135deg,#0a2454,#174a9e 62%,#168fd0);box-shadow:var(--shadow-lg)}
.theme-v2 .cta-box::after{content:"";position:absolute;width:340px;height:340px;right:-170px;top:-170px;border-radius:50%;border:1px solid rgba(255,255,255,.16);box-shadow:0 0 0 55px rgba(255,255,255,.035),0 0 0 110px rgba(255,255,255,.02)}
.theme-v2 .cta-box h2{color:#fff}
.theme-v2 .cta-box p{color:#dcecff}
.theme-v2 .cta-box .btn-secondary{background:#fff}
.theme-v2 .cta-box .btn-ghost{color:#fff;border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.08)}

/* Inner pages */
.theme-v2 .inner-hero{
  padding:92px 0 86px;
  color:var(--ink-900);
  background:
    radial-gradient(circle at 85% 10%,rgba(39,168,229,.16),transparent 30%),
    linear-gradient(135deg,#fafdff,#eef6ff);
  border-bottom:1px solid #dce7f2;
}
.theme-v2 .inner-hero::before{content:"";inset:0;background:linear-gradient(110deg,transparent 60%,rgba(255,255,255,.7));mask-image:none}
.theme-v2 .inner-hero::after{content:"";position:absolute;width:530px;height:530px;right:-250px;bottom:-330px;border:1px solid rgba(23,74,158,.12);border-radius:50%;box-shadow:0 0 0 70px rgba(23,74,158,.025),0 0 0 140px rgba(22,143,208,.018)}
.theme-v2 .inner-hero .eyebrow{color:var(--brand-700)}
.theme-v2 .inner-hero h1{color:var(--ink-950)}
.theme-v2 .inner-hero p{color:var(--ink-600)}
.theme-v2 .inner-hero-grid{grid-template-columns:1fr 235px!important}
.theme-v2 .inner-hero-mark{width:235px!important;height:150px!important;border:1px solid #d7e4f0;background:#fff;box-shadow:var(--shadow-md);transform:rotate(0)!important}
.theme-v2 .inner-hero-mark::before{inset:22px!important;background:url('../img/logo-header.png') center/contain no-repeat!important}
.theme-v2 .content-wrap{background:#f8fafc}
.theme-v2 .breadcrumb{color:var(--ink-500)}
.theme-v2 .breadcrumb a{color:var(--brand-700)}
.theme-v2 .office-panel{background:linear-gradient(145deg,#fff,#eef6ff);border-color:#dce7f2}
.theme-v2 .office-login,.theme-v2 .policy-banner{background:linear-gradient(135deg,#0d2f6f,#174a9e 70%,#168fd0)}
.theme-v2 .notice{background:#eef7ff;border-color:#d5e8f6}
.theme-v2 .tag{background:#edf6ff;color:var(--brand-800)}
.theme-v2 .filter-btn.active{background:var(--brand-800);color:#fff}
.theme-v2 .faq-question{color:var(--brand-900)}
.theme-v2 .faq-item.open .faq-question span:last-child{background:var(--brand-700)}

/* Footer */
.theme-v2 .site-footer{padding:82px 0 28px;background:#081a3a;color:#cbd8e8}
.theme-v2 .footer-brand{padding:0;background:transparent;border:0;backdrop-filter:none}
.theme-v2 .footer-brand img{height:86px!important;padding:12px 16px;border-radius:18px;background:#fff;box-shadow:none}
.theme-v2 .site-footer h3{color:#fff}
.theme-v2 .footer-grid h3::after{background:linear-gradient(90deg,#35afe6,transparent)}
.theme-v2 .site-footer a:hover{color:#72c9ef}
.theme-v2 .social-links a{background:rgba(255,255,255,.06)}
.theme-v2 .floating-whatsapp{background:linear-gradient(135deg,#23c781,#128c7e);box-shadow:0 18px 40px rgba(18,140,126,.28)}

/* Motion */
@keyframes v2Aurora{0%{transform:translate3d(-3%,0,0) rotate(-4deg) scale(1)}50%{transform:translate3d(3%,2%,0) rotate(4deg) scale(1.06)}100%{transform:translate3d(-1%,-2%,0) rotate(-2deg) scale(1.02)}}
@keyframes v2Orbit{to{transform:rotate(360deg)}}
@keyframes v2Drift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-18px,20px,0)}}
@keyframes v2FloatCard{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}

/* Responsive */
@media(max-width:1120px){
  .theme-v2 .desktop-nav{display:none}
  .theme-v2 .menu-toggle{display:grid}
  .theme-v2 .hero-grid{grid-template-columns:1fr 1fr;gap:38px}
  .theme-v2 .brand img{max-width:235px!important}
}
@media(max-width:900px){
  .theme-v2 .container{width:min(calc(100% - 34px),1240px)}
  .theme-v2 .home-hero{min-height:auto}
  .theme-v2 .hero-grid{grid-template-columns:1fr;padding:70px 0 120px}
  .theme-v2 .hero-visual{max-width:650px;width:100%;margin:auto;min-height:455px}
  .theme-v2 .quick-grid{grid-template-columns:repeat(2,1fr)}
  .theme-v2 .home-story-section .split{grid-template-columns:1fr;gap:44px}
  .theme-v2 .story-visual{min-height:auto;order:0}
  .theme-v2 .transparency-grid{grid-template-columns:1fr}
  .theme-v2 .inner-hero-grid{grid-template-columns:1fr 180px!important}
  .theme-v2 .inner-hero-mark{width:180px!important;height:120px!important}
}
@media(max-width:640px){
  .theme-v2 .container{width:min(calc(100% - 26px),1240px)}
  .theme-v2 .topbar{display:none}
  .theme-v2 .site-header{height:72px}
  .theme-v2 .brand{width:auto;height:auto}
  .theme-v2 .brand img{height:40px!important;max-width:188px!important}
  .theme-v2 .hero-grid{padding:52px 0 82px}
  .theme-v2 .hero h1{font-size:43px}
  .theme-v2 .hero-copy{font-size:17px}
  .theme-v2 .hero-actions .btn{width:100%}
  .theme-v2 .hero-visual{min-height:365px}
  .theme-v2 .visual-main{inset:12px 0 18px 18px;padding:22px;transform:none}
  .theme-v2 .visual-logo-mark{width:145px!important;height:58px!important}
  .theme-v2 .visual-main h3{font-size:25px}
  .theme-v2 .visual-stats{grid-template-columns:1fr 1fr}
  .theme-v2 .visual-stat:last-child{display:none}
  .theme-v2 .visual-float{padding:10px 12px}
  .theme-v2 .visual-float.two{right:-4px}
  .theme-v2 .quick-strip{margin-top:-38px}
  .theme-v2 .quick-grid{grid-template-columns:1fr;padding:8px}
  .theme-v2 .quick-card{min-height:82px}
  .theme-v2 .section{padding:76px 0}
  .theme-v2 .story-panel{padding:26px}
  .theme-v2 .cta-box{padding:34px 24px}
  .theme-v2 .inner-hero{padding:60px 0}
  .theme-v2 .inner-hero-grid{grid-template-columns:1fr!important}
  .theme-v2 .inner-hero-mark{display:none}
  .theme-v2 .footer-brand img{height:72px!important}
}
@media(prefers-reduced-motion:reduce){
  .theme-v2 .home-hero::before,.theme-v2 .home-hero::after,.theme-v2 .hero-orb,.theme-v2 .visual-float{animation:none!important}
}


/* =====================================================================
   ASETRABAJO V2 PRO — editorial corporate refinement
   ===================================================================== */
body.theme-v2-pro{
  --pro-navy:#0b2b67;
  --pro-blue:#1552ad;
  --pro-cyan:#1796d2;
  --pro-ink:#142749;
  --pro-muted:#667896;
  --pro-line:#d8e4f2;
  --pro-soft:#f4f8fd;
  background:
    radial-gradient(circle at 0% 0%,rgba(23,150,210,.07),transparent 28%),
    radial-gradient(circle at 100% 15%,rgba(21,82,173,.06),transparent 25%),
    linear-gradient(180deg,#f8fbff 0%,#fff 26%,#f7faff 100%);
}
.theme-v2-pro .topbar{background:linear-gradient(90deg,#092351,#0d3476 60%,#1455a8)}
.theme-v2-pro .site-header{height:90px;background:rgba(255,255,255,.84);border-bottom:1px solid rgba(216,228,242,.88);box-shadow:0 14px 38px rgba(10,43,103,.055)}
.theme-v2-pro .site-header.scrolled{height:76px;background:rgba(255,255,255,.95);box-shadow:0 18px 42px rgba(10,43,103,.09)}
.theme-v2-pro .site-header::after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#2ea6dd,#1552ad,#2ea6dd,transparent);opacity:.8}
.theme-v2-pro .desktop-nav{padding:6px;background:rgba(245,249,254,.85);border-color:rgba(216,228,242,.95);box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.theme-v2-pro .nav-link{font-size:13px;font-weight:800;color:#304668}
.theme-v2-pro .nav-link:hover,.theme-v2-pro .nav-link.active,.theme-v2-pro .nav-item.active>.nav-link{background:#fff;color:var(--pro-blue);box-shadow:0 9px 22px rgba(11,43,103,.09)}
.theme-v2-pro .dropdown-menu{background:rgba(255,255,255,.91);backdrop-filter:blur(18px) saturate(150%);border-color:#dbe6f2}
.theme-v2-pro .btn{border-radius:15px;min-height:46px}
.theme-v2-pro .btn-primary{background:linear-gradient(135deg,#1552ad,#148bc8);box-shadow:0 14px 32px rgba(21,82,173,.22)}
.theme-v2-pro .btn-primary:hover{background:linear-gradient(135deg,#0e438f,#117db8);box-shadow:0 18px 40px rgba(21,82,173,.28)}
.theme-v2-pro .btn-secondary{background:linear-gradient(180deg,#fff,#f3f8ff);border-color:#d5e3f1;color:#0d377e;box-shadow:0 12px 30px rgba(11,43,103,.10)}
.theme-v2-pro .btn-ghost{background:rgba(255,255,255,.64);border-color:#c9d8e9;color:#173b74;box-shadow:0 10px 25px rgba(11,43,103,.06)}
.theme-v2-pro .icon-button{border-radius:14px}

/* V2 Pro home hero */
.theme-v2-pro .v2pro-hero{
  position:relative;min-height:760px;overflow:hidden;isolation:isolate;
  color:var(--pro-ink);
  background:
    radial-gradient(ellipse at 82% 12%,rgba(42,164,220,.14),transparent 35%),
    radial-gradient(ellipse at 7% 80%,rgba(21,82,173,.08),transparent 34%),
    linear-gradient(135deg,#fbfdff 0%,#f3f8fe 48%,#eef6ff 100%);
  border-bottom:1px solid #dce7f2;
}
.theme-v2-pro .v2pro-ribbon,.theme-v2-pro .v2pro-halo,.theme-v2-pro .v2pro-sheen{position:absolute;inset:0;pointer-events:none}
.theme-v2-pro .v2pro-ribbon{inset:-18% -8%;filter:blur(22px);opacity:.78;animation:proRibbon 20s ease-in-out infinite alternate}
.theme-v2-pro .v2pro-ribbon::before,.theme-v2-pro .v2pro-ribbon::after{content:"";position:absolute;border-radius:48% 52% 63% 37% / 56% 42% 58% 44%;transform:rotate(-14deg)}
.theme-v2-pro .v2pro-ribbon::before{width:58%;height:38%;right:2%;top:15%;background:linear-gradient(120deg,rgba(23,150,210,.22),rgba(21,82,173,.06),transparent)}
.theme-v2-pro .v2pro-ribbon::after{width:52%;height:34%;left:-7%;bottom:5%;background:linear-gradient(120deg,rgba(21,82,173,.12),rgba(23,150,210,.08),transparent);animation:proRibbonSecondary 16s ease-in-out infinite alternate}
.theme-v2-pro .v2pro-halo::before,.theme-v2-pro .v2pro-halo::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(21,82,173,.10);animation:proHalo 16s ease-in-out infinite}
.theme-v2-pro .v2pro-halo::before{width:620px;height:620px;right:-260px;top:-270px;box-shadow:0 0 0 72px rgba(21,82,173,.020),0 0 0 144px rgba(23,150,210,.015)}
.theme-v2-pro .v2pro-halo::after{width:480px;height:480px;left:-250px;bottom:-300px;box-shadow:0 0 0 60px rgba(21,82,173,.018)}
.theme-v2-pro .v2pro-sheen{background:linear-gradient(105deg,transparent 0 42%,rgba(255,255,255,.7) 49%,transparent 57%);transform:translateX(-70%);animation:proSheen 14s ease-in-out infinite}
.theme-v2-pro .v2pro-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:68px;padding:98px 0 116px}
.theme-v2-pro .v2pro-copy{max-width:690px;transition:transform .25s ease}
.theme-v2-pro .v2pro-copy .eyebrow{color:#1762bd}
.theme-v2-pro .v2pro-copy h1{margin:19px 0 24px;color:#10264c;font-size:clamp(50px,5.5vw,80px);line-height:1.015;letter-spacing:-.055em;text-wrap:balance}
.theme-v2-pro .v2pro-copy h1 em{font-style:normal;background:linear-gradient(90deg,#1552ad,#1796d2);-webkit-background-clip:text;background-clip:text;color:transparent}
.theme-v2-pro .v2pro-copy>p{margin:0;max-width:650px;color:#5f7393;font-size:19px;line-height:1.75}
.theme-v2-pro .v2pro-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:32px}
.theme-v2-pro .v2pro-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px}
.theme-v2-pro .v2pro-proof>div{padding:16px 15px;border:1px solid rgba(207,222,238,.95);border-radius:18px;background:rgba(255,255,255,.66);backdrop-filter:blur(14px);box-shadow:0 12px 28px rgba(11,43,103,.055)}
.theme-v2-pro .v2pro-proof strong{display:block;color:#0d377e;font-size:24px;line-height:1;margin-bottom:6px}
.theme-v2-pro .v2pro-proof span{display:block;color:#657895;font-size:12px;line-height:1.45}
.theme-v2-pro .v2pro-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.theme-v2-pro .v2pro-chip{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border-radius:999px;border:1px solid #d7e5f3;background:rgba(255,255,255,.74);font-size:12px;font-weight:750;color:#365579}
.theme-v2-pro .v2pro-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:#1796d2;box-shadow:0 0 0 5px rgba(23,150,210,.10)}
.theme-v2-pro .v2pro-stage{position:relative;min-height:520px;transition:transform .25s ease}
.theme-v2-pro .v2pro-main-card,.theme-v2-pro .v2pro-float-card,.theme-v2-pro .v2pro-side-card{position:absolute;border-radius:30px;border:1px solid rgba(213,227,241,.95);box-shadow:0 30px 70px rgba(11,43,103,.15);backdrop-filter:blur(18px)}
.theme-v2-pro .v2pro-main-card{inset:28px 18px 28px 45px;padding:30px;background:linear-gradient(145deg,#0b2b67 0%,#1552ad 62%,#1796d2 130%);color:#fff;overflow:hidden}
.theme-v2-pro .v2pro-main-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 10%,rgba(255,255,255,.16),transparent 31%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,38px 38px,38px 38px;opacity:.7}
.theme-v2-pro .v2pro-main-card::after{content:"";position:absolute;width:310px;height:310px;right:-140px;bottom:-150px;border-radius:50%;border:1px solid rgba(255,255,255,.13);box-shadow:0 0 0 52px rgba(255,255,255,.028),0 0 0 104px rgba(255,255,255,.018)}
.theme-v2-pro .v2pro-card-head,.theme-v2-pro .v2pro-card-content,.theme-v2-pro .v2pro-metrics{position:relative;z-index:2}
.theme-v2-pro .v2pro-card-head{display:flex;align-items:center;justify-content:space-between;gap:18px}
.theme-v2-pro .v2pro-brand-panel{display:flex;align-items:center;gap:14px}
.theme-v2-pro .v2pro-brand-panel .logo{width:172px;height:70px;border-radius:18px;background:#fff url('../img/logo-header.png') center/87% no-repeat;box-shadow:0 14px 30px rgba(2,18,53,.16)}
.theme-v2-pro .v2pro-status{padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.10);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#e4f4ff}
.theme-v2-pro .v2pro-card-content{margin-top:34px;max-width:480px}
.theme-v2-pro .v2pro-card-content span{display:block;margin-bottom:9px;font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#bfe7ff}
.theme-v2-pro .v2pro-card-content h3{margin:0 0 12px;font-size:34px;line-height:1.08;color:#fff;letter-spacing:-.025em}
.theme-v2-pro .v2pro-card-content p{margin:0;color:#dcecff;line-height:1.7}
.theme-v2-pro .v2pro-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:28px}
.theme-v2-pro .v2pro-metrics>div{padding:15px;border:1px solid rgba(255,255,255,.13);border-radius:17px;background:rgba(255,255,255,.09);backdrop-filter:blur(12px)}
.theme-v2-pro .v2pro-metrics strong{display:block;color:#fff;font-size:21px;margin-bottom:5px}
.theme-v2-pro .v2pro-metrics span{display:block;color:#dbeaff;font-size:11px;line-height:1.4}
.theme-v2-pro .v2pro-side-card{right:-5px;top:8px;width:190px;padding:18px;background:rgba(255,255,255,.88)}
.theme-v2-pro .v2pro-side-card small{display:block;margin-bottom:12px;color:#6c7f9c;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.theme-v2-pro .v2pro-side-card a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;margin-top:8px;border-radius:14px;background:#f5f9ff;border:1px solid #e1eaf4;color:#164790;font-size:12px;font-weight:800}
.theme-v2-pro .v2pro-side-card a:hover{background:#edf6ff;transform:translateX(2px)}
.theme-v2-pro .v2pro-float-card{left:0;bottom:4px;width:205px;padding:17px;background:rgba(255,255,255,.92);animation:proFloat 8s ease-in-out infinite}
.theme-v2-pro .v2pro-float-card strong{display:block;color:#0f397f;font-size:15px;margin-bottom:4px}.theme-v2-pro .v2pro-float-card span{display:block;color:#657895;font-size:12px;line-height:1.45}
.theme-v2-pro .v2pro-float-card .mini{width:42px;height:42px;margin-bottom:11px;border-radius:14px;background:linear-gradient(135deg,#edf7ff,#dceeff);display:grid;place-items:center;color:#1762bd;font-weight:900}
.theme-v2-pro .v2pro-live-card{position:absolute;right:32px;bottom:-6px;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;border:1px solid #dbe7f2;background:rgba(255,255,255,.94);box-shadow:0 20px 45px rgba(11,43,103,.13);animation:proFloat 10s ease-in-out infinite;animation-delay:-4s}
.theme-v2-pro .v2pro-live-card .pulse{width:12px;height:12px;border-radius:50%;background:#20b77d;box-shadow:0 0 0 7px rgba(32,183,125,.11);animation:proPulse 2.4s ease-in-out infinite}
.theme-v2-pro .v2pro-live-card strong{display:block;color:#123b7d;font-size:14px}.theme-v2-pro .v2pro-live-card span{display:block;color:#70819b;font-size:11px}
.theme-v2-pro .v2pro-scroll-note{position:absolute;left:50%;bottom:16px;z-index:3;display:flex;align-items:center;gap:9px;transform:translateX(-50%);color:#66809e;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.theme-v2-pro .v2pro-scroll-note::before{content:"";width:28px;height:42px;border:1px solid #bdcede;border-radius:999px;background:rgba(255,255,255,.55)}
.theme-v2-pro .v2pro-scroll-note::after{content:"";position:absolute;left:12px;top:8px;width:4px;height:8px;border-radius:99px;background:#1762bd;animation:proScroll 2s ease-in-out infinite}

/* Home and global polish */
.theme-v2-pro .quick-strip{margin-top:-52px}
.theme-v2-pro .quick-grid{background:rgba(255,255,255,.82);border-color:#d7e4f1;box-shadow:0 26px 65px rgba(11,43,103,.10)}
.theme-v2-pro .quick-card{position:relative;overflow:hidden;min-height:104px;border-radius:21px}
.theme-v2-pro .quick-card::after{content:"";position:absolute;inset:auto -35px -35px auto;width:105px;height:105px;border-radius:50%;background:radial-gradient(circle,rgba(23,150,210,.11),transparent 70%)}
.theme-v2-pro .quick-card:hover{transform:translateY(-5px)}
.theme-v2-pro .section{padding:104px 0}
.theme-v2-pro .section-heading h2{letter-spacing:-.045em}
.theme-v2-pro .section-heading.center{max-width:760px}
.theme-v2-pro .feature-card,.theme-v2-pro .service-card,.theme-v2-pro .product-card,.theme-v2-pro .document-card,.theme-v2-pro .contact-card,.theme-v2-pro .form-card,.theme-v2-pro .value-card,.theme-v2-pro .team-card{border-radius:27px;box-shadow:0 14px 40px rgba(11,43,103,.055)}
.theme-v2-pro .feature-card{min-height:100%;background:linear-gradient(180deg,#fff,#fbfdff)}
.theme-v2-pro .feature-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,#2aa4dc,transparent);opacity:0;transition:opacity .25s ease}
.theme-v2-pro .feature-card:hover::before{opacity:1}
.theme-v2-pro .home-story-section{background:linear-gradient(180deg,#f5f8fc,#eef4fa)}
.theme-v2-pro .story-visual{box-shadow:0 30px 70px rgba(11,43,103,.18)}
.theme-v2-pro .story-panel{background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.055))}
.theme-v2-pro .mini-list>div{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.theme-v2-pro .mini-list>div:hover{transform:translateX(5px);border-color:#bfd9ec;box-shadow:0 12px 30px rgba(11,43,103,.07)}
.theme-v2-pro .transparency-section{background:radial-gradient(circle at 92% 8%,rgba(23,150,210,.12),transparent 31%),linear-gradient(180deg,#fff,#f2f7fc)}
.theme-v2-pro .transparency-card{border-radius:27px}
.theme-v2-pro .transparency-card.featured{background:linear-gradient(145deg,#0b2b67,#1552ad 70%,#1796d2)}
.theme-v2-pro .cta-box{background:linear-gradient(135deg,#082655,#11458f 60%,#168fc9);box-shadow:0 30px 70px rgba(11,43,103,.20)}

/* Inner pages refinements */
.theme-v2-pro .inner-hero{padding:96px 0 90px;background:radial-gradient(circle at 85% 10%,rgba(23,150,210,.14),transparent 30%),linear-gradient(135deg,#fbfdff,#eef6ff)}
.theme-v2-pro .inner-hero::after{animation:proHalo 18s ease-in-out infinite}
.theme-v2-pro .inner-hero-mark{border-radius:30px!important;background:linear-gradient(180deg,#fff,#f7fbff);box-shadow:0 24px 60px rgba(11,43,103,.11)}
.theme-v2-pro .content-wrap{background:linear-gradient(180deg,#f8fbff,#fff 260px)}
.theme-v2-pro .breadcrumb{padding-top:22px}
.theme-v2-pro .document-card,.theme-v2-pro .service-card,.theme-v2-pro .contact-card{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.theme-v2-pro .document-card:hover,.theme-v2-pro .service-card:hover,.theme-v2-pro .contact-card:hover{transform:translateY(-6px);border-color:#b9d8ee;box-shadow:0 22px 52px rgba(11,43,103,.10)}
.theme-v2-pro .form-card{background:linear-gradient(180deg,#fff,#fbfdff)}
.theme-v2-pro .field input,.theme-v2-pro .field textarea,.theme-v2-pro .field select{background:#fbfdff;border-color:#d7e3ef}
.theme-v2-pro .field input:focus,.theme-v2-pro .field textarea:focus,.theme-v2-pro .field select:focus{background:#fff;border-color:#5ba9d8;box-shadow:0 0 0 4px rgba(23,150,210,.10)}
.theme-v2-pro .faq-item{border-radius:18px;box-shadow:0 8px 24px rgba(11,43,103,.035)}
.theme-v2-pro .faq-item.open{border-color:#bcd8eb;box-shadow:0 14px 35px rgba(11,43,103,.075)}
.theme-v2-pro .site-footer{background:linear-gradient(135deg,#071b3c,#0a2b67 62%,#104b95)}

@keyframes proRibbon{0%{transform:translate3d(-2%,0,0) rotate(-2deg) scale(1)}50%{transform:translate3d(3%,2%,0) rotate(3deg) scale(1.04)}100%{transform:translate3d(-1%,-2%,0) rotate(-1deg) scale(1.02)}}
@keyframes proRibbonSecondary{0%{transform:translate3d(0,0,0) rotate(8deg)}100%{transform:translate3d(5%,-4%,0) rotate(-2deg)}}
@keyframes proHalo{0%,100%{transform:scale(1);opacity:.8}50%{transform:scale(1.04);opacity:.45}}
@keyframes proSheen{0%,58%{transform:translateX(-75%)}75%,100%{transform:translateX(80%)}}
@keyframes proFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes proPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.82);opacity:.7}}
@keyframes proScroll{0%{transform:translateY(0);opacity:0}30%{opacity:1}100%{transform:translateY(16px);opacity:0}}

@media(max-width:1120px){
  .theme-v2-pro .v2pro-grid{grid-template-columns:1fr;gap:38px;padding:82px 0 110px}
  .theme-v2-pro .v2pro-copy{max-width:820px}
  .theme-v2-pro .v2pro-stage{max-width:720px;width:100%;margin-inline:auto}
}
@media(max-width:900px){
  .theme-v2-pro .site-header{height:82px}
  .theme-v2-pro .v2pro-proof{grid-template-columns:1fr 1fr}
  .theme-v2-pro .v2pro-stage{min-height:500px}
}
@media(max-width:640px){
  .theme-v2-pro .site-header{height:72px}
  .theme-v2-pro .v2pro-grid{padding:58px 0 88px}
  .theme-v2-pro .v2pro-copy h1{font-size:44px}
  .theme-v2-pro .v2pro-copy>p{font-size:17px}
  .theme-v2-pro .v2pro-actions{flex-direction:column}.theme-v2-pro .v2pro-actions .btn{width:100%}
  .theme-v2-pro .v2pro-proof{grid-template-columns:1fr}
  .theme-v2-pro .v2pro-stage{min-height:auto;display:grid;gap:12px}
  .theme-v2-pro .v2pro-main-card,.theme-v2-pro .v2pro-side-card,.theme-v2-pro .v2pro-float-card,.theme-v2-pro .v2pro-live-card{position:relative;inset:auto;width:auto;right:auto;left:auto;bottom:auto;top:auto}
  .theme-v2-pro .v2pro-main-card{padding:22px;border-radius:24px}
  .theme-v2-pro .v2pro-card-head{align-items:flex-start;flex-direction:column}
  .theme-v2-pro .v2pro-brand-panel .logo{width:150px;height:62px}
  .theme-v2-pro .v2pro-card-content{margin-top:25px}.theme-v2-pro .v2pro-card-content h3{font-size:27px}
  .theme-v2-pro .v2pro-metrics{grid-template-columns:1fr 1fr}.theme-v2-pro .v2pro-metrics>div:last-child{grid-column:1/-1}
  .theme-v2-pro .v2pro-side-card{display:grid;grid-template-columns:1fr 1fr;gap:8px}.theme-v2-pro .v2pro-side-card small{grid-column:1/-1;margin:0}
  .theme-v2-pro .v2pro-side-card a{margin:0}
  .theme-v2-pro .v2pro-scroll-note{display:none}
  .theme-v2-pro .section{padding:78px 0}
}
@media(prefers-reduced-motion:reduce){
  .theme-v2-pro .v2pro-ribbon,.theme-v2-pro .v2pro-ribbon::after,.theme-v2-pro .v2pro-halo::before,.theme-v2-pro .v2pro-halo::after,.theme-v2-pro .v2pro-sheen,.theme-v2-pro .v2pro-float-card,.theme-v2-pro .v2pro-live-card,.theme-v2-pro .v2pro-live-card .pulse,.theme-v2-pro .v2pro-scroll-note::after,.theme-v2-pro .inner-hero::after{animation:none!important}
}

/* Final contrast and hero composition safeguards */
.theme-v2-pro .v2pro-main-card{inset:28px 92px 28px 24px}
.theme-v2-pro .v2pro-side-card{right:-8px;top:26px}
.theme-v2-pro .v2pro-card-content{max-width:395px}
.theme-v2-pro .transparency-section{
  color:#fff!important;
  background:
    radial-gradient(circle at 92% 8%,rgba(44,177,232,.32),transparent 32%),
    radial-gradient(circle at 8% 95%,rgba(30,91,184,.28),transparent 38%),
    linear-gradient(128deg,#081f4c,#0f438f 58%,#1593cf)!important;
}
.theme-v2-pro .transparency-section .section-heading h2,
.theme-v2-pro .transparency-section .section-heading p{color:#fff!important}
.theme-v2-pro .transparency-section .section-heading p{color:#dcecff!important}
.theme-v2-pro .doc-kpis>div{background:rgba(255,255,255,.96)!important;border-color:rgba(255,255,255,.8)!important;box-shadow:0 14px 32px rgba(3,22,63,.12)}
.theme-v2-pro .doc-kpis strong{color:#0d377e!important}
.theme-v2-pro .doc-kpis span{color:#5c7192!important}
.theme-v2-pro .transparency-card:not(.featured){background:#fff!important;border-color:#dce7f2!important}
.theme-v2-pro .transparency-card:not(.featured) h3,
.theme-v2-pro .transparency-card:not(.featured) strong{color:#0e377c!important}
.theme-v2-pro .transparency-card:not(.featured) p{color:#5f7393!important}
.theme-v2-pro .transparency-card.featured h3,
.theme-v2-pro .transparency-card.featured strong{color:#fff!important}
.theme-v2-pro .transparency-card.featured p{color:#dcecff!important}
@media(max-width:640px){
  .theme-v2-pro .v2pro-main-card{inset:auto}
  .theme-v2-pro .v2pro-side-card{right:auto;top:auto}
  .theme-v2-pro .v2pro-card-content{max-width:none}
}


/* === Gold accent refinement === */
.theme-v2-pro{
  --gold-1:#c89a3d;
  --gold-2:#e1bd6a;
  --gold-3:#f4e1a7;
  --gold-shadow:rgba(200,154,61,.22);
}
.theme-v2-pro .site-header::before{
  background:linear-gradient(90deg,var(--gold-1), rgba(200,154,61,.25), #2f6fd6 70%, rgba(47,111,214,.18));
}
.theme-v2-pro .topbar-office,
.theme-v2-pro .topbar-links a:hover{color:var(--gold-2)}
.theme-v2-pro .nav-link.active,
.theme-v2-pro .nav-link:hover,
.theme-v2-pro .nav-item.active > .nav-link{
  box-shadow:inset 0 -2px 0 rgba(200,154,61,.45);
}
.theme-v2-pro .dropdown-link:hover,
.theme-v2-pro .dropdown-link.active{
  background:linear-gradient(90deg, rgba(200,154,61,.10), rgba(255,255,255,.9));
}
.theme-v2-pro .eyebrow{
  color:#a9781d;
}
.theme-v2-pro .eyebrow::before,
.theme-v2-pro .section-heading .eyebrow::before{
  background:linear-gradient(90deg,var(--gold-1),var(--gold-3));
}
.theme-v2-pro .btn-primary,
.theme-v2-pro .home-page .hero .btn-secondary:first-child,
.theme-v2-pro .hero .btn-secondary:first-child{
  background:linear-gradient(135deg,#e0b75f 0%, #c8942d 100%);
  border-color:#c8942d;
  color:#2b1d02;
  box-shadow:0 14px 34px var(--gold-shadow);
}
.theme-v2-pro .btn-primary:hover,
.theme-v2-pro .hero .btn-secondary:first-child:hover{
  background:linear-gradient(135deg,#e8c873 0%, #d39c32 100%);
  box-shadow:0 18px 38px rgba(200,154,61,.28);
}
.theme-v2-pro .btn-outline:hover,
.theme-v2-pro .btn-secondary:hover{
  border-color:rgba(200,154,61,.42);
  box-shadow:0 12px 28px rgba(200,154,61,.12);
}
.theme-v2-pro .search-open:hover,
.theme-v2-pro .menu-toggle:hover,
.theme-v2-pro .icon-button:hover{
  border-color:rgba(200,154,61,.45);
}
.theme-v2-pro .feature-icon{
  position:relative;
  box-shadow:inset 0 0 0 1px rgba(200,154,61,.18);
}
.theme-v2-pro .feature-icon::after{
  content:"";
  position:absolute;
  inset:6px;
  border-radius:inherit;
  border:1px dashed rgba(200,154,61,.34);
  pointer-events:none;
}
.theme-v2-pro .quick-card:hover,
.theme-v2-pro .feature-card:hover,
.theme-v2-pro .service-card:hover,
.theme-v2-pro .document-card:hover,
.theme-v2-pro .contact-card:hover,
.theme-v2-pro .form-card:hover{
  border-color:rgba(200,154,61,.38);
  box-shadow:0 20px 44px rgba(16,59,147,.08), 0 8px 18px rgba(200,154,61,.10);
}
.theme-v2-pro .quick-card::before,
.theme-v2-pro .feature-card::before,
.theme-v2-pro .service-card::before,
.theme-v2-pro .document-card::before{
  background:linear-gradient(135deg, rgba(200,154,61,.09), transparent 45%, rgba(255,255,255,.72));
}
.theme-v2-pro .visual-badge,
.theme-v2-pro .pill,
.theme-v2-pro .tag{
  background:linear-gradient(135deg, rgba(244,225,167,.9), rgba(225,189,106,.55));
  color:#6f4a03;
  border-color:rgba(200,154,61,.24);
}
.theme-v2-pro .story-panel .big-number,
.theme-v2-pro .stat-box strong,
.theme-v2-pro .visual-stat strong,
.theme-v2-pro .doc-kpis strong{
  color:var(--gold-2);
}
.theme-v2-pro .story-panel{
  background:linear-gradient(145deg,#0e2f76,#1549aa 62%,#2058ba);
}
.theme-v2-pro .story-panel::after{
  background:radial-gradient(circle, rgba(225,189,106,.18), transparent 70%);
}
.theme-v2-pro .transparency-card.featured,
.theme-v2-pro .cta-box{
  box-shadow:0 24px 60px rgba(16,59,147,.20), 0 10px 28px rgba(200,154,61,.12);
}
.theme-v2-pro .transparency-links a:hover{
  border-color:rgba(225,189,106,.42);
  background:rgba(255,255,255,.18);
}
.theme-v2-pro .footer-grid h3::after,
.theme-v2-pro .footer-bottom{
  border-color:rgba(225,189,106,.28);
}
.theme-v2-pro .footer-grid h3::after{background:linear-gradient(90deg,var(--gold-2),transparent)}
.theme-v2-pro .social-links a:hover,
.theme-v2-pro .floating-whatsapp:hover{
  box-shadow:0 10px 26px rgba(200,154,61,.22);
}
.theme-v2-pro .home-hero::before{
  background:radial-gradient(circle at 18% 28%, rgba(225,189,106,.12), transparent 22%), radial-gradient(circle at 76% 18%, rgba(255,255,255,.55), transparent 24%);
}
.theme-v2-pro .hero-copy em{color:#2b76d8}
.theme-v2-pro .mini-list div .icon,
.theme-v2-pro .text-link,
.theme-v2-pro a:hover .text-link{color:#b17d21}
.theme-v2-pro .scroll-progress{background:linear-gradient(90deg,var(--gold-1),#2f6fd6)}
@media (max-width: 720px){
  .theme-v2-pro .btn-primary,
  .theme-v2-pro .hero .btn-secondary:first-child{box-shadow:0 10px 24px rgba(200,154,61,.18)}
}


/* === Hero overlap fix === */
.theme-v2-pro .v2pro-stage{min-height:560px}
.theme-v2-pro .v2pro-main-card{inset:34px 118px 34px 18px;padding:34px 34px 28px}
.theme-v2-pro .v2pro-card-content{max-width:430px}
.theme-v2-pro .v2pro-card-content h3{max-width:430px}
.theme-v2-pro .v2pro-metrics{margin-top:24px}
.theme-v2-pro .v2pro-side-card{right:-12px;top:-4px;width:176px;padding:16px 15px;border-radius:26px}
.theme-v2-pro .v2pro-side-card a{padding:10px 12px;font-size:11.5px}
.theme-v2-pro .v2pro-float-card{left:-18px;bottom:-22px;width:184px;padding:15px;border-radius:24px}
.theme-v2-pro .v2pro-float-card strong{font-size:14px}
.theme-v2-pro .v2pro-float-card span{font-size:11.5px;line-height:1.42}
.theme-v2-pro .v2pro-float-card .mini{width:38px;height:38px;margin-bottom:10px}
.theme-v2-pro .v2pro-live-card{right:-8px;bottom:-26px;padding:13px 15px;border-radius:16px;max-width:228px}
.theme-v2-pro .v2pro-live-card strong{font-size:13px}
.theme-v2-pro .v2pro-live-card span{font-size:10.5px}
@media (max-width: 1280px){
  .theme-v2-pro .v2pro-stage{min-height:540px}
  .theme-v2-pro .v2pro-main-card{inset:28px 102px 34px 18px;padding:30px 28px 26px}
  .theme-v2-pro .v2pro-card-content{max-width:390px}
  .theme-v2-pro .v2pro-card-content h3{font-size:46px;line-height:1.02}
  .theme-v2-pro .v2pro-side-card{width:168px;right:-6px;top:4px}
  .theme-v2-pro .v2pro-float-card{left:-8px;bottom:-18px;width:174px}
  .theme-v2-pro .v2pro-live-card{right:6px;bottom:-18px;max-width:218px}
}
@media (max-width: 1120px){
  .theme-v2-pro .v2pro-stage{min-height:520px}
  .theme-v2-pro .v2pro-main-card{inset:24px 90px 28px 16px}
  .theme-v2-pro .v2pro-card-content h3{font-size:42px}
}


/* === Total hero redesign: clean composition === */
.theme-v2-pro .v2pro-hero-clean{min-height:780px}
.theme-v2-pro .v2pro-grid-clean{grid-template-columns:1fr 1fr;gap:58px;align-items:center;padding:94px 0 116px}
.theme-v2-pro .v2pro-hero-clean .v2pro-stage{min-height:auto;position:relative;transform:none!important}
.theme-v2-pro .v2pro-stage-shell{position:relative;padding:26px;border-radius:34px;background:linear-gradient(145deg,#0b2b67 0%,#1552ad 58%,#1796d2 120%);border:1px solid rgba(255,255,255,.18);box-shadow:0 34px 80px rgba(11,43,103,.18);overflow:hidden;color:#fff}
.theme-v2-pro .v2pro-stage-shell::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 12%,rgba(255,255,255,.18),transparent 30%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,36px 36px,36px 36px;opacity:.75;pointer-events:none}
.theme-v2-pro .v2pro-stage-shell::after{content:"";position:absolute;right:-90px;bottom:-120px;width:300px;height:300px;border-radius:50%;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 0 54px rgba(255,255,255,.03),0 0 0 108px rgba(255,255,255,.018);pointer-events:none}
.theme-v2-pro .v2pro-stage-shell > *{position:relative;z-index:2}
.theme-v2-pro .v2pro-stage-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.theme-v2-pro .v2pro-stage-body{display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:24px;align-items:start}
.theme-v2-pro .v2pro-stage-copy .kicker{display:block;margin-bottom:14px;color:#dbe9ff;font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.theme-v2-pro .v2pro-stage-copy h3{margin:0 0 12px;color:#fff;font-size:clamp(38px,3.4vw,56px);line-height:1.02;letter-spacing:-.04em;max-width:380px}
.theme-v2-pro .v2pro-stage-copy p{margin:0;color:#e3efff;font-size:17px;line-height:1.72;max-width:400px}
.theme-v2-pro .v2pro-access-panel{padding:18px;border-radius:24px;background:rgba(255,255,255,.92);border:1px solid rgba(214,228,242,.96);box-shadow:0 18px 42px rgba(7,22,54,.12)}
.theme-v2-pro .v2pro-access-panel small{display:block;margin-bottom:12px;color:#6b7f9f;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.theme-v2-pro .v2pro-access-grid{display:grid;gap:10px}
.theme-v2-pro .v2pro-access-grid a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:16px;background:#f5f9ff;border:1px solid #dce7f2;color:#164790;font-size:13px;font-weight:800;transition:.2s ease}
.theme-v2-pro .v2pro-access-grid a:hover{background:#edf6ff;transform:translateX(2px)}
.theme-v2-pro .v2pro-stage-features{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.theme-v2-pro .v2pro-stage-features article{display:flex;align-items:center;gap:14px;padding:16px 17px;border-radius:20px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px)}
.theme-v2-pro .v2pro-stage-features article > div:last-child{min-width:0}
.theme-v2-pro .v2pro-stage-features article strong{display:block;color:#fff;font-size:15px;margin-bottom:3px}
.theme-v2-pro .v2pro-stage-features article span{display:block;color:#dbe8ff;font-size:12px;line-height:1.45}
.theme-v2-pro .v2pro-stage-features .mini{flex:0 0 42px;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#edf7ff,#dceeff);display:grid;place-items:center;color:#1762bd;font-weight:900}
.theme-v2-pro .v2pro-stage-features article.live{align-items:center}
.theme-v2-pro .v2pro-stage-features article.live .pulse{flex:0 0 12px;width:12px;height:12px;border-radius:50%;background:#20b77d;box-shadow:0 0 0 7px rgba(32,183,125,.11);animation:proPulse 2.4s ease-in-out infinite}
.theme-v2-pro .v2pro-metrics-clean{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.theme-v2-pro .v2pro-metrics-clean > div{padding:16px;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.09);backdrop-filter:blur(12px)}
.theme-v2-pro .v2pro-metrics-clean strong{display:block;color:#fff;font-size:22px;margin-bottom:6px}
.theme-v2-pro .v2pro-metrics-clean span{display:block;color:#dbeaff;font-size:11px;line-height:1.42}

@media(max-width:1180px){
  .theme-v2-pro .v2pro-grid-clean{grid-template-columns:1fr;gap:36px;padding:80px 0 110px}
  .theme-v2-pro .v2pro-stage-body{grid-template-columns:minmax(0,1fr) 220px}
  .theme-v2-pro .v2pro-stage-copy h3{max-width:420px}
}
@media(max-width:820px){
  .theme-v2-pro .v2pro-stage-body{grid-template-columns:1fr;gap:18px}
  .theme-v2-pro .v2pro-stage-copy h3{max-width:none;font-size:34px}
  .theme-v2-pro .v2pro-stage-copy p{max-width:none}
  .theme-v2-pro .v2pro-stage-features{grid-template-columns:1fr}
}
@media(max-width:640px){
  .theme-v2-pro .v2pro-hero-clean{min-height:auto}
  .theme-v2-pro .v2pro-grid-clean{padding:58px 0 88px}
  .theme-v2-pro .v2pro-stage-shell{padding:20px;border-radius:26px}
  .theme-v2-pro .v2pro-stage-topbar{align-items:flex-start;flex-direction:column}
  .theme-v2-pro .v2pro-access-panel{padding:15px;border-radius:20px}
  .theme-v2-pro .v2pro-metrics-clean{grid-template-columns:1fr 1fr}
  .theme-v2-pro .v2pro-metrics-clean > div:last-child{grid-column:1/-1}
}
