/*
Theme Name: Physios
Theme URI: https://example.com/physios
Author: Physios
Description: A modern, responsive physiotherapy resource theme for patients and physiotherapists.
Version: 1.0.0
Text Domain: physios
*/

:root {
    --ink: #16343a;
    --muted: #5b7376;
    --brand: #0d8b83;
    --brand-dark: #07645f;
    --mint: #e7f5f1;
    --sand: #fff8ed;
    --white: #ffffff;
    --line: #d9e5e2;
    --shadow: 0 20px 50px rgba(22, 52, 58, .1);
    --radius: 18px;
    --max-width: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    overflow-x: hidden;
    margin: 0;
    color: var(--ink);
    background: var(--white);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.7;
}
.ltr{
  text-align: left;
  direction: ltr;
}
.rtl, .translated-rtl{
  text-align: right;
  direction: rtl;
}
a { color: var(--brand-dark); text-decoration-thickness: 2px; text-underline-offset: 3px; }
a:hover { color: var(--brand); }
img { display: block; height: auto; max-width: 100%; }
.screen-reader-text { clip: rect(0, 0, 0, 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
.screen-reader-text:focus { background: #fff; clip: auto; clip-path: none; height: auto; left: 1rem; padding: .75rem 1rem; top: 1rem; width: auto; z-index: 100000; }
.container { margin: 0 auto; max-width: var(--max-width); padding: 0 1.25rem; }
.site-header { border-bottom: 1px solid var(--line); background: rgba(255,255,255,.96); position: sticky; top: 0; z-index: 20; }
.header-inner { align-items: center; display: flex; gap: 1.25rem; justify-content: space-between; max-width: 100%; min-height: 78px; min-width: 0; overflow: visible; }
.site-branding { flex: 0 1 auto; min-width: 0; }
.site-branding a > span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.site-branding a { align-items: center; color: var(--ink); display: flex; font-size: 1.4rem; font-weight: 800; gap: .65rem; text-decoration: none; }
.brand-mark { align-items: center; background: var(--brand); border-radius: 12px; color: #fff; display: inline-flex; font-size: 1.1rem; height: 38px; justify-content: center; width: 38px; }
.main-navigation { flex: 1 1 auto; min-width: 0; }
.main-navigation ul { align-items: center; display: flex; gap: clamp(.65rem,1.5vw,1.4rem); justify-content: center; list-style: none; margin: 0; padding: 0; }
.main-navigation a { color: var(--ink); font-size: .95rem; font-weight: 650; text-decoration: none; }
.main-navigation a:hover { color: var(--brand); }
.menu-toggle { align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 999px; color: var(--ink); cursor: pointer; display: none; flex: 0 0 auto; font: inherit; font-size: .82rem; font-weight: 800; gap: .45rem; padding: .55rem .9rem; transition: background .2s, border-color .2s, box-shadow .2s, color .2s; }
.menu-toggle i { color: var(--brand); font-size: .95rem; line-height: 1; }
.menu-toggle:hover, .menu-toggle[aria-expanded="true"] { background: var(--mint); border-color: #bfece3; color: var(--brand-dark); }
.menu-toggle:focus-visible, .header-ai-link:focus-visible, .button-header:focus-visible { box-shadow: 0 0 0 4px rgba(13,139,131,.18); outline: 2px solid var(--brand); outline-offset: 2px; }
.button, .wp-block-button__link { background: var(--brand); border: 0; border-radius: 999px; color: #fff; display: inline-block; font-weight: 750; padding: .75rem 1.2rem; text-decoration: none; transition: transform .2s, background .2s; }
.button:hover, .wp-block-button__link:hover { background: var(--brand-dark); color: #fff; transform: translateY(-2px); }
.button-header { font-size: .86rem; padding: .55rem .95rem; white-space: nowrap; }
.button-outline { background: transparent; border: 1px solid var(--brand); color: var(--brand-dark); }
.button-outline:hover { background: var(--mint); color: var(--brand-dark); }
.hero { background: radial-gradient(circle at 84% 20%, #bfece3 0, transparent 34%), linear-gradient(120deg, var(--mint), #f8fcfa 62%); padding: 6rem 0 5rem; }
.hero-grid { align-items: center; display: grid; gap: 3rem; grid-template-columns: 1.1fr .9fr; }
.home-hero { background: radial-gradient(circle at 80% 15%, rgba(191,236,227,.8), transparent 28%), linear-gradient(125deg,#e7f5f1 0%,#f8fcfa 58%,#fff8ed 100%);   padding: 6.5rem 0 5.5rem; position: relative; }
.home-hero-grid { align-items: center; display: grid; gap: 4rem; grid-template-columns: 1.05fr .95fr; }
.home-hero-copy > p:not(.eyebrow) { color: var(--muted); font-size: 1.15rem; max-width: 660px; }
.home-hero-copy h1 { max-width: 760px; }
.home-hero-visual { min-height: 420px; position: relative; }
.home-orb { border-radius: 50%; position: absolute; }
.home-orb-one { background: #bfece3; height: 290px; right: 4%; top: 2%; width: 290px; }
.home-orb-two { background: #f7d9a8; bottom: 5%; height: 120px; left: 3%; opacity: .7; width: 120px; }
.home-hero-panel { background: rgba(255,255,255,.92); border: 1px solid rgba(255,255,255,.8); border-radius: 25px; box-shadow: 0 25px 70px rgba(22,52,58,.15); padding: 2rem; position: absolute; right: 8%; top: 15%; transform: rotate(2deg); width: min(360px, 88%); z-index: 1; }
.home-hero-panel h2 { font-size: 1.7rem; }
.home-hero-panel a { border-top: 1px solid var(--line); display: block; font-weight: 750; padding: .8rem 0; text-decoration: none; }
.home-panel-icon { align-items: center; background: var(--brand); border-radius: 13px; color: #fff; display: flex; font-size: 1.7rem; height: 48px; justify-content: center; margin-bottom: 1.2rem; width: 48px; }
.home-trust { color: var(--brand-dark); display: flex; flex-wrap: wrap; font-size: .82rem; font-weight: 750; gap: 1.2rem; margin-top: 2rem; }
.pathway-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(3,1fr); }
.pathway-card { border-radius: 22px; min-height: 320px; padding: 1.8rem; position: relative; }
.pathway-patient { background: #e7f5f1; }.pathway-community { background: #fff8ed; }.pathway-pro { background: #102b30; color: #fff; }
.pathway-pro h3 { color: #fff; }.pathway-pro p:not(.eyebrow) { color: #cbdedb; }.pathway-pro a { color: #bfece3; }
.pathway-number { font-size: .8rem; font-weight: 850; opacity: .6; position: absolute; right: 1.5rem; top: 1.5rem; }
.pathway-card h3 { max-width: 260px; }
.pathway-card p:not(.eyebrow) { color: var(--muted); }
.pathway-card a { bottom: 1.7rem; font-weight: 800; position: absolute; text-decoration: none; }
.topic-grid { display: grid; gap: 1rem; grid-template-columns: repeat(6,1fr); }
.topic-card { border: 1px solid var(--line); border-radius: 17px; color: var(--ink); display: flex; flex-direction: column; gap: .35rem; padding: 1rem; text-decoration: none; transition: box-shadow .2s, transform .2s; }
.topic-card:hover { box-shadow: var(--shadow); transform: translateY(-3px); }
.community-home-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.community-home-card { background: #fff; border: 1px solid var(--line); border-radius: 22px; display: flex; flex-direction: column; min-height: 250px; padding: 1.5rem; transition: box-shadow .2s, transform .2s; }
.community-home-card:hover { box-shadow: var(--shadow); transform: translateY(-4px); }
.community-home-card-top { align-items: center; display: flex; justify-content: space-between; margin-bottom: 1.25rem; }
.community-home-icon { align-items: center; background: #e2f3ef; border-radius: 12px; color: var(--brand-dark); display: flex; font-size: 1.3rem; height: 2.5rem; justify-content: center; width: 2.5rem; }
.community-home-card h3 { font-size: 1.2rem; line-height: 1.3; margin: .3rem 0 .7rem; }
.community-home-card h3 a { color: var(--ink); text-decoration: none; }
.community-home-card > p:not(.eyebrow) { color: var(--muted); font-size: .92rem; line-height: 1.6; margin: 0 0 1.2rem; }
.community-home-card .text-link { color: var(--brand-dark); font-size: .85rem; font-weight: 800; margin-top: auto; text-decoration: none; }
.header-actions { align-items: center; display: flex; flex: 0 0 auto; gap: .7rem; }
.header-ai-link { align-items: center; background: linear-gradient(135deg,#f0fbf8,#fff8ed); border: 1px solid #cce9e2; border-radius: 999px; color: var(--brand-dark); display: inline-flex; font-size: .82rem; font-weight: 850; gap: .4rem; padding: .52rem .8rem; text-decoration: none; transition: background .2s, border-color .2s, box-shadow .2s, color .2s, transform .2s; white-space: nowrap; }
.header-ai-link i { color: #d48b2e; font-size: 1rem; }
.header-ai-link:hover { background: var(--mint); border-color: #9edbd0; box-shadow: 0 8px 18px rgba(13,139,131,.12); color: var(--brand-dark); transform: translateY(-1px); }
.home-ai-section { background: linear-gradient(135deg,#f3fbf8,#fff8ed); }
.home-ai-grid { align-items: center; display: grid; gap: 3rem; grid-template-columns: 1.2fr .8fr; }
.home-ai-grid h2 { font-size: clamp(2rem,4vw,3rem); margin: .4rem 0 1rem; max-width: 650px; }
.home-ai-grid p { color: var(--muted); line-height: 1.7; max-width: 650px; }
.home-ai-note { align-self: center; color: var(--brand-dark); font-size: .82rem; font-weight: 800; }
.home-ai-card { background: var(--ink); border-radius: 24px; box-shadow: var(--shadow); color: #fff; padding: 2rem; }
.home-ai-card-icon { align-items: center; background: #d8f1eb; border-radius: 14px; color: var(--brand-dark); display: flex; font-size: 1.5rem; height: 3rem; justify-content: center; margin-bottom: 1.25rem; width: 3rem; }
.home-ai-card strong { display: block; font-size: 1.3rem; }
.home-ai-card p { color: #c6ddda; font-size: .92rem; }
.home-ai-pills { display: flex; flex-wrap: wrap; gap: .5rem; }
.home-ai-pills span { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); border-radius: 999px; color: #e1f0ed; font-size: .72rem; padding: .4rem .65rem; }
.topic-card small { color: var(--muted); font-size: .75rem; }.topic-icon { align-items: center; background: var(--mint); border-radius: 10px; color: var(--brand-dark); display: flex; font-size: 1.2rem; height: 38px; justify-content: center; width: 38px; }
.home-community-band { background: var(--ink); color: #fff; padding: 5rem 0; }.home-community-grid { align-items: center; display: grid; gap: 4rem; grid-template-columns: 1.2fr .8fr; }.home-community-band h2 { color: #fff; max-width: 650px; }.home-community-band p:not(.eyebrow) { color: #cbdedb; max-width: 650px; }
.button-light-outline { border-color: #bfece3; color: #fff; }.button-light-outline:hover { background: #fff; color: var(--ink); }
.community-stat-card { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16); border-radius: 22px; padding: 2rem; }.community-stat-card strong,.community-stat-card span { display: block; }.community-stat-card span { color: #cbdedb; margin-top: .6rem; }.community-stat-line { display: flex; gap: .45rem; margin-top: 2.5rem; }.community-stat-line i { background: #6bcfc1; border-radius: 99px; display: block; height: 9px; width: 30px; }.community-stat-line i:nth-child(2) { background: #f7d9a8; width: 55px; }.community-stat-line i:nth-child(3) { width: 42px; }.community-stat-line i:nth-child(4) { background: #fff; width: 24px; }.community-stat-line i:nth-child(5) { background: #f7d9a8; width: 38px; }
.professional-card { border-top: 4px solid var(--brand); }
.home-final-cta { background: var(--sand); }
.eyebrow { color: var(--brand-dark); font-size: .78rem; font-weight: 800; letter-spacing: .13em; margin: 0 0 .8rem; text-transform: uppercase; }
h1, h2, h3 { line-height: 1.18; margin: 0 0 1rem; }
h1 { font-size: clamp(2.5rem, 5vw, 4.7rem); letter-spacing: -.04em; }
h2 { font-size: clamp(1.8rem, 3vw, 2.8rem); letter-spacing: -.025em; }
h3 { font-size: 1.3rem; }
.hero-copy { color: var(--muted); font-size: 1.12rem; max-width: 620px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.5rem; }
.hero-card { background: #fff; border-radius: 26px; box-shadow: var(--shadow); padding: 2rem; transform: rotate(2deg); }
.hero-card h3 { font-size: 1.55rem; }
.hero-card-list { border-top: 1px solid var(--line); list-style: none; margin: 1.5rem 0 0; padding: 1rem 0 0; }
.hero-card-list li { align-items: center; display: flex; gap: .7rem; margin: .65rem 0; }
.hero-card-list li::before { color: var(--brand); content: "✓"; font-weight: 900; }
.section { padding: 5rem 0; }
.section-soft { background: var(--sand); }
.section-heading { align-items: end; display: flex; gap: 2rem; justify-content: space-between; margin-bottom: 2rem; }
.section-heading p { color: var(--muted); margin: 0; max-width: 540px; }
.card-grid { display: grid; gap: 1.2rem; grid-template-columns: repeat(3, 1fr); }
.card { border: 1px solid var(--line); border-radius: var(--radius); padding: 1.5rem; transition: box-shadow .2s, transform .2s; }
.card:hover { box-shadow: var(--shadow); transform: translateY(-4px); }
.card-icon { align-items: center; background: var(--mint); border-radius: 12px; color: var(--brand-dark); display: flex; font-size: 1.35rem; height: 45px; justify-content: center; margin-bottom: 1rem; width: 45px; }
.card p, .entry-summary { color: var(--muted); }
.post-card { overflow: hidden; padding: 0; position: relative; }
.post-card-content { padding: 1.3rem 1.5rem 1.5rem; }
.post-card .post-thumbnail img { aspect-ratio: 16 / 9; object-fit: cover; width: 100%; }
.post-meta { color: var(--muted); font-size: .82rem; }
.post-card h3 { margin: .5rem 0; }
.post-card h3 a { color: var(--ink); text-decoration: none; }
.category-pill { background: var(--mint); border-radius: 0; color: var(--brand-dark); display: inline-block; font-size: 12px; font-weight: 100; padding: .25rem .7rem; position: absolute; left: 0; top: 0; }
span.category-pill a { text-decoration-thickness: 0; text-underline-offset: 0; text-decoration: none; }
.special-tests-archive { background: #f8fcfa; min-height: 70vh; }
.special-tests-hero { background: radial-gradient(circle at 88% 18%, rgba(191,236,227,.35), transparent 28%), linear-gradient(135deg, #e7f5f1, #fff8ed); border-bottom: 1px solid var(--line); overflow: hidden; padding: 5.25rem 0 4.5rem; }
.special-tests-hero-inner { align-items: center; display: flex; gap: 3rem; justify-content: space-between; }
.special-tests-hero-copy { max-width: 720px; }
.special-tests-hero-copy h1 { color: var(--ink); font-size: clamp(2.8rem, 6vw, 5.2rem); margin: .2rem 0 1rem; }
.special-tests-hero-copy > p:last-child { color: var(--muted); font-size: 1.08rem; margin: 0; max-width: 610px; }
.special-tests-hero-mark { align-items: center; background: var(--ink); border-radius: 50%; box-shadow: 0 20px 45px rgba(22,52,58,.16); color: #fff; display: flex; flex: 0 0 170px; flex-direction: column; height: 170px; justify-content: center; transform: rotate(7deg); }
.special-tests-hero-mark span { color: #bfece3; font-size: 4rem; font-weight: 300; line-height: 1; }
.special-tests-hero-mark small { color: #d7e7e4; font-size: .7rem; font-weight: 800; letter-spacing: .12em; margin-top: .6rem; text-transform: uppercase; }
.special-tests-results { padding-top: 3.5rem; }
.archive-filter { align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 12px 30px rgba(22,52,58,.06); display: flex; gap: 2rem; justify-content: space-between; margin-bottom: 2rem; padding: 1.2rem 1.35rem; }
.archive-filter .eyebrow { margin-bottom: .25rem; }
.archive-filter label { color: var(--ink); display: block; font-weight: 800; }
.archive-filter-controls { align-items: center; display: flex; gap: .65rem; min-width: min(100%, 430px); }
.archive-filter select { background: #fff; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); flex: 1; font: inherit; min-width: 0; padding: .72rem .8rem; }
.archive-filter select:focus { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(13,139,131,.14); outline: 0; }
.special-test-card { background: #fff; border-top: 4px solid var(--brand); display: flex; flex-direction: column; min-height: 300px; padding: 1.4rem 1.5rem 1.5rem; }
.special-test-card-top { align-items: center; display: flex; justify-content: space-between; margin-bottom: 1.35rem; }
.special-test-icon { align-items: center; background: var(--mint); border-radius: 12px; color: var(--brand-dark); display: inline-flex; font-size: 1.55rem; height: 44px; justify-content: center; width: 44px; }
.special-test-card-content { display: flex; flex: 1; flex-direction: column; }
.special-test-card h2 { font-size: 1.35rem; margin: .8rem 0 .55rem; }
.special-test-card h2 a { color: var(--ink); text-decoration: none; }
.special-test-card p:not(.eyebrow) { color: var(--muted); font-size: .93rem; line-height: 1.6; margin-top: 0; }
.special-test-link { align-items: center; display: flex; font-size: .88rem; font-weight: 800; gap: .45rem; margin-top: auto; padding-top: 1rem; text-decoration: none; }
.special-test-link span { font-size: 1.1rem; transition: transform .2s; }
.special-test-link:hover span { transform: translateX(4px); }
.special-tests-empty { background: #fff; border: 1px dashed #b7d8d1; border-radius: 18px; grid-column: 1 / -1; padding: 3rem; text-align: center; }
.special-tests-empty .special-test-icon { margin-bottom: 1rem; }
.special-tests-empty h2 { font-size: 1.5rem; }
.special-tests-empty p { color: var(--muted); margin: 0 auto; max-width: 480px; }
.cta { background: var(--ink); border-radius: 24px; color: #fff; padding: 3rem; }
.cta p { color: #cbdedb; max-width: 600px; }
.site-footer { background: radial-gradient(circle at 85% 10%,rgba(13,139,131,.3),transparent 28%), #102b30; color: #d7e7e4; padding: 5rem 0 1.5rem; }
.footer-grid { display: grid; gap: 3rem; grid-template-columns: 1.5fr 1fr 1fr; }
.site-footer h3 { color: #fff; font-size: 1rem; margin-bottom: 1rem; }
.site-footer a { color: #d7e7e4; text-decoration: none; transition: color .2s; }
.site-footer a:hover { color: #bfece3; }
.site-footer p { color: #b8ceca; max-width: 340px; }
.site-footer ul { list-style: none; margin: 0; padding: 0; }
.site-footer li { margin: .35rem 0; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.16); font-size: .85rem; margin-top: 2.5rem; padding-top: 1.25rem; }
.page-header { background: var(--mint); padding: 4rem 0; }
.blog-archive { background: #fbfdfc; }
.blog-archive-header { align-items: stretch; display: grid; gap: 3rem; grid-template-columns: minmax(0,1.15fr) minmax(280px,.85fr); margin-bottom: 2.5rem; padding: 1.5rem 0 1rem; }
.blog-archive-copy { max-width: 760px; padding: 2.5rem 0; }
.blog-archive-copy h1 { margin: .2rem 0 1.2rem; }
.blog-archive-lead { color: var(--ink); font-size: 1.25rem; line-height: 1.55; margin: 0 0 1rem; max-width: 680px; }
.blog-archive-intro { color: var(--muted); margin: 0; max-width: 650px; }
.blog-archive-note { background: var(--ink); border-radius: 24px; color: #fff; padding: 2rem; }
.blog-archive-note-icon { align-items: center; background: #bfece3; border-radius: 13px; color: var(--brand-dark); display: flex; font-size: 1.7rem; height: 48px; justify-content: center; margin-bottom: 1.5rem; width: 48px; }
.blog-archive-note .eyebrow { color: #bfece3; }
.blog-archive-note h2 { font-size: 1.7rem; }
.blog-archive-note p:last-child { color: #cbdedb; margin: 0; }
.blog-topic-nav { align-items: center; border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: .65rem; margin-bottom: 4rem; padding: 1rem 0; }
.blog-topic-label { color: var(--muted); font-size: .8rem; font-weight: 800; margin-right: .35rem; text-transform: uppercase; }
.blog-topic-nav a { align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 999px; color: var(--ink); display: inline-flex; font-size: .85rem; gap: .45rem; padding: .45rem .75rem; text-decoration: none; }
.blog-topic-nav a:hover { background: var(--mint); border-color: #bfece3; color: var(--brand-dark); }
.blog-topic-nav a span { color: var(--muted); font-size: .72rem; }
.blog-results-heading { margin-bottom: 2rem; }
.page-content { max-width: 820px; padding-bottom: 5rem; padding-top: 3rem; }
.content-grid { display: grid; gap: 3rem; grid-template-columns: minmax(0,1fr) 300px; }
.sidebar { align-self: start; background: linear-gradient(145deg,#e7f5f1,#f8fcfa); border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 16px 35px rgba(22,52,58,.08); padding: 1.4rem; position: sticky; top: 100px; }
.sidebar .widget + .widget { border-top: 1px solid rgba(22,52,58,.1); margin-top: 1.2rem; padding-top: 1.2rem; }
.sidebar ul { list-style: none; margin: 0; padding: 0; }
.sidebar li { border-bottom: 1px solid rgba(22,52,58,.1); padding: .7rem 0; }
.sidebar li:last-child { border-bottom: 0; }
.account-page-shell { background: linear-gradient(180deg,#f8fcfa 0%,#fff 42%); min-height: calc(100vh - 78px); padding-bottom: 5rem; }
.account-page-intro { border-bottom: 1px solid var(--line); padding: 3.5rem 0 2.5rem; }
.account-page-intro h1 { font-size: clamp(2.2rem,5vw,4rem); margin: .15rem 0 .45rem; }
.account-page-intro p:last-child { color: var(--muted); font-size: 1.05rem; margin: 0; max-width: 650px; }
.account-page-content {   padding-top: 0; }
.account-page-content > .card { margin: 0 auto; max-width: 760px; }
.account-page-content .physios-auth-shell { margin-top: 0; }
.account-page-content .physios-profile-tabs { max-width: none; }
.community-single-page { background: #f8fcfa; min-height: 70vh; padding-bottom: 5rem; }
.community-single-hero { background: radial-gradient(circle at 88% 15%,rgba(191,236,227,.22),transparent 28%), linear-gradient(135deg,#087d75,#16343a 78%); color: #fff; overflow: hidden; padding: 3rem 0 3.5rem; position: relative; }
.community-single-hero::after { border: 1px solid rgba(255,255,255,.12); border-radius: 50%; content: ""; height: 300px; position: absolute; right: -110px; top: -150px; width: 300px; }
.community-single-hero-inner { position: relative; }
.community-single-hero h1 { color: #fff; font-size: clamp(1.9rem,3.4vw,3.15rem); letter-spacing: -.025em; line-height: 1.12; margin: .75rem 0 1.3rem; max-width: 780px; }
.community-single-category { align-items: center; background: #d7feff; border-radius: 999px; color: #075e5a; display: inline-flex; font-size: .72rem; font-weight: 800; gap: .4rem; letter-spacing: .08em; margin-top: .5rem; padding: .4rem .75rem; text-transform: uppercase; }
.community-back-link { color: #d7e7e4; display: inline-block; font-size: .88rem; font-weight: 800; margin-bottom: 2rem; text-decoration: none; }
.community-back-link:hover { color: #fff; transform: translateX(-3px); }
.community-post-meta { border-top: 1px solid rgba(255,255,255,.16); color: #d7e7e4; display: flex; flex-wrap: wrap; font-size: .8rem; gap: .65rem 1.2rem; padding-top: 1rem; }
.community-post-meta span,.standard-single-meta span { align-items: center; display: inline-flex; gap: .4rem; }
.community-post-meta i { color: #bfece3; }
.community-single-layout { display: grid; gap: 2.5rem; grid-template-columns: minmax(0,760px) 280px; justify-content: center; margin-top: -1.25rem; position: relative; }
.community-single-content { background: #fff; border: 1px solid #e3eeeb; border-radius: 16px; box-shadow: 0 12px 30px rgba(22,52,58,.07); overflow: hidden; }
.community-single-image img { aspect-ratio: 16/7; object-fit: cover; width: 100%; }
.community-single-body { color: #34545a; font-size: 1rem; line-height: 1.8; padding: clamp(1.35rem,3.5vw,2.8rem); }
.community-reading-badge { align-items: center; background: #f0fbf8; border: 1px solid #d5eee8; border-radius: 999px; color: var(--brand-dark); display: inline-flex; font-size: .72rem; font-weight: 800; gap: .4rem; margin-bottom: 1.25rem; padding: .4rem .7rem; text-transform: uppercase; }
.community-single-body > p:first-child { color: var(--ink); font-size: 1.08rem; }
.community-single-body h2,.community-single-body h3,.community-single-body h4 { color: var(--ink); line-height: 1.3; margin: 2rem 0 .7rem; }
.community-single-body h2 { font-size: 1.55rem; }.community-single-body h3 { font-size: 1.25rem; }.community-single-body h4 { font-size: 1.05rem; }
.community-single-body ul,.community-single-body ol { margin: 1rem 0 1.35rem; padding-left: 1.35rem; }
.community-single-body li { margin: .4rem 0; padding-left: .25rem; }
.community-single-body li::marker { color: var(--brand); font-weight: 800; }
.community-single-body blockquote { background: #f1f8f6; border-left: 3px solid var(--brand); color: var(--ink); margin: 1.5rem 0; padding: 1rem 1.25rem; }
.community-single-body img { border-radius: 12px; height: auto; margin: 1.5rem auto; max-width: 100%; }
.community-single-body figure { margin: 1.5rem 0; }.community-single-body figcaption { color: var(--muted); font-size: .78rem; text-align: center; }
.community-single-body table { border-collapse: collapse; display: block; font-size: .88rem; margin: 1.5rem 0; max-width: 100%; overflow-x: auto; width: 100%; }
.community-single-body th { background: #eaf5f2; color: var(--ink); font-weight: 800; text-align: left; }
.community-single-body th,.community-single-body td { border: 1px solid #d8e8e4; padding: .7rem .8rem; vertical-align: top; }
.community-single-body tr:nth-child(even) td { background: #fbfdfc; }
.community-post-author { align-items: center; background: #f8fcfa; border: 0; border-top: 1px solid var(--line); display: flex; gap: 1rem; margin: 0; padding: 1.15rem clamp(1.35rem,3.5vw,2.8rem); }
.community-author-avatar { align-items: center; background: var(--brand); border-radius: 50%; color: #fff; display: flex; flex: 0 0 52px; font-size: 1.4rem; font-weight: 850; height: 52px; justify-content: center; }
.community-post-author strong { font-size: 1.05rem; }
.community-post-author p { color: var(--muted); margin: .15rem 0 0; }
.community-post-author small,.community-post-author strong,.community-post-author > span:last-child > span { display: block; }
.community-post-author small { color: var(--muted); font-size: .75rem; }
.community-author-arrow { color: var(--brand); font-size: 1.1rem; margin-left: auto; transition: transform .2s; }
.community-author-trigger { color: inherit; cursor: pointer; text-align: left; transition: border-color .2s, box-shadow .2s; }
.community-author-trigger:hover { border-color: var(--brand); box-shadow: 0 12px 28px rgba(20, 75, 72, .08); }
.community-author-trigger:hover .community-author-arrow { transform: translateX(4px); }
.community-author-trigger > span:last-child { display: grid; gap: .2rem; }
.community-author-trigger > span:last-child > span { color: var(--brand-dark); font-size: .8rem; font-weight: 750; }
.community-author-avatar img { border-radius: 50%; height: 100%; object-fit: cover; width: 100%; }
.community-sidebar-card { background: #fff; border: 1px solid #e3eeeb; border-radius: 16px; box-shadow: 0 10px 25px rgba(22,52,58,.06); padding: 1.25rem; position: sticky; top: 100px; }
.community-sidebar-card h2 { font-size: 1.2rem; line-height: 1.3; margin: .25rem 0 .6rem; }
.community-sidebar-card p:not(.eyebrow) { color: var(--muted); }
.community-sidebar-card-primary { background: linear-gradient(145deg,#f0fbf8,#fff); border-top: 3px solid var(--brand); box-shadow: 0 16px 35px rgba(22,52,58,.08); }
.community-sidebar-icon,.sidebar-heading-icon { align-items: center; background: var(--brand); border-radius: 13px; color: #fff; display: inline-flex; font-size: 1.25rem; height: 44px; justify-content: center; margin-bottom: .9rem; width: 44px; }
.community-sidebar-card .button { align-items: center; display: inline-flex; gap: .5rem; }
.community-sidebar-card-note { align-items: flex-start; background: #f7fbfa; display: flex; gap: .75rem; margin-top: 1rem; padding: 1rem; }
.community-sidebar-card-note > i { color: var(--brand); font-size: 1.2rem; }
.community-sidebar-card-note p { font-size: .8rem; margin: .25rem 0 0; }
.community-sidebar-meta { color: var(--muted); display: flex; flex-direction: column; font-size: .78rem; gap: .25rem; margin-top: 1rem; padding: 0 .25rem; }
.community-sidebar-meta span { align-items: center; display: flex; gap: .4rem; }
.community-sidebar-meta i { color: var(--brand); }
.standard-single-page { background: #f8fcfa; }
.standard-single-content { background: #fff; border: 1px solid #e3eeeb; border-radius: 16px; box-shadow: 0 12px 30px rgba(22,52,58,.07); overflow: hidden; }
.standard-single-heading { background: linear-gradient(145deg,#f0fbf8,#fff); border-bottom: 1px solid #e3eeeb; padding: clamp(1.5rem,3.5vw,2.8rem) clamp(1.35rem,3.5vw,2.8rem) 1.35rem; }
.standard-single-heading h1 { font-size: clamp(1.9rem,3.4vw,3.15rem); letter-spacing: -.025em; line-height: 1.12; margin: .55rem 0 1.1rem; max-width: 760px; }
.standard-single-meta { color: var(--muted); display: flex; flex-wrap: wrap; font-size: .84rem; gap: .75rem 1.25rem; }
.standard-single-meta i { color: var(--brand); }
.standard-single-thumbnail { margin: 0 1.5rem; overflow: hidden; border-radius: 18px; }
.standard-single-thumbnail img { aspect-ratio: 16/8; object-fit: cover; width: 100%; }
.standard-single-body { color: #34545a; font-size: 1rem; line-height: 1.8; max-width: none; padding: 1.25rem clamp(1.35rem,3.5vw,2.8rem) 2.8rem; }
.standard-single-body h2,.standard-single-body h3,.standard-single-body h4 { color: var(--ink); line-height: 1.3; margin: 2rem 0 .7rem; }
.standard-single-body h2 { font-size: 1.55rem; }.standard-single-body h3 { font-size: 1.25rem; }.standard-single-body h4 { font-size: 1.05rem; }
.standard-single-body ul,.standard-single-body ol { margin: 1rem 0 1.35rem; padding-left: 1.35rem; }
.standard-single-body li { margin: .4rem 0; padding-left: .25rem; }.standard-single-body li::marker { color: var(--brand); font-weight: 800; }
.standard-single-body img { border-radius: 12px; height: auto; margin: 1.5rem auto; max-width: 100%; }
.standard-single-body table { border-collapse: collapse;  font-size: .88rem; margin: 1.5rem 0; max-width: 100%; overflow-x: auto; width: 100%; }
.standard-single-body th { background: #eaf5f2; color: var(--ink); text-align: left; }.standard-single-body th,.standard-single-body td { border: 1px solid #d8e8e4; padding: .7rem .8rem; vertical-align: top; }
.standard-single-sidebar { background: linear-gradient(180deg,#f0fbf8,#fff); border: 1px solid #e3eeeb; border-radius: 16px; box-shadow: 0 10px 25px rgba(22,52,58,.06); padding: 1.25rem; }
.sidebar-heading { align-items: center; display: flex; gap: .75rem; margin-bottom: 1rem; }
.sidebar-heading-icon { flex: 0 0 44px; margin: 0; }
.sidebar-heading h2 { font-size: 1.35rem; margin: 0; }
.sidebar-heading .eyebrow { margin: 0; }
.sidebar-consultation-link { align-items: center; background: var(--ink); border-radius: 15px; color: #fff; display: flex; gap: .7rem; margin-top: 1.25rem; padding: 1rem; text-decoration: none; }
.sidebar-consultation-link > i:first-child { color: #bfece3; font-size: 1.2rem; }
.sidebar-consultation-link span { display: grid; flex: 1; }
.sidebar-consultation-link small { color: #cbdedb; }
.sidebar-consultation-link:hover { color: #fff; transform: translateY(-2px); }
.form-field { margin-bottom: 1rem; }
.form-field label { display: block; font-weight: 700; margin-bottom: .35rem; }
.form-field input, .form-field textarea, .form-field select { border: 1px solid var(--line); border-radius: 10px; font: inherit; padding: .75rem; width: 100%; }
.form-field textarea { min-height: 150px; resize: vertical; }
.notice { background: var(--mint); border-left: 4px solid var(--brand); border-radius: 8px; padding: 1rem 1.2rem; }
.pagination { display: flex; gap: .5rem; margin-top: 2rem; }
.pagination a, .pagination span { border: 1px solid var(--line); border-radius: 8px; padding: .45rem .75rem; text-decoration: none; }
.pagination .current { background: var(--brand); color: #fff; }
.alignwide { margin-left: auto; margin-right: auto; max-width: var(--max-width); }

@media (max-width: 800px) {
    .special-tests-hero { padding: 4rem 0 3.5rem; }
    .special-tests-hero-inner { align-items: flex-start; flex-direction: column; gap: 2rem; }
    .special-tests-hero-mark { flex-basis: 120px; height: 120px; width: 120px; }
    .special-tests-hero-mark span { font-size: 3rem; }
    .archive-filter { align-items: stretch; flex-direction: column; gap: 1rem; }
    .archive-filter-controls { min-width: 0; }
    .community-home-grid { grid-template-columns: 1fr; }
    .home-ai-grid { grid-template-columns: 1fr; }
    .menu-toggle { display: inline-flex; border-radius: 0;}
    .main-navigation { display: none; position: absolute; right: 1.25rem; top: 70px; }
    .main-navigation.is-open {
        background: #fff;
        border: 1px solid var(--line);
        border-radius: 12px;
        box-shadow: var(--shadow);
        display: block;
        padding: 1rem;
        width: 100%;
        max-width: 90%;
        padding: 4rem;
        margin: auto;
    }


    .main-navigation ul { align-items: flex-start; flex-direction: column; gap: .7rem; }
    .header-actions { gap: .45rem; margin-left: auto; margin-right: .7rem; }
    .header-ai-link {
        padding: .48rem .58rem;
        width: 40px;
        height: 35px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 0;
    }
    .button-header { font-size: .78rem; padding: .5rem .72rem; }
    .hero, .home-hero { padding: 4rem 0; margin-bottom: 4rem; }
    .hero-grid, .content-grid { grid-template-columns: 1fr; }
    .home-hero-grid, .home-community-grid { grid-template-columns: 1fr; }
    .home-hero-visual { min-height: 360px; }
    .topic-grid { grid-template-columns: repeat(3,1fr); }
    .pathway-grid { grid-template-columns: 1fr; }
    .hero-card { transform: none; }
    .card-grid { grid-template-columns: 1fr 1fr; }
    .sidebar { border-left: 0; border-top: 1px solid var(--line); padding-left: 0; padding-top: 1.5rem; }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .account-page-intro { padding: 2.5rem 0 2rem; }
    .account-page-content { padding-top: 1.25rem; }
    .community-single-layout { grid-template-columns: 1fr; margin-top: -1.5rem; }
    .community-single-sidebar { order: -1; }
    .community-sidebar-card { position: static; }
    .standard-single-thumbnail { margin: 0 1rem; }
    .standard-single-sidebar { position: static; }
}
@media (max-width: 1040px) and (min-width: 801px) {
    .header-inner { gap: .8rem; }
    .main-navigation ul { gap: .7rem; }
    .main-navigation a { font-size: .84rem; }
    .header-ai-link { font-size: .76rem; padding-left: .6rem; padding-right: .6rem; }
    .button-header { font-size: .78rem; padding-left: .7rem; padding-right: .7rem; }
}
@media (max-width: 520px) {
    .header-inner { gap: .45rem; min-height: 68px; padding-left: .8rem; padding-right: .8rem; }
    .site-branding a { font-size: 1.05rem; gap: .4rem; }
    .brand-mark { border-radius: 10px; font-size: .95rem; height: 32px; width: 32px; }
    .header-actions { gap: .35rem; margin-right: 0; }
    .header-ai-link { padding: .48rem .58rem; }
    .header-ai-link span { display: none; }
    .button-header { font-size: .72rem; padding: .48rem .6rem; }
    .main-navigation { right: .8rem; top: 64px; }
}

.contact-page { background: #fbfdfc; }
.contact-hero { background: radial-gradient(circle at 86% 12%, rgba(191,236,227,.45), transparent 27%), linear-gradient(130deg, #e7f5f1, #fff8ed); padding: 5.5rem 0 4.5rem; }
.contact-hero-grid { align-items: center; display: grid; gap: 4rem; grid-template-columns: minmax(0,1fr) 330px; }
.contact-hero h1 { font-size: clamp(2.7rem, 6vw, 5rem); max-width: 720px; }
.contact-hero p:not(.eyebrow) { color: var(--muted); font-size: 1.14rem; max-width: 620px; }
.contact-hero-card { background: var(--ink); border-radius: 24px; box-shadow: 0 24px 55px rgba(22,52,58,.15); color: #fff; display: flex; flex-direction: column; gap: .75rem; padding: 2rem; transform: rotate(2deg); }
.contact-hero-card span:last-child { color: #cbdedb; font-size: .9rem; }
.contact-hero-icon { align-items: center; background: #bfece3; border-radius: 14px; color: var(--brand-dark); display: flex; font-size: 1.6rem; height: 50px; justify-content: center; width: 50px; }
.contact-content { display: grid; gap: 5rem; grid-template-columns: minmax(260px,.75fr) minmax(0,1.25fr); padding-bottom: 6rem; padding-top: 5rem; }
.contact-info { padding-top: 1rem; }
.contact-info h2 { font-size: clamp(1.8rem, 3vw, 2.6rem); }
.contact-info > p:not(.eyebrow) { color: var(--muted); }
.contact-promise { align-items: flex-start; border-top: 1px solid var(--line); display: flex; gap: 1rem; margin-top: 1.5rem; padding-top: 1.25rem; }
.contact-promise > span { color: var(--brand); font-size: .8rem; font-weight: 850; }
.contact-promise strong, .contact-promise small { display: block; }
.contact-promise small { color: var(--muted); font-size: .84rem; margin-top: .2rem; }
.contact-form-shell { min-width: 0; }
.contact-form-card { background: #fff; border: 1px solid var(--line); border-radius: 24px; box-shadow: var(--shadow); padding: clamp(1.5rem,4vw,2.5rem); }
.contact-form-heading { align-items: flex-start; display: flex; justify-content: space-between; }
.contact-form-heading h2 { margin-bottom: 1.25rem; }
.contact-step-count { color: var(--brand-dark); font-size: .8rem; font-weight: 850; padding-top: .35rem; }
.contact-progress { background: var(--mint); border-radius: 99px; height: 6px; margin-bottom: 2rem; overflow: hidden; }
.contact-progress span { background: var(--brand); border-radius: inherit; display: block; height: 100%; transition: width .25s ease; width: 33.333%; }
.contact-step label { display: block; font-weight: 800; margin-bottom: .45rem; }
.contact-step input, .contact-step textarea { border: 1px solid var(--line); border-radius: 12px; color: var(--ink); font: inherit; padding: .85rem 1rem; width: 100%; }
.contact-step input:focus, .contact-step textarea:focus { border-color: var(--brand); box-shadow: 0 0 0 4px rgba(13,139,131,.12); outline: 0; }
.contact-step textarea { min-height: 170px; resize: vertical; }
.contact-step label + input + label { margin-top: 1.25rem; }
.contact-help { color: var(--muted); font-size: .82rem; margin: .55rem 0 0; }
.contact-form-actions { display: flex; gap: .7rem; justify-content: flex-end; margin-top: 2rem; }
.contact-form-actions [hidden] { display: none; }
.contact-form-alert { border-radius: 10px; font-size: .88rem; margin-bottom: 1rem; padding: .75rem 1rem; }
.contact-form-alert.is-error { background: #fff0ef; color: #9b3d35; }
.contact-locked { background: linear-gradient(145deg, #e7f5f1, #fff8ed); border: 1px solid #bfece3; border-radius: 18px; padding: 2.5rem; text-align: center; }
.contact-locked-icon { align-items: center; background: var(--brand); border-radius: 50%; color: #fff; display: flex; font-size: 1.4rem; height: 52px; justify-content: center; margin: 0 auto 1.25rem; width: 52px; }
.contact-locked h2 { margin-bottom: .7rem; }
.contact-locked p:last-child { color: var(--muted); margin: 0 auto; max-width: 430px; }
.physios-admin-toolbar { align-items: center; display: flex; gap: 12px; margin: 18px 0; }
.physios-admin-toolbar [data-contact-admin-status] { color: #2271b1; font-weight: 600; }
.physios-message-preview { max-height: 65px; overflow: auto; white-space: pre-wrap; }
.physios-message-status { border-radius: 999px; display: inline-block; font-size: 11px; font-weight: 700; padding: 3px 8px; text-transform: uppercase; }
.physios-message-status.is-unread { background: #fff3cd; color: #856404; }
.physios-message-status.is-replied { background: #d1e7dd; color: #0f5132; }
.physios-reply-box { margin-top: 10px; min-width: 220px; }
.physios-reply-box textarea { display: block; min-height: 90px; margin-bottom: 7px; width: 100%; }
.physios-admin-messages { position: relative; }
.physios-admin-eyebrow { color: var(--brand-dark); display: block; font-size: .7rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.physios-reply-sidebar { background: #fff; border-left: 1px solid var(--line); box-shadow: -14px 0 35px rgba(22,52,58,.12); height: calc(100vh - 32px); max-width: 430px; padding: 26px; position: fixed; right: 0; top: 32px; transform: translateX(105%); transition: transform .25s ease; width: min(430px, calc(100vw - 30px)); z-index: 1001; }
.physios-reply-sidebar.is-open { transform: translateX(0); }
.physios-reply-sidebar-head { align-items: flex-start; display: flex; gap: 1rem; justify-content: space-between; margin-bottom: 1.5rem; }
.physios-reply-sidebar-head h2 { font-size: 1.35rem; margin: .35rem 0 0; }
.physios-reply-sidebar-head .button-link { color: #5b7376; font-size: 1.7rem; line-height: 1; padding: 0; }
.physios-reply-recipient { background: var(--mint); border-radius: 10px; color: var(--brand-dark); font-size: .82rem; margin-bottom: 1.2rem; overflow-wrap: anywhere; padding: .75rem; }
.physios-reply-sidebar label { display: block; font-weight: 700; margin-bottom: .4rem; }
.physios-reply-sidebar textarea { border: 1px solid var(--line); border-radius: 10px; display: block; min-height: 230px; padding: .8rem; resize: vertical; width: 100%; }
.physios-reply-sidebar textarea:focus { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(13,139,131,.13); outline: 0; }
.physios-reply-sidebar-actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1rem; }
.physios-reply-sidebar-actions .button { white-space: normal; }
.physios-sidebar-status { color: var(--brand-dark); font-size: .82rem; margin-top: 1rem; }
.about-page { background: #fbfdfc; }
.about-hero { background: radial-gradient(circle at 82% 12%, rgba(191,236,227,.6), transparent 28%), linear-gradient(130deg, #e7f5f1, #fff8ed); overflow: hidden; padding: 6.5rem 0 5.5rem; }
.about-hero-grid { align-items: center; display: grid; gap: 4rem; grid-template-columns: minmax(0,1.05fr) minmax(300px,.95fr); }
.about-hero-copy h1 { font-size: clamp(2.8rem, 6vw, 5.4rem); max-width: 760px; }
.about-hero-copy > p:not(.eyebrow) { color: var(--muted); font-size: 1.15rem; max-width: 650px; }
.about-hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }
.about-hero-visual { min-height: 390px; position: relative; }
.about-orbit { border-radius: 50%; position: absolute; }
.about-orbit-one { background: #bfece3; height: 300px; right: 7%; top: 1%; width: 300px; }
.about-orbit-two { background: #f7d9a8; bottom: 5%; height: 130px; left: 6%; opacity: .8; width: 130px; }
.about-hero-card { background: rgba(255,255,255,.94); border: 1px solid rgba(255,255,255,.85); border-radius: 26px; box-shadow: 0 25px 65px rgba(22,52,58,.16); padding: 2.25rem; position: absolute; right: 9%; top: 18%; transform: rotate(4deg); width: min(340px, 88%); z-index: 1; }
.about-hero-symbol { align-items: center; background: var(--brand); border-radius: 14px; color: #fff; display: flex; font-size: 2rem; height: 56px; justify-content: center; width: 56px; }
.about-hero-card p { font-size: 1.45rem; font-weight: 750; line-height: 1.35; margin: 2rem 0; }
.about-hero-line { background: var(--sand); display: block; height: 10px; width: 78%; }
.about-introduction { background: #fff; }
.about-introduction-grid { display: grid; gap: 4rem; grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.about-introduction h2 { font-size: clamp(2rem, 4vw, 3.2rem); }
.about-introduction-copy { color: var(--muted); font-size: 1.05rem; padding-top: .5rem; }
.about-values { background: var(--sand); }
.about-values-grid { display: grid; gap: 1.2rem; grid-template-columns: repeat(3, 1fr); }
.about-value-card { border-radius: 22px; min-height: 300px; padding: 1.8rem; position: relative; }
.about-value-mint { background: var(--mint); }.about-value-sand { background: #fff; }.about-value-dark { background: var(--ink); color: #fff; }
.about-value-dark p { color: #cbdedb; }
.about-value-number { font-size: .8rem; font-weight: 850; opacity: .6; position: absolute; right: 1.5rem; top: 1.5rem; }
.about-value-icon { align-items: center; background: rgba(255,255,255,.65); border-radius: 13px; color: var(--brand-dark); display: flex; font-size: 1.5rem; height: 50px; justify-content: center; margin-bottom: 2.2rem; width: 50px; }
.about-value-dark .about-value-icon { background: rgba(191,236,227,.16); color: #bfece3; }
.about-value-card h3 { font-size: 1.4rem; }
.about-value-card p { color: var(--muted); max-width: 280px; }
.about-authors { background: #fbfdfc; }
.about-author-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(2, 1fr); }
.about-author-card { align-items: flex-start; background: #fff; border: 1px solid var(--line); border-radius: 22px; display: flex; gap: 1.3rem; padding: 1.8rem; }
.about-author-card-featured { border-top: 4px solid var(--brand); }
.about-author-avatar { align-items: center; background: var(--mint); border-radius: 18px; color: var(--brand-dark); display: flex; flex: 0 0 76px; font-size: 1.15rem; font-weight: 850; height: 76px; justify-content: center; letter-spacing: .04em; }
.about-author-card h3 { font-size: 1.45rem; margin: .25rem 0 .55rem; }
.about-author-card p:last-child { color: var(--muted); margin: 0; }
.about-final-cta { background: var(--ink); color: #fff; padding: 4rem 0; }
.about-final-cta-inner { align-items: center; display: flex; gap: 2rem; justify-content: space-between; }
.about-final-cta h2 { font-size: clamp(1.8rem, 3vw, 2.8rem); max-width: 700px; }
.about-final-cta .eyebrow { color: #bfece3; }
.button-light-outline { border-color: #bfece3; color: #fff; white-space: nowrap; }
.footer-social { align-items: center; border-top: 1px solid rgba(255,255,255,.16); display: flex; gap: 1.25rem; justify-content: space-between; margin-top: 2.5rem; padding-top: 1.25rem; }
.footer-social-label { color: #d7e7e4; font-size: .82rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.footer-social-links { display: flex; flex-wrap: wrap; gap: .55rem; }
.footer-social-links a { align-items: center; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.16); border-radius: 50%; color: #d7e7e4; display: inline-flex; font-size: 1rem; height: 38px; justify-content: center; text-decoration: none; transition: background .2s, color .2s, transform .2s; width: 38px; }
.footer-social-links a:hover { background: #bfece3; color: var(--ink); transform: translateY(-2px); }
@media (max-width: 800px) {
    .about-hero-grid, .about-introduction-grid { grid-template-columns: 1fr; }
    .about-hero-grid { gap: 2rem; }
    .about-hero-visual { min-height: 330px; }
    .about-values-grid, .about-author-grid { grid-template-columns: 1fr; }
    .about-final-cta-inner { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 520px) {
    .footer-social { align-items: flex-start; flex-direction: column; gap: .8rem; }
}
@media (max-width: 800px) {
    .contact-hero-grid, .contact-content { grid-template-columns: 1fr; }
    .contact-hero-grid { gap: 2rem; }
    .contact-hero-card { max-width: 390px; transform: none; }
    .contact-content { gap: 2.5rem; padding-bottom: 4rem; padding-top: 3.5rem; }
}

@media (max-width: 700px) {
    .community-single-hero { padding: 1.8rem 0 2.2rem; }
    .community-single-hero h1,.standard-single-heading h1 { font-size: 1.7rem; }
    .community-single-layout { display: flex; flex-direction: column; gap: 1rem; margin-top: -.5rem; }
    .community-single-content,.community-single-sidebar,.standard-single-content,.standard-single-sidebar { width: 100%; }
    .community-single-sidebar { order: 2; }
    .community-sidebar-card { position: static; }
    .standard-single-thumbnail { margin: 0 .85rem; }
    .community-single-body,.standard-single-body { font-size: .94rem; }
}
@media (max-width: 420px) {
    .community-single-body,.standard-single-body { font-size: .9rem; }
    .community-post-meta { align-items: flex-start; flex-direction: column; }
}

/* Editorial single-post system */
.community-single-page,
.standard-single-page { background: #f5f9f8; }
.community-single-hero { background: #123f43; padding: 2.25rem 0 2.6rem; }
.community-single-hero::after { border-color: rgba(191,236,227,.14); height: 240px; right: -100px; top: -130px; width: 240px; }
.community-single-hero h1,
.standard-single-heading h1 { font-size: clamp(1.7rem,3vw,2.8rem); letter-spacing: -.02em; max-width: 700px; }
.community-back-link { font-size: .8rem; margin-bottom: 1.25rem; }
.community-single-category { font-size: .66rem; padding: .32rem .6rem; }
.community-post-meta { font-size: .74rem; gap: .5rem .9rem; padding-top: .8rem; }
.community-single-layout { align-items: start; gap: 1.5rem; grid-template-columns: minmax(0,720px) 248px; margin-top: -1rem; }
.community-single-content,
.standard-single-content { border-radius: 12px; box-shadow: 0 8px 24px rgba(22,52,58,.06); }
.community-single-image img { aspect-ratio: 2.2/1; }
.community-single-body,
.standard-single-body { font-size: .94rem; line-height: 1.75; }
.community-single-body > p:first-child { font-size: 1rem; }
.community-single-body h2,.standard-single-body h2 { font-size: 1.35rem; }
.community-single-body h3,.standard-single-body h3 { font-size: 1.1rem; }
.community-single-body h4,.standard-single-body h4 { font-size: .98rem; }
.community-single-body h2,.community-single-body h3,.community-single-body h4,
.standard-single-body h2,.standard-single-body h3,.standard-single-body h4 { margin-top: 1.6rem; }
.community-single-body ul,.community-single-body ol,
.standard-single-body ul,.standard-single-body ol { margin: .85rem 0 1.1rem; padding-left: 1.2rem; }
.community-single-body li,.standard-single-body li { margin: .25rem 0; }
.community-single-body table,.standard-single-body table { font-size: .78rem; }
.community-single-body th,.community-single-body td,
.standard-single-body th,.standard-single-body td { padding: .55rem .65rem; }
.community-single-body pre,.standard-single-body pre { background: #123f43; border-radius: 8px; color: #e7f5f1; overflow-x: auto; padding: 1rem; font-size: .78rem; }
.community-single-body code,.standard-single-body code { background: #edf5f3; border-radius: 4px; color: #075e5a; font-size: .88em; padding: .12rem .3rem; }
.community-single-body pre code,.standard-single-body pre code { background: transparent; color: inherit; padding: 0; }
.community-sidebar-card,
.standard-single-sidebar { border-radius: 12px; box-shadow: 0 8px 22px rgba(22,52,58,.05); font-size: .82rem; padding: 1rem; }
.community-sidebar-card h2 { font-size: 1.05rem; }
.community-sidebar-card p:not(.eyebrow) { font-size: .82rem; line-height: 1.55; }
.community-sidebar-icon,.sidebar-heading-icon { border-radius: 10px; font-size: 1rem; height: 36px; margin-bottom: .65rem; width: 36px; }
.community-sidebar-card-note { font-size: .78rem; }
.community-sidebar-meta { font-size: .7rem; }
.standard-single-heading { padding: clamp(1.25rem,3vw,2.25rem); }
.standard-single-heading h1 { margin-bottom: .9rem; }
.standard-single-meta { font-size: .76rem; gap: .5rem .9rem; }
.standard-author-trigger { align-items: center; background: transparent; border: 0; color: inherit; cursor: pointer; display: inline-flex; font: inherit; gap: .35rem; padding: 0; }
.standard-author-trigger:hover { color: var(--brand); }
.standard-author-trigger:focus-visible { border-radius: 4px; outline: 2px solid var(--brand); outline-offset: 3px; }
.standard-author-trigger .bi-arrow-up-right { font-size: .7rem; }
.standard-single-thumbnail { border-radius: 12px; margin: 0 1.25rem; }
.standard-single-body { padding: 1.1rem clamp(1.25rem,3vw,2.25rem) 2.4rem; }
.standard-single-sidebar { background: #fff; }
.sidebar-heading h2 { font-size: 1.05rem; }
.sidebar-heading .eyebrow { font-size: .65rem; }
.sidebar-consultation-link { font-size: .78rem; padding: .8rem; }
.sidebar-consultation-link small { font-size: .7rem; }
@media (max-width: 900px) {
    .community-single-layout { grid-template-columns: minmax(0,1fr) 220px; }
}
@media (max-width: 700px) {
    .community-single-hero { padding: 1.8rem 0 2.2rem; }
    .community-single-hero h1,.standard-single-heading h1 { font-size: 1.7rem; }
    .community-single-layout { display: flex; flex-direction: column; gap: 1rem; margin-top: -.5rem; }
    .community-single-content,.community-single-sidebar,.standard-single-content,.standard-single-sidebar { width: 100%; }
    .community-single-sidebar { order: 2; }
    .community-sidebar-card { position: static; }
    .community-sidebar-card-primary { display: grid; gap: .35rem; grid-template-columns: 38px 1fr; }
    .community-sidebar-card-primary .community-sidebar-icon { grid-row: span 3; }
    .community-sidebar-card-primary .eyebrow,.community-sidebar-card-primary h2,.community-sidebar-card-primary p,.community-sidebar-card-primary .button { grid-column: 2; }
    .community-sidebar-card-primary .button { justify-self: start; }
    .community-sidebar-card-note { margin-top: .75rem; }
    .standard-single-thumbnail { margin: 0 .85rem; }
}
@media (max-width: 420px) {
    .community-post-meta { align-items: flex-start; flex-direction: column; }
    .community-single-body,.standard-single-body { font-size: .9rem; }
    .community-post-author { gap: .7rem; padding: 1rem; }
    .community-author-avatar { flex-basis: 42px; font-size: 1.1rem; height: 42px; width: 42px; }
}
@media (max-width: 520px) {
    .card-grid, .footer-grid, .topic-grid { grid-template-columns: 1fr; }
    .blog-archive-header { display: block; }
    .blog-archive-copy { padding: 1rem 0 2rem; }
    .blog-archive-note { padding: 1.5rem; }
    .blog-topic-nav { align-items: flex-start; flex-direction: column; }
    .home-hero-panel { right: 3%; top: 10%; }
    .home-hero-visual { min-height: 340px; }
    .section-heading { align-items: flex-start; flex-direction: column; gap: .5rem; }
    .cta { padding: 2rem 1.4rem; }
    .account-page-shell { padding-bottom: 3rem; }
    .account-page-intro h1 { font-size: 2.35rem; }
    .account-page-intro p:last-child { font-size: .95rem; }
    .community-single-hero { padding: 2.25rem 0 2.75rem; }
    .community-single-hero h1 { font-size: 1.9rem; }
    .community-post-meta { gap: .55rem .9rem; }
    .community-single-body,.standard-single-body { font-size: .96rem; }
    .community-single-body h2,.standard-single-body h2 { font-size: 1.35rem; }
    .community-single-body h3,.standard-single-body h3 { font-size: 1.15rem; }
}
@media (max-width: 700px) {
    .community-single-hero { padding: 1.8rem 0 2.2rem; }
    .community-single-hero h1,.standard-single-heading h1 { font-size: 1.7rem; }
    .community-single-layout { display: flex; flex-direction: column; gap: 1rem; margin-top: -.5rem; }
    .community-single-content,.community-single-sidebar,.standard-single-content,.standard-single-sidebar { width: 100%; }
    .community-single-sidebar { order: 2; }
    .community-sidebar-card { position: static; }
    .standard-single-thumbnail { margin: 0 .85rem; }
    .community-single-body,.standard-single-body { font-size: .94rem; }
}
@media (max-width: 420px) {
    .community-single-body,.standard-single-body { font-size: .9rem; }
    .community-post-meta { align-items: flex-start; flex-direction: column; }
}



.wp-block-media-text {
    box-sizing: border-box;
 
    display: grid;
    grid-template-columns: 50% 1fr;
    grid-template-rows: auto;
    border-radius: 12px;
    box-shadow: 1px 1px 22px 0px rgb(22 52 58 / 10%);
    font-size: .82rem;
    padding: 1rem;
}
figure.wp-block-table {
    margin: 0;
}
 
blockquote {
    background: #c8dddc;
    margin: 0;
    color: #181616;
    padding: 7px 14px;
    border-left: 4px solid #0d8b83;
}
@media (max-width: 700px) {
.wp-block-media-text {
    display: block;
    margin: 2rem 0;
}
figure, figure img {
  margin: 12px 0;
}}


.page-content  a {
    color: #009688;
    font-weight: 900;
}

/* =========================================
   Responsive PDF Viewer
   ========================================= */

.pdf-viewer {
    width: 100%;
    max-width: 1100px;
    margin: 30px auto;
    box-sizing: border-box;
}

/* Header / Download Area */

.pdf-viewer__header {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-bottom: 14px;
}

/* Download Button */

.pdf-viewer__download {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-height: 44px;
    padding: 10px 18px;

    background: #111827;
    color: #ffffff !important;

    border-radius: 8px;
    border: 1px solid #111827;

    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none !important;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.pdf-viewer__download:hover {
    background: #374151;
    border-color: #374151;
    color: #ffffff !important;

    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.pdf-viewer__download:focus-visible {
    outline: 3px solid rgba(59, 130, 246, 0.35);
    outline-offset: 3px;
}

/* Download Icon */

.pdf-viewer__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 24px;
    height: 24px;

    font-size: 20px;
    line-height: 1;
}

/* PDF Container */

.pdf-viewer__frame {
    position: relative;
    width: 100%;

    overflow: hidden;

    background: #f3f4f6;
    border: 1px solid #e5e7eb;
    border-radius: 12px;

    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

/*
 * Aspect ratio prevents the iframe from becoming
 * excessively tall on desktop while remaining responsive.
 */
.pdf-viewer__frame::before {
    content: "";
    display: block;
    padding-top: 129.4%;
}

/* PDF iframe */

.pdf-viewer__frame iframe {
    position: absolute;
    inset: 0;

    display: block;

    width: 100%;
    height: 100%;

    border: 0;
    margin: 0;
    padding: 0;

    background: #ffffff;
}


/* =========================================
   Tablet
   ========================================= */

@media (max-width: 768px) {

    .pdf-viewer {
        margin: 24px auto;
    }

    .pdf-viewer__header {
        justify-content: stretch;
        margin-bottom: 12px;
    }

    .pdf-viewer__download {
        width: 100%;
        min-height: 46px;
        padding: 11px 16px;
    }

    .pdf-viewer__frame {
        border-radius: 8px;
    }

}


/* =========================================
   Mobile
   ========================================= */

@media (max-width: 480px) {

    .pdf-viewer {
        width: 100%;
        margin: 20px auto;
    }

    .pdf-viewer__download {
        width: 100%;
        min-height: 48px;

        font-size: 14px;
        border-radius: 7px;
    }

    .pdf-viewer__frame {
        border-radius: 6px;
        box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
    }

}


/* =========================================
   Reduced Motion
   ========================================= */

@media (prefers-reduced-motion: reduce) {

    .pdf-viewer__download {
        transition: none;
    }

    .pdf-viewer__download:hover {
        transform: none;
    }

}

.physios-archive { background: #f8fcfa; min-height: 70vh; }
.physios-archive-header { background: linear-gradient(125deg, #e7f5f1, #fff8ed); border-bottom: 1px solid var(--line); padding: 4.5rem 0 3.5rem; }
.physios-archive-header h1 { font-size: clamp(2.4rem, 5vw, 4.2rem); margin-bottom: .8rem; }
.physios-archive-description { color: var(--muted); max-width: 700px; }
.physios-archive-description p { margin: 0; }
.physios-archive-filter { align-items: end; background: #fff; border: 1px solid var(--line); border-radius: 14px; display: flex; flex-wrap: wrap; gap: 1rem; margin-bottom: 2rem; padding: 1rem; }
.physios-archive-filter label { color: var(--ink); display: flex; flex: 1 1 190px; flex-direction: column; font-size: .82rem; font-weight: 800; gap: .35rem; }
.physios-archive-filter select { background: #fff; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); font: inherit; padding: .65rem .7rem; }
.physios-archive-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.physios-archive-card { background: #fff; display: flex; flex-direction: column; min-height: 320px; padding: 0; }
.physios-archive-card .post-thumbnail img { aspect-ratio: 16 / 9; object-fit: cover; width: 100%; }
.physios-archive-card .post-card-content { display: flex; flex: 1; flex-direction: column; padding: 1.35rem 1.5rem 1.5rem; }
.physios-archive-card h2 { font-size: 1.35rem; margin: .4rem 0 .55rem; }
.physios-archive-card h2 a { color: var(--ink); text-decoration: none; }
.physios-archive-card .category-pill { position: static; align-self: flex-start; margin: .55rem 0 .2rem; }
.physios-archive-card .text-link { font-weight: 800; margin-top: auto; padding-top: 1rem; text-decoration: none; }
.physios-archive-empty { background: #fff; border: 1px dashed #b7d8d1; border-radius: 14px; grid-column: 1 / -1; padding: 3rem; text-align: center; }
.physios-archive-empty p { color: var(--muted); }
.physios-archive-sentinel { color: var(--muted); min-height: 3rem; padding: 2rem; text-align: center; }
.physios-archive-sentinel.is-loading { color: var(--brand-dark); }
.physios-archive-sentinel[hidden] { display: none; }
.physios-404 { align-items: center; background: linear-gradient(135deg, #e7f5f1, #fff8ed); display: flex; min-height: calc(100vh - 160px); padding: 5rem 0; }
.physios-404-inner { max-width: 760px; }
.physios-404-code { color: var(--brand); font-size: clamp(5rem, 16vw, 11rem); font-weight: 850; letter-spacing: -.08em; line-height: .8; margin: 0 0 2rem; }
.physios-404 h1 { font-size: clamp(2rem, 4vw, 3.8rem); max-width: 620px; }
.physios-404 p:not(.eyebrow) { color: var(--muted); font-size: 1.1rem; max-width: 560px; }

@media (max-width: 760px) {
    .physios-archive-grid { grid-template-columns: 1fr; }
    .physios-archive-filter .button { width: 100%; }
}