/* ============ Trilot v2 skin — inner pages (on top of site.css dark theme) ============ */
html[data-theme="dark"], [data-theme="dark"] {
  --cream: #0B0A09; --cream-2: #14110F; --cream-3: #1D1A17;
  --ink: #F5EFE4; --ink-2: #C9C0B0; --rule: rgba(245,239,228,.13);
  --muted: #8C8274; --muted-2: #7A7064;
  --rust: #E0714B; --rust-2: #F09A6E; --sage: #A7B98A; --sky: #8DB3C9; --sky-2: #7FA3B8;
  --header-bg: rgba(11,10,9,.55);
}
html.v2-skin { background: #0B0A09; }
.v2-skin body { background: transparent !important; color: var(--ink); -webkit-font-smoothing: antialiased; }
.v2-skin main, .v2-skin .site-footer, .v2-skin .newsletter-strip { position: relative; z-index: 2; }
.v2-skin ::selection { background: #E0714B; color: #0B0A09; }

#ambient { position: fixed; inset: 0; width: 100vw; height: 100vh; z-index: 0; pointer-events: none; transition: opacity .6s; }
.v2-skin body::before { content: ""; position: fixed; inset: 0; z-index: 1; pointer-events: none;
  background: radial-gradient(90% 60% at 80% -10%, rgba(224,113,75,.10), transparent 60%), radial-gradient(70% 50% at 0% 0%, rgba(141,179,201,.07), transparent 60%); }
.v2-skin body::after { content: ""; position: fixed; inset: -50%; z-index: 1; pointer-events: none; opacity: .06; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"); }

/* header */
.v2-skin .site-header { position: sticky; top: 0; z-index: 50; background: var(--header-bg) !important; backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); border-bottom: 1px solid var(--rule) !important; }
.v2-skin .site-header__logo .symbol { filter: invert(1) brightness(1.2); }
.v2-skin .site-nav a { opacity: .72; transition: opacity .25s; }
.v2-skin .site-nav a:hover, .v2-skin .site-nav a[data-active="true"] { opacity: 1; color: var(--ink) !important; }
.v2-skin .header-control--theme { display: none !important; }

/* type */
.v2-skin h1 { font-family: var(--serif); font-weight: 400; letter-spacing: -.035em; line-height: .95; font-size: clamp(52px, 7.6vw, 128px) !important; color: var(--ink); }
.v2-skin h1 em, .v2-skin h1 .rust, .v2-skin h1 .italic { background: linear-gradient(170deg, #E6C254 0%, #F09A6E 35%, #E0714B 70%, #B8593B 100%); -webkit-background-clip: text; background-clip: text; color: transparent !important; font-style: italic; padding-right: .06em; }
.v2-skin h2 { font-family: var(--serif); font-weight: 400; letter-spacing: -.025em; }
.v2-skin .eyebrow { font-family: var(--mono); letter-spacing: .18em; color: var(--ink-2); display: inline-flex; align-items: center; gap: 12px; }
.v2-skin .eyebrow::before { content: ""; width: 28px; height: 1px; background: var(--rust); flex: none; }
.v2-skin .lede { color: var(--ink); }
.v2-skin p { color: var(--ink-2); }
.v2-skin strong { color: var(--ink); }
.v2-skin main a:not([class]) { color: var(--rust-2); text-decoration-color: rgba(240,154,110,.4); }
.v2-skin .site-nav a { color: var(--ink-2) !important; }

/* infographics + mockups become lit "paper" plates */
.v2-skin img.trilot-infographic, .v2-skin .trilot-mockup, .v2-skin .heritage-strip__img {
  border-radius: 22px; box-shadow: 0 40px 120px -40px rgba(0,0,0,.9), 0 0 0 1px rgba(245,239,228,.08), 0 0 80px -30px rgba(224,113,75,.35);
  transition: transform .8s cubic-bezier(.16,1,.3,1), box-shadow .8s; }
.v2-skin img.trilot-infographic { background: #F5EFE4; padding: clamp(12px, 2vw, 28px); }
.v2-skin img.trilot-infographic:hover { transform: translateY(-6px) scale(1.01); box-shadow: 0 60px 140px -40px rgba(0,0,0,.95), 0 0 0 1px rgba(245,239,228,.14), 0 0 110px -30px rgba(224,113,75,.5); }
.v2-skin .trilot-mockup, .v2-skin .trilot-mockup * { color-scheme: light; }

/* cards / tiles */
.v2-skin .svc-tile, .v2-skin .cert-card, .v2-skin .brand-card, .v2-skin .tl-entry, .v2-skin .d-group, .v2-skin .service-cta, .v2-skin .cta-block, .v2-skin form {
  background: linear-gradient(180deg, rgba(245,239,228,.045), rgba(245,239,228,.012)) !important; border: 1px solid var(--rule) !important; border-radius: 24px; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  transition: border-color .4s, transform .6s cubic-bezier(.16,1,.3,1); }
.v2-skin .svc-tile:hover, .v2-skin .cert-card:hover, .v2-skin .brand-card:hover { border-color: rgba(224,113,75,.55) !important; transform: translateY(-4px); }
.v2-skin .cert-card__img { border-radius: 14px; }
.v2-skin .tag-pill { border-radius: 999px; border-color: var(--rule); color: var(--ink-2); background: rgba(245,239,228,.03); }

/* buttons */
.v2-skin .btn-primary, .v2-skin .btn-secondary, .v2-skin .btn-ghost, .v2-skin .btn {
  border-radius: 999px !important; padding: 14px 24px !important; font-weight: 500; transition: transform .2s, box-shadow .3s, background .3s, color .3s; }
.v2-skin .btn-primary { background: linear-gradient(120deg, #E0714B, #C4593F 60%, #B8593B) !important; color: #140C08 !important; border: 0 !important; box-shadow: 0 10px 40px -10px rgba(224,113,75,.6), inset 0 1px 0 rgba(255,255,255,.25); font-weight: 600; }
.v2-skin .btn-primary:hover { box-shadow: 0 16px 50px -10px rgba(224,113,75,.8); }
.v2-skin .btn-secondary, .v2-skin .btn-ghost { background: rgba(245,239,228,.04) !important; color: var(--ink) !important; border: 1px solid var(--rule) !important; }
.v2-skin .btn-secondary:hover, .v2-skin .btn-ghost:hover { background: var(--ink) !important; color: #0B0A09 !important; }

/* forms */
.v2-skin input, .v2-skin textarea, .v2-skin select { background: rgba(245,239,228,.04) !important; border: 1px solid var(--rule) !important; color: var(--ink) !important; border-radius: 14px !important; }
.v2-skin input:focus, .v2-skin textarea:focus, .v2-skin select:focus { border-color: #E0714B !important; box-shadow: 0 0 0 4px rgba(224,113,75,.15) !important; outline: none; }
.v2-skin table { border-color: var(--rule); }
.v2-skin th, .v2-skin td { border-color: var(--rule) !important; }

/* footer */
.v2-skin .site-footer { background: rgba(11,10,9,.9) !important; border-top: 1px solid var(--rule) !important; }

/* reveal */
.v2-skin .fade-in { transition: opacity 1s cubic-bezier(.16,1,.3,1), transform 1s cubic-bezier(.16,1,.3,1) !important; }

/* page transition curtain (shared) */
.curtain { position: fixed; inset: 0; z-index: 200; pointer-events: none; display: grid; grid-template-columns: repeat(3, 1fr); }
.curtain i { background: #0B0A09; transform: scaleY(0); transform-origin: bottom; transition: transform .55s cubic-bezier(.76,0,.24,1); }
.curtain i:nth-child(1) { background: #A7B98A; transition-delay: 0s; } .curtain i:nth-child(2) { background: #E0714B; transition-delay: .06s; } .curtain i:nth-child(3) { background: #8DB3C9; transition-delay: .12s; }
.curtain.in i { transform: scaleY(1); transform-origin: bottom; }
.curtain.out i { transform: scaleY(0); transform-origin: top; }
@media (prefers-reduced-motion: reduce) { .curtain { display: none; } }

/* header hide on scroll */
.v2-skin .site-header { transition: transform .5s cubic-bezier(.16,1,.3,1), background .4s; }
.v2-skin .site-header.is-hidden { transform: translateY(-110%); }

/* newsletter moved above footer */
.v2-skin .newsletter-strip.nl-bottom { background: linear-gradient(120deg, rgba(224,113,75,.10), rgba(11,10,9,.6) 55%) !important; border-top: 1px solid var(--rule) !important; border-bottom: 0 !important; backdrop-filter: blur(10px); }

/* living infographics */
.art-plate { position: relative; margin: 0 0 clamp(28px, 4vw, 56px); padding: clamp(14px, 2.4vw, 34px); border-radius: 26px; border: 1px solid rgba(245,239,228,.12);
  background: radial-gradient(600px circle at var(--mx, 70%) var(--my, 0%), rgba(224,113,75,.10), transparent 55%), linear-gradient(180deg, rgba(245,239,228,.05), rgba(245,239,228,.012));
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); box-shadow: 0 50px 120px -50px rgba(0,0,0,.9); transition: transform .6s cubic-bezier(.16,1,.3,1), border-color .4s; will-change: transform; }
.art-plate:hover { border-color: rgba(224,113,75,.4); }
.art-plate::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1px; pointer-events: none;
  background: linear-gradient(140deg, rgba(167,185,138,.5), rgba(224,113,75,.0) 30%, rgba(224,113,75,.0) 70%, rgba(141,179,201,.5)); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; opacity: .6; }
.art-plate svg { display: block; width: 100%; height: auto; overflow: visible; }
.art-plate .rise { opacity: 0; transform: translateY(10px); transform-box: fill-box; transition: opacity .7s cubic-bezier(.16,1,.3,1), transform .9s cubic-bezier(.16,1,.3,1); transition-delay: calc(var(--i) * 16ms); }
.art-plate .draw { stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1.4s cubic-bezier(.65,0,.35,1); transition-delay: calc(var(--i) * 16ms); }
.art-plate.play .rise { opacity: 1; transform: none; }
.art-plate.play .draw { stroke-dashoffset: 0; }
.art-plate rect { transition: filter .3s; }
.art-plate rect:hover { filter: brightness(1.45) drop-shadow(0 0 6px rgba(224,113,75,.5)); }
.art-plate circle { animation: artPulse 3.2s ease-in-out infinite; transform-box: fill-box; transform-origin: center; animation-delay: calc(var(--i) * 40ms); }
@keyframes artPulse { 50% { filter: drop-shadow(0 0 6px rgba(224,113,75,.8)); } }
@media (prefers-reduced-motion: reduce) { .art-plate .rise, .art-plate .draw { opacity: 1; transform: none; stroke-dashoffset: 0; transition: none; } .art-plate circle { animation: none; } }
.v2-skin .d-group { padding: clamp(16px, 2.4vw, 28px) !important; }
.v2-skin .tl-entry { padding: clamp(16px, 2.4vw, 26px) !important; }
