/* ─────────────────────────────────────────────────────────
   WLP CAPITAL — CINEMATIC MOTION + DEPTH
   Shared utility layer.
   Pairs with wlp-motion.js + wlp-canvas.js.
   ───────────────────────────────────────────────────────── */

:root {
  --ease-cinema: cubic-bezier(.22, .61, .36, 1);
  --ease-slow:   cubic-bezier(.16, 1, .3, 1);
  --dur-slow:    1.2s;
  --dur-mid:     .8s;
  --dur-fast:    .45s;
}

/* ── Reveal — refined cinematic entry ─────────────────────
   Existing pages already define .reveal/.visible. We extend
   without breaking older inline rules. */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity var(--dur-slow) var(--ease-cinema),
    transform var(--dur-slow) var(--ease-cinema);
  will-change: opacity, transform;
}
.reveal.visible,
.reveal.is-in { opacity: 1; transform: none; }

/* Variant: subtle vertical lift only */
.reveal[data-reveal="rise"] { transform: translateY(18px); }
/* Variant: drift in from left */
.reveal[data-reveal="left"] { transform: translate(-32px, 0); }
.reveal[data-reveal="left"].visible,
.reveal[data-reveal="left"].is-in { transform: none; }

/* ── Hairline draw-on ─────────────────────────────────────
   <hr data-hairline> or <div data-hairline> with a width.
   Animates from 0 width to its inline/CSS width. */
[data-hairline] {
  position: relative;
  overflow: hidden;
}
[data-hairline]::after {
  content: '';
  position: absolute;
  inset: 0;
  background: inherit;
  transform-origin: left center;
  transform: scaleX(0);
  transition: transform 1.6s var(--ease-cinema);
}
[data-hairline].is-drawn::after { transform: scaleX(1); }

/* Inline mode: animate the element's own scale */
.hairline-draw {
  transform-origin: left center;
  transform: scaleX(0);
  transition: transform 1.4s var(--ease-cinema);
}
.hairline-draw.is-drawn { transform: scaleX(1); }

/* ── Parallax helpers ─────────────────────────────────────
   Apply transform via CSS vars set by wlp-motion.js. */
[data-parallax] {
  --px: 0px; --py: 0px;
  transform: translate3d(var(--px), var(--py), 0);
  transition: transform .8s var(--ease-cinema);
  will-change: transform;
}
[data-scroll-parallax] {
  --sy: 0px;
  transform: translate3d(0, var(--sy), 0);
  will-change: transform;
}

/* ── Ambient cursor glow ──────────────────────────────────
   Activated by <body data-cursor-glow>. Single fixed node
   follows the cursor with very low opacity. Hidden until
   the cursor actually moves (motion.js flips a class). */
#wlp-cursor-glow {
  position: fixed;
  left: 0; top: 0;
  width: 460px; height: 460px;
  pointer-events: none;
  z-index: 0;
  transform: translate3d(
    calc(var(--cursor-x, -800px) - 230px),
    calc(var(--cursor-y, -800px) - 230px),
    0
  );
  background: radial-gradient(
    circle at center,
    rgba(182,152,70,0.045) 0%,
    rgba(182,152,70,0.018) 30%,
    rgba(182,152,70,0) 62%
  );
  filter: blur(8px);
  opacity: 0;
  transition: transform .55s var(--ease-cinema), opacity .8s ease;
  mix-blend-mode: screen;
}
#wlp-cursor-glow.is-active { opacity: 1; }

/* ── Canvas auto-positioning ──────────────────────────────
   Any <canvas data-wlp-canvas> becomes a full-bleed absolute
   background of its nearest positioned ancestor.
   No wrapper class required. */
canvas[data-wlp-canvas] {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  display: block;
  z-index: 0;
  pointer-events: none;
}

/* ── Canvas attached to a section ─────────────────────────
   Optional helper layout: <div class="wlp-stage">. */
.wlp-stage { position: relative; overflow: hidden; }
.wlp-stage > canvas[data-wlp-canvas] + * { position: relative; z-index: 1; }

