/* Shared visual layer. Existing copy, URLs and metadata remain untouched. */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,600;0,700;0,800;1,600&display=swap');

html.theme-20261011 {
  --ink: #102b40;
  --muted: #526a79;
  --navy: #092338;
  --accent: #087f79;
  --mint: #c7f5df;
  --line: #d8e5e9;
  --surface: #f2f7f7;
}

html.theme-20261011 body { background: #f9fbfb; }
html.theme-20261011 .site-header {
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 10px 32px rgba(7,38,57,.07);
}
html.theme-20261011 .top-strip {
  background: linear-gradient(95deg,#092338 5%,#0b3b4d 66%,#0e6967 100%);
}
html.theme-20261011 .brand { gap: 12px; min-width: 0; }
html.theme-20261011 .brand-mark {
  width: 52px;
  height: 52px;
  min-width: 52px;
  border-radius: 15px;
  border: 1px solid #d9e9e9;
  background: #fff url('/assets/brand-20261011.jpg') center/cover no-repeat;
  box-shadow: 0 8px 19px rgba(11,63,72,.13);
  overflow: hidden;
}
html.theme-20261011 .brand-mark svg { display: none; }
html.theme-20261011 .brand strong {
  font-family: Poppins, Manrope, Arial, sans-serif;
  font-size: 1rem;
  font-style: italic;
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.15;
}
html.theme-20261011 .brand small { color: #67808b; letter-spacing: .01em; }
html.theme-20261011 .desktop-nav a,
html.theme-20261011 .services-menu-trigger {
  border-radius: 10px;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
html.theme-20261011 .desktop-nav a:hover,
html.theme-20261011 .services-menu-trigger:hover {
  background: #eaf7f3;
  color: #056e69;
  text-decoration: none;
  transform: translateY(-1px);
}

html.theme-20261011 .drt-hero,
html.theme-20261011 .page-hero,
html.theme-20261011 .kh-hero {
  isolation: isolate;
}
html.theme-20261011 .drt-hero {
  background: radial-gradient(circle at 78% 22%,rgba(17,129,123,.43),transparent 36%),
              linear-gradient(115deg,#061b2d 10%,#0c3443 62%,#0e555b 100%);
}
html.theme-20261011 .drt-hero h1,
html.theme-20261011 .page-hero h1,
html.theme-20261011 .kh-hero h1 { text-wrap: balance; }
html.theme-20261011 .drt-hero img,
html.theme-20261011 .page-hero img,
html.theme-20261011 .kh-hero img {
  transition: transform .7s cubic-bezier(.2,.7,.2,1), filter .7s ease;
}
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  html.theme-20261011 .drt-hero:hover img,
  html.theme-20261011 .page-hero:hover img,
  html.theme-20261011 .kh-hero:hover img { transform: scale(1.025); }
}
html.theme-20261011 .page-hero-shade {
  background: linear-gradient(95deg,rgba(7,31,48,.88),rgba(7,39,53,.6) 65%,rgba(7,39,53,.2));
}

html.theme-20261011 .section.muted,
html.theme-20261011 .kh-section-soft {
  background: linear-gradient(145deg,#eef8f7 0%,#f8fbfc 54%,#edf3f8 100%);
}
html.theme-20261011 .section-head h2,
html.theme-20261011 .kh-section h2 { text-wrap: balance; }
html.theme-20261011 .topic-guide,
html.theme-20261011 .sources,
html.theme-20261011 .side-cta,
html.theme-20261011 .risk-panel,
html.theme-20261011 .lead-form {
  border: 1px solid #d8e7e8;
  border-radius: 20px;
  background: linear-gradient(155deg,#fff 55%,#f3faf9 100%);
  box-shadow: 0 18px 44px rgba(9,42,60,.075);
}
html.theme-20261011 .topic-guide { padding: clamp(22px,3vw,35px); margin-bottom: 28px; }
html.theme-20261011 .topic-guide h2:not(:first-child) { border-top: 1px solid #e0eaea; padding-top: 22px; }
html.theme-20261011 .sources { border-left: 4px solid #0f9991; padding: 18px 22px; }
html.theme-20261011 .main-copy > h2 { position: relative; padding-left: 22px; }
html.theme-20261011 .main-copy > h2::before {
  content: '';
  position: absolute;
  left: 0;
  top: .12em;
  bottom: .1em;
  width: 5px;
  border-radius: 10px;
  background: linear-gradient(#0b8882,#95d88f);
}

html.theme-20261011 .service-card,
html.theme-20261011 .article-card,
html.theme-20261011 .intro-step,
html.theme-20261011 .kh-path,
html.theme-20261011 .kh-article,
html.theme-20261011 .kh-service,
html.theme-20261011 .kh-flow-step,
html.theme-20261011 .process-grid > *,
html.theme-20261011 .info-grid > * {
  border: 1px solid #d7e4e8;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(9,42,60,.055);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  html.theme-20261011 .service-card:hover,
  html.theme-20261011 .article-card:hover,
  html.theme-20261011 .intro-step:hover,
  html.theme-20261011 .kh-path:hover,
  html.theme-20261011 .kh-article:hover,
  html.theme-20261011 .kh-service:hover,
  html.theme-20261011 .kh-flow-step:hover,
  html.theme-20261011 .process-grid > *:hover,
  html.theme-20261011 .info-grid > *:hover {
    transform: translateY(-5px);
    border-color: #8ecdc8;
    box-shadow: 0 24px 44px rgba(9,42,60,.12);
  }
}
html.theme-20261011 .service-card .service-image { overflow: hidden; }
html.theme-20261011 .service-card img { transition: transform .5s ease; }
html.theme-20261011 .service-card:hover img { transform: scale(1.04); }
html.theme-20261011 .kh-article img { transition: transform .5s ease; }
html.theme-20261011 .kh-article:hover img { transform: scale(1.04); }
html.theme-20261011 .service-body { background: linear-gradient(160deg,#fff,#f8fbfb); }
html.theme-20261011 .bullet-panel > div {
  border: 1px solid #e0e9eb;
  border-radius: 13px;
  background: linear-gradient(100deg,#f4faf9,#fff);
}

html.theme-20261011 .step-row {
  display: flex;
  gap: 14px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  padding: 4px 3px 14px;
}
html.theme-20261011 .step-row > span {
  display: flex;
  flex: 1 0 155px;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 133px;
  padding: 18px;
  border: 1px solid #d9e7e8;
  border-top: 3px solid #0a928b;
  border-radius: 15px;
  background: linear-gradient(155deg,#fff,#f2faf9);
  box-shadow: 0 9px 22px rgba(9,42,60,.045);
  color: #17394c;
  font-weight: 700;
  scroll-snap-align: start;
}
html.theme-20261011 .step-row > span:nth-child(even) { border-top-color: #e3a341; }
html.theme-20261011 .step-row b {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #e3f7f3;
  color: #087f79;
  margin-bottom: 15px;
  font-size: .78rem;
}
html.theme-20261011 .theme-slider-controls { display:flex; justify-content:flex-end; gap:8px; margin:-2px 0 24px; }
html.theme-20261011 .theme-slider-controls.is-static { display:none; }
html.theme-20261011 .theme-slider-controls button,
html.theme-20261011 .theme-backtop {
  display: inline-grid;
  place-items: center;
  width: 39px;
  height: 39px;
  border: 1px solid #c8dedf;
  border-radius: 12px;
  background: #fff;
  color: #0b706b;
  box-shadow: 0 6px 17px rgba(9,42,60,.08);
}
html.theme-20261011 .theme-slider-controls button:hover,
html.theme-20261011 .theme-backtop:hover { background:#e8f7f3; }
html.theme-20261011 .theme-slider-controls button:disabled { opacity:.36; box-shadow:none; }
html.theme-20261011 .deliverable-grid article {
  border: 1px solid #dce9e9;
  border-radius: 14px;
  background: linear-gradient(130deg,#fff,#f3faf8);
  min-height: 86px;
}
html.theme-20261011 .faq-list details {
  border: 1px solid #d9e5e9;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(9,42,60,.035);
}
html.theme-20261011 .faq-list details[open] { border-color:#82c9bf; background:#f7fcfa; }

html.theme-20261011 .theme-progress {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  height: 3px;
  width: 0;
  pointer-events: none;
  background: linear-gradient(90deg,#0da296,#d4ba63);
  box-shadow: 0 0 10px rgba(13,162,150,.45);
}
html.theme-20261011 .theme-backtop {
  position: fixed;
  right: 18px;
  bottom: 92px;
  z-index: 45;
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity .2s, transform .2s;
}
html.theme-20261011 .theme-backtop.is-visible { opacity:1; pointer-events:auto; transform:translateY(0); }

@media (max-width: 900px) {
  html.theme-20261011 .brand-mark { width:46px; height:46px; min-width:46px; }
  html.theme-20261011 .brand strong { font-size:.9rem; }
  html.theme-20261011 .page-hero-shade { background:linear-gradient(95deg,rgba(7,31,48,.91),rgba(7,39,53,.53)); }
  html.theme-20261011 .service-grid,
  html.theme-20261011 .article-grid,
  html.theme-20261011 .kh-articles,
  html.theme-20261011 .kh-service-grid {
    display:flex;
    gap:14px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding:4px 3px 18px;
    scrollbar-width:thin;
  }
  html.theme-20261011 .service-grid > *,
  html.theme-20261011 .article-grid > *,
  html.theme-20261011 .kh-articles > *,
  html.theme-20261011 .kh-service-grid > * {
    flex:0 0 min(82vw,330px);
    scroll-snap-align:start;
  }
  html.theme-20261011 .step-row > span { flex-basis:min(66vw,230px); }
}
@media (max-width: 600px) {
  html.theme-20261011 .site-header { backdrop-filter:none; background:#fff; }
  html.theme-20261011 .brand-mark { width:42px; height:42px; min-width:42px; border-radius:12px; }
  html.theme-20261011 .brand small { display:none; }
  html.theme-20261011 .topic-guide { padding:20px; }
  html.theme-20261011 .theme-backtop { right:12px; bottom:82px; }
}
@media (prefers-reduced-motion: reduce) {
  html.theme-20261011 *, html.theme-20261011 *::before, html.theme-20261011 *::after {
    scroll-behavior:auto !important;
    animation-duration:.01ms !important;
    transition-duration:.01ms !important;
  }
}
