/* round353: ManlyMovement brand (Palette A "Coastal Sand"). Loaded AFTER the other stylesheets on every page.
   Light blue #A9CFE0 (headers) · sand #F4EBDD (page) · light brown #D9BC98 (cards / secondary) · olive #566A2B (buttons, links) ·
   deep olive #3F4F1F (headings, dark surfaces) · brick #A33F2B (alerts and overdue ONLY). Track colors (blue / purple / yellow) are unchanged.
   Contrast checked: dark text on light blue 7.8, on sand 12.2; white on olive 6.0; white on brick 6.4; olive link on sand 5.1. */
:root{
  --navy:#3F4F1F; --navy-2:#566A2B;           /* the old "navy" role = deep olive (headings, dark surfaces, active tabs) */
  --red:#A33F2B;                               /* brick: alerts, overdue, errors */
  --brand-blue:#A9CFE0; --brand-blue-2:#C9E0EC; --brand-sand:#F4EBDD; --brand-brown:#D9BC98; --brand-olive:#566A2B; --brand-olive-d:#3F4F1F; --brand-ink:#23343B;
  --ink:#2B2A22; --muted:#4A4A3C; --light-bg:#F4EBDD; --border:#E0D2BA;
  --font-brand:ui-rounded,"SF Pro Rounded","Nunito","Quicksand","Trebuchet MS","Segoe UI",system-ui,sans-serif;
}
body{background:var(--brand-sand);color:var(--ink);}
h1,h2,h3,h4,.brand .name,.btn,.tab-btn,.section-title,.eyebrow,nav a,.mm-link,.ams-side-link{font-family:var(--font-brand);}
a{color:var(--brand-olive);} a:hover{color:var(--brand-olive-d);}

/* ---- public header ---- */
header.site-header,header.mm-header{background:var(--brand-blue);color:var(--brand-ink);border-bottom:3px solid var(--brand-olive);}
.brand a,.brand a:hover{color:var(--brand-ink);} .brand .tagline{color:var(--brand-olive-d);}
nav.main-nav a,nav.mm-nav a,nav.mm-nav .mm-mega-btn,nav.mm-nav .mm-btn-ghost{color:var(--brand-ink);}
nav.main-nav a:hover,nav.main-nav a.active,nav.mm-nav a[aria-current="page"],nav.mm-nav a.mm-link.active,nav.mm-nav a.mm-link:hover{color:var(--brand-olive-d);border-bottom-color:var(--brand-olive);}
nav.mm-nav .mm-btn-ghost:hover,nav.mm-nav .mm-btn-ghost[aria-current="page"]{color:var(--brand-olive-d);border-color:rgba(35,52,59,.45) !important;}
nav.mm-nav .mm-btn-outline{color:var(--brand-ink) !important;border-color:var(--brand-ink) !important;}
nav.mm-nav .mm-btn-outline:hover{background:var(--brand-ink);color:#fff !important;}
.menu-toggle{color:var(--brand-ink);}
header.mm-header a:focus-visible,header.mm-header button:focus-visible{outline-color:var(--brand-olive-d);}
.nav-cta,.btn-primary{background:var(--brand-olive);color:#fff !important;} .nav-cta:hover,.btn-primary:hover{background:var(--brand-olive-d);}
@media (max-width:800px){nav.main-nav{background:var(--brand-blue-2);border-bottom-color:var(--brand-olive);} nav.main-nav a{border-bottom-color:#9dbccb;}}
@media (max-width:760px){header.mm-header nav.mm-nav{background:var(--brand-blue-2);}}
.nav-sub{background:var(--brand-blue-2);border-top-color:var(--brand-olive);}
.redline{background:var(--brand-olive);}

/* ---- hero + page headers ---- */
.hero{background:linear-gradient(135deg,var(--brand-sand) 0%,#E7F0F2 100%);color:var(--ink);}
.hero h1,.hero h2{color:var(--brand-olive-d);} .hero p.lead,.hero p{color:var(--ink);} .eyebrow,.hero .eyebrow{color:var(--brand-olive);}
.hero .btn-outline{color:var(--brand-olive-d) !important;border-color:var(--brand-olive-d);} .hero .btn-outline:hover{background:rgba(63,79,31,.1);}
.hero-photo img{border-color:var(--brand-olive);}
.page-header{background:var(--brand-blue);color:var(--brand-ink);border-bottom:3px solid var(--brand-olive);}
.page-header h1,.page-header h2,.page-header h3{color:var(--brand-ink);} .page-header p,.page-header .ph-hdr-line,.page-header #account-info{color:var(--brand-ink);}
.page-header .eyebrow{color:var(--brand-olive-d);} .page-header a:not(.btn){color:var(--brand-olive-d);}
.page-header .ph-hdr-line a,.page-header .ph-hdr-line button{color:var(--brand-olive-d);}
.page-header .gs-strip,.page-header .ph-hdr-goal,.page-header .ph-hdr-goal-admin{background:#fff;}

/* ---- buttons, tabs, tables (dark surfaces = deep olive, white text) ---- */
.btn-navy,.membership-toggle-btn.active,table.data-table th,table.pay-table th,.pt-subtabs button[aria-pressed="true"],.mm-seg button[aria-pressed="true"],.sched-view-toggle button[aria-pressed="true"],.crm-subnav button.active,.hwr-tab[aria-selected="true"]{background:var(--brand-olive-d);color:#fff;}
a.pay-link:hover{background:var(--brand-olive);}
.exclusive-badge{background:var(--brand-olive) !important;color:#fff !important;}
/* inline "red" call-to-action buttons (Log session, Mark Session, ...) become olive; badges and dots keep brick */
button[style*="background:var(--red)"],button[style*="background: var(--red)"],a.btn[style*="background:var(--red)"],a.btn[style*="background: var(--red)"],.btn[style*="background:var(--red)"],.action-btn.save,.sched-nav-btn.sched-primary{background:var(--brand-olive) !important;color:#fff !important;}
.ph-bar-fill{background:var(--brand-olive) !important;}
.journey-step.is-current .journey-num{background:var(--brand-olive);}

/* ---- client portal / admin shells ---- */
body.ams-on{background:var(--brand-sand);}
body.ams-on .ams-side,body.ams-on .ams-topbar{background:var(--brand-blue);color:var(--brand-ink);}
body.ams-on .ams-side-title,body.ams-on .ams-topbar,body.ams-on .ams-iconbtn{color:var(--brand-ink);}
body.ams-on .ams-collapse,body.ams-on .ams-side-h{color:var(--brand-olive-d);}
body.ams-on .ams-side-link{color:var(--brand-ink);} body.ams-on .ams-side-link:hover{background:rgba(35,52,59,.1);color:var(--brand-ink);}
body.ams-on .ams-side-link.active{background:#fff;color:var(--brand-olive-d);}
.ams-badge{background:var(--red);}
.alert,.warn-bar{border-left-color:var(--red);}

/* ---- surfaces ---- */
.callout.yellow,.small-note{color:var(--muted);}
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--brand-olive);outline-offset:2px;}
::selection{background:var(--brand-brown);}