/* ── Hero with cinematic canvas — atmospheric wash + infra grid ─
   Two-layer overlay: a soft radial wash for headline legibility,
   and a hairline infrastructure grid sitting at very low opacity. */
#hero:has(> canvas[data-wlp-canvas]) {
  isolation: isolate;
  background: var(--ink-1, #050505);
}
/* Vignette + atmospheric wash — lighter than before so the
   canvas reads through, but still preserves text contrast on the left. */
#hero:has(> canvas[data-wlp-canvas])::before {
  content: '';
  position: absolute; inset: 0; z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(110% 70% at 16% 52%,
      rgba(5,5,5,0.46) 0%,
      rgba(5,5,5,0.22) 38%,
      rgba(5,5,5,0.02) 65%,
      transparent 82%),
    linear-gradient(180deg,
      rgba(5,5,5,0.20) 0%,
      rgba(5,5,5,0.00) 32%,
      rgba(5,5,5,0.00) 72%,
      rgba(5,5,5,0.55) 100%);
}
/* Hairline infrastructure overlay — ultra-faint vertical + horizontal
   tracks that suggest institutional architecture. Static, very subtle. */
#hero:has(> canvas[data-wlp-canvas])::after {
  content: '';
  position: absolute; inset: 0; z-index: 1;
  pointer-events: none;
  background:
    /* faint vertical leverage tracks */
    linear-gradient(90deg,
      transparent 0, transparent calc(20% - .5px),
      rgba(182,152,70,0.045) calc(20% - .5px), rgba(182,152,70,0.045) 20%,
      transparent 20%, transparent calc(62% - .5px),
      rgba(182,152,70,0.035) calc(62% - .5px), rgba(182,152,70,0.035) 62%,
      transparent 62%, transparent calc(84% - .5px),
      rgba(182,152,70,0.025) calc(84% - .5px), rgba(182,152,70,0.025) 84%,
      transparent 84%),
    /* one horizontal architectural baseline */
    linear-gradient(180deg,
      transparent 0, transparent calc(78% - .5px),
      rgba(245,242,235,0.04) calc(78% - .5px), rgba(245,242,235,0.04) 78%,
      transparent 78%);
  mix-blend-mode: screen;
}
#hero:has(> canvas[data-wlp-canvas]) > .hero-content,
#hero:has(> canvas[data-wlp-canvas]) > .hero-left,
#hero:has(> canvas[data-wlp-canvas]) > .hero-right {
  position: relative; z-index: 2;
}

/* Subtle gradient floor that sits over the canvas for legibility */
.wlp-stage--with-floor::after {
  content: '';
  position: absolute; inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(120% 70% at 20% 60%,
      rgba(8,8,8,.78) 0%,
      rgba(8,8,8,.40) 40%,
      rgba(8,8,8,.10) 70%,
      transparent 100%);
}

/* ── Glass panel utility ──────────────────────────────────
   Premium translucent surface for overlays / detail cards. */
.glass {
  background: linear-gradient(180deg,
    rgba(245,243,239,0.025),
    rgba(245,243,239,0.008));
  border: 1px solid rgba(245,243,239,0.06);
  backdrop-filter: blur(14px) saturate(110%);
  -webkit-backdrop-filter: blur(14px) saturate(110%);
}
.glass-gold {
  background: linear-gradient(180deg,
    rgba(182,152,70,0.045),
    rgba(182,152,70,0.010));
  border: 1px solid rgba(182,152,70,0.18);
  backdrop-filter: blur(14px) saturate(110%);
  -webkit-backdrop-filter: blur(14px) saturate(110%);
}

/* ── Section transition: cinematic top/bottom fade ────────
   Use on sections to keep the canvas legible at edges. */
.section-fade-top::before,
.section-fade-bottom::after {
  content: '';
  position: absolute; left: 0; right: 0;
  height: 140px;
  pointer-events: none;
  z-index: 2;
}
.section-fade-top::before {
  top: 0;
  background: linear-gradient(to bottom, rgba(8,8,8,1), rgba(8,8,8,0));
}
.section-fade-bottom::after {
  bottom: 0;
  background: linear-gradient(to top, rgba(8,8,8,1), rgba(8,8,8,0));
}

