/*
Theme Name: Wright Medical Recruitment — Premium
Theme URI: https://wrightmrecruit.site
Author: Wright Medical Recruitment Services LLC
Description: Premium, Elementor-editable WordPress theme for Wright Medical Recruitment Services LLC — an international consultant physician recruitment platform with a dynamic job board, physician application system, and partnership showcase.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: wmrs
*/

/* ==========================================================================
   DESIGN TOKENS — white-dominant, navy/blue accent (per brand logo)
   ========================================================================== */
:root{
  --wmrs-navy:        #0A2E5C;
  --wmrs-navy-deep:   #071F40;
  --wmrs-blue:         #1450C4;
  --wmrs-blue-bright:  #2563EB;
  --wmrs-teal:         #17A9C9;
  --wmrs-sky:          #5FD3DA;
  --wmrs-paper:        #FFFFFF;
  --wmrs-mist:         #F6F8FB;
  --wmrs-mist-deep:    #EEF2F8;
  --wmrs-line:         #E3E8F0;
  --wmrs-ink:          #101826;
  --wmrs-ink-soft:     #57647A;
  --wmrs-ink-faint:    #8B96A8;
  --wmrs-gold:         #C9A15A; /* rare, executive-search accent only */

  --wmrs-gradient: linear-gradient(115deg, var(--wmrs-navy) 0%, var(--wmrs-blue) 55%, var(--wmrs-teal) 100%);
  --wmrs-gradient-mist: linear-gradient(180deg, #FFFFFF 0%, #F6F8FB 100%);
  --wmrs-gradient-line: linear-gradient(90deg, var(--wmrs-navy), var(--wmrs-teal));

  --wmrs-font-display: 'Sora', 'Segoe UI', sans-serif;
  --wmrs-font-body: 'Inter', 'Segoe UI', sans-serif;
  --wmrs-font-mono: 'IBM Plex Mono', monospace;

  --wmrs-radius-lg: 20px;
  --wmrs-radius: 14px;
  --wmrs-radius-sm: 8px;
  --wmrs-shadow-lg: 0 32px 64px -24px rgba(10,46,92,0.20);
  --wmrs-shadow: 0 20px 48px -20px rgba(10,46,92,0.16);
  --wmrs-shadow-sm: 0 8px 24px -12px rgba(10,46,92,0.14);
  --wmrs-container: 1240px;
  --wmrs-ease: cubic-bezier(.22,.61,.36,1);
}

/* ==========================================================================
   RESET / BASE
   ========================================================================== */
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; font-family:var(--wmrs-font-body); color:var(--wmrs-ink);
  background:var(--wmrs-paper); font-size:16px; line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; height:auto; display:block; }
a{ color:var(--wmrs-blue); text-decoration:none; transition:color .2s var(--wmrs-ease); }
a:hover{ color:var(--wmrs-teal); }
h1,h2,h3,h4,h5{ font-family:var(--wmrs-font-display); color:var(--wmrs-navy); line-height:1.14; margin:0 0 .5em; font-weight:600; letter-spacing:-.01em; }
h1{ font-size:clamp(2.3rem,4.6vw,3.6rem); font-weight:700; letter-spacing:-.025em; }
h2{ font-size:clamp(1.8rem,3.1vw,2.5rem); }
h3{ font-size:1.28rem; }
p{ margin:0 0 1em; color:var(--wmrs-ink-soft); }
ul{ padding-left:1.2em; }
:focus-visible{ outline:3px solid var(--wmrs-teal); outline-offset:3px; border-radius:4px; }
.wmrs-container{ max-width:var(--wmrs-container); margin:0 auto; padding:0 24px; }
.wmrs-eyebrow{
  font-family:var(--wmrs-font-mono); text-transform:uppercase; letter-spacing:.14em; font-size:.74rem;
  color:var(--wmrs-teal); display:inline-flex; align-items:center; gap:.6em; font-weight:600; margin-bottom:1em;
}
.wmrs-eyebrow::before{ content:''; width:24px; height:2px; background:var(--wmrs-gradient); display:inline-block; }
.wmrs-section{ padding:110px 0; }
.wmrs-section--tight{ padding:70px 0; }
.wmrs-section--mist{ background:var(--wmrs-mist); }
.wmrs-section--dark{ background:var(--wmrs-navy-deep); color:#fff; position:relative; overflow:hidden; }
.wmrs-section--dark h2, .wmrs-section--dark h3{ color:#fff; }
.wmrs-section--dark p{ color:rgba(255,255,255,.72); }
.wmrs-head{ max-width:700px; margin:0 0 3.2rem; }
.wmrs-head--center{ margin:0 auto 3.8rem; text-align:center; }
@media (max-width:782px){ .wmrs-section{ padding:70px 0; } }

/* Prefers reduced motion — kill all animation/transition globally */
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important; }
}

/* ==========================================================================
   SCROLL-REVEAL SYSTEM (JS toggles .is-visible)
   ========================================================================== */
.wmrs-reveal{ opacity:0; transform:translateY(26px); transition:opacity .7s var(--wmrs-ease), transform .7s var(--wmrs-ease); }
.wmrs-reveal.is-visible{ opacity:1; transform:none; }
.wmrs-reveal--fade{ transform:none; }
.wmrs-stagger > *{ opacity:0; transform:translateY(24px); transition:opacity .6s var(--wmrs-ease), transform .6s var(--wmrs-ease); }
.wmrs-stagger.is-visible > *{ opacity:1; transform:none; }
.wmrs-stagger.is-visible > *:nth-child(1){ transition-delay:.05s; }
.wmrs-stagger.is-visible > *:nth-child(2){ transition-delay:.13s; }
.wmrs-stagger.is-visible > *:nth-child(3){ transition-delay:.21s; }
.wmrs-stagger.is-visible > *:nth-child(4){ transition-delay:.29s; }
.wmrs-stagger.is-visible > *:nth-child(5){ transition-delay:.37s; }
.wmrs-stagger.is-visible > *:nth-child(6){ transition-delay:.45s; }

/* ==========================================================================
   BUTTONS
   ========================================================================== */
