:root{
--cm-primary:#233EE9;--cm-primary-hover:#1B33C7;--cm-primary-soft:#E7EAFC;--cm-primary-tint:#F0F2FD;
--cm-navy:#1E2A4A;--cm-sage:#6E8F7E;--cm-terracotta:#C15B4E;
--cm-bg:#F2F4F7;--cm-surface:#FFFFFF;--cm-border:#DCE2EA;--cm-text-2:#64748B;
--cm-font-display:"Unica One","Poppins",Georgia,serif;
--cm-font-body:"Poppins",system-ui,sans-serif;
--cm-radius-card:16px;--cm-radius-input:8px;--cm-radius-pill:999px;
--cm-shadow-card:0 1px 2px rgba(30,42,74,.04),0 4px 16px rgba(30,42,74,.06);
--cm-shadow-lift:0 2px 4px rgba(30,42,74,.06),0 12px 32px rgba(30,42,74,.10);
--cm-shadow-glass:0 8px 32px rgba(30,42,74,.12);
--cm-glass-bg:rgba(255,255,255,.82);--cm-glass-border:rgba(255,255,255,.6);
--cm-ease:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box}
body.cm-site{background:var(--cm-bg);color:var(--cm-navy);font-family:var(--cm-font-body);line-height:1.7;-webkit-font-smoothing:antialiased}
.cm-site a{color:var(--cm-primary);text-decoration:none}
.cm-site a:hover{color:var(--cm-primary-hover)}
.cm-h1,.cm-h2,.cm-hero-title{font-family:var(--cm-font-display);font-weight:400;line-height:1.1;letter-spacing:-.01em;color:var(--cm-navy);margin:0}
.cm-h1,.cm-hero-title{font-size:clamp(34px,6vw,58px)}
.cm-h2{font-size:clamp(28px,4.4vw,42px)}
.cm-h3{font-family:var(--cm-font-body);font-weight:600;font-size:clamp(18px,2vw,22px);line-height:1.3;color:var(--cm-navy);margin:0}
.cm-accent-italic{font-family:var(--cm-font-body);font-weight:300;font-style:italic;color:var(--cm-primary)}
.cm-body-lg{font-size:clamp(16px,1.5vw,19px);line-height:1.7;color:var(--cm-text-2)}
.cm-body{font-size:15px;line-height:1.7;color:var(--cm-text-2)}
.cm-section{padding:clamp(56px,8vw,112px) 0}
.cm-section-inner{max-width:1280px;margin:0 auto;padding:0 clamp(20px,5vw,48px)}

/* Eyebrow / badge */
.cm-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:var(--cm-surface);border:1px solid var(--cm-border);font:600 11px/1 var(--cm-font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--cm-text-2)}
.cm-badge{display:inline-flex;padding:5px 12px;border-radius:999px;font:600 11px/1 var(--cm-font-body);letter-spacing:.12em;text-transform:uppercase}
.cm-badge--ortho{background:var(--cm-primary-soft);color:var(--cm-primary)}
.cm-badge--trauma{background:rgba(193,91,78,.1);color:var(--cm-terracotta)}
.cm-badge--general{background:rgba(110,143,126,.12);color:var(--cm-sage)}