/* ── Reduced motion ───────────────────────────────────────*/
@media (prefers-reduced-motion: reduce) {
  .reveal,
  .reveal.visible,
  .reveal.is-in,
  [data-hairline]::after,
  .hairline-draw,
  [data-parallax],
  [data-scroll-parallax] {
    transition-duration: .01ms !important;
    transform: none !important;
  }
  #wlp-cursor-glow { display: none; }
}

/* ─────────────────────────────────────────────────────────
   PREMIUM CTA — institutional, tactile, restrained
   Glass surface, slow gold edge illumination on hover,
   ambient inner pulse, no startup-style snap.
   Use as `<a class="btn-cta">` or `<button class="btn-cta">`.
   ───────────────────────────────────────────────────────── */
.btn-cta,
.btn-cta-ghost {
  --cta-gold: 182, 152, 70;
  position: relative;
  display: inline-flex; align-items: center; justify-content: center;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: .72rem;
  letter-spacing: .26em;
  text-transform: uppercase;
  padding: 1.15rem 2.4rem;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  isolation: isolate;
  overflow: hidden;
  transition:
    color .7s var(--ease-cinema),
    box-shadow .9s var(--ease-cinema),
    background .9s var(--ease-cinema),
    border-color .9s var(--ease-cinema),
    letter-spacing .8s var(--ease-cinema);
}

/* Filled (primary) — aged gold with glass depth */
.btn-cta {
  color: #0A0A0A;
  background: linear-gradient(180deg,
    rgba(var(--cta-gold), 1.00) 0%,
    rgba(var(--cta-gold), 0.92) 100%);
  border: 1px solid rgba(var(--cta-gold), 0.85);
  box-shadow:
    inset 0 1px 0 rgba(255,235,180,0.18),
    inset 0 -1px 0 rgba(0,0,0,0.25),
    0 1px 0 rgba(0,0,0,0.4),
    0 14px 40px -22px rgba(var(--cta-gold), 0.35);
}
.btn-cta::before {
  /* faint inner ambient pulse */
  content: '';
  position: absolute; inset: 0; z-index: -1;
  background: radial-gradient(120% 80% at 50% 110%,
    rgba(255,232,170,0.18) 0%,
    rgba(255,232,170,0) 60%);
  opacity: .55;
  transition: opacity 1s var(--ease-cinema);
}
.btn-cta::after {
  /* slow edge illumination sweep */
  content: '';
  position: absolute; inset: -1px; z-index: -1;
  border-radius: inherit;
  background:
    conic-gradient(from 200deg,
      rgba(var(--cta-gold), 0) 0%,
      rgba(var(--cta-gold), 0.55) 18%,
      rgba(255,232,170,0.85) 25%,
      rgba(var(--cta-gold), 0.55) 32%,
      rgba(var(--cta-gold), 0) 50%,
      rgba(var(--cta-gold), 0) 100%);
  opacity: 0;
  transition: opacity 1.1s var(--ease-cinema);
  pointer-events: none;
  filter: blur(.6px);
}
.btn-cta:hover {
  letter-spacing: .28em;
  box-shadow:
    inset 0 1px 0 rgba(255,235,180,0.28),
    inset 0 -1px 0 rgba(0,0,0,0.20),
    0 1px 0 rgba(0,0,0,0.4),
    0 22px 60px -22px rgba(var(--cta-gold), 0.55),
    0 0 0 1px rgba(var(--cta-gold), 0.35);
}
.btn-cta:hover::before { opacity: 1; }
.btn-cta:hover::after  { opacity: .55; }

/* Trailing hairline (optional via .btn-cta--line) */
.btn-cta--line .cta-rule,
.btn-cta--line::after {}
.btn-cta--line {
  padding-right: 3.4rem;
}
.btn-cta--line > .cta-rule,
.btn-cta--line .cta-rule {
  content: '';
  display: inline-block;
  width: 18px; height: 1px;
  background: currentColor;
  margin-left: 1.3rem;
  transition: width .9s var(--ease-cinema), margin .9s var(--ease-cinema);
  flex-shrink: 0;
}
.btn-cta--line:hover .cta-rule { width: 30px; }

