/* Kanit 900 italic for the CTA. Imported here so every page with the nav
   gets it without touching six page heads; browsers dedupe the request. */
@import url('https://fonts.googleapis.com/css2?family=Kanit:ital,wght@0,900;1,900&display=swap');

/* ── VIBES GLASS NAV ──────────────────────────────────────────────
   Floating translucent pill. Frosted-glass values matched to the
   reference Jules picked (deployrobotics.co):
     background rgba(255,255,255,0.15), blur(20px) saturate(1.5),
     1px hairline border, 24px radius, wide soft shadow.

   Two variants:
     .glass-nav-onvideo  white text, for sitting over video or imagery
     .glass-nav-onlight  dark text, for sitting over white pages
   Default (no modifier) is the light-page version, since most of the
   site is white.
   ---------------------------------------------------------------- */

.glass-nav {
  box-sizing: border-box;
  position: fixed; top: 22px; left: 50%; transform: translateX(-50%);
  z-index: 1100; height: 46px; width: min(780px, calc(100% - 32px));
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 8px;
  padding: 0 7px 0 20px;
  border-radius: 17px;
  backdrop-filter: blur(20px) saturate(1.5);
  -webkit-backdrop-filter: blur(20px) saturate(1.5);
  box-shadow: 0 4px 84px rgba(0, 0, 0, 0.15);
  background: rgba(255, 255, 255, 0.55);
  border: 1px solid rgba(17, 17, 17, 0.10);
}

@media (min-width:701px) {
  .glass-nav {
    height: 50px;
    width: min(820px, calc(100% - 32px));
    grid-template-columns: auto minmax(0,1fr) auto;
    padding: 5px 14px;
    gap: 16px;
  }
  .glass-nav .glass-tabs { min-width:0; justify-content:space-evenly; gap:4px; }
  .glass-nav .glass-tabs a { padding-inline:clamp(5px,1vw,12px); }
  .glass-nav .glass-cta { margin-left:0; }
}

/* The logo is the real Vibes PNG (wordmark plus sparkles), cut out of its
   white square and exported twice: black wordmark for light pages, white
   for over video. Both are 370x120 and displayed at 23.76px tall on desktop,
   20.592px on mobile. */
.glass-logo { display: inline-flex; align-items: center; justify-self: start; text-decoration: none; }
.glass-logo img { height: 23.76px; width: auto; display: block; }
.glass-logo .logo-light { display: block; }
.glass-logo .logo-dark  { display: none; }

.glass-tabs { display: flex; align-items: center; gap: 4px; }

