/*
Theme Name: LEMMO Oncology
Theme URI: https://lemmo.com
Author: LEMMO Oncology
Description: Research and education focused WordPress theme for LEMMO Oncology.
Version: 1.4.3
Requires at least: 6.0
Text Domain: lemmo-oncology
*/
:root{--teal:#087f84;--navy:#193947;--cream:#f4f8f7;--ink:#26383e}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);line-height:1.7}a{color:var(--teal)}.wrap{max-width:1140px;margin:auto;padding:0 24px}.top{background:white;border-bottom:1px solid #e6eeee}.head{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:86px}.brand{font-size:25px;letter-spacing:.07em;font-weight:750;text-decoration:none;color:var(--navy)}.brand small{display:block;font-size:10px;letter-spacing:.19em;color:var(--teal)}.menu{display:flex;gap:20px;flex-wrap:wrap;list-style:none;padding:0;margin:0}.menu a{text-decoration:none;color:var(--navy);font-size:14px}.hero{background:linear-gradient(120deg,#e6f3f1,#f7f9f7);padding:100px 0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--teal);font-size:13px;font-weight:700}.hero h1{font-size:clamp(40px,6vw,72px);line-height:1.08;color:var(--navy);max-width:820px;margin:18px 0}.lead{font-size:21px;max-width:760px}.btn{display:inline-block;background:var(--teal);color:white;text-decoration:none;padding:13px 23px;border-radius:5px;font-weight:600;margin-top:15px}.section{padding:75px 0}.section.alt{background:var(--cream)}h2{font-size:clamp(27px,3vw,39px);line-height:1.2;color:var(--navy)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.panel{background:white;border:1px solid #dfe9e7;border-radius:9px;padding:25px}.panel h3{color:var(--navy)}.two{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}.muted{color:#536b71}.footer{background:var(--navy);color:#e8f3f3;padding:44px 0}.footer a{color:#bce8e5}.notice{font-size:13px;opacity:.9}.content{max-width:800px;padding-top:55px;padding-bottom:85px}.content h1{color:var(--navy);line-height:1.15}.portrait{border:2px dashed #a9c7c4;border-radius:10px;padding:65px 25px;text-align:center;color:#5d7478;background:#f3f8f7}@media(max-width:750px){.head{display:block;padding-top:18px;padding-bottom:18px}.menu{margin-top:15px;gap:12px}.grid,.two{grid-template-columns:1fr}.hero{padding:65px 0}}

/* Version 1.1 - founder photo and navigation refinements */
.hero .wrap{position:relative}.hero .lead{max-width:780px}.founder-section{background:#fff}.founder-portrait{margin:0;max-width:430px;background:#edf3f2;border-radius:16px;overflow:hidden;box-shadow:0 22px 45px rgba(25,57,71,.12)}.founder-portrait img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;filter:grayscale(100%)}.founder-portrait figcaption{padding:11px 18px;font-size:13px;color:#536b71;background:#f3f8f7}.founder-content{padding-top:12px}.founder-content h2{margin:12px 0 22px}.founder-content p{font-size:17px}.research-band{padding:25px 0;background:#e2f0ed;color:var(--navy)}.research-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}.research-band p{margin:0}.research-band a{font-weight:700}.plain-link{text-decoration-thickness:1px;text-underline-offset:4px}.note-small{font-size:14px;color:#526a70}.section .panel a{font-weight:650}.hero .eyebrow{margin-bottom:12px}.footer-brand{font-size:22px;letter-spacing:.08em}
@media(max-width:750px){.founder-portrait{max-width:350px}.research-band .wrap{display:block}.research-band a{display:inline-block;margin-top:10px}}

/* Patient inquiries CTA — v1.2.1 */
.patient-inquiries{background:#e7f3f1;border-top:1px solid #d5e9e5;border-bottom:1px solid #d5e9e5}.patient-inquiries-inner{display:flex;align-items:center;justify-content:space-between;gap:56px}.patient-inquiries-inner>div:first-child{max-width:740px}.patient-inquiries-inner h2{margin:10px 0 16px}.patient-inquiries-inner p{margin:0 0 13px}.patient-inquiries-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px;flex-shrink:0}.patient-inquiries-actions .btn{margin-top:0}.patient-phone{color:var(--navy);font-weight:650;text-decoration-thickness:1px;text-underline-offset:4px}@media(max-width:750px){.patient-inquiries-inner{flex-direction:column;align-items:stretch;gap:22px}.patient-inquiries-actions{align-items:flex-start}}


/* v1.2.2: balanced typography and accessibility.
   Uses local system fonts; no external font services or extra page weight. */
:root {
  --font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --font-heading: Georgia, "Times New Roman", serif;
}
body { font-family: var(--font-body); font-size: 16px; line-height: 1.65; }
h1, h2, h3 { color: var(--navy); overflow-wrap: break-word; }
h1, h2 { font-family: var(--font-heading); font-weight: 500; letter-spacing: -.025em; }
h2 { font-size: clamp(29px, 3.2vw, 40px); line-height: 1.18; margin: 0 0 22px; }
h3 { font-family: var(--font-body); font-size: clamp(19px, 1.65vw, 22px); line-height: 1.35; font-weight: 650; letter-spacing: -.01em; }
p { margin-top: 0; margin-bottom: 1.15em; }
.hero h1 { font-size: clamp(40px, 5.2vw, 66px); line-height: 1.1; letter-spacing: -.035em; max-width: 850px; }
.hero .lead { font-size: clamp(18px, 1.65vw, 21px); line-height: 1.58; }
.eyebrow { font-family: var(--font-body); font-size: 12px; line-height: 1.5; letter-spacing: .17em; }
.brand { font-family: var(--font-body); font-size: clamp(19px, 1.9vw, 24px); line-height: 1.15; letter-spacing: .045em; }
.brand small { margin-top: 5px; font-size: 9px; line-height: 1.5; letter-spacing: .13em; }
.menu a { font-size: 14px; font-weight: 550; line-height: 1.5; }
.menu a:hover, .menu a:focus-visible { color: var(--teal); text-decoration: underline; text-underline-offset: 4px; }
.founder-content p { font-size: 17px; line-height: 1.72; }
.panel p, .patient-inquiries p, .content p { line-height: 1.68; }
.btn { font-size: 15px; line-height: 1.4; font-weight: 650; text-align: center; }
.btn:hover { background: #066c70; }
a:focus-visible { outline: 3px solid #087f84; outline-offset: 4px; }
.content h1 { font-family: var(--font-heading); font-size: clamp(35px, 4.4vw, 52px); font-weight: 500; letter-spacing: -.03em; }
.patient-inquiries h2 { max-width: 740px; }
@media (max-width: 750px) {
  .hero h1 { font-size: clamp(36px, 9vw, 48px); }
  .hero .lead { font-size: 18px; }
  .section { padding: 56px 0; }
  .head { gap: 14px; }
  .menu { row-gap: 10px; }
  .menu a { font-size: 14px; }
  .panel { padding: 22px; }
}

/* v1.2.3: compact, legible navigation and direct patient inquiries link */
html { scroll-behavior: smooth; }
#patient-inquiries { scroll-margin-top: 20px; }
.menu { align-items: center; column-gap: 17px; row-gap: 10px; }
.menu a { display: inline-block; padding: 5px 0; }
.menu-item-patient-inquiries a { color: var(--teal); font-weight: 700; }
@media (max-width: 750px) {
  .head { padding-top: 20px; padding-bottom: 22px; }
  .brand { display: inline-block; margin-bottom: 6px; }
  .top nav { width: 100%; }
  .menu { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px 13px; margin: 15px 0 0; padding-top: 13px; border-top: 1px solid #e0eae8; }
  .menu li { min-width: 0; margin: 0; }
  .menu a { display: block; padding: 8px 2px; font-size: 13px; line-height: 1.35; overflow-wrap: anywhere; }
  .menu-item-patient-inquiries a { color: var(--teal); }
}

/* v1.2.6 — header balance at desktop and laptop widths */
@media (min-width: 751px) {
  .head { gap: 24px; }
  .head .brand { flex: 0 0 auto; white-space: nowrap; font-size: clamp(18px, 1.55vw, 22px); }
  .head .brand small { white-space: nowrap; font-size: 8px; letter-spacing: .09em; }
  .head nav { flex: 1 1 0%; min-width: 0; }
  .head .menu { justify-content: flex-end; column-gap: clamp(12px, 1.5vw, 21px); row-gap: 5px; }
  .head .menu a { white-space: nowrap; font-size: 13px; }
}
/* At intermediate widths, put the entire navigation below the brand,
   rather than squeezing the logo into multiple lines. */
@media (min-width: 751px) and (max-width: 1120px) {
  .head { flex-wrap: wrap; gap: 6px 16px; padding-top: 14px; padding-bottom: 14px; }
  .head nav { flex: 1 1 100%; }
  .head .menu { justify-content: flex-start; }
}
@media (max-width: 750px) {
  .brand { white-space: nowrap; font-size: clamp(18px, 5vw, 23px); }
  .brand small { letter-spacing: .09em; font-size: clamp(7px, 1.9vw, 9px); }
}
.research-band p { line-height: 1.5; }

/* About page: a clear, accessible external professional profile link */
.lemmo-sunridge-profile-link { color: #087f84; font-weight: 650; text-decoration: underline; text-underline-offset: 4px; }
.lemmo-sunridge-profile-link:hover { color: #065e64; }
.lemmo-sunridge-profile-link:focus-visible { outline: 3px solid #087f84; outline-offset: 3px; }

/* v1.3.0 — About-page spacing, scoped only to page ID 2014 */
body.page-id-2014 .content {
  padding-top: 42px;
  padding-bottom: 44px;
}
body.page-id-2014 .content article > h1 {
  margin: 0 0 26px;
  line-height: 1.12;
}
body.page-id-2014 .content article > .elementor {
  margin-top: 0;
}
body.page-id-2014 .content .elementor-widget-text-editor p {
  margin: 0 0 18px;
  line-height: 1.7;
}
body.page-id-2014 .content .elementor-widget-text-editor h3 {
  margin: 28px 0 12px;
}
body.page-id-2014 .content .elementor-widget-text-editor ul {
  margin: 8px 0 25px;
  padding-left: 26px;
}
body.page-id-2014 .content .elementor-widget-text-editor li {
  margin-bottom: 5px;
}
@media (max-width: 750px) {
  body.page-id-2014 .content { padding-top: 30px; padding-bottom: 30px; }
  body.page-id-2014 .content article > h1 { margin-bottom: 22px; }
}


/* v1.3.1 — Clinical experience, with a clear link to the Canadian clinic */
.lemmo-experience-note {
  color: var(--navy); font-size: clamp(15px,1.55vw,18px);
  line-height:1.55; max-width: 760px; margin: 0 0 12px;
}
.lemmo-experience-note strong { font-weight: 700; }
.lemmo-canadian-practice-link {
  display: inline-block; margin-top: 14px;
  font-weight: 650; text-underline-offset: 4px;
}

/* 1.3.2: subdued experience statement and about-page Canadian practice */
.lemmo-experience-note { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px 12px; margin:16px 0 23px; font-size:clamp(15px,1.45vw,17px); line-height:1.5; color:var(--navy); }
.lemmo-experience-kicker { font-weight:700; color:var(--teal); white-space:nowrap; }
.lemmo-experience-desc {font-weight:400; color:var(--ink);}
.lemmo-canadian-practice { margin:34px 0 18px; padding:23px 27px; border-left:4px solid var(--teal); background:#f4f8f7; border-radius:0 8px 8px 0; }
.lemmo-canadian-practice h3 {font-size:clamp(22px,2.3vw,27px); line-height:1.3; margin:0 0 11px; color:var(--navy);}
.lemmo-canadian-practice p {margin:0 0 11px; line-height:1.7; font-size:inherit;}
.lemmo-canadian-practice p:last-child {margin-bottom:0;}
.lemmo-canadian-practice a {color:var(--teal);font-weight:650;text-decoration:underline;text-underline-offset:3px;}
@media(max-width:650px){.lemmo-canadian-practice {padding:19px;margin-top:27px;}}


/* 1.3.4 Arizona patient-facing homepage. Scoped additions. */
.lemmo-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 23px;margin-top:3px}
.lemmo-hero-actions .btn{margin-top:0}
.lemmo-hero-secondary{color:var(--navy);font-weight:700;text-underline-offset:4px}
.lemmo-hero-note{max-width:750px;font-size:14px;color:#536b71;margin:17px 0 0}
.lemmo-patient-focus{background:#fff}
.lemmo-focus-intro{max-width:800px;font-size:18px}
.lemmo-patient-focus .panel{background:#f4f8f7}
.lemmo-patient-focus .panel h3{margin-top:0}
.lemmo-focus-note{margin:22px 0 0;font-size:14px;max-width:950px;color:#526a70}
@media (max-width:750px){.lemmo-hero-actions{align-items:stretch;flex-direction:column;gap:13px}.lemmo-hero-actions .btn{align-self:flex-start}.lemmo-focus-intro{font-size:16px}}

/* About-page fellowship credential */
.lemmo-fabno-credential{color:var(--navy);font-size:1.08rem;line-height:1.55;margin:0 0 2rem;}

/* v1.4.3: About biography link styling */
body.page-id-2014 .content a[href="https://www.lemmo.com/"] { color:var(--teal); text-decoration:underline; text-underline-offset:3px; }