.wmrs-btn{
  display:inline-flex; align-items:center; gap:.6em; font-family:var(--wmrs-font-display); font-weight:600;
  font-size:.95rem; padding:1em 1.9em; border-radius:999px; border:1.5px solid transparent; cursor:pointer;
  transition:transform .25s var(--wmrs-ease), box-shadow .25s var(--wmrs-ease), background .2s ease, color .2s ease, border-color .2s ease;
}
.wmrs-btn--primary{ background:var(--wmrs-gradient); color:#fff; box-shadow:var(--wmrs-shadow-sm); }
.wmrs-btn--primary:hover{ transform:translateY(-3px); box-shadow:var(--wmrs-shadow); color:#fff; }
.wmrs-btn--ghost{ background:transparent; border-color:rgba(255,255,255,.35); color:#fff; }
.wmrs-btn--ghost:hover{ border-color:#fff; background:rgba(255,255,255,.08); color:#fff; }
.wmrs-btn--outline{ background:transparent; border-color:var(--wmrs-line); color:var(--wmrs-navy); }
.wmrs-btn--outline:hover{ border-color:var(--wmrs-navy); background:var(--wmrs-navy); color:#fff; }
.wmrs-btn--white{ background:#fff; color:var(--wmrs-navy); }
.wmrs-btn--white:hover{ transform:translateY(-3px); box-shadow:0 20px 40px -16px rgba(0,0,0,.3); }
.wmrs-btn--sm{ padding:.65em 1.3em; font-size:.85rem; }
.wmrs-btn[disabled]{ opacity:.6; cursor:not-allowed; transform:none !important; }

/* ==========================================================================
   HEADER — sticky, shrinks on scroll
   ========================================================================== */
.wmrs-topbar{ background:var(--wmrs-navy-deep); color:rgba(255,255,255,.85); font-family:var(--wmrs-font-mono); font-size:.76rem; }
.wmrs-topbar .wmrs-container{ display:flex; justify-content:space-between; align-items:center; padding:7px 24px; gap:16px; flex-wrap:wrap; }
.wmrs-topbar a{ color:rgba(255,255,255,.85); } .wmrs-topbar a:hover{ color:var(--wmrs-sky); }
.wmrs-topbar__item{ display:inline-flex; align-items:center; gap:.5em; margin-right:1.4em; }
.wmrs-topbar__socials a{ margin-left:.7em; }

.wmrs-header{
  position:sticky; top:0; z-index:999; background:rgba(255,255,255,.92); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--wmrs-line); transition:box-shadow .3s ease, padding .3s ease;
}
.wmrs-header.is-scrolled{ box-shadow:0 10px 30px -20px rgba(10,46,92,.25); }
.wmrs-header .wmrs-container{ display:flex; align-items:center; justify-content:space-between; padding:16px 24px; transition:padding .3s ease; }
.wmrs-header.is-scrolled .wmrs-container{ padding:10px 24px; }
.wmrs-logo{ display:flex; align-items:center; gap:.7em; }
.wmrs-logo img{ height:82px; width:auto; max-width:min(360px,42vw); object-fit:contain; transition:height .3s ease; }
.wmrs-header.is-scrolled .wmrs-logo img{ height:62px; }
.wmrs-nav ul{ display:flex; align-items:center; gap:2rem; list-style:none; margin:0; padding:0; }
.wmrs-nav a{ font-family:var(--wmrs-font-display); font-weight:600; font-size:.95rem; color:var(--wmrs-navy); position:relative; padding:.3em 0; }
.wmrs-nav a::after{ content:''; position:absolute; left:0; right:100%; bottom:0; height:2px; background:var(--wmrs-gradient); transition:right .25s var(--wmrs-ease); }
.wmrs-nav a:hover::after, .wmrs-nav .current-menu-item a::after{ right:0; }
.wmrs-nav .current-menu-item a{ color:var(--wmrs-blue); }
.wmrs-header__cta{ display:flex; align-items:center; gap:1rem; }
.wmrs-menu-toggle{ display:none; background:none; border:none; cursor:pointer; width:42px; height:42px; align-items:center; justify-content:center; }
.wmrs-menu-toggle span, .wmrs-menu-toggle span::before, .wmrs-menu-toggle span::after{ content:''; display:block; width:22px; height:2px; background:var(--wmrs-navy); position:relative; transition:.2s; }
.wmrs-menu-toggle span::before{ position:absolute; top:-7px; } .wmrs-menu-toggle span::after{ position:absolute; top:7px; }
@media (max-width:1080px){
  .wmrs-nav{ position:absolute; top:100%; right:0; width:min(360px,100vw); max-height:calc(100vh - 88px); background:#fff; flex-direction:column; align-items:flex-start; padding:28px; transform:translateY(-12px); opacity:0; visibility:hidden; pointer-events:none; transition:transform .25s var(--wmrs-ease),opacity .2s ease,visibility .2s ease; box-shadow:0 24px 40px -20px rgba(0,0,0,.25); overflow-y:auto; border:1px solid var(--wmrs-line); border-top:0; }
  .wmrs-header{ position:sticky; }
  .wmrs-nav.is-open{ transform:none; opacity:1; visibility:visible; pointer-events:auto; }
  .wmrs-nav ul{ flex-direction:column; align-items:flex-start; gap:1.5rem; width:100%; }
  .wmrs-menu-toggle{ display:flex; }
  .wmrs-header__cta .wmrs-btn span.wmrs-btn-label{ display:none; }
}

/* ==========================================================================
   HERO — cinematic, image-slot ready
   ========================================================================== */
.wmrs-hero{ position:relative; overflow:hidden; background:var(--wmrs-navy-deep); color:#fff; padding:140px 0 110px; }
.wmrs-hero__bg{ position:absolute; inset:0; background:linear-gradient(115deg, rgba(7,31,64,.94) 10%, rgba(10,46,92,.86) 55%, rgba(23,169,201,.55) 100%), var(--wmrs-hero-image, linear-gradient(135deg,#0A2E5C,#071F40)); background-size:cover; background-position:center; }
.wmrs-hero__bg::after{ content:''; position:absolute; inset:0; background:radial-gradient(60% 60% at 80% 10%, rgba(23,169,201,.25), transparent 70%); }
.wmrs-hero__inner{ position:relative; z-index:2; max-width:700px; }
.wmrs-hero h1{ color:#fff; }
.wmrs-hero p.wmrs-lead{ font-size:1.18rem; color:rgba(255,255,255,.8); max-width:580px; }
.wmrs-hero__cta{ display:flex; gap:1rem; margin-top:2.2rem; flex-wrap:wrap; }
.wmrs-hero__stats{ position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(255,255,255,.14); margin-top:80px; border-radius:var(--wmrs-radius); overflow:hidden; }
.wmrs-hero__stat{ background:rgba(6,26,53,.6); padding:26px 20px; text-align:center; }
.wmrs-hero__stat b{ display:block; font-family:var(--wmrs-font-mono); font-size:2.1rem; color:var(--wmrs-sky); font-weight:600; }
.wmrs-hero__stat b .wmrs-counter-suffix{ font-size:1.4rem; }
.wmrs-hero__stat span{ font-size:.82rem; color:rgba(255,255,255,.65); }
@media (max-width:860px){ .wmrs-hero__stats{ grid-template-columns:repeat(2,1fr); } }

/* ==========================================================================
   3D HERO SCENE — floating layered cards (CSS 3D transforms, no external lib)
   ========================================================================== */
.wmrs-hero__grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:40px; align-items:center; position:relative; z-index:2; }
@media (max-width:1080px){ .wmrs-hero__grid{ grid-template-columns:1fr; } }
.wmrs-3d-scene{ position:relative; height:380px; perspective:1400px; display:flex; align-items:center; justify-content:center; }
.wmrs-3d-scene--compact{ height:180px; }
@media (max-width:1080px){ .wmrs-3d-scene{ height:260px; margin-top:20px; } }
.wmrs-3d-orbit{ position:absolute; width:320px; height:320px; border-radius:50%; border:1px dashed rgba(255,255,255,.14); transform:rotateX(70deg); }
.wmrs-3d-scene--compact .wmrs-3d-orbit{ width:170px; height:170px; }
.wmrs-3d-card{
  position:absolute; transform-style:preserve-3d; border-radius:16px;
  background:linear-gradient(155deg, rgba(255,255,255,.16), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.22); backdrop-filter:blur(6px);
  box-shadow:0 40px 60px -20px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.25);
  padding:18px 20px; color:#fff; font-family:var(--wmrs-font-display); animation:wmrs-float 7s ease-in-out infinite;
}
.wmrs-3d-card b{ display:block; font-family:var(--wmrs-font-mono); font-size:1.3rem; color:var(--wmrs-sky); }
.wmrs-3d-card span{ font-size:.72rem; color:rgba(255,255,255,.75); }
.wmrs-3d-card--1{ top:8%; left:6%; transform:rotateY(-18deg) rotateX(10deg) translateZ(60px); animation-delay:0s; }
.wmrs-3d-card--2{ top:38%; right:2%; transform:rotateY(14deg) rotateX(-6deg) translateZ(100px); animation-delay:1.4s; }
.wmrs-3d-card--3{ bottom:6%; left:18%; transform:rotateY(-8deg) rotateX(8deg) translateZ(30px); animation-delay:2.8s; }
.wmrs-3d-scene--compact .wmrs-3d-card{ padding:12px 14px; }
.wmrs-3d-scene--compact .wmrs-3d-card b{ font-size:1rem; }
.wmrs-3d-scene--compact .wmrs-3d-card span{ font-size:.62rem; }
.wmrs-3d-globe{
  width:200px; height:200px; border-radius:50%; position:relative;
  background:radial-gradient(circle at 32% 28%, #2E7FD9, #0A2E5C 65%, #051426 100%);
  box-shadow:0 50px 80px -20px rgba(10,46,92,.6), inset -18px -18px 50px rgba(0,0,0,.35), inset 12px 12px 40px rgba(95,211,218,.25);
  transform-style:preserve-3d; animation:wmrs-spin 22s linear infinite;
}
.wmrs-3d-scene--compact .wmrs-3d-globe{ width:110px; height:110px; }
.wmrs-3d-globe::before{ content:''; position:absolute; inset:0; border-radius:50%; background-image:repeating-linear-gradient(90deg, rgba(255,255,255,.08) 0 2px, transparent 2px 26px); mix-blend-mode:overlay; }
.wmrs-3d-globe::after{ content:''; position:absolute; inset:0; border-radius:50%; background-image:repeating-linear-gradient(0deg, rgba(255,255,255,.06) 0 2px, transparent 2px 22px); mix-blend-mode:overlay; }
@keyframes wmrs-float{ 0%,100%{ transform:translateY(0) rotateY(var(--ry,-18deg)) rotateX(var(--rx,10deg)); } 50%{ transform:translateY(-14px) rotateY(var(--ry,-18deg)) rotateX(var(--rx,10deg)); } }
@keyframes wmrs-spin{ from{ transform:rotateY(0deg); } to{ transform:rotateY(360deg); } }
@media (prefers-reduced-motion: reduce){ .wmrs-3d-card, .wmrs-3d-globe{ animation:none !important; } }
@media (max-width:640px){ .wmrs-3d-scene{ display:none; } }

/* ==========================================================================
   3D CHART TILT — wraps bar/donut chart SVGs with perspective + drop shadow
   ========================================================================== */
.wmrs-chart-3d{ perspective:900px; }
.wmrs-chart-3d__inner{ transform:rotateX(6deg); transform-origin:bottom center; filter:drop-shadow(0 26px 34px rgba(10,46,92,.22)); }
.wmrs-chart-3d--donut .wmrs-chart-3d__inner{ transform:rotateX(0deg); }
.wmrs-chart-3d--donut svg{ filter:drop-shadow(0 18px 26px rgba(10,46,92,.28)); }

/* ==========================================================================
   IMAGE PANELS — placeholder-ready photo slots used across pages
   ========================================================================== */
.wmrs-photo-slot{
  position:relative; border-radius:var(--wmrs-radius-lg); overflow:hidden; aspect-ratio:4/3;
  background:linear-gradient(135deg, var(--wmrs-mist-deep), #fff);
  border:1px solid var(--wmrs-line); display:flex; align-items:center; justify-content:center;
}
.wmrs-photo-slot img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.wmrs-photo-slot__hint{ text-align:center; color:var(--wmrs-ink-faint); font-family:var(--wmrs-font-mono); font-size:.75rem; padding:20px; }
.wmrs-photo-slot--tall{ aspect-ratio:3/4; }
.wmrs-photo-slot--wide{ aspect-ratio:16/9; }
.wmrs-illustration{ padding:36px; }
.wmrs-illustration svg{ width:80%; height:80%; }
.wmrs-photo-slot__swap{
  position:absolute; bottom:14px; left:14px; right:14px; text-align:center;
  font-family:var(--wmrs-font-mono); font-size:.66rem; color:var(--wmrs-ink-faint);
  background:rgba(255,255,255,.9); border:1px solid var(--wmrs-line); border-radius:999px; padding:.5em 1em;
  opacity:0; transition:opacity .25s ease;
}
.wmrs-photo-slot:hover .wmrs-photo-slot__swap{ opacity:1; }
.wmrs-chart-card{ padding:30px 32px; }
.wmrs-chart-card svg text{ font-family:var(--wmrs-font-mono); }

/* ==========================================================================
   CARDS
   ========================================================================== */
.wmrs-grid{ display:grid; gap:28px; }
.wmrs-grid--2{ grid-template-columns:repeat(2,1fr); }
.wmrs-grid--3{ grid-template-columns:repeat(3,1fr); }
.wmrs-grid--4{ grid-template-columns:repeat(4,1fr); }
@media (max-width:1000px){ .wmrs-grid--3, .wmrs-grid--4{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){ .wmrs-grid--3, .wmrs-grid--4, .wmrs-grid--2{ grid-template-columns:1fr; } }

.wmrs-card{
  background:#fff; border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius); padding:34px 30px;
  position:relative; overflow:hidden; transition:transform .35s var(--wmrs-ease), box-shadow .35s var(--wmrs-ease), border-color .35s ease;
}
.wmrs-card::before{ content:''; position:absolute; left:0; top:0; bottom:0; width:3px; background:var(--wmrs-gradient); transform:scaleY(0); transform-origin:top; transition:transform .35s var(--wmrs-ease); }
.wmrs-card:hover{ transform:translateY(-8px); box-shadow:var(--wmrs-shadow); border-color:transparent; }
.wmrs-card:hover::before{ transform:scaleY(1); }
.wmrs-card__icon{ width:52px; height:52px; border-radius:14px; background:var(--wmrs-gradient); margin-bottom:1.2em; display:flex; align-items:center; justify-content:center; color:#fff; font-family:var(--wmrs-font-mono); font-weight:700; }
.wmrs-card__index{ font-family:var(--wmrs-font-mono); color:var(--wmrs-teal); font-size:.8rem; font-weight:600; }
.wmrs-card h3{ margin-top:.4em; }
.wmrs-card p{ font-size:.95rem; margin-bottom:0; }
.wmrs-card a.wmrs-card__link{ display:inline-flex; align-items:center; gap:.4em; margin-top:1.1em; font-family:var(--wmrs-font-display); font-weight:600; font-size:.88rem; color:var(--wmrs-blue); }

/* Specialty pills */
.wmrs-specialty-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
@media (max-width:900px){ .wmrs-specialty-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .wmrs-specialty-grid{ grid-template-columns:1fr; } }
.wmrs-specialty-pill{
  background:#fff; border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius-sm); padding:18px 20px;
  font-family:var(--wmrs-font-display); font-weight:600; font-size:.92rem; color:var(--wmrs-navy);
  display:flex; align-items:center; justify-content:space-between; transition:all .25s var(--wmrs-ease);
}
.wmrs-specialty-pill:hover{ background:var(--wmrs-navy); color:#fff; border-color:var(--wmrs-navy); transform:translateX(4px); }
.wmrs-specialty-pill span.n{ font-family:var(--wmrs-font-mono); font-size:.72rem; color:var(--wmrs-teal); }
.wmrs-specialty-pill:hover span.n{ color:var(--wmrs-sky); }

/* ==========================================================================
   PROCESS TIMELINE
   ========================================================================== */
.wmrs-timeline{ position:relative; display:grid; gap:0; }
.wmrs-timeline__item{ display:grid; grid-template-columns:80px 1fr; gap:24px; padding:28px 0; border-bottom:1px solid var(--wmrs-line); }
.wmrs-timeline__item:last-child{ border-bottom:none; }
.wmrs-timeline__num{ font-family:var(--wmrs-font-mono); font-size:1.6rem; font-weight:700; background:var(--wmrs-gradient); -webkit-background-clip:text; background-clip:text; color:transparent; }
.wmrs-timeline__item h3{ margin-bottom:.3em; }
.wmrs-timeline__item p{ margin:0; }

/* ==========================================================================
   PROCESS GRID — numbered step cards (replaces cramped vertical timeline)
   ========================================================================== */
.wmrs-process-row{ display:grid; gap:24px; margin-bottom:24px; }
.wmrs-process-row:last-child{ margin-bottom:0; }
.wmrs-process-row--3{ grid-template-columns:repeat(3,1fr); }
.wmrs-process-row--4{ grid-template-columns:repeat(4,1fr); }
@media (max-width:900px){ .wmrs-process-row--3, .wmrs-process-row--4{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .wmrs-process-row--3, .wmrs-process-row--4{ grid-template-columns:1fr; } }
.wmrs-process-step{
  background:#fff; border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius); padding:28px 24px;
  position:relative; overflow:hidden; transition:transform .3s var(--wmrs-ease), box-shadow .3s var(--wmrs-ease);
}
.wmrs-process-step:hover{ transform:translateY(-6px); box-shadow:var(--wmrs-shadow-sm); }
.wmrs-process-step__num{
  width:44px; height:44px; border-radius:12px; background:var(--wmrs-gradient); color:#fff;
  display:flex; align-items:center; justify-content:center; font-family:var(--wmrs-font-mono); font-weight:700;
  font-size:1rem; margin-bottom:1em;
}
.wmrs-process-step h3{ font-size:1.05rem; margin-bottom:.4em; }
.wmrs-process-step p{ font-size:.88rem; margin-bottom:0; }
.wmrs-process-step__arrow{ position:absolute; top:32px; right:-14px; width:28px; height:28px; color:var(--wmrs-line); z-index:2; }
@media (max-width:900px){ .wmrs-process-step__arrow{ display:none; } }

/* ==========================================================================
   WORLD REACH — stylized SVG map + region badges
   ========================================================================== */
.wmrs-map-wrap{ position:relative; border-radius:var(--wmrs-radius-lg); overflow:hidden; background:var(--wmrs-navy-deep); padding:50px 30px; }
.wmrs-map-wrap svg{ width:100%; height:auto; display:block; opacity:.9; }
.wmrs-map-region{ fill:rgba(255,255,255,.10); stroke:rgba(255,255,255,.18); stroke-width:.5; transition:fill .3s ease; }
.wmrs-map-region.is-active{ fill:rgba(23,169,201,.55); }
.wmrs-map-dot{ fill:var(--wmrs-sky); }
.wmrs-map-dot circle:first-child{ animation:wmrs-pulse 2.4s ease-out infinite; }
@keyframes wmrs-pulse{ 0%{ opacity:.6; r:4; } 100%{ opacity:0; r:16; } }
.wmrs-region-list{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top:36px; position:relative; z-index:2; }
.wmrs-region-badge{ font-family:var(--wmrs-font-mono); font-size:.78rem; color:#fff; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.2); padding:.5em 1.1em; border-radius:999px; display:inline-flex; align-items:center; gap:.5em; }
.wmrs-region-badge::before{ content:''; width:6px; height:6px; border-radius:50%; background:var(--wmrs-sky); }

/* ==========================================================================
   JOB SEARCH / FILTERS / LISTINGS
   ========================================================================== */
.wmrs-job-search{ background:#fff; border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius); padding:20px; box-shadow:var(--wmrs-shadow-sm); display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr auto; gap:12px; margin-bottom:2.6rem; }
@media (max-width:960px){ .wmrs-job-search{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .wmrs-job-search{ grid-template-columns:1fr; } }
.wmrs-job-search input[type="text"], .wmrs-job-search select{
  font-family:var(--wmrs-font-body); border:1.5px solid var(--wmrs-line); border-radius:var(--wmrs-radius-sm);
  padding:.8em 1em; background:var(--wmrs-mist); font-size:.9rem; color:var(--wmrs-ink); width:100%;
}
.wmrs-job-search button{ white-space:nowrap; }

.wmrs-job-list{ display:flex; flex-direction:column; gap:18px; }
.wmrs-job-card{
  display:grid; grid-template-columns:1fr auto; gap:20px; align-items:center; background:#fff;
  border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius); padding:28px 30px;
  transition:box-shadow .3s var(--wmrs-ease), border-color .3s ease, transform .3s var(--wmrs-ease);
}
.wmrs-job-card:hover{ box-shadow:var(--wmrs-shadow); border-color:transparent; transform:translateY(-4px); }
.wmrs-job-card__tags{ display:flex; gap:.5em; flex-wrap:wrap; margin-bottom:.8em; }
.wmrs-job-card__specialty{ display:inline-block; font-family:var(--wmrs-font-mono); font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; color:var(--wmrs-blue); background:rgba(20,80,196,.08); padding:.35em .85em; border-radius:999px; }
.wmrs-job-card__featured{ display:inline-block; font-family:var(--wmrs-font-mono); font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; color:#8a6417; background:rgba(201,161,90,.16); padding:.35em .85em; border-radius:999px; }
.wmrs-job-card h3{ margin:0 0 .4em; font-size:1.22rem; }
.wmrs-job-card__meta{ display:flex; flex-wrap:wrap; gap:1.4em; font-family:var(--wmrs-font-mono); font-size:.82rem; color:var(--wmrs-ink-soft); }
.wmrs-job-card__meta span{ display:inline-flex; align-items:center; gap:.4em; }
.wmrs-job-card__salary{ color:var(--wmrs-navy); font-weight:600; }
.wmrs-job-card__date{ font-size:.72rem; color:var(--wmrs-ink-faint); margin-top:.6em; }
.wmrs-job-empty{ text-align:center; padding:70px 20px; color:var(--wmrs-ink-soft); border:1px dashed var(--wmrs-line); border-radius:var(--wmrs-radius); }
.wmrs-job-count{ font-family:var(--wmrs-font-mono); font-size:.82rem; color:var(--wmrs-ink-faint); margin-bottom:1.2rem; }

/* Single job page */
.wmrs-job-hero{ background:var(--wmrs-navy-deep); color:#fff; padding:80px 0 60px; position:relative; overflow:hidden; }
.wmrs-job-hero__meta{ display:flex; gap:1.6rem; flex-wrap:wrap; margin-top:1.4rem; font-family:var(--wmrs-font-mono); font-size:.85rem; color:rgba(255,255,255,.8); }
.wmrs-job-hero .wmrs-3d-scene--compact{ position:absolute; top:10px; right:20px; width:280px; z-index:1; opacity:.9; }
@media (max-width:900px){ .wmrs-job-hero .wmrs-3d-scene--compact{ display:none; } }
.wmrs-job-hero .wmrs-container{ position:relative; z-index:2; padding-right:340px; }
.wmrs-job-hero h1{ color:#fff; max-width:760px; }
.wmrs-job-hero .wmrs-eyebrow{ color:var(--wmrs-sky); }
.wmrs-job-hero p{ color:rgba(255,255,255,.78); max-width:700px; }
@media (max-width:1080px){ .wmrs-job-hero .wmrs-container{ padding-right:24px; } }
.wmrs-job-body{ display:grid; grid-template-columns:1.6fr 1fr; gap:52px; align-items:start; }
@media (max-width:900px){ .wmrs-job-body{ grid-template-columns:1fr; } }
.wmrs-job-section + .wmrs-job-section{ margin-top:2.4em; }
.wmrs-job-section h2{ font-size:1.4rem; }
.wmrs-facts{ background:var(--wmrs-mist); border-radius:var(--wmrs-radius); padding:30px; font-family:var(--wmrs-font-mono); font-size:.87rem; position:sticky; top:110px; }
.wmrs-facts dt{ color:var(--wmrs-ink-faint); margin-top:1.1em; text-transform:uppercase; font-size:.7rem; letter-spacing:.08em; }
.wmrs-facts dd{ margin:.25em 0 0; color:var(--wmrs-navy); font-weight:600; }
.wmrs-facts dt:first-child{ margin-top:0; }
.wmrs-benefit-tags{ display:flex; flex-wrap:wrap; gap:.6em; }
.wmrs-benefit-tag{ background:var(--wmrs-mist); border:1px solid var(--wmrs-line); border-radius:999px; padding:.5em 1.1em; font-size:.85rem; color:var(--wmrs-navy); }

/* ==========================================================================
   PARTNERSHIPS
   ========================================================================== */
.wmrs-partners-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
@media (max-width:900px){ .wmrs-partners-grid{ grid-template-columns:1fr; } }
.wmrs-partner-card{ background:#fff; border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius); padding:44px 34px; text-align:center; transition:box-shadow .3s ease, transform .3s ease; }
.wmrs-partner-card:hover{ box-shadow:var(--wmrs-shadow); transform:translateY(-6px); }
.wmrs-partner-card img{ max-height:76px; width:auto; margin:0 auto 22px; object-fit:contain; }
.wmrs-partner-card h3{ font-size:1.08rem; margin-bottom:.3em; }
.wmrs-partner-card__type{ font-size:.8rem; color:var(--wmrs-ink-faint); margin-bottom:.8em; }
.wmrs-partner-card p{ font-size:.9rem; margin-bottom:0; text-align:left; }
.wmrs-partner-card__tag{ font-family:var(--wmrs-font-mono); font-size:.7rem; text-transform:uppercase; letter-spacing:.08em; color:var(--wmrs-teal); display:block; margin-bottom:.7em; }
.wmrs-partner-placeholder{ height:76px; display:flex; align-items:center; justify-content:center; margin:0 auto 22px; font-family:var(--wmrs-font-display); font-weight:700; font-size:1.15rem; color:var(--wmrs-navy); background:var(--wmrs-mist); border-radius:var(--wmrs-radius-sm); padding:0 16px; }

/* Country grouping (Partnerships page) */
.wmrs-country-group{ margin-bottom:56px; }
.wmrs-country-group:last-child{ margin-bottom:0; }
.wmrs-country-group__head{ display:flex; align-items:center; gap:14px; margin-bottom:24px; padding-bottom:16px; border-bottom:2px solid var(--wmrs-mist-deep); }
.wmrs-country-group__flag{ font-size:1.8rem; line-height:1; }
.wmrs-country-group__head h3{ margin:0; font-size:1.3rem; }
.wmrs-country-group__count{ margin-left:auto; font-family:var(--wmrs-font-mono); font-size:.75rem; color:var(--wmrs-ink-faint); background:var(--wmrs-mist); padding:.4em 1em; border-radius:999px; }

/* Compact country badges (homepage preview) */
.wmrs-partner-countries{ display:flex; flex-wrap:wrap; gap:16px; justify-content:center; }
.wmrs-partner-country-badge{
  display:flex; align-items:center; gap:.7em; background:#fff; border:1px solid var(--wmrs-line); border-radius:999px;
  padding:.9em 1.5em; box-shadow:var(--wmrs-shadow-sm);
}
.wmrs-partner-country-badge__flag{ font-size:1.3rem; }
.wmrs-partner-country-badge__name{ font-family:var(--wmrs-font-display); font-weight:600; color:var(--wmrs-navy); font-size:.92rem; }
.wmrs-partner-country-badge__count{ font-family:var(--wmrs-font-mono); font-size:.72rem; color:var(--wmrs-ink-faint); }

/* ==========================================================================
   FORMS
   ========================================================================== */
.wmrs-form{ background:#fff; border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius); padding:38px; box-shadow:var(--wmrs-shadow-sm); }
.wmrs-form h3{ font-size:1.1rem; margin-bottom:1em; padding-bottom:.6em; border-bottom:2px solid var(--wmrs-mist-deep); }
.wmrs-form__row{ display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:18px; }
.wmrs-form__row--3{ grid-template-columns:1fr 1fr 1fr; }
@media (max-width:600px){ .wmrs-form__row, .wmrs-form__row--3{ grid-template-columns:1fr; } }
.wmrs-field{ display:flex; flex-direction:column; gap:.4em; margin-bottom:18px; }
.wmrs-field label{ font-family:var(--wmrs-font-display); font-size:.86rem; font-weight:600; color:var(--wmrs-navy); }
.wmrs-field label .req{ color:var(--wmrs-teal); }
.wmrs-field input[type="text"], .wmrs-field input[type="email"], .wmrs-field input[type="tel"], .wmrs-field select, .wmrs-field textarea{
  font-family:var(--wmrs-font-body); border:1.5px solid var(--wmrs-line); border-radius:var(--wmrs-radius-sm);
  padding:.85em 1em; font-size:.95rem; color:var(--wmrs-ink); background:var(--wmrs-mist); width:100%; transition:border-color .2s ease, background .2s ease;
}
.wmrs-field input:focus, .wmrs-field select:focus, .wmrs-field textarea:focus{ border-color:var(--wmrs-teal); outline:none; background:#fff; }
.wmrs-field textarea{ resize:vertical; min-height:110px; }
.wmrs-file{ border:1.5px dashed var(--wmrs-line); border-radius:var(--wmrs-radius-sm); padding:20px; text-align:center; cursor:pointer; background:var(--wmrs-mist); font-size:.86rem; color:var(--wmrs-ink-soft); transition:border-color .2s ease; display:block; }
.wmrs-file:hover{ border-color:var(--wmrs-teal); }
.wmrs-file input[type=file]{ display:none; }
.wmrs-hp{ position:absolute; left:-9999px; }
.wmrs-consent{ display:flex; align-items:flex-start; gap:.7em; font-size:.85rem; color:var(--wmrs-ink-soft); margin:1.4em 0; }

/* Contact page dual-form tabs */
.wmrs-form-tabs{ display:flex; gap:8px; margin-bottom:16px; background:var(--wmrs-mist); border-radius:999px; padding:5px; }
.wmrs-form-tab{
  flex:1; border:none; background:transparent; padding:.8em 1em; border-radius:999px; cursor:pointer;
  font-family:var(--wmrs-font-display); font-weight:600; font-size:.88rem; color:var(--wmrs-ink-soft); transition:all .25s ease;
}
.wmrs-form-tab.is-active{ background:#fff; color:var(--wmrs-navy); box-shadow:var(--wmrs-shadow-sm); }
.wmrs-form-panel{ display:none; }
.wmrs-form-panel.is-active{ display:block; }
.wmrs-consent input{ margin-top:.3em; }
.wmrs-notice{ border-radius:var(--wmrs-radius-sm); padding:1em 1.2em; font-size:.9rem; margin-bottom:1.4em; }
.wmrs-notice--success{ background:rgba(23,169,201,.1); color:#0a5b6b; border:1px solid rgba(23,169,201,.3); }
.wmrs-notice--error{ background:rgba(220,53,69,.08); color:#a02531; border:1px solid rgba(220,53,69,.25); }

/* ==========================================================================
   STATS COUNTERS
   ========================================================================== */
.wmrs-stats-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--wmrs-line); border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius); overflow:hidden; }
@media (max-width:860px){ .wmrs-stats-grid{ grid-template-columns:repeat(2,1fr); } }
.wmrs-stat{ background:#fff; padding:36px 24px; text-align:center; }
.wmrs-stat b{ display:block; font-family:var(--wmrs-font-mono); font-size:2.4rem; font-weight:700; background:var(--wmrs-gradient); -webkit-background-clip:text; background-clip:text; color:transparent; }
.wmrs-stat span{ font-size:.85rem; color:var(--wmrs-ink-soft); }

/* ==========================================================================
   TESTIMONIALS / QUOTES
   ========================================================================== */
.wmrs-quote{ background:#fff; border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius); padding:32px 30px; position:relative; }
.wmrs-quote p{ font-style:italic; color:var(--wmrs-ink); font-size:1.02rem; }
.wmrs-quote cite{ font-style:normal; font-family:var(--wmrs-font-display); font-weight:600; color:var(--wmrs-navy); display:block; margin-top:1em; }
.wmrs-quote cite span{ display:block; font-weight:400; font-size:.8rem; color:var(--wmrs-ink-soft); font-family:var(--wmrs-font-mono); }

/* ==========================================================================
   FAQ
   ========================================================================== */
.wmrs-faq{ border-top:1px solid var(--wmrs-line); }
.wmrs-faq-item{ border-bottom:1px solid var(--wmrs-line); }
.wmrs-faq-item summary{ cursor:pointer; padding:22px 4px; font-family:var(--wmrs-font-display); font-weight:600; color:var(--wmrs-navy); list-style:none; display:flex; justify-content:space-between; align-items:center; }
.wmrs-faq-item summary::-webkit-details-marker{ display:none; }
.wmrs-faq-item summary::after{ content:'+'; font-size:1.4rem; color:var(--wmrs-teal); transition:transform .25s ease; }
.wmrs-faq-item[open] summary::after{ transform:rotate(45deg); }
.wmrs-faq-item p{ padding:0 4px 22px; }

/* ==========================================================================
   FOOTER
   ========================================================================== */
.wmrs-footer{ background:var(--wmrs-navy-deep); color:rgba(255,255,255,.72); padding:80px 0 0; }
.wmrs-footer h4{ color:#fff; font-size:1rem; margin-bottom:1.1em; }
.wmrs-footer a{ color:rgba(255,255,255,.72); } .wmrs-footer a:hover{ color:var(--wmrs-sky); }
.wmrs-footer__grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1.2fr; gap:40px; padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,.1); }
@media (max-width:900px){ .wmrs-footer__grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:600px){ .wmrs-footer__grid{ grid-template-columns:1fr; } }
.wmrs-footer__logo{ display:block; height:88px; max-width:min(390px,100%); width:auto; margin-bottom:18px; object-fit:contain; background:#fff; border-radius:10px; padding:8px 12px; box-sizing:border-box; }
.wmrs-footer ul{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:.7em; font-size:.9rem; }
.wmrs-footer__disclaimer{ font-size:.76rem; color:rgba(255,255,255,.45); padding:20px 0; border-top:1px solid rgba(255,255,255,.08); }
.wmrs-footer__bottom{ display:flex; justify-content:space-between; padding:20px 0; font-size:.82rem; flex-wrap:wrap; gap:10px; }
.wmrs-footer__legal-links{ display:flex; gap:1.2em; flex-wrap:wrap; }
.wmrs-footer__socials{ display:flex; gap:.8em; }
.wmrs-footer__socials a{ width:36px; height:36px; border-radius:50%; border:1px solid rgba(255,255,255,.2); display:inline-flex; align-items:center; justify-content:center; font-size:.8rem; }

/* ==========================================================================
   ELEMENTOR / EDITOR CONTENT + UTILITY
   ========================================================================== */
.wmrs-content-area{ padding:70px 0; }
.wmrs-content-area .wmrs-container > *:first-child{ margin-top:0; }
.wmrs-mt-0{ margin-top:0 !important; }
.wmrs-text-center{ text-align:center; }
.wmrs-legal-content h2{ margin-top:1.6em; }
.wmrs-legal-content{ max-width:820px; }

/* 404 */
.wmrs-404{ text-align:center; padding:140px 0; }
.wmrs-404 .code{ font-family:var(--wmrs-font-mono); font-size:5rem; font-weight:700; background:var(--wmrs-gradient); -webkit-background-clip:text; background-clip:text; color:transparent; }


/* ========================================================================== 
   HARDENED RESPONSIVE LAYOUT — prevents text, cards and controls colliding
   ========================================================================== */
.wmrs-container, .wmrs-section, .wmrs-card, .wmrs-form, .wmrs-job-card, .wmrs-partner-card, .wmrs-facts, .wmrs-chart-card{ min-width:0; }
.wmrs-head h1, .wmrs-head h2, .wmrs-head h3, .wmrs-card h3, .wmrs-job-card h3, .wmrs-partner-card h3{ overflow-wrap:anywhere; }
.wmrs-job-card > div:first-child{ min-width:0; }
.wmrs-job-card .wmrs-btn{ flex:0 0 auto; }
.wmrs-job-card__meta{ row-gap:.55em; }
.wmrs-form{ overflow:hidden; }
.wmrs-form__row > *, .wmrs-grid > *, .wmrs-job-body > *, .wmrs-footer__grid > *{ min-width:0; }
.wmrs-chart-card{ overflow:hidden; }
.wmrs-chart-3d{ width:100%; overflow:hidden; }
.wmrs-chart-3d__inner{ max-width:100%; overflow-x:auto; overflow-y:hidden; padding-bottom:2px; }
.wmrs-chart-3d svg{ max-width:100%; }
.wmrs-map-wrap{ min-width:0; }
.wmrs-region-list{ min-width:0; }
.wmrs-region-badge{ max-width:100%; overflow-wrap:anywhere; }
.wmrs-footer__grid p, .wmrs-footer__grid li, .wmrs-footer__bottom span{ overflow-wrap:anywhere; }
.wmrs-contact-grid{ display:grid; grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr); gap:52px; align-items:start; }
.wmrs-contact-details{ display:grid; gap:24px; }
.wmrs-contact-item{ display:flex; gap:16px; align-items:flex-start; }
.wmrs-contact-item__icon{ width:44px; height:44px; border-radius:12px; background:var(--wmrs-gradient); flex:0 0 44px; }
.wmrs-contact-map{ border-radius:var(--wmrs-radius); overflow:hidden; margin-top:24px; border:1px solid var(--wmrs-line); }
.wmrs-contact-map iframe{ width:100%; height:220px; border:0; display:block; }
.wmrs-brand-panel{ position:relative; min-height:390px; border-radius:var(--wmrs-radius-lg); overflow:hidden; background:linear-gradient(145deg,#071f40 0%,#0a2e5c 58%,#17a9c9 150%); border:1px solid rgba(255,255,255,.14); box-shadow:var(--wmrs-shadow-lg); }
.wmrs-brand-panel::before,.wmrs-brand-panel::after{ content:''; position:absolute; border-radius:50%; border:1px solid rgba(95,211,218,.28); }
.wmrs-brand-panel::before{ width:360px; height:360px; right:-130px; top:-130px; }
.wmrs-brand-panel::after{ width:260px; height:260px; left:-110px; bottom:-110px; }
.wmrs-brand-panel__core{ position:absolute; width:150px; height:150px; border-radius:50%; left:50%; top:50%; transform:translate(-50%,-50%); background:radial-gradient(circle at 35% 30%,#5fd3da,#1450c4 55%,#071f40 100%); box-shadow:0 30px 70px rgba(0,0,0,.3), inset 0 0 0 1px rgba(255,255,255,.2); }
.wmrs-brand-panel__core::before,.wmrs-brand-panel__core::after{ content:''; position:absolute; inset:24px; border:1px solid rgba(255,255,255,.38); border-radius:50%; transform:rotate(45deg); }
.wmrs-brand-panel__core::after{ inset:42px; transform:rotate(-25deg); }
.wmrs-brand-panel__label{ position:absolute; left:28px; bottom:26px; color:#fff; font-family:var(--wmrs-font-display); font-weight:700; font-size:1rem; letter-spacing:.02em; }
.wmrs-brand-panel__label span{ display:block; color:rgba(255,255,255,.65); font-family:var(--wmrs-font-mono); font-size:.68rem; text-transform:uppercase; letter-spacing:.12em; margin-top:4px; }
.wmrs-visual-cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.wmrs-visual-card{ background:#fff; border:1px solid rgba(255,255,255,.18); border-radius:12px; padding:16px; box-shadow:var(--wmrs-shadow-sm); }
.wmrs-visual-card b{ display:block; color:var(--wmrs-blue); font-family:var(--wmrs-font-mono); font-size:1.1rem; }
.wmrs-visual-card span{ display:block; color:var(--wmrs-ink-soft); font-size:.72rem; margin-top:3px; }
.wmrs-process-visual{ padding:34px; border-radius:var(--wmrs-radius-lg); background:linear-gradient(145deg,#f6f8fb,#fff); border:1px solid var(--wmrs-line); box-shadow:var(--wmrs-shadow-sm); }
.wmrs-process-visual__line{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.wmrs-process-visual__node{ min-width:0; padding:18px 14px; border-radius:12px; background:#fff; border:1px solid var(--wmrs-line); text-align:center; }
.wmrs-process-visual__node b{ display:flex; align-items:center; justify-content:center; width:42px; height:42px; margin:0 auto 10px; border-radius:50%; background:var(--wmrs-gradient); color:#fff; font-family:var(--wmrs-font-mono); }
.wmrs-process-visual__node span{ font-family:var(--wmrs-font-display); font-weight:600; font-size:.78rem; color:var(--wmrs-navy); }
@media (max-width:900px){
  .wmrs-contact-grid{ grid-template-columns:1fr; gap:34px; }
  .wmrs-job-card{ grid-template-columns:1fr; align-items:start; }
  .wmrs-job-card > .wmrs-btn{ width:100%; justify-content:center; }
  .wmrs-brand-panel{ min-height:330px; }
}
@media (max-width:640px){
  .wmrs-container{ padding-left:18px; padding-right:18px; }
  .wmrs-header .wmrs-container{ padding:10px 18px; }
  .wmrs-logo img{ height:66px; max-width:68vw; }
  .wmrs-header.is-scrolled .wmrs-logo img{ height:54px; }
  .wmrs-topbar .wmrs-container{ padding-left:18px; padding-right:18px; }
  .wmrs-topbar__item{ margin-right:.7em; }
  .wmrs-topbar__socials{ display:none; }
  .wmrs-hero{ padding:92px 0 72px; }
  .wmrs-hero h1{ font-size:clamp(2rem,9vw,2.8rem); }
  .wmrs-hero__cta .wmrs-btn{ width:100%; justify-content:center; }
  .wmrs-hero__stats{ grid-template-columns:1fr 1fr; margin-top:48px; }
  .wmrs-job-hero{ padding:62px 0 48px; }
  .wmrs-job-hero h1{ font-size:clamp(2rem,9vw,2.8rem); }
  .wmrs-job-hero .wmrs-3d-scene--compact{ display:none; }
  .wmrs-job-hero__meta{ gap:.8rem 1rem; }
  .wmrs-form{ padding:24px 20px; }
  .wmrs-form-tabs{ flex-direction:column; border-radius:14px; }
  .wmrs-form-tab{ width:100%; }
  .wmrs-visual-cards, .wmrs-process-visual__line{ grid-template-columns:1fr; }
  .wmrs-brand-panel{ min-height:300px; }
  .wmrs-brand-panel__core{ width:120px; height:120px; }
  .wmrs-brand-panel__label{ left:20px; bottom:20px; }
  .wmrs-footer{ padding-top:58px; }
  .wmrs-footer__logo{ height:72px; }
  .wmrs-footer__bottom{ flex-direction:column; }
}
@media (max-width:400px){
  .wmrs-hero__stats{ grid-template-columns:1fr; }
  .wmrs-stat{ padding:24px 18px; }
  .wmrs-header__cta{ gap:.35rem; }
}


/* ========================================================================== 
   2.2 VISUAL + RESPONSIVE HARDENING
   ========================================================================== */
.wmrs-country-network{ position:relative; min-height:330px; display:grid; place-items:center; padding:28px; border:1px solid var(--wmrs-line); border-radius:var(--wmrs-radius-lg); background:linear-gradient(145deg,#f7fafd,#fff); box-shadow:var(--wmrs-shadow-sm); overflow:hidden; }
.wmrs-country-network__core{ position:relative; z-index:2; width:210px; height:210px; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:radial-gradient(circle at 35% 30%,#5fd3da,#1450c4 55%,#071f40 100%); color:#fff; box-shadow:0 30px 70px rgba(10,46,92,.22); padding:25px; box-sizing:border-box; }
.wmrs-country-network__core-mark{ font-family:var(--wmrs-font-mono); font-size:.85rem; letter-spacing:.18em; color:#fff; opacity:.78; margin-bottom:8px; }
.wmrs-country-network__core strong{ font-family:var(--wmrs-font-display); font-size:1.05rem; line-height:1.25; }
.wmrs-country-network__core small{ font-size:.7rem; color:rgba(255,255,255,.72); margin-top:7px; }
.wmrs-country-network__rings{ position:absolute; width:300px; height:300px; border:1px dashed rgba(20,80,196,.18); border-radius:50%; box-shadow:0 0 0 34px rgba(23,169,201,.025),0 0 0 70px rgba(20,80,196,.02); }
.wmrs-country-network .wmrs-region-list{ position:absolute; inset:18px; display:flex; align-content:space-between; justify-content:space-between; flex-wrap:wrap; gap:12px; z-index:3; pointer-events:none; }
.wmrs-country-network .wmrs-region-badge{ display:inline-flex; align-items:center; gap:9px; background:#fff; border:1px solid var(--wmrs-line); border-radius:999px; padding:10px 14px; box-shadow:0 12px 25px rgba(10,46,92,.08); color:var(--wmrs-navy); font-family:var(--wmrs-font-display); font-size:.82rem; font-weight:600; max-width:calc(50% - 6px); }
.wmrs-country-network .wmrs-region-badge b{ display:inline-flex; width:24px; height:24px; border-radius:50%; align-items:center; justify-content:center; background:var(--wmrs-mist); color:var(--wmrs-blue); font-family:var(--wmrs-font-mono); font-size:.65rem; flex:0 0 24px; }
.wmrs-application-form{ max-width:100%; }
.wmrs-application-form .wmrs-file{ min-height:44px; }
.wmrs-application-form .wmrs-consent{ margin-top:8px; }
.wmrs-job-data-charts .wmrs-chart-card{ height:100%; box-sizing:border-box; }
.wmrs-job-card h3{ line-height:1.28; }
.wmrs-job-card__salary{ white-space:normal; }
.wmrs-facts dd{ overflow-wrap:anywhere; }

@media (max-width:1080px){
  .wmrs-header .wmrs-container{ gap:18px; }
  .wmrs-logo{ min-width:0; flex:1 1 auto; }
  .wmrs-logo img{ max-width:min(300px,48vw); }
  .wmrs-header__cta{ flex:0 0 auto; }
}
@media (max-width:782px){
  .wmrs-topbar .wmrs-container{ justify-content:center; text-align:center; }
  .wmrs-header .wmrs-container{ padding-top:9px; padding-bottom:9px; }
  .wmrs-logo img{ height:62px; max-width:72vw; }
  .wmrs-header.is-scrolled .wmrs-logo img{ height:54px; }
  .wmrs-country-network{ min-height:390px; padding:18px; }
  .wmrs-country-network__core{ width:170px; height:170px; }
  .wmrs-country-network__rings{ width:245px; height:245px; }
  .wmrs-country-network .wmrs-region-list{ inset:12px; }
  .wmrs-country-network .wmrs-region-badge{ font-size:.72rem; padding:8px 10px; max-width:46%; }
}
@media (max-width:520px){
  .wmrs-topbar{ font-size:.68rem; }
  .wmrs-topbar .wmrs-container{ padding-top:6px; padding-bottom:6px; }
  .wmrs-topbar__item{ margin-right:.35em; }
  .wmrs-header .wmrs-container{ gap:8px; }
  .wmrs-logo img{ height:54px; max-width:64vw; }
  .wmrs-header.is-scrolled .wmrs-logo img{ height:48px; }
  .wmrs-header__cta .wmrs-btn{ display:none; }
  .wmrs-menu-toggle{ width:40px; height:40px; }
  .wmrs-nav{ width:min(340px,100vw); right:0; padding:22px 18px; box-sizing:border-box; }
  .wmrs-hero{ padding-top:76px; }
  .wmrs-hero__stats{ gap:1px; }
  .wmrs-hero__stat{ padding:20px 12px; }
  .wmrs-hero__stat b{ font-size:1.7rem; }
  .wmrs-form{ padding:22px 16px; }
  .wmrs-form h3{ margin-top:0; }
  .wmrs-field input,.wmrs-field select,.wmrs-field textarea{ max-width:100%; box-sizing:border-box; }
  .wmrs-country-network{ min-height:470px; }
  .wmrs-country-network__core{ width:145px; height:145px; padding:18px; }
  .wmrs-country-network__core strong{ font-size:.9rem; }
  .wmrs-country-network__rings{ width:205px; height:205px; }
  .wmrs-country-network .wmrs-region-list{ align-content:space-between; }
  .wmrs-country-network .wmrs-region-badge{ max-width:100%; font-size:.68rem; }
  .wmrs-footer__logo{ height:68px; max-width:100%; }
}
@media (max-width:360px){
  .wmrs-container{ padding-left:14px; padding-right:14px; }
  .wmrs-logo img{ height:48px; }
  .wmrs-country-network{ min-height:500px; }
}

/* ========================================================================== 
   3.0 PROFESSIONAL DATA-FIRST REDESIGN
   ========================================================================== */
.wmrs-page-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#071f40 0%,#0a2e5c 58%,#0b7492 100%);color:#fff;padding:92px 0 84px}.wmrs-page-hero::before{content:"";position:absolute;inset:-30%;background:radial-gradient(circle at 75% 35%,rgba(95,211,218,.22),transparent 30%),linear-gradient(transparent 49.5%,rgba(255,255,255,.035) 50%,transparent 50.5%);background-size:auto,100% 46px;transform:rotate(-6deg)}.wmrs-page-hero .wmrs-container{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:60px;align-items:center}.wmrs-page-hero__copy{min-width:0}.wmrs-page-hero h1{color:#fff;font-size:clamp(2.8rem,6vw,4.7rem);margin:.15em 0 .2em;letter-spacing:-.045em}.wmrs-page-hero__copy p{max-width:680px;color:rgba(255,255,255,.78);font-size:1.06rem;line-height:1.8;margin:0}.wmrs-page-hero__signal{border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:28px;background:rgba(255,255,255,.06);box-shadow:0 30px 70px rgba(0,0,0,.2);backdrop-filter:blur(10px)}.wmrs-page-hero__signal span{font-family:var(--wmrs-font-mono);font-size:.66rem;letter-spacing:.16em;color:var(--wmrs-sky)}.wmrs-page-hero__signal strong{display:block;font-family:var(--wmrs-font-display);font-size:1.5rem;margin:8px 0 22px}.wmrs-page-hero__signal small{color:rgba(255,255,255,.62)}.wmrs-page-hero__signal-line{display:flex;gap:7px;margin-bottom:18px}.wmrs-page-hero__signal-line i{display:block;height:42px;flex:1;border-radius:999px;background:linear-gradient(to top,rgba(95,211,218,.18),rgba(95,211,218,.75));transform:skewX(-14deg)}.wmrs-page-hero__signal-line i:nth-child(2){height:58px;margin-top:-16px}.wmrs-page-hero__signal-line i:nth-child(3){height:76px;margin-top:-34px}.wmrs-page-hero__signal-line i:nth-child(4){height:50px;margin-top:-8px}

.wmrs-intelligence{border:1px solid var(--wmrs-line);border-radius:24px;background:#fff;box-shadow:0 24px 70px rgba(10,46,92,.08);overflow:hidden}.wmrs-intelligence__head{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;padding:34px 36px;border-bottom:1px solid var(--wmrs-line)}.wmrs-intelligence__head h2{margin:.2em 0 .25em}.wmrs-intelligence__head p{margin:0;color:var(--wmrs-ink-soft);max-width:640px}.wmrs-intelligence__kpis{display:grid;grid-template-columns:repeat(3,1fr);min-width:330px;border:1px solid var(--wmrs-line);border-radius:16px;overflow:hidden}.wmrs-intelligence__kpis div{padding:16px 14px;text-align:center;background:var(--wmrs-mist)}.wmrs-intelligence__kpis div+div{border-left:1px solid var(--wmrs-line)}.wmrs-intelligence__kpis b{display:block;font-family:var(--wmrs-font-display);font-size:1.5rem;color:var(--wmrs-navy)}.wmrs-intelligence__kpis span{display:block;font-size:.68rem;color:var(--wmrs-ink-soft);margin-top:3px}.wmrs-intelligence__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--wmrs-line)}.wmrs-data-panel{background:#fff;padding:28px 30px;min-width:0}.wmrs-data-panel--featured{background:linear-gradient(145deg,#fbfdff,#f5f9fd)}.wmrs-panel-label{font-family:var(--wmrs-font-mono);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--wmrs-blue)}.wmrs-data-panel h3{font-size:1.05rem;margin:9px 0 22px}.wmrs-data-list{display:grid;gap:15px}.wmrs-data-row{min-width:0}.wmrs-data-row__head{display:flex;gap:12px;justify-content:space-between;align-items:baseline;font-size:.78rem}.wmrs-data-row__head span{min-width:0;overflow-wrap:anywhere;color:var(--wmrs-ink)}.wmrs-data-row__head b{font-family:var(--wmrs-font-mono);font-size:.72rem;color:var(--wmrs-navy);flex:0 0 auto}.wmrs-data-track{height:8px;background:#e9eef5;border-radius:999px;overflow:hidden;margin-top:7px}.wmrs-data-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--wmrs-navy),var(--wmrs-sky))}.wmrs-data-empty{padding:18px;border:1px dashed var(--wmrs-line);border-radius:12px;color:var(--wmrs-ink-faint);font-size:.85rem}

.wmrs-placement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wmrs-placement-card{padding:22px;border:1px solid var(--wmrs-line);border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(10,46,92,.05)}.wmrs-placement-card__top{display:flex;justify-content:space-between;gap:16px;align-items:center;font-family:var(--wmrs-font-display);font-weight:600}.wmrs-placement-card__top span{min-width:0;overflow-wrap:anywhere}.wmrs-placement-card__top strong{font-family:var(--wmrs-font-mono);color:var(--wmrs-blue);font-size:1.1rem}.wmrs-placement-card__bar{height:9px;background:#edf2f7;border-radius:999px;overflow:hidden;margin:14px 0 9px}.wmrs-placement-card__bar i{display:block;height:100%;background:linear-gradient(90deg,var(--wmrs-blue),var(--wmrs-sky));border-radius:inherit}.wmrs-placement-card small{font-size:.68rem;color:var(--wmrs-ink-faint)}
.wmrs-card--premium{position:relative;overflow:hidden;min-height:260px;display:flex;flex-direction:column}.wmrs-card--premium::before{content:"";position:absolute;right:-50px;top:-50px;width:150px;height:150px;border:1px solid rgba(20,80,196,.1);border-radius:50%;box-shadow:0 0 0 22px rgba(23,169,201,.025),0 0 0 44px rgba(20,80,196,.02)}.wmrs-card__rule{margin-top:auto;width:54px;height:3px;border-radius:999px;background:var(--wmrs-gradient)}.wmrs-partnership-cta{position:relative;overflow:hidden}.wmrs-partnership-cta::before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(95,211,218,.14);border-radius:50%;left:-180px;top:-220px}.wmrs-partnership-cta::after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(95,211,218,.1);border-radius:50%;right:-100px;bottom:-170px}

/* Improve existing SVG chart fallback/readability if any legacy shortcode is used. */
.wmrs-chart-card .wmrs-chart-3d{overflow-x:auto;overflow-y:hidden}.wmrs-chart-card .wmrs-chart-3d__inner{min-width:560px}.wmrs-chart-card svg{max-width:100%;height:auto}.wmrs-chart-card h3{overflow-wrap:anywhere}

@media(max-width:900px){.wmrs-page-hero .wmrs-container{grid-template-columns:1fr;gap:28px}.wmrs-page-hero__signal{max-width:420px}.wmrs-intelligence__head{display:block}.wmrs-intelligence__kpis{margin-top:24px;max-width:460px}.wmrs-intelligence__grid{grid-template-columns:1fr}.wmrs-placement-grid{grid-template-columns:1fr}}
@media(max-width:640px){.wmrs-page-hero{padding:66px 0 58px}.wmrs-page-hero h1{font-size:clamp(2.35rem,12vw,3.4rem)}.wmrs-page-hero__signal{padding:22px}.wmrs-intelligence{border-radius:18px}.wmrs-intelligence__head{padding:25px 20px}.wmrs-intelligence__kpis{min-width:0;width:100%}.wmrs-data-panel{padding:24px 20px}.wmrs-placement-card{padding:18px}.wmrs-page-hero__copy p{font-size:.95rem}.wmrs-intelligence__kpis b{font-size:1.25rem}.wmrs-intelligence__kpis span{font-size:.62rem}}
@media(max-width:390px){.wmrs-intelligence__kpis{grid-template-columns:1fr}.wmrs-intelligence__kpis div+div{border-left:0;border-top:1px solid var(--wmrs-line)}}

/* Final polish: partnership CTA and site-wide cross-link navigation */
.wmrs-partnership-cta{border-top:1px solid var(--wmrs-border);}
.wmrs-cross-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px;}
.wmrs-cross-links .wmrs-btn{min-width:170px;}
@media(max-width:600px){.wmrs-cross-links{display:grid;grid-template-columns:1fr;width:min(100%,360px);margin-left:auto;margin-right:auto}.wmrs-cross-links .wmrs-btn{width:100%;}}
