/* Asthan Global USA LLC — Executive Luxury 3D layer (V2)
   Loaded last on every page. Keeps the locked palette: ivory, executive navy,
   champagne, silver. Depth comes from light, shadow and perspective — not gradients-everywhere. */

:root{
  --lx-ivory:#fbfaf7; --lx-ivory-2:#f4f0e8; --lx-paper:#fffdf9;
  --lx-navy:#12354a; --lx-navy-2:#0c2636; --lx-ink:#182a36; --lx-muted:#4a5a66;
  --lx-champ:#a88759; --lx-champ-2:#c9ab7c; --lx-champ-soft:#e6d8c1;
  --lx-silver:#c9d2da;
  --lx-serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --lx-sans:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --lx-radius:16px;
  --lx-shadow-1:0 1px 0 rgba(255,255,255,.9) inset,0 1px 2px rgba(18,53,74,.06),0 10px 24px -12px rgba(18,53,74,.22);
  --lx-shadow-2:0 1px 0 rgba(255,255,255,.95) inset,0 2px 4px rgba(18,53,74,.06),0 28px 56px -24px rgba(12,38,54,.42);
  --lx-ease:cubic-bezier(.2,.7,.2,1);
}

/* ---------- Base & typography ---------- */
html:not(#_){scroll-behavior:smooth;overflow-x:clip}
html:not(#_) body{overflow-x:clip}
html:not(#_) body{
  font-family:var(--lx-sans)!important;color:var(--lx-ink);
  background:
    radial-gradient(1100px 520px at 88% -8%,rgba(201,171,124,.16),transparent 62%),
    radial-gradient(900px 600px at -10% 18%,rgba(18,53,74,.06),transparent 60%),
    var(--lx-ivory)!important;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
html:not(#_) main h1,html:not(#_) main h2,html:not(#_) .legal-hero h1{
  font-family:var(--lx-serif)!important;font-weight:600!important;letter-spacing:-.01em;
}
html:not(#_) main h1{font-size:clamp(2.6rem,5.2vw,4.6rem)!important;line-height:1.02!important}
html:not(#_) main h2{font-size:clamp(2rem,3.4vw,3rem)!important;line-height:1.08!important}
html:not(#_) main h3{font-family:var(--lx-serif)!important;font-weight:600!important;font-size:clamp(1.35rem,1.9vw,1.6rem)!important;letter-spacing:0}
html:not(#_) main p,html:not(#_) main li{line-height:1.7}

/* Kickers: champagne small caps with an engraved rule */
html:not(#_) .section-kicker,html:not(#_) .eyebrow,html:not(#_) .section-label,html:not(#_) .division-kicker,html:not(#_) .hero-kicker,html:not(#_) .number-label,html:not(#_) .policy-type,html:not(#_) .status-label{
  letter-spacing:.2em!important;font-weight:700!important;
  display:inline-flex;align-items:center;gap:.7em;
}
html:not(#_) .section-kicker::before,html:not(#_) .eyebrow::before,html:not(#_) .section-label::before{
  content:"";width:34px;height:1px;background:linear-gradient(90deg,var(--lx-champ),transparent);flex:none;
}

/* ---------- Header: floating glass bar ---------- */
html:not(#_) .site-header{
  background:rgba(251,250,247,.86)!important;
  -webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);
  border-bottom:1px solid rgba(168,135,89,.28)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 12px 30px -22px rgba(12,38,54,.45)!important;
}
html:not(#_) .site-header img{
  filter:drop-shadow(0 6px 10px rgba(12,38,54,.28)) drop-shadow(0 1px 0 rgba(255,255,255,.6));
  transition:transform .6s var(--lx-ease);
}
html:not(#_) .site-header a:hover img{transform:translateY(-1px) scale(1.03)}
html:not(#_) .primary-nav a{font-family:var(--lx-sans)!important;font-weight:600!important;letter-spacing:.02em;position:relative}
html:not(#_) .primary-nav a::after{
  content:"";position:absolute;left:12%;right:12%;bottom:2px;height:1px;
  background:var(--lx-champ);transform:scaleX(0);transition:transform .35s var(--lx-ease);
}
html:not(#_) .primary-nav a:hover::after,html:not(#_) .primary-nav a[aria-current="page"]::after{transform:scaleX(1)}

/* One consistent menu button on every page */
html:not(#_) .menu-button,html:not(#_) .menu-toggle{
  position:relative;width:48px!important;height:48px!important;min-width:48px;padding:0!important;
  font-size:0!important;color:transparent!important;border-radius:12px!important;
  background:linear-gradient(180deg,#fff,var(--lx-ivory-2))!important;
  border:1px solid rgba(168,135,89,.45)!important;box-shadow:var(--lx-shadow-1)!important;
}
html:not(#_) .menu-button::before,html:not(#_) .menu-toggle::before{
  content:"";position:absolute;left:14px;right:14px;top:50%;height:2px;margin-top:-1px;border-radius:2px;
  background:var(--lx-navy);box-shadow:0 -7px 0 var(--lx-navy),0 7px 0 var(--lx-navy);
}
html:not(#_) .menu-toggle .menu-toggle-lines{display:none!important}

/* ---------- Hero: lit stage with a floating framed image ---------- */
html:not(#_) main>.hero,html:not(#_) main>header.hero,html:not(#_) .legal-hero{
  position:relative;isolation:isolate;
  background:
    radial-gradient(700px 380px at 78% 30%,rgba(201,171,124,.20),transparent 70%),
    linear-gradient(180deg,var(--lx-paper),var(--lx-ivory))!important;
  border-bottom:1px solid rgba(168,135,89,.22);
}
html:not(#_) main>.hero::after,html:not(#_) main>header.hero::after,html:not(#_) .legal-hero::after{
  content:"";position:absolute;left:50%;bottom:-1px;width:min(560px,70%);height:1px;transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,var(--lx-champ),transparent);
}
html:not(#_) .hero p,html:not(#_) .hero .lead,html:not(#_) .hero-lead{color:var(--lx-muted)!important;font-size:clamp(1.05rem,1.3vw,1.18rem)!important}

/* ---------- Framed photography with depth ---------- */
html:not(#_) .lx-depth{
  position:relative;border-radius:var(--lx-radius)!important;overflow:hidden;
  transform:perspective(1400px) rotateY(-5deg) rotateX(2deg);transform-origin:50% 50%;
  box-shadow:18px 18px 0 -2px var(--lx-champ-soft),0 1px 0 rgba(255,255,255,.7) inset,0 40px 70px -30px rgba(12,38,54,.6)!important;
  border:1px solid rgba(168,135,89,.35)!important;background:var(--lx-paper)!important;padding:0!important;
  transition:transform .9s var(--lx-ease),box-shadow .9s var(--lx-ease);
}
html:not(#_) .lx-depth img{border-radius:0!important;display:block}
html:not(#_) .lx-depth:hover{transform:perspective(1400px) rotateY(0) rotateX(0) translateY(-6px)}
html:not(#_) .lx-depth::after{ /* glass sheen */
  content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  background:linear-gradient(115deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,0) 38%);
}

/* ---------- Raised panels (cards) ---------- */
html:not(#_) .capability-aside,html:not(#_) .division-panel,html:not(#_) article.division,html:not(#_) .track-panel,html:not(#_) .form-panel,html:not(#_) .initial-state,html:not(#_) .status-notice,html:not(#_) .status-block,html:not(#_) .status-guidance,html:not(#_) .privacy-warning,html:not(#_) .legal-callout,html:not(#_) .legal-contact,html:not(#_) .requirement-group,html:not(#_) .pathway,html:not(#_) .scope-group,html:not(#_) .model-column,html:not(#_) .qualification,html:not(#_) .backend-notice,html:not(#_) .lx-card{
  position:relative;
  background:linear-gradient(180deg,#fffefb 0%,#f8f4ec 100%)!important;
  border:1px solid rgba(168,135,89,.30)!important;
  border-radius:var(--lx-radius)!important;
  box-shadow:var(--lx-shadow-1)!important;
  transition:transform .55s var(--lx-ease),box-shadow .55s var(--lx-ease);
  transform-style:preserve-3d;will-change:transform;
}
html:not(#_) .capability-aside::before,html:not(#_) .division-panel::before,html:not(#_) article.division::before,html:not(#_) .track-panel::before,html:not(#_) .form-panel::before,html:not(#_) .requirement-group::before,html:not(#_) .pathway::before,html:not(#_) .scope-group::before,html:not(#_) .model-column::before,html:not(#_) .lx-card::before{
  /* champagne bevel along the top edge */
  content:"";position:absolute;left:18px;right:18px;top:0;height:2px;border-radius:2px;
  background:linear-gradient(90deg,transparent,var(--lx-champ-2),transparent);opacity:.85;
}
html:not(#_) .lx-tilt:hover{box-shadow:var(--lx-shadow-2)!important}
@media (hover:none){html:not(#_) .lx-tilt{transform:none!important}}

/* Division panels get an executive navy variant for weight */
html:not(#_) .division-panel,html:not(#_) article.division{
  background:linear-gradient(165deg,#163e56 0%,#0e2b3d 100%)!important;border-color:rgba(201,171,124,.45)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.08) inset,0 30px 60px -30px rgba(8,26,38,.75)!important;
}
html:not(#_) .division-panel *,html:not(#_) article.division *{color:#eef1f4!important}
html:not(#_) .division-panel h3,html:not(#_) article.division h3{color:#fff!important;text-shadow:0 2px 6px rgba(0,0,0,.35)}
html:not(#_) .division-panel .division-kicker,html:not(#_) article.division .division-kicker{color:var(--lx-champ-2)!important}
html:not(#_) .division-panel a,html:not(#_) article.division a{color:#f1dfc1!important;text-decoration-color:rgba(241,223,193,.5)!important}

/* ---------- Buttons: sculpted, pressable ---------- */
html:not(#_) .button-link,html:not(#_) .button,html:not(#_) .button-primary,html:not(#_) .enabled-action,html:not(#_) .lx-button{
  border-radius:12px!important;font-family:var(--lx-sans)!important;font-weight:700!important;letter-spacing:.02em;
  background:linear-gradient(180deg,#1d4b65 0%,#12354a 55%,#0c2636 100%)!important;color:#fff!important;
  border:1px solid #0b2231!important;
  box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 -2px 0 rgba(0,0,0,.25) inset,0 10px 22px -10px rgba(12,38,54,.7),0 0 0 1px rgba(201,171,124,.35)!important;
  transition:transform .25s var(--lx-ease),box-shadow .25s var(--lx-ease)!important;
}
html:not(#_) .button-link:hover,html:not(#_) .button:hover,html:not(#_) .button-primary:hover,html:not(#_) .enabled-action:hover,html:not(#_) .lx-button:hover{
  transform:translateY(-2px);
  box-shadow:0 1px 0 rgba(255,255,255,.28) inset,0 -2px 0 rgba(0,0,0,.25) inset,0 18px 30px -12px rgba(12,38,54,.7),0 0 0 1px rgba(201,171,124,.7)!important;
}
html:not(#_) .button-link:active,html:not(#_) .button:active,html:not(#_) .enabled-action:active{transform:translateY(1px)}
html:not(#_) .button-link.secondary,html:not(#_) .button-secondary,html:not(#_) .button-light,html:not(#_) .lx-button.secondary{
  background:linear-gradient(180deg,#ffffff,var(--lx-ivory-2))!important;color:var(--lx-navy)!important;
  border:1px solid rgba(168,135,89,.55)!important;
  box-shadow:0 1px 0 #fff inset,0 -2px 0 rgba(168,135,89,.12) inset,0 10px 20px -14px rgba(12,38,54,.5)!important;
}
html:not(#_) :focus-visible{outline:2px solid var(--lx-champ)!important;outline-offset:3px!important}

/* ---------- Form fields ---------- */
html:not(#_) main input,html:not(#_) main select,html:not(#_) main textarea{
  border-radius:10px!important;border:1px solid rgba(18,53,74,.22)!important;background:#fff!important;
  box-shadow:0 2px 4px rgba(18,53,74,.06) inset!important;
}
html:not(#_) main input:focus,html:not(#_) main select:focus,html:not(#_) main textarea:focus{border-color:var(--lx-champ)!important;box-shadow:0 0 0 3px rgba(201,171,124,.25)!important}

/* ---------- Section rhythm ---------- */
html:not(#_) main>section+section{position:relative}
html:not(#_) main>section+section::before{
  content:"";position:absolute;top:0;left:50%;width:9px;height:9px;transform:translate(-50%,-50%) rotate(45deg);
  background:var(--lx-ivory);border:1px solid var(--lx-champ);
}

/* ---------- Scroll reveal (only when JS is active) ---------- */
html.lx-js:not(#_) .lx-reveal{opacity:0;transform:translateY(28px) scale(.985);
  transition:opacity .9s var(--lx-ease),transform .9s var(--lx-ease)}
html.lx-js:not(#_) .lx-reveal.lx-in{opacity:1;transform:none}

/* ---------- Footer: executive navy ---------- */
html:not(#_) .lx-footer{
  position:relative;margin-top:0;color:#d8dee4;
  background:radial-gradient(800px 300px at 15% 0%,rgba(201,171,124,.14),transparent 70%),linear-gradient(180deg,#0f2f42,#091d2a);
  border-top:1px solid rgba(201,171,124,.45);
}
html:not(#_) .lx-footer::before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,var(--lx-champ-2),transparent)}
html:not(#_) .lx-footer-inner{max-width:1200px;margin:0 auto;padding:64px 24px 28px;display:grid;gap:40px;grid-template-columns:1.4fr repeat(3,1fr)}
html:not(#_) .lx-footer-brand img{width:132px;height:auto;filter:drop-shadow(0 10px 16px rgba(0,0,0,.45))}
html:not(#_) .lx-footer-brand p{margin:14px 0 0;max-width:30ch;color:#b9c4cd;font-size:.95rem;line-height:1.65}
html:not(#_) .lx-footer-name{display:block;margin-top:12px;font-family:var(--lx-serif);font-size:1.5rem;font-weight:600;color:#fff;letter-spacing:.02em}
html:not(#_) .lx-footer h2{font-family:var(--lx-sans)!important;font-size:.74rem!important;letter-spacing:.22em!important;text-transform:uppercase;color:var(--lx-champ-2)!important;margin:0 0 16px!important;text-shadow:none!important}
html:not(#_) .lx-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
html:not(#_) .lx-footer a{color:#e9edf1!important;text-decoration:none;font-size:.95rem}
html:not(#_) .lx-footer a:hover{color:#f1dfc1!important;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--lx-champ)}
html:not(#_) .lx-footer-base{max-width:1200px;margin:0 auto;padding:20px 24px 34px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:.85rem;color:#93a3b0}
@media (max-width:900px){html:not(#_) .lx-footer-inner{grid-template-columns:1fr 1fr}html:not(#_) .lx-footer-brand{grid-column:1/-1}}
@media (max-width:520px){html:not(#_) .lx-footer-inner{grid-template-columns:1fr;padding:48px 20px 20px}}

/* ---------- Newsroom teaser on Home ---------- */
html:not(#_) .lx-news-latest{margin-top:18px;padding:22px 24px}
html:not(#_) .lx-news-latest time{display:block;color:var(--lx-champ);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
html:not(#_) .lx-news-latest h3{margin:.35em 0 .3em}

/* ---------- Motion & accessibility ---------- */
@media (prefers-reduced-motion:reduce){
  html:not(#_) *{scroll-behavior:auto!important}
  html.lx-js:not(#_) .lx-reveal{opacity:1;transform:none;transition:none}
  html:not(#_) .lx-depth,html:not(#_) .lx-tilt{transform:none!important;transition:none!important}
}
@media (max-width:760px){
  html:not(#_) .lx-depth{transform:none;box-shadow:10px 10px 0 -2px var(--lx-champ-soft),0 22px 40px -22px rgba(12,38,54,.5)!important}
  html:not(#_) main>section+section::before{display:none}
}

/* ---------- Brand prominence: readable wordmark beside the emblem ---------- */
html:not(#_) .site-header .brand,html:not(#_) .site-header .brand-link{display:inline-flex!important;align-items:center;gap:14px;text-decoration:none!important}
html:not(#_) .site-header .brand-wordmark{display:flex!important;flex-direction:column;justify-content:center;line-height:1}
html:not(#_) .site-header .brand-name,html:not(#_) .site-header .wordmark-name{
  font-family:var(--lx-serif)!important;font-size:1.55rem!important;font-weight:700!important;letter-spacing:.01em;
  color:var(--lx-navy)!important;text-shadow:0 1px 0 #fff,0 2px 4px rgba(18,53,74,.18);white-space:nowrap}
html:not(#_) .site-header .brand-legal,html:not(#_) .site-header .wordmark-legal{
  margin-top:5px;font-family:var(--lx-sans)!important;font-size:.64rem!important;font-weight:700!important;
  letter-spacing:.34em!important;text-transform:uppercase;color:var(--lx-champ)!important;white-space:nowrap}
@media (min-width:1081px) and (max-width:1260px){html:not(#_) .site-header .brand-wordmark{display:none!important}}
@media (max-width:420px){html:not(#_) .site-header .brand-name,html:not(#_) .site-header .wordmark-name{font-size:1.2rem!important}html:not(#_) .site-header .brand-legal,html:not(#_) .site-header .wordmark-legal{letter-spacing:.24em!important}}

/* ---------- Action rows inside panels ---------- */
html:not(#_) .lx-actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 6px!important}
html:not(#_) .lx-actions .button-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px!important;text-decoration:none!important}
html:not(#_) .media-band .lx-actions{margin:0!important}
html:not(#_) #ag-email-status{margin-top:12px}

/* ---------- V2.1 readability fixes (2026-10-18) ---------- */
html:not(#_) [id]{scroll-margin-top:130px}
html:not(#_) .lx-footer-base a{display:inline-block;padding:8px 2px}
html:not(#_) .lx-footer ul a{display:inline-block;padding:4px 0}
html:not(#_) :is(.status-notice,.status-block,.status-guidance,.privacy-warning,.legal-callout,.initial-state,.form-panel,.backend-notice,.capability-aside,.qualification) a:not(.button-link){
  color:#1d5875!important;text-decoration:underline;text-decoration-color:rgba(168,135,89,.7)!important;text-underline-offset:3px}
html:not(#_) :is(.status-notice,.status-block,.status-guidance,.privacy-warning,.legal-callout) :is(p,li,span:not(.button-link)){color:#3d4d58!important}
html:not(#_) :is(.status-notice,.status-block,.status-guidance) :is(h3,strong){color:#12354a!important}
/* primary email button on the dark Travels panel */
html:not(#_) #inquiry .inquiry-part .lx-button:not(.secondary){background:linear-gradient(180deg,#ecd8ae 0%,#c9ab7c 100%)!important;color:#12354a!important;border-color:#a88759!important}