/* Ghost (secondary) — bare gold hairline with slow fill */
.btn-cta-ghost {
  color: rgba(245,242,235,0.92);
  background: rgba(245,242,235,0.012);
  border: 1px solid rgba(var(--cta-gold), 0.40);
  backdrop-filter: blur(8px) saturate(110%);
  -webkit-backdrop-filter: blur(8px) saturate(110%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.04),
    0 14px 36px -24px rgba(0,0,0,0.6);
}
.btn-cta-ghost::before {
  content: '';
  position: absolute; inset: 0; z-index: -1;
  background: radial-gradient(120% 100% at 50% 110%,
    rgba(var(--cta-gold), 0.10) 0%,
    rgba(var(--cta-gold), 0) 65%);
  opacity: 0;
  transition: opacity 1s var(--ease-cinema);
}
.btn-cta-ghost:hover {
  border-color: rgba(var(--cta-gold), 0.75);
  letter-spacing: .28em;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.06),
    0 14px 36px -22px rgba(0,0,0,0.6),
    0 0 0 1px rgba(var(--cta-gold), 0.18);
}
.btn-cta-ghost:hover::before { opacity: 1; }
.btn-cta-ghost:hover .cta-rule { width: 30px; }

/* Slow & restrained hover globally for nav + cards.
   These overrides land on top of theme.css's body * floor. */
a, button, .btn, .btn-solid, .trust-card, .sol-card, .serve-card {
  transition:
    color .65s var(--ease-cinema),
    background-color .65s var(--ease-cinema),
    border-color .65s var(--ease-cinema),
    box-shadow .85s var(--ease-cinema),
    transform .85s var(--ease-cinema) !important;
}

/* ─────────────────────────────────────────────────────────
   EXISTING BUTTON UPGRADE
   Layer the premium CTA finish on top of the legacy
   .btn / .btn-solid / .btn-form classes used across pages,
   without breaking their layout. Adds glass depth, slow
   gold edge sweep, faint inner pulse.
   ───────────────────────────────────────────────────────── */
/* ─────────────────────────────────────────────────────────
   V14 BUTTON SYSTEM — institutional, restrained.
   Primary: graphite fill, muted gold hairline border, ivory text.
   Secondary: ghost outlined with ivory hairline.
   No gold gradient fills. No aggressive letter-spacing on hover.
   ───────────────────────────────────────────────────────── */
.btn,
.btn-solid,
.btn-form {
  position: relative;
  isolation: isolate;
  letter-spacing: .01em !important;
}

