/* AIdvisory: icons, liquid glass material, solid content panes, shader layer.
   Loaded after aidvisory.css and overrides it where needed. */

/* =====================================================================
   ICONS
   ===================================================================== */
.ad .ad-i { width: 1.1em; height: 1.1em; vertical-align: -.17em; flex: none; }
.ad .ad-i--inline { margin-right: 6px; }
.ad .ad-ico svg { width: 24px; height: 24px; }
.ad .ad-ico--sm { width: 38px; height: 38px; border-radius: 10px; margin-bottom: 10px; }
.ad .ad-ico--sm svg { width: 20px; height: 20px; }
.ad .ad-fi svg { width: 22px; height: 22px; display: block; margin-bottom: 8px; color: var(--gold-500); }
.ad .ad-oi { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: var(--gold-500); color: var(--navy-900); flex: none; box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 4px 12px rgba(201,148,58,.35); }
.ad .ad-oi svg { width: 20px; height: 20px; }
.ad .ad-outcomes li { grid-template-columns: 40px 1fr; }
.ad .ad-outcomes li::before { counter-increment: none; }
.ad .ad-principles { list-style: none; margin: var(--space-5) 0 0; padding: 0; display: grid; gap: 10px; }
.ad .ad-principles li { display: flex; align-items: center; gap: 14px; padding: 12px 16px; border-radius: 16px; background: var(--t-card); border: 1px solid var(--t-card-bd); box-shadow: var(--t-card-sh); }
.ad .ad-principles b { color: var(--t-head); font-size: 1.05rem; }
.ad .ad-sthead { display: flex; justify-content: space-between; align-items: center; }
.ad .ad-sthead svg { width: 22px; height: 22px; color: var(--t-icon); }
.ad .ad-journey::before { left: 19px; }
.ad .ad-journey li { grid-template-columns: 40px 1fr; }
.ad .ad-journey li::before { content: none; }
.ad .ad-ji { grid-row: span 2; width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: var(--navy-800); color: var(--gold-500); border: 2px solid var(--gold-500); position: relative; z-index: 1; }
.ad .ad-ji svg { width: 18px; height: 18px; }
.ad .ad-ba h3 svg { width: 20px; height: 20px; margin-right: 8px; color: var(--t-accent); vertical-align: -3px; }
.ad .ad-consent .ad-i { color: var(--t-accent); }

/* =====================================================================
   LIQUID GLASS (chrome and containers of hierarchy only)
   Layers: lift shadow, tinted body (--t-card), window reflection (::after,
   upper-left), hairline rim (::before). One light, upper-left, both themes.
   Repeated tiles are "lite" (no backdrop-filter); live blur is reserved for
   the sub-nav, facts strip, definitions, diagram layers and the form panel.
   Content stays opaque: form fields, FAQ and all body copy.
   ===================================================================== */
.ad { --lg-rim-a: rgba(255,255,255,.95); --lg-rim-b: rgba(255,255,255,.45); --lg-window: rgba(255,255,255,.55); }
html[data-theme="dark"] .ad { --lg-rim-a: rgba(255,255,255,.55); --lg-rim-b: rgba(255,255,255,.18); --lg-window: rgba(255,255,255,.14); }

