/* Shared ProMed brand: jade, lavender, gold and ivory. */
:root {
  --s0:#faf8f3; --s1:#eee8f7; --s2:#ffffff; --s3:#f4f0f8;
  --sg:rgba(250,248,243,.94);
  --e900:#123d35; --e800:#174d40; --e700:#246653; --e600:#247a68;
  --e500:#247a68; --e400:#1c6554; --e300:#246653; --e200:#123d35;
  --g400:#d4af52; --g300:#e7c877; --g500:#c39b3d;
  --n100:#202b28; --n200:#293c35; --n300:#40534b;
  --n400:#53635d; --n500:#59635e; --n600:#616861;
  --lavender:#67558c; --line:rgba(103,85,140,.19);
  --fs:'Bricolage Grotesque',system-ui,sans-serif;
  --fd:'DM Serif Display',Georgia,serif;
  --shmd:0 6px 24px rgba(18,61,53,.08);
  --shlg:0 20px 60px rgba(18,61,53,.14);
  --glow:0 12px 36px rgba(103,85,140,.12);
}
body { background:var(--s0); color:var(--n100); font-family:var(--fs); }
::selection { background:#dcd1ef; color:#123d35; }
:is(button,a,input,select,textarea):focus-visible { outline:3px solid #b18b31; outline-offset:4px; }
input[type=checkbox],input[type=radio] { accent-color:#247a68; }
input,select,textarea { color-scheme:light; }
.btn-em,.hctas .btn-em,#page-main>.nav .nctas .btn-em {
  background:linear-gradient(135deg,#e7c877,#d4af52); color:#123d35;
  box-shadow:0 5px 18px rgba(18,61,53,.12);
}
.btn-em:hover,.btn-gold:hover { background:#e7c877; color:#123d35; box-shadow:0 8px 24px rgba(212,175,82,.24); }
.btn-ghost { border-color:var(--line); }
.btn-ghost:hover { border-color:#67558c; background:#eee8f7; }
.inp,.typing-area { border-color:rgba(103,85,140,.3); }
.inp:focus,.typing-area:focus { border-color:#247a68; box-shadow:0 0 0 3px rgba(36,122,104,.12); }
.sec-ey,.svc-num { color:var(--lavender); }
.sec { scroll-margin-top:5rem; }
:is(.card,.pcard,.solcard,.svc,.wcard,.sec-card,.stage-card,.amodal-box,.faq-item,.thero-stat,.swchip,.glass) { border-color:var(--line); box-shadow:var(--shmd); }
.sec-alt { background:linear-gradient(145deg,#eee8f7,#f5f1fa); }
.ctaband { background:linear-gradient(135deg,#eee8f7,#faf8f3); border-color:var(--line); }
:is(.casecard,.roi-in,.roi-out,.scard,.tcard,.diff-wrap) { border-color:var(--line); box-shadow:var(--shmd); }
:is(.dtable th,.dtable td,.case-ch,.roi-rrow) { border-color:var(--line); }
.faq-grid { background:#dcd1ef; }
.tstrip-overlay { --n100:#faf8f3; --e400:#d4af52; background:linear-gradient(to top,rgba(18,61,53,.98),rgba(18,61,53,.7),transparent); }
.vplaceholder,.amodal-close { border-color:var(--line); }
.qopt.correct { color:#175d42; }
.qopt.wrong,.dxs { color:#a22a37; }
.tbar,.swrow { background:#f2edf7; border-color:var(--line); }
.swchip { background:#fff; }
.ptrack,.sp-seg { background:#dcd5e5; }
.qopt { border-color:var(--line); }
.qopt:hover,.qopt.sel { background:#e6f0ec; }
.bdg-gd { color:#735618; background:#fcf3d9; border-color:#d4af52; }
.bdg-lv { color:#175d42; background:#e1f0e8; }
.bdg-bl { color:#67558c; background:#eee8f7; }
.bdg-rd { color:#a22a37; background:#fff0f1; }
.notif { color:#40534b; background:#eee8f7; border-color:var(--line); }
.hero,.thero,.footer,.tnav,.nav,.mnav {
  --n100:#faf8f3; --n200:#f0eaf8; --n300:#e4e8e5; --n400:#ced9d3; --n500:#c3d1c9; --n600:#bbc9c1;
  --e400:#a9d8c8; --e300:#bce2d5; --e200:#d5eee5; --sg:rgba(18,61,53,.94);
  background:#123d35; color:var(--n100);
}
.hero { height:auto; min-height:100svh; max-height:none; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:2rem;
  background:radial-gradient(ellipse at 80% 15%,rgba(103,85,140,.42),transparent 50%),linear-gradient(125deg,#123d35,#174d40); }
.hero .hh1 em,.thero .hh1 em { color:#d4af52; }
.hero .sec-ey,.thero .sec-ey { color:#e7c877; }
.tnav .nlogo::before,.fl-logo::before { content:''; display:inline-block; width:32px; height:32px; vertical-align:middle; margin-right:.5rem; background:url('brand-mark.svg') center/contain no-repeat; }
.hero .hstat-ico { color:#e7c877; border-color:rgba(212,175,82,.5); }
.hero-img-grid { height:650px; max-height:75svh; min-height:500px; }
.himg-main { width:92%; height:100%; border-radius:28px; }
.hero-orbit { border-color:rgba(212,175,82,.45); border-left-color:transparent; border-bottom-color:transparent; height:80%; }
.hero-orbit .orb { background:#67558c; border-color:#d4af52; }
#page-main>.nav .nlogo::before { background:url('brand-mark.svg') center/contain no-repeat; filter:none; }
#page-main>.nav .nlogo .p3 { color:#d4af52; }
.nlogo,.tnav-back { min-height:44px; }
.va-card { width:300px; max-width:100%; background:rgba(250,248,243,.98); border:1px solid #d7cbe5; box-shadow:0 14px 42px rgba(0,0,0,.18); grid-template-columns:56px minmax(0,1fr); padding:.95rem; gap:.75rem; }
.va-card.pa { left:0; top:9%; width:300px; }
.va-card.bill { right:0; top:38%; width:300px; }
.va-card.admin { right:4%; bottom:5%; width:300px; }
.va-avatar { width:56px; height:56px; border-color:#d4af52; }
.va-title { color:#67558c; font-size:.75rem; line-height:1.4; }
.va-name { color:#123d35; font-size:1rem; font-weight:700; line-height:1.3; margin:.3rem 0; overflow-wrap:anywhere; }
.va-experience { color:#53635d; font-size:.76rem; line-height:1.5; }
.va-tag { background:#eee8f7; color:#67558c; font-size:.72rem; }
.va-dot { background:#247a68; box-shadow:none; width:7px; height:7px; }
.va-photo-note { position:absolute; left:12%; bottom:-1.8rem; color:#e4e8e5; font-size:.65rem; }
.footer { border-top:2px solid #d4af52; }
.tnav { background:rgba(18,61,53,.97); }
.thero { background:radial-gradient(ellipse at 90% 20%,rgba(103,85,140,.5),transparent 65%),#123d35; }
.amodal-box,.stage-card { border-top:3px solid #d4af52; }
.tv.show,.amodal-box,.stage-card { animation:brand-enter .38s var(--eout,cubic-bezier(.16,1,.3,1)) both; }
@keyframes brand-enter { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
.brand-reveal { opacity:0; transform:translateY(20px); transition:opacity .6s ease,transform .6s cubic-bezier(.16,1,.3,1); }
.brand-reveal.brand-visible { opacity:1; transform:none; }
.application-review { display:grid; gap:.65rem; margin-bottom:1.5rem; }
.review-row { padding:.85rem 1rem; background:#f4f0f8; border-radius:10px; overflow-wrap:anywhere; }
.review-row dt { color:#67558c; font-size:.75rem; font-weight:600; margin-bottom:.3rem; }
.review-row dd { margin:0; color:#202b28; font-size:.9rem; }
@media(max-width:1100px) { .hero { grid-template-columns:minmax(0,1fr) minmax(0,1fr); } .hh1 { font-size:clamp(2.5rem,4.6vw,3.6rem); } .va-card.pa,.va-card.bill,.va-card.admin { width:270px; } }
@media(max-width:900px) {
  .hero { grid-template-columns:1fr; padding:3rem 1.5rem; min-height:0; gap:2.5rem; }
  .hero-img-grid { display:block; max-height:none; height:580px; min-height:0; margin-bottom:1.5rem; }
  .himg-main { height:100%; }
  #page-main>.nav { background:#123d35; }
  .thero { gap:2rem; }
  .thero-right { display:block; }
}
@media(max-width:620px) {
  .hero { padding:2.5rem 1.1rem; }
  #page-main>.nav .nctas { display:none; }
  .hero-img-grid { height:auto; display:grid; gap:.75rem; }
  .himg-main { position:relative; width:100%; height:350px; }
  .hero-orbit { display:none; }
  .va-card.pa,.va-card.bill,.va-card.admin { position:relative; inset:auto; width:100%; transform:none; }
  .va-photo-note { position:static; margin:.25rem 0; }
  .hstats { grid-template-columns:1fr; }
  .hh1 { font-size:clamp(2.2rem,9vw,3rem); }
  .thero .hh1 { font-size:2.2rem!important; overflow-wrap:break-word; }
  .thero-imgwrap { height:340px; }
  .btn { white-space:normal; text-align:center; justify-content:center; }
  .stage-card { padding:1.35rem; }
  .thero-badge { right:0; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