/* Buttons */
.cm-btn{display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:999px;font:600 15px/1 var(--cm-font-body);transition:background .2s var(--cm-ease),color .2s var(--cm-ease);cursor:pointer;border:1px solid transparent}
.cm-btn--primary{background:var(--cm-primary);color:#fff!important}
.cm-btn--primary:hover{background:var(--cm-primary-hover);color:#fff!important}
.cm-btn--ghost{background:transparent;border-color:var(--cm-border);color:var(--cm-navy)!important}
.cm-btn--ghost:hover{background:var(--cm-surface)}
.cm-btn--sm{padding:9px 18px;font-size:14px}
.cm-btn--white{background:#fff;color:var(--cm-primary)!important}
.cm-btn--white:hover{background:var(--cm-primary-tint)}

/* Cards */
.cm-card{background:var(--cm-bg);border:1px solid var(--cm-border);border-radius:var(--cm-radius-card);padding:clamp(24px,3vw,32px);transition:transform .2s var(--cm-ease),box-shadow .2s var(--cm-ease)}
.cm-card:hover{transform:translateY(-2px);box-shadow:var(--cm-shadow-lift)}
.cm-card--surface{background:var(--cm-surface)}
.cm-card--navy{background:var(--cm-navy);border-color:var(--cm-navy)}
.cm-card--navy .cm-h3{color:#fff}
.cm-card--navy .cm-body{color:rgba(255,255,255,.72)}
.cm-card--tint{background:var(--cm-primary-tint)}
.cm-card--primary{background:var(--cm-primary)}
.cm-stat-num{font-family:var(--cm-font-display);font-size:clamp(32px,4.4vw,48px);line-height:1;color:var(--cm-primary);margin:0 0 8px}

/* Header / nav */
.cm-header{position:sticky;top:0;z-index:500;background:var(--cm-glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--cm-border)}
.cm-header-inner{max-width:1280px;margin:0 auto;padding:10px clamp(20px,5vw,48px);min-height:72px}
.cm-header .elementor-widget-theme-site-logo img{height:32px;width:auto}
.cm-nav-menu .elementor-nav-menu{gap:2px;align-items:center}
.cm-nav-menu .elementor-item{padding:9px 15px!important;border-radius:999px!important;font:500 14px/1 var(--cm-font-body)!important;color:var(--cm-navy)!important;transition:background .15s var(--cm-ease)}
.cm-nav-menu .elementor-item:hover,.cm-nav-menu .elementor-item.elementor-item-active{background:var(--cm-primary-soft)!important;color:var(--cm-primary)!important}
.cm-nav-menu .elementor-item-active{background:var(--cm-primary-soft)!important;color:var(--cm-primary)!important}

/* Mega menu panel */
.cm-mega-trigger{position:relative}
.cm-mega-panel{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);width:min(760px,90vw);background:var(--cm-glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--cm-glass-border);box-shadow:var(--cm-shadow-glass);border-radius:var(--cm-radius-card);padding:28px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s var(--cm-ease),transform .2s var(--cm-ease);z-index:600}
.cm-mega-trigger:hover .cm-mega-panel,.cm-mega-trigger:focus-within .cm-mega-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.cm-mega-blurb{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:10px;transition:background .15s}
.cm-mega-blurb:hover{background:rgba(35,62,233,.06)}
.cm-mega-blurb-icon{flex:none;width:36px;height:36px;border-radius:999px;background:var(--cm-primary-soft);display:flex;align-items:center;justify-content:center;color:var(--cm-primary);font:600 14px/1 var(--cm-font-body)}
.cm-mega-blurb-title{font:600 14px/1.3 var(--cm-font-body);color:var(--cm-navy);margin:0 0 4px}
.cm-mega-blurb-text{font:400 13px/1.5 var(--cm-font-body);color:var(--cm-text-2);margin:0}
.cm-mega-video-frame{border-radius:12px;overflow:hidden;border:1px solid var(--cm-border)}
@media(max-width:1024px){.cm-mega-panel{position:static;transform:none!important;opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;border:none;background:transparent;backdrop-filter:none;display:none;padding:8px 0}}

/* Footer */
.cm-footer{background:var(--cm-navy);color:rgba(255,255,255,.72)}
.cm-footer .cm-h3{color:#fff}
.cm-footer a{color:rgba(255,255,255,.85)}
.cm-footer a:hover{color:#fff}
.cm-footer-logo img{height:30px}
.cm-footer-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px;padding:56px 0 32px}
.cm-footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding:20px 0;font-size:13px;color:rgba(255,255,255,.55)}

/* Forms */
.cm-form-row{margin-bottom:16px}
.cm-site label{display:block;font:600 13px/1 var(--cm-font-body);color:var(--cm-navy);margin-bottom:6px}
.wpforms-container input[type=text],.wpforms-container input[type=email],.wpforms-container input[type=tel],.wpforms-container textarea,.wpforms-container select{border:1px solid var(--cm-border)!important;border-radius:var(--cm-radius-input)!important;font-family:var(--cm-font-body)!important;padding:12px 14px!important}
.wpforms-container button[type=submit]{background:var(--cm-primary)!important;border-radius:999px!important;font:600 15px/1 var(--cm-font-body)!important;padding:14px 28px!important;border:none!important}
.wpforms-container button[type=submit]:hover{background:var(--cm-primary-hover)!important}

/* Off-canvas registration panel */
.cm-offcanvas .cm-h2{color:var(--cm-navy)}
.cm-reg-benefit{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px}
.cm-reg-benefit-dot{flex:none;width:8px;height:8px;border-radius:999px;background:var(--cm-primary);margin-top:8px}

/* Grid helpers */
.cm-grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.cm-grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:48px;align-items:center}