.glass-tabs a {
  text-decoration: none; font-size: 13.5px; font-weight: 600;
  letter-spacing: 0.10em; text-transform: uppercase;
  padding: 6px 12px; border-radius: 10px; white-space: nowrap;
  transition: background 0.16s, color 0.16s;
  color: rgba(17, 17, 17, 0.6);
}
.glass-tabs a:hover, .glass-tabs a.active { color: #111; background: rgba(17, 17, 17, 0.07); }

/* Page actions share the Contact Us treatment. */
body .signature-action {
  position: relative; isolation: isolate;
  justify-self: end;
  text-decoration: none; white-space: nowrap;
  font-family: 'Kanit', system-ui, sans-serif;
  font-style: italic; font-weight: 900;
  font-size: 13px; letter-spacing: 0.06em; text-transform: uppercase;
  padding: 7px 16px; margin-left: 6px;
  border-radius: 12px;
  /* The pill fill lives in an inset shadow, not a background, because
     background-clip:text below would clip a background fill to the
     glyphs and the pill would disappear. */
  box-shadow: inset 0 0 0 200px rgba(255, 255, 255, 0.34);
  border: 1px solid rgba(17, 17, 17, 0.12);
  backdrop-filter: blur(16px) saturate(1.4);
  -webkit-backdrop-filter: blur(16px) saturate(1.4);
  transition: box-shadow 0.18s, transform 0.18s;

  --ink: #111;
  --band: 1.6px;
  --cut: 1.0px;
  background-image: repeating-linear-gradient(to bottom,
    var(--ink) 0, var(--ink) var(--band),
    transparent var(--band), transparent calc(var(--band) + var(--cut)));
  background-origin: content-box; background-clip: text;
  -webkit-background-clip: text;
  color: transparent; -webkit-text-fill-color: transparent;
}
body .signature-action::before,
body .signature-action::after {
  content: attr(data-text);
  position: absolute; inset: 0; padding: inherit; z-index: -1;
  background-image: repeating-linear-gradient(to bottom,
    var(--fringe) 0, var(--fringe) var(--band),
    transparent var(--band), transparent calc(var(--band) + var(--cut)));
  background-origin: content-box; background-clip: text;
  -webkit-background-clip: text;
  color: transparent; -webkit-text-fill-color: transparent;
  mix-blend-mode: multiply; pointer-events: none;
}
body .signature-action::before { --fringe: #ff2a2a; transform: translateX(-1px); }
body .signature-action::after  { --fringe: #00b8e6; transform: translateX(1px); }
/* Hover: the label fills with the moving spectrum. The band pattern is
   replaced by the gradient (still clipped to the glyphs), the fringes fade
   out so the colour reads clean, and the glass brightens. The gradient
   repeats its first stop at the end so the loop has no seam. */
body .signature-action:hover {
  box-shadow: inset 0 0 0 200px rgba(255, 255, 255, 0.50);
  transform: translateY(-1px);
  background-image: linear-gradient(115deg,
    #5ef2ff 0%, #4f7cff 16%, #9b5cff 33%, #ff5ca8 50%, #ff8a3d 66%, #ffd166 83%, #5ef2ff 100%);
  background-size: 300% 100%;
  background-origin: border-box;
  animation: action-cta-flow 1.8s linear infinite;
}
body .signature-action::before, body .signature-action::after { transition: opacity 0.18s; }
body .signature-action:hover::before, body .signature-action:hover::after { opacity: 0; }
@keyframes action-cta-flow {
  from { background-position: 0% 50%; }
  to   { background-position: 300% 50%; }
}

@supports not ((background-clip: text) or (-webkit-background-clip: text)) {
  body .signature-action { background-image: none; color: var(--ink); -webkit-text-fill-color: var(--ink); }
  body .signature-action::before, body .signature-action::after { display: none; }
}


body .signature-action { margin-left:0; cursor:pointer; background-color:transparent; }
#browse-count:hover, #browse-count:focus-visible {
  background-image: linear-gradient(115deg,#5ef2ff 0%,#4f7cff 16%,#9b5cff 33%,#ff5ca8 50%,#ff8a3d 66%,#ffd166 83%,#5ef2ff 100%);
  background-size:300% 100%; background-clip:text; -webkit-background-clip:text;
  -webkit-text-fill-color:transparent; text-decoration:none;
  animation:action-cta-flow 1.8s linear infinite;
}
@media (prefers-reduced-motion:reduce) {
  #browse-count:hover, #browse-count:focus-visible { animation:none; }
}
/* Page controls: solid lettering at rest, rainbow text only on hover. */
body .signature-action {
  font-family: 'Inter', sans-serif;
  font-style: normal; font-weight: 600;
  font-size: 13.5px; letter-spacing: 0.10em;
  border: 1px solid #111; border-radius: 10px;
  box-shadow: none; background-color: transparent;
  backdrop-filter: none; -webkit-backdrop-filter: none;
}
body .signature-action:hover {
  box-shadow: none; background-color: transparent; transform: none;
  background-clip: text; -webkit-background-clip: text;
  color: transparent; -webkit-text-fill-color: transparent;
}
body .signature-action:not(:hover) {
  background-image:none; color:#111; -webkit-text-fill-color:#111;
}
body .signature-action::before,
body .signature-action::after { display:none; }
body .signature-select { display:inline-block; }
body .signature-select #filter-location {
  position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0;
  cursor:pointer; z-index:2;
}
body .signature-select:focus-within { outline:2px solid #4f7cff; outline-offset:3px; }
body .signature-action strong { font:inherit; }
body select.signature-action { appearance:auto; -webkit-appearance:auto; }
body select.signature-action option { color:#111; -webkit-text-fill-color:#111; background:#fff; }
@media (prefers-reduced-motion:reduce) { body .signature-action:hover { animation:none; } }

/* ── CTA ─────────────────────────────────────────────────────────────
   Translucent glass pill with the hero's gradient-italic treatment on
   the label: Kanit 900 italic, horizontal bands clipped to the glyphs,
   and a red copy shifted left plus a cyan copy shifted right underneath
   (screen-blended), giving the CRT misconvergence fringe. The copies
   come from data-text on the anchor; a page that omits it simply gets
   the banded core with no fringe.
   Bands here are a plain repeat rather than the hero's ramp, because at
   13px there is only room for three or four of them. */
.glass-cta {
  position: relative; isolation: isolate;
  justify-self: end;
  text-decoration: none; white-space: nowrap;
  font-family: 'Kanit', system-ui, sans-serif;
  font-style: italic; font-weight: 900;
  font-size: 13px; letter-spacing: 0.06em; text-transform: uppercase;
  padding: 7px 16px; margin-left: 6px;
  border-radius: 12px;
  /* The pill fill lives in an inset shadow, not a background, because
     background-clip:text below would clip a background fill to the
     glyphs and the pill would disappear. */
  box-shadow: inset 0 0 0 200px rgba(255, 255, 255, 0.34);
  border: 1px solid rgba(17, 17, 17, 0.12);
  backdrop-filter: blur(16px) saturate(1.4);
  -webkit-backdrop-filter: blur(16px) saturate(1.4);
  transition: box-shadow 0.18s, transform 0.18s;

  --ink: #111;
  --band: 1.6px;
  --cut: 1.0px;
  background-image: repeating-linear-gradient(to bottom,
    var(--ink) 0, var(--ink) var(--band),
    transparent var(--band), transparent calc(var(--band) + var(--cut)));
  background-origin: content-box; background-clip: text;
  -webkit-background-clip: text;
  color: transparent; -webkit-text-fill-color: transparent;
}
.glass-cta::before,
.glass-cta::after {
  content: attr(data-text);
  position: absolute; inset: 0; padding: inherit; z-index: -1;
  background-image: repeating-linear-gradient(to bottom,
    var(--fringe) 0, var(--fringe) var(--band),
    transparent var(--band), transparent calc(var(--band) + var(--cut)));
  background-origin: content-box; background-clip: text;
  -webkit-background-clip: text;
  color: transparent; -webkit-text-fill-color: transparent;
  mix-blend-mode: multiply; pointer-events: none;
}
.glass-cta::before { --fringe: #ff2a2a; transform: translateX(-1px); }
.glass-cta::after  { --fringe: #00b8e6; transform: translateX(1px); }
/* Hover: the label fills with the moving spectrum. The band pattern is
   replaced by the gradient (still clipped to the glyphs), the fringes fade
   out so the colour reads clean, and the glass brightens. The gradient
   repeats its first stop at the end so the loop has no seam. */
.glass-cta:hover {
  box-shadow: inset 0 0 0 200px rgba(255, 255, 255, 0.50);
  transform: translateY(-1px);
  background-image: linear-gradient(115deg,
    #5ef2ff 0%, #4f7cff 16%, #9b5cff 33%, #ff5ca8 50%, #ff8a3d 66%, #ffd166 83%, #5ef2ff 100%);
  background-size: 300% 100%;
  background-origin: border-box;
  animation: cta-flow 1.8s linear infinite;
}
.glass-cta::before, .glass-cta::after { transition: opacity 0.18s; }
.glass-cta:hover::before, .glass-cta:hover::after { opacity: 0; }
@keyframes cta-flow {
  from { background-position: 0% 50%; }
  to   { background-position: 300% 50%; }
}

@supports not ((background-clip: text) or (-webkit-background-clip: text)) {
  .glass-cta { background-image: none; color: var(--ink); -webkit-text-fill-color: var(--ink); }
  .glass-cta::before, .glass-cta::after { display: none; }
}

.glass-burger {
  display: none; background: none; border: 0; cursor: pointer;
  padding: 12px; flex-direction: column; gap: 4px; border-radius: 14px;
}
.glass-burger span { display: block; width: 18px; height: 2px; border-radius: 2px; background: #111; }

/* mobile dropdown, hangs off the bottom of the pill */
.glass-drop {
  display: none; position: absolute; top: calc(100% + 8px); right: 0;
  min-width: 190px; padding: 6px; border-radius: 20px;
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(20px) saturate(1.5);
  -webkit-backdrop-filter: blur(20px) saturate(1.5);
  border: 1px solid rgba(17, 17, 17, 0.10);
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.18);
}
.glass-nav.open .glass-drop { display: block; }
.glass-drop a {
  display: block; padding: 12px 16px; border-radius: 14px;
  font-size: 11px; font-weight: 600; letter-spacing: 0.12em;
  text-transform: uppercase; text-decoration: none; color: #111;
}
.glass-drop a:hover { background: rgba(17, 17, 17, 0.06); }

/* ── LANGUAGE SWITCH (injected by lang.js) ──
   Small glass pill fixed to the bottom-right corner, on every page. */
.glass-lang {
  position: fixed; right: 16px; bottom: 16px; z-index: 1100;
  display: inline-flex; align-items: center; gap: 0;
  background: rgba(255, 255, 255, 0.55); border: 1px solid rgba(17, 17, 17, 0.12); border-radius: 11px;
  backdrop-filter: blur(16px) saturate(1.4); -webkit-backdrop-filter: blur(16px) saturate(1.4);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.14);
  padding: 3px; cursor: pointer; font-family: 'Inter', sans-serif;
}
.glass-lang span {
  font-size: 10px; font-weight: 700; letter-spacing: 0.08em; line-height: 1;
  padding: 7px 9px; border-radius: 8px; color: rgba(17, 17, 17, 0.55);
}
.glass-lang span.on { background: #111; color: #fff; }
/* In the footer row: inline, same size as the footer text. */
.glass-lang.in-footer { position: static; margin-left: 14px; padding: 2px; border-radius: 8px; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; background: none; }
.glass-lang.in-footer span { padding: 4px 7px; font-size: 9px; border-radius: 6px; }
/* Desktop: top-right corner of the screen, level with the nav pill. Phones keep it in the footer row. */
@media (min-width: 701px) {
  .glass-lang.in-footer {
    position: fixed; top: 30px; right: 26px; bottom: auto; margin: 0; padding: 3px; border-radius: 11px; z-index: 1100;
    background: rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(16px) saturate(1.4); -webkit-backdrop-filter: blur(16px) saturate(1.4);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.14);
  }
  .glass-lang.in-footer span { padding: 7px 9px; font-size: 10px; border-radius: 8px; }
  .glass-lang.in-footer.on-video { background: rgba(255, 255, 255, 0.15); }
}
.glass-lang.on-video { background: rgba(255, 255, 255, 0.15); border-color: rgba(255, 255, 255, 0.3); }
.glass-lang.on-video span { color: rgba(255, 255, 255, 0.72); }
.glass-lang.on-video span.on { background: #fff; color: #111; }

/* ── OVER-VIDEO VARIANT ── */
.glass-nav-onvideo {
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(214, 214, 214, 0.3);
}
.glass-nav-onvideo .glass-logo .logo-light { display: none; }
.glass-nav-onvideo .glass-logo .logo-dark  { display: block; }
.glass-nav-onvideo .glass-tabs a { color: rgba(255, 255, 255, 0.78); }
.glass-nav-onvideo .glass-tabs a:hover,
.glass-nav-onvideo .glass-tabs a.active { color: #fff; background: rgba(255, 255, 255, 0.16); }
/* Over video the label core is white and the fringes screen-blend, so
   red plus cyan overlap back to white where they meet. */
.glass-nav-onvideo .glass-cta {
  --ink: #fff;
  box-shadow: inset 0 0 0 200px rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.28);
}
.glass-nav-onvideo .glass-cta::before,
.glass-nav-onvideo .glass-cta::after { mix-blend-mode: screen; }
.glass-nav-onvideo .glass-cta::after { --fringe: #00d4ff; }
.glass-nav-onvideo .glass-cta:hover { box-shadow: inset 0 0 0 200px rgba(255, 255, 255, 0.22); }
.glass-nav-onvideo .glass-burger span { background: #fff; }
.glass-nav-onvideo .glass-drop {
  background: rgba(20, 20, 20, 0.55);
  border-color: rgba(255, 255, 255, 0.18);
}
.glass-nav-onvideo .glass-drop a { color: #fff; }
.glass-nav-onvideo .glass-drop a:hover { background: rgba(255, 255, 255, 0.14); }

/* Safari on older iOS has no backdrop-filter. Fall back to a solid
   panel so the nav never turns into unreadable transparent text. */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .glass-nav { background: rgba(255, 255, 255, 0.94); }
  .glass-nav-onvideo { background: rgba(20, 20, 20, 0.78); }
  .glass-drop { background: rgba(255, 255, 255, 0.97); }
  .glass-nav-onvideo .glass-drop { background: rgba(20, 20, 20, 0.92); }
}

@media (max-width: 900px) {
  .glass-nav { width: auto; max-width: calc(100% - 32px); display: flex; }
  .glass-tabs { display: none; }
  .glass-burger { display: flex; }
}

/* Shared content-copy size, independent of headings and UI labels. */
:root { --vibes-content-size:14.75px; }
body .creators-page > div > p,
body .models-intro,
body .campaigns-page > div > p,
body .vibecheck-sub,
body .hero > p {
  font-family:'Inter',sans-serif !important;
  font-size:var(--vibes-content-size) !important;
  font-weight:400 !important;
  font-style:normal !important;
  line-height:1.7 !important;
  letter-spacing:normal !important;
  color:#555 !important;
}
body .hero p,
body .cover-sub,
body .creators-page > div > p,
body .models-intro,
body .models-page > div > p,
body .campaign-desc,
body .brand-description,
body .angle-hook,
body .angle-why,
body .archetype-desc,
body .vibecheck-sub,
body .card-desc,
body .modal-desc,
body .job-description,
body .vc-fix-body,
body .editorial-article-body p:not(.editorial-subhead) {
  font-size:var(--vibes-content-size) !important;
}

@media (max-width: 700px) {
  body .creators-page > div > h1,
  body .models-page > div > h2,
  body .campaigns-page > div > h2 { font-size:30px !important; }
  body .hero .vibecheck-page-title { font-size:38px; }
  /* Phones: one pill holding logo | tabs | Contact us (pill drawn by ::before). */
  .glass-nav {
    top: 30px; width: calc(100% - 20px); max-width: none; height: 34.992px;
    display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-rows: 34.992px;
    align-items: center; column-gap: 0; padding: 0 6px;
    background: none; border: 0; box-shadow: none;
    backdrop-filter: none; -webkit-backdrop-filter: none;
  }
  .glass-nav::before {
    content: ''; position: absolute; left: 0; right: 0; top: 0; bottom: 0; z-index: -1;
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.55);
    border: 1px solid rgba(17, 17, 17, 0.10);
    backdrop-filter: blur(20px) saturate(1.5);
    -webkit-backdrop-filter: blur(20px) saturate(1.5);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.15);
  }
  .glass-nav-onvideo::before {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(214, 214, 214, 0.3);
  }
  .glass-logo { grid-column: 1; grid-row: 1; margin: 0; padding: 0; }
  .glass-logo img { height: 16px; }
  .glass-cta {
    grid-column: 3; grid-row: 1; justify-self: end;
    margin: 0; padding: 2px 0; font-size: 11px; letter-spacing: 0;
    box-shadow: none; border: 0;
    backdrop-filter: none; -webkit-backdrop-filter: none;
  }
  .glass-nav-onvideo .glass-cta, .glass-cta:hover, .glass-nav-onvideo .glass-cta:hover { box-shadow: none; }
  .glass-tabs {
    grid-column: 2; grid-row: 1; display: flex; min-width: 0;
    justify-content: space-evenly; gap: 0; padding: 0 3px;
    overflow-x: hidden; scrollbar-width: none;
  }
  .glass-tabs::-webkit-scrollbar { display: none; }
  .glass-tabs a {
    font-size: clamp(7.5px, 2.2vw, 11px); letter-spacing: -0.02em; flex-shrink:0;
    padding: 5px 1px; border-radius: 6px;
  }
  .glass-lang { right: 12px; bottom: 12px; }
  body .glass-nav .glass-cta { font-size:clamp(9px, 2.5vw, 11px); }
  .glass-lang.in-footer { margin-left: 10px; }
  #vibes-lang-toggle.glass-lang {
    position:fixed; top:73px; right:10px; bottom:auto;
    margin:0; padding:3px; border-radius:11px;
    background:rgba(255,255,255,.92); color:#111;
    box-shadow:0 3px 14px rgba(0,0,0,.15);
    z-index:1101;
  }
  #vibes-lang-toggle.glass-lang span {color:#555;padding:6px 8px;font-size:10px;}
  #vibes-lang-toggle.glass-lang span.on {background:#111;color:#fff;}
  .glass-burger, .glass-drop { display: none !important; }
}
@media (max-width:600px) {
  body .hero .vibecheck-page-title { font-size:42px; }
}
@media(max-width:700px) {
  body .glass-nav { left:8px; transform:none; width:calc(100% - 16px); padding:0 8px; grid-template-columns:auto minmax(0,1fr) auto auto; column-gap:2px; }
  body .glass-nav .glass-logo img { height:19.5px; }
  body .glass-nav .glass-tabs { padding:0; gap:clamp(0px,calc((100vw - 320px) * .055),3px); justify-content:center; }
  body .glass-nav .glass-tabs a { font-size:clamp(7px,2vw,10px); padding:5px 1px; letter-spacing:-.02em; }
  body .glass-nav .glass-cta { font-family:'Inter',sans-serif; font-style:normal; font-weight:600; font-size:clamp(7px,2vw,10px); letter-spacing:-.02em; }
  body .glass-nav .glass-cta:not(:hover) { background-image:none; color:var(--ink); -webkit-text-fill-color:currentColor; }
  body .glass-nav .glass-cta::before,body .glass-nav .glass-cta::after {display:none;}
  #vibes-lang-toggle.glass-lang { top:33px; right:8px; padding:2px; }
  #vibes-lang-toggle.glass-lang span { font-size:9px; padding:7px 5px; }
  .glass-nav #vibes-lang-toggle.glass-lang.mobile-in-nav { position:static; grid-column:4; grid-row:1; margin:0; padding:2px; box-shadow:none; }
  .glass-nav #vibes-lang-toggle.glass-lang.mobile-in-nav span {padding:5px 4px;font-size:8px;}
}
@media(max-width:700px) {
  body .glass-nav {grid-template-columns:auto repeat(5,auto) auto;justify-content:space-between;column-gap:0;padding-inline:12px;}
  body .glass-nav .glass-tabs {display:contents;}
  body .glass-nav .glass-tabs a,body .glass-nav .glass-cta {padding:5px 1px;margin:0;grid-row:1;}
  body .glass-nav .glass-tabs a:nth-child(1) {grid-column:2;}
  body .glass-nav .glass-tabs a:nth-child(2) {grid-column:3;}
  body .glass-nav .glass-tabs a:nth-child(3) {grid-column:4;}
  body .glass-nav .glass-tabs a:nth-child(4) {grid-column:5;}
  body .glass-nav .glass-cta {grid-column:6;}
  .glass-nav #vibes-lang-toggle.glass-lang.mobile-in-nav {grid-column:7;transform:translateX(4px);}
}

/* Sphere lighting stays inside the same circular silhouette as the flag. */
body .country-flag-round, body .campaign-flag {border-radius:50%;overflow:hidden;box-shadow:0 1px 2px #0002!important;}
body .country-flag-round::before, body .campaign-flag::before {
  inset:0!important;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 36% 30%,transparent 38%,rgba(0,0,0,.12) 72%,rgba(0,0,0,.32) 100%)!important;
  box-shadow:inset 0 0 1px rgba(0,0,0,.28)!important;
}
body .country-flag-round::after, body .campaign-flag::after {
  inset:0!important;border-radius:50%;pointer-events:none;
  background:radial-gradient(ellipse at 32% 24%,rgba(255,255,255,.48) 0%,rgba(255,255,255,.18) 19%,transparent 46%)!important;
}