.ad .card { -webkit-backdrop-filter: none; backdrop-filter: none; }
.ad .card, .ad .ad-steps li, .ad .ad-def, .ad .ad-ba, .ad .ad-outcomes li, .ad .ad-principles li,
.ad .ad-formwrap, .ad .ad-layer, .ad .ad-subnav ul { position: relative; isolation: isolate; }
.ad .card::before, .ad .ad-steps li::before, .ad .ad-def::before, .ad .ad-ba::before, .ad .ad-outcomes li::before,
.ad .ad-principles li::before, .ad .ad-formwrap::before, .ad .ad-layer::before, .ad .ad-subnav ul::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; border-radius: inherit; padding: 1px;
  background: linear-gradient(135deg, var(--lg-rim-a) 0%, transparent 34%, transparent 62%, var(--lg-rim-b) 100%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor;
          mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  counter-increment: none;
}
.ad .card::after, .ad .ad-steps li::after, .ad .ad-def::after, .ad .ad-ba::after, .ad .ad-outcomes li::after,
.ad .ad-principles li::after, .ad .ad-formwrap::after, .ad .ad-subnav ul::after {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; border-radius: inherit;
  background: linear-gradient(155deg, var(--lg-window) 0%, transparent 42%); opacity: .55;
}
/* live-blur surfaces */
.ad .ad-formwrap, .ad .ad-facts { -webkit-backdrop-filter: blur(14px) saturate(1.6); backdrop-filter: blur(14px) saturate(1.6); }
.ad .ad-def { -webkit-backdrop-filter: blur(12px) saturate(1.5); backdrop-filter: blur(12px) saturate(1.5); }
.ad .ad-layer { -webkit-backdrop-filter: blur(10px) saturate(1.5); backdrop-filter: blur(10px) saturate(1.5); box-shadow: 0 12px 30px rgba(0,0,0,.28); }
.ad .ad-layer--1 { background: linear-gradient(90deg, rgba(27,46,99,.82), rgba(36,119,206,.78)); }
.ad .ad-layer--2 { background: rgba(18,32,74,.7); }
.ad .ad-facts li { background: rgba(11,22,49,.55); }
.ad .ad-orbit .node rect { fill: rgba(255,255,255,.10); stroke: rgba(255,255,255,.55); filter: drop-shadow(0 6px 14px rgba(0,0,0,.35)); }
.ad .ad-orbit .node:hover rect { fill: rgba(217,169,78,.25); stroke: var(--gold-500); }
.ad .ad-ico { box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 6px 16px rgba(18,32,74,.12); border: 1px solid var(--t-card-bd); }

/* =====================================================================
   SOLID-GLASS TREATMENT FOR CONTENT: opaque, edge-lit, heavy
   ===================================================================== */
.ad { --t-field: #ffffff; --t-field-bd: rgba(18,32,74,.28); --t-field-tx: #0d0d0d; }
html[data-theme="dark"] .ad { --t-field: #0f1b3c; --t-field-bd: rgba(255,255,255,.34); --t-field-tx: #f5f5f7; }
.ad .ad-form input[type=text], .ad .ad-form input[type=email], .ad .ad-form select, .ad .ad-form textarea {
  background: var(--t-field); color: var(--t-field-tx); border: 1px solid var(--t-field-bd); border-radius: 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 1px 2px rgba(0,0,0,.12);
}
.ad .ad-form input:focus-visible, .ad .ad-form select:focus-visible, .ad .ad-form textarea:focus-visible { outline: 2px solid var(--gold-500); outline-offset: 1px; }
.ad .ad-form ::placeholder { color: color-mix(in srgb, var(--t-field-tx) 55%, transparent); }
.ad .ad-faq details { padding: 16px 20px; margin-bottom: 10px; border: 1px solid var(--t-card-bd); border-radius: 14px; background: var(--t-field); box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 6px 18px rgba(18,32,74,.08); }
.ad .ad-faq summary { color: var(--t-field-tx); }
.ad .ad-faq p { color: color-mix(in srgb, var(--t-field-tx) 78%, transparent); }

/* reduced transparency and no-backdrop fallbacks */
@media (prefers-reduced-transparency: reduce) {
  .ad .ad-formwrap, .ad .ad-facts, .ad .ad-def, .ad .ad-layer, .ad .ad-subnav ul { -webkit-backdrop-filter: none; backdrop-filter: none; }
  .ad .ad-formwrap, .ad .ad-def { background: var(--t-field); }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .ad .ad-formwrap, .ad .ad-def { background: var(--t-field); }
}

/* =====================================================================
   SHADER ATMOSPHERE (AIfication section only; the CSS backdrop is the fallback)
   ===================================================================== */
#aification { position: relative; overflow: hidden; isolation: isolate; }
#aification .ad-shader { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; opacity: 0; transition: opacity 1.4s ease; pointer-events: none; }
#aification .ad-shader.is-ready { opacity: .6; }