/* PRIMARY — graphite fill + muted gold hairline */
.btn-solid,
.btn-form {
  background: #1a1e28 !important;
  border: 1px solid rgba(182,152,70, 0.22) !important;
  color: rgba(245,243,239, 0.94) !important;
  border-radius: 4px !important;
  padding: 1.05rem 1.9rem !important;
  box-shadow: none !important;
}
.btn-solid:hover,
.btn-form:hover {
  background: #20242f !important;
  border-color: rgba(182,152,70, 0.4) !important;
  color: var(--white, #f5f3ef) !important;
  letter-spacing: .01em !important;
  box-shadow:
    0 0 28px rgba(182,152,70, 0.08),
    0 0 0 1px rgba(182,152,70, 0.12) inset !important;
}

/* SECONDARY (ghost) — transparent + ivory hairline, editorial */
.btn:not(.btn-solid):not(.btn-form) {
  background: transparent !important;
  border: 1px solid rgba(245,243,239, 0.16) !important;
  color: rgba(245,243,239, 0.82) !important;
  border-radius: 4px !important;
  padding: 1.05rem 1.9rem !important;
  box-shadow: none !important;
}
.btn:not(.btn-solid):not(.btn-form):hover {
  background: rgba(245,243,239, 0.04) !important;
  border-color: rgba(245,243,239, 0.4) !important;
  color: var(--white, #f5f3ef) !important;
  letter-spacing: .01em !important;
  box-shadow: none !important;
}

/* Header CTA keeps slimmer geometry — overrides V14 padding */
.header-cta .btn,
.h-cta .btn {
  padding: .72rem clamp(18px, 1.4vw, 28px) !important;
  border-radius: 3px !important;
}

/* ─────────────────────────────────────────────────────────
   CINEMATIC BREATHING ROOM
   Bumps section padding across the site without overriding
   page-specific horizontal padding. Slows the pacing of
   the entire scroll experience.
   ───────────────────────────────────────────────────────── */
section {
  padding-top: clamp(110px, 11vw, 180px) !important;
  padding-bottom: clamp(110px, 11vw, 180px) !important;
}
/* Hero keeps its own — needs full-bleed top padding for the nav */
#hero {
  padding-top: clamp(120px, 12vw, 160px) !important;
  padding-bottom: clamp(80px, 9vw, 120px) !important;
}
@media (max-width: 600px) {
  section { padding-top: 80px !important; padding-bottom: 80px !important; }
}

/* ── Reduced motion ───────────────────────────────────────*/
@media (prefers-reduced-motion: reduce) {
  .reveal,
  .reveal.visible,
  .reveal.is-in,
  [data-hairline]::after,
  .hairline-draw,
  [data-parallax],
  [data-scroll-parallax] {
    transition-duration: .01ms !important;
    transform: none !important;
  }
  #wlp-cursor-glow { display: none; }
  .btn-cta::after { display: none; }
}

/* ═══════════════════════════════════════════════════════════
   CANONICAL GLOBAL HEADER (.ghx) — Header Unification pass
   ONE identical header on every main page. New .ghx-* namespace
   so no page-specific header CSS can interfere. Markup is the
   same canonical block everywhere; behavior via wlp-motion.js
   (or inline toggle on non-motion pages). start.html excluded.
   ═══════════════════════════════════════════════════════════ */
header#site-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  background: rgba(16,19,26,.92) !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
  backdrop-filter: blur(18px) saturate(115%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(115%) !important;
}
.ghx-inner {
  width: 100%; max-width: 1500px; margin: 0 auto; height: 84px;
  padding: 0 clamp(22px, 4vw, 56px);
  display: grid; grid-template-columns: auto 1fr auto;
  align-items: center; gap: clamp(16px, 2.4vw, 40px);
}
.ghx-logo { justify-self: start; line-height: 0; display: inline-block; }
.ghx-logo img { height: 52px; width: auto; display: block; }
.ghx-nav { display: flex; align-items: center; justify-content: center; gap: clamp(16px, 2vw, 38px); min-width: 0; }
.ghx-nav a {
  font-family: 'Geist','Inter',system-ui,sans-serif; font-size: clamp(11px, .78vw, 12.5px);
  font-weight: 400; letter-spacing: .13em; text-transform: uppercase;
  color: rgba(245,243,239,.78); white-space: nowrap; transition: color .25s;
}
.ghx-nav a:hover, .ghx-nav a.active { color: #c9a85a; }
.ghx-cta { justify-self: end; display: flex; align-items: center; }
.ghx-cta a {
  font-family: 'Geist','Inter',system-ui,sans-serif; font-size: .62rem; font-weight: 500;
  letter-spacing: .13em; text-transform: uppercase; color: rgba(245,243,239,.92); white-space: nowrap;
  padding: .66rem 1.2rem; border: 1px solid rgba(182,152,70,.42); border-radius: 3px;
  background: rgba(182,152,70,.02); transition: border-color .4s, background .4s, color .4s;
}
.ghx-cta a:hover { border-color: rgba(182,152,70,.85); background: rgba(182,152,70,.08); color: #f5f3ef; }
.ghx-burger { display: none; justify-self: end; width: 30px; height: 18px; position: relative; background: none; border: 0; padding: 0; cursor: pointer; }
.ghx-burger span { position: absolute; left: 0; width: 100%; height: 1.5px; background: #f5f3ef; transition: transform .3s, opacity .3s; }
.ghx-burger span:nth-child(1) { top: 0; }
.ghx-burger span:nth-child(2) { top: 8px; }
.ghx-burger span:nth-child(3) { top: 16px; }
.ghx-burger.open span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.ghx-burger.open span:nth-child(2) { opacity: 0; }
.ghx-burger.open span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
.ghx-mobile {
  position: fixed; inset: 0; z-index: 99; display: none;
  flex-direction: column; align-items: center; justify-content: center; gap: 1.9rem;
  background: rgba(12,15,20,.97); backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px); padding: 2rem;
}
.ghx-mobile.open { display: flex; }
.ghx-mobile a { font-family: 'Cormorant Garamond',Georgia,serif; font-size: 1.75rem; font-weight: 300; letter-spacing: .04em; color: #f5f3ef; transition: color .2s; }
.ghx-mobile a:hover { color: #c9a85a; }
.ghx-mobile a.ghx-mcta { margin-top: .6rem; font-family: 'Geist','Inter',system-ui,sans-serif; font-size: .72rem; letter-spacing: .18em; text-transform: uppercase; color: #c9a85a; border: 1px solid #b69846; padding: .85rem 2rem; border-radius: 3px; }
/* Tablet & below → hamburger (full nav only ≥1201px, so 1024/834/768 collapse) */
@media (max-width: 1200px) {
  .ghx-nav, .ghx-cta { display: none !important; }
  .ghx-burger { display: block; }
  .ghx-inner { grid-template-columns: 1fr auto; height: 76px; }
  .ghx-logo img { height: 47px; }
}
@media (max-width: 767px) {
  .ghx-inner { height: 64px; padding: 0 18px; }
  .ghx-logo img { height: 40px; }
}


/* ═══ CANONICAL GLOBAL FOOTER (.gf) — identical across all main pages ═══ */
.gf{background:#10131a;border-top:1px solid rgba(255,255,255,.07);padding:clamp(56px,7vw,80px) clamp(22px,5vw,72px) clamp(36px,4vw,48px);position:relative;z-index:3;}
.gf-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.07);max-width:1500px;margin:0 auto;}
.gf-brand .gf-logo{display:inline-block;line-height:0;margin-bottom:1rem;}
.gf-brand .gf-logo img{height:52px;width:auto;}
.gf-tag{font-size:.82rem;color:rgba(245,243,239,.6);line-height:1.7;max-width:240px;}
.gf-col h4{font-family:'Geist','Inter',system-ui,sans-serif;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:#b69846;margin-bottom:1.2rem;}
.gf-col a{display:block;font-size:.85rem;color:rgba(245,243,239,.6);margin-bottom:.65rem;transition:color .2s;}
.gf-col a:hover{color:#f5f3ef;}
.gf-bottom{max-width:1500px;margin:0 auto;padding-top:2rem;}
.gf-disc{font-size:.72rem;color:rgba(245,243,239,.4);line-height:1.65;max-width:760px;}
.gf-disc a{color:rgba(245,243,239,.6);border-bottom:1px solid rgba(182,152,70,.25);}
.gf-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.4rem;margin-top:1.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.06);}
.gf-copy{font-size:.72rem;color:rgba(245,243,239,.45);margin:0;}
.gf-socials{display:flex;align-items:center;gap:16px;}
.gf-socials a{display:inline-flex;align-items:center;justify-content:center;color:rgba(245,243,239,.45);transition:color .2s;padding:4px;}
.gf-socials a:hover{color:#b69846;}
.gf-socials svg{width:18px;height:18px;display:block;}
.gf-legal{display:flex;gap:1.4rem;flex-shrink:0;}
.gf-legal a{font-size:.72rem;color:rgba(245,243,239,.45);transition:color .2s;}
.gf-legal a:hover{color:#f5f3ef;}
@media (max-width:900px){.gf-top{grid-template-columns:1fr 1fr;gap:2.4rem;}}
@media (max-width:600px){.gf-top{grid-template-columns:1fr;gap:2rem;}.gf-meta{justify-content:flex-start;}}
