/*
Theme Name:   ClinicPress
Theme URI:    https://clinicpress.co.uk
Description:  Avada child theme for ClinicPress — managed WordPress hosting for UK private practice. Operated by BLS Computer Solutions Ltd.
Author:       BLS Computer Solutions Ltd
Author URI:   https://blscomputers.co.uk
Template:     Avada
Version:      1.0.0
Text Domain:  clinicpress
*/

/* =========================================================
   1. FONTS
   Drop the woff2 files into /assets/fonts/ — see the README
   in that folder for the exact filenames.
   ========================================================= */
@font-face{
  font-family:"Newsreader";
  src:url("assets/fonts/newsreader-v-latin-regular.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Newsreader";
  src:url("assets/fonts/newsreader-v-latin-500.woff2") format("woff2");
  font-weight:500;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Newsreader";
  src:url("assets/fonts/newsreader-v-latin-600.woff2") format("woff2");
  font-weight:600;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Newsreader";
  src:url("assets/fonts/newsreader-v-latin-italic.woff2") format("woff2");
  font-weight:400;font-style:italic;font-display:swap;
}
@font-face{
  font-family:"Public Sans";
  src:url("assets/fonts/public-sans-v-latin-regular.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Public Sans";
  src:url("assets/fonts/public-sans-v-latin-500.woff2") format("woff2");
  font-weight:500;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Public Sans";
  src:url("assets/fonts/public-sans-v-latin-600.woff2") format("woff2");
  font-weight:600;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"IBM Plex Mono";
  src:url("assets/fonts/ibm-plex-mono-v-latin-regular.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"IBM Plex Mono";
  src:url("assets/fonts/ibm-plex-mono-v-latin-500.woff2") format("woff2");
  font-weight:500;font-style:normal;font-display:swap;
}

/* =========================================================
   2. TOKENS
   ========================================================= */
:root{
  --cp-paper:#F2F5F3;
  --cp-paper-deep:#E7EDEA;
  --cp-grid:#D5E1DB;
  --cp-ink:#1C2724;
  --cp-slate:#5A6B65;
  --cp-trace:#106B5A;
  --cp-trace-dark:#0B5344;
  --cp-trace-soft:#E2EFEA;
  --cp-flag:#9B2C3C;
  --cp-rule:#C6D3CD;

  --cp-display:"Newsreader",Georgia,serif;
  --cp-body:"Public Sans",system-ui,-apple-system,sans-serif;
  --cp-data:"IBM Plex Mono",ui-monospace,monospace;

  --cp-gap:clamp(3.5rem,7vw,7rem);
}

/* =========================================================
   3. AVADA RESETS
   Avada wraps content in .fusion-fullwidth / .fusion-row and
   applies its own padding. These strip it back so the
   ClinicPress sections control their own rhythm.
   ========================================================= */
body{
  background-color:var(--cp-paper);
  background-image:
    linear-gradient(to right,var(--cp-grid) 1px,transparent 1px),
    linear-gradient(to bottom,var(--cp-grid) 1px,transparent 1px);
  background-size:28px 28px;
  color:var(--cp-ink);
  font-family:var(--cp-body);
  font-size:17px;
  line-height:1.6;
}
.cp-section .fusion-row{max-width:1120px;margin-inline:auto}
.cp-section .fusion-text p:last-child{margin-bottom:0}
.cp-section h1,
.cp-section h2,
.cp-section h3{
  font-family:var(--cp-display);font-weight:500;
  letter-spacing:-0.015em;margin:0;color:var(--cp-ink);
}
.cp-section h1{font-size:clamp(2.5rem,6vw,4.25rem);line-height:1.03}
.cp-section h2{font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.1}
.cp-section h3{font-size:1.25rem;line-height:1.25}
.cp-section p{margin:0 0 1rem}
.cp-section a{color:var(--cp-trace)}
.cp-section :focus-visible{outline:2px solid var(--cp-trace);outline-offset:3px}

/* =========================================================
   4. SHARED
   ========================================================= */
.cp-lede{font-size:clamp(1.08rem,1.9vw,1.3rem);color:var(--cp-slate);max-width:52ch}
.cp-tick{
  font-family:var(--cp-data);font-size:0.72rem;letter-spacing:0.14em;
  text-transform:uppercase;color:var(--cp-trace);margin:0 0 1rem;display:block;
}
.cp-head{max-width:60ch;margin-bottom:3rem}
.cp-head p{margin-top:1rem}

.cp-btn{
  display:inline-block;font-family:var(--cp-body);font-size:0.95rem;font-weight:500;
  padding:0.7rem 1.35rem;border-radius:2px;text-decoration:none;
  border:1px solid var(--cp-trace);background:var(--cp-trace);color:var(--cp-paper);
  transition:background .18s ease,color .18s ease;
}
.cp-btn:hover{background:var(--cp-trace-dark);border-color:var(--cp-trace-dark);color:var(--cp-paper)}
.cp-btn--ghost{background:transparent;color:var(--cp-trace)}
.cp-btn--ghost:hover{background:var(--cp-trace-soft);color:var(--cp-trace-dark)}
.cp-cta-row{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:2rem}

/* =========================================================
   5. HERO + OBSERVATION CHART
   ========================================================= */
.cp-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
@media(max-width:900px){.cp-hero-grid{grid-template-columns:1fr}}
.cp-hero-grid h1 em{font-style:italic;color:var(--cp-trace)}
.cp-hero-grid .cp-lede{margin-top:1.5rem}

.cp-chart{background:var(--cp-paper);border:1px solid var(--cp-ink);box-shadow:6px 6px 0 var(--cp-paper-deep);margin:0}
.cp-chart-head{
  display:flex;justify-content:space-between;align-items:baseline;gap:1rem;
  padding:0.85rem 1.1rem;border-bottom:1px solid var(--cp-ink);
  font-family:var(--cp-data);font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;
}
.cp-chart-head strong{font-weight:500}
.cp-chart-head span{color:var(--cp-slate)}
.cp-chart-body{padding:1.1rem}
.cp-chart-body svg{display:block;width:100%;height:auto}
.cp-chart-foot{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--cp-rule)}
.cp-reading{padding:0.9rem 1.1rem;border-right:1px solid var(--cp-rule)}
.cp-reading:last-child{border-right:0}
.cp-reading b{display:block;font-family:var(--cp-data);font-size:1.2rem;font-weight:500;color:var(--cp-trace)}
.cp-reading small{font-family:var(--cp-data);font-size:0.64rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--cp-slate)}

.cp-trace{fill:none;stroke:var(--cp-trace);stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}
.cp-trace--ghost{stroke:var(--cp-flag);stroke-width:1.5;opacity:.42;stroke-dasharray:4 4}
.cp-gridline{stroke:var(--cp-grid);stroke-width:1}
.cp-axis{stroke:var(--cp-rule);stroke-width:1}
.cp-dot{fill:var(--cp-paper);stroke:var(--cp-trace);stroke-width:2}
.cp-lbl{font-family:var(--cp-data);font-size:9px;fill:var(--cp-slate);letter-spacing:.08em}
.cp-lbl--flag{fill:var(--cp-flag)}

@media(prefers-reduced-motion:no-preference){
  .cp-trace{stroke-dasharray:1400;stroke-dashoffset:1400;animation:cp-draw 2.1s cubic-bezier(.4,0,.2,1) .25s forwards}
  .cp-trace--ghost{animation-delay:.55s}
  .cp-dot{opacity:0;animation:cp-pop .4s ease forwards}
  .cp-dot:nth-of-type(1){animation-delay:1.1s}
  .cp-dot:nth-of-type(2){animation-delay:1.4s}
  .cp-dot:nth-of-type(3){animation-delay:1.7s}
}
@keyframes cp-draw{to{stroke-dashoffset:0}}
@keyframes cp-pop{to{opacity:1}}

/* =========================================================
   6. STAT STRIP
   ========================================================= */
.cp-strip{background:var(--cp-paper);border-block:1px solid var(--cp-rule)}
.cp-strip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
@media(max-width:760px){.cp-strip-grid{grid-template-columns:repeat(2,1fr)}}
.cp-stat b{display:block;font-family:var(--cp-data);font-size:1.5rem;font-weight:500;line-height:1.1}
.cp-stat span{font-size:0.88rem;color:var(--cp-slate)}

/* =========================================================
   7. OBSERVATIONS LIST
   ========================================================= */
.cp-obs{border-top:1px solid var(--cp-ink)}
.cp-obs-row{
  display:grid;grid-template-columns:9.5rem 1fr 1.2fr;gap:1.5rem;
  padding:1.5rem 0;border-bottom:1px solid var(--cp-rule);align-items:start;
}
@media(max-width:760px){.cp-obs-row{grid-template-columns:1fr;gap:.5rem;padding:1.25rem 0}}
.cp-obs-when{font-family:var(--cp-data);font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--cp-trace);padding-top:.3rem}
.cp-obs-row p{margin:0;color:var(--cp-slate);font-size:0.98rem}

/* =========================================================
   8. PRICING
   ========================================================= */
.cp-band{background:var(--cp-paper-deep);border-block:1px solid var(--cp-rule)}
.cp-plans{display:grid;grid-template-columns:1.15fr 1fr;gap:1.5rem;align-items:start}
@media(max-width:820px){.cp-plans{grid-template-columns:1fr}}
.cp-plan{background:var(--cp-paper);border:1px solid var(--cp-ink);padding:2rem}
.cp-plan--alt{border-color:var(--cp-rule)}
.cp-price{font-family:var(--cp-display);font-size:3.25rem;line-height:1;margin:.75rem 0 .25rem}
.cp-price sup{font-size:1.35rem;vertical-align:super;font-weight:400}
.cp-price-note{font-family:var(--cp-data);font-size:0.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cp-slate)}
.cp-plan ul{list-style:none;margin:1.75rem 0;padding:0}
.cp-plan li{padding-left:1.4rem;position:relative;margin-bottom:.6rem;font-size:0.97rem}
.cp-plan li::before{content:"";position:absolute;left:0;top:.62em;width:.55rem;height:1px;background:var(--cp-trace)}
.cp-plan .cp-btn{width:100%;text-align:center}
.cp-plan-foot{margin-top:1rem;font-size:0.85rem;color:var(--cp-slate)}

/* =========================================================
   9. COMPLIANCE NOTES
   ========================================================= */
.cp-notes{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
@media(max-width:820px){.cp-notes{grid-template-columns:1fr}}
.cp-note{border-left:2px solid var(--cp-trace);padding:.25rem 0 .25rem 1.35rem}
.cp-note h3{margin-bottom:.5rem}
.cp-note p{margin:0;color:var(--cp-slate);font-size:0.97rem}

/* =========================================================
   10. MIGRATION STEPS
   ========================================================= */
.cp-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;counter-reset:cpstep}
@media(max-width:820px){.cp-steps{grid-template-columns:1fr;gap:1.5rem}}
.cp-step{counter-increment:cpstep;border-top:2px solid var(--cp-ink);padding-top:1.1rem}
.cp-step::before{
  content:counter(cpstep,decimal-leading-zero);display:block;
  font-family:var(--cp-data);font-size:0.78rem;color:var(--cp-trace);
  margin-bottom:.6rem;letter-spacing:.1em;
}
.cp-step p{margin:.5rem 0 0;color:var(--cp-slate);font-size:0.97rem}

/* =========================================================
   11. FAQ
   ========================================================= */
.cp-faq{border-top:1px solid var(--cp-ink);max-width:74ch}
.cp-faq details{border-bottom:1px solid var(--cp-rule)}
.cp-faq summary{
  cursor:pointer;padding:1.15rem 2rem 1.15rem 0;position:relative;
  font-family:var(--cp-display);font-size:1.12rem;list-style:none;
}
.cp-faq summary::-webkit-details-marker{display:none}
.cp-faq summary::after{content:"+";position:absolute;right:.25rem;top:1.05rem;font-family:var(--cp-data);color:var(--cp-trace)}
.cp-faq details[open] summary::after{content:"\2013"}
.cp-faq details p{color:var(--cp-slate);margin:0 0 1.25rem;font-size:0.97rem;max-width:64ch}

/* =========================================================
   12. CONTACT
   ========================================================= */
.cp-contact{background:var(--cp-ink)}
.cp-contact h2,
.cp-contact h3{color:var(--cp-paper)}
.cp-contact p{color:#A9BAB3}
.cp-contact .cp-lede{color:#A9BAB3}
.cp-contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:start}
@media(max-width:820px){.cp-contact-grid{grid-template-columns:1fr;gap:2rem}}
.cp-contact .cp-btn{background:var(--cp-paper);border-color:var(--cp-paper);color:var(--cp-ink)}
.cp-contact .cp-btn:hover{background:#fff;border-color:#fff;color:var(--cp-ink)}
.cp-dl{font-family:var(--cp-data);font-size:0.9rem;line-height:2;color:var(--cp-paper)}
.cp-dl a{color:var(--cp-paper)}
.cp-dl-label{
  display:block;font-family:var(--cp-data);font-size:0.68rem;letter-spacing:.12em;
  text-transform:uppercase;color:#7F9189;margin-top:1.25rem;
}
.cp-dl-label:first-child{margin-top:0}

/* =========================================================
   13. HEADER / FOOTER TRIM
   Keeps Avada's global header and footer in the same palette.
   ========================================================= */
.fusion-header-wrapper .fusion-header{background:var(--cp-paper);border-bottom:1px solid var(--cp-rule)}
.fusion-footer-copyright-area{background:var(--cp-paper);border-top:1px solid var(--cp-rule);color:var(--cp-slate)}
.fusion-footer-copyright-area a{color:var(--cp-trace)}

/* =========================================================
   14. INNER PAGES
   ========================================================= */
.cp-pagehead{padding-block:clamp(3rem,6vw,5rem) clamp(2rem,4vw,3rem);border-bottom:1px solid var(--cp-rule)}
.cp-pagehead .cp-lede{margin-top:1.25rem}
.cp-pagehead h1{max-width:18ch}

.cp-prose{max-width:68ch}
.cp-prose h2{margin-top:3rem;margin-bottom:1rem}
.cp-prose h3{margin-top:2rem;margin-bottom:.5rem}
.cp-prose p{color:var(--cp-slate)}
.cp-prose ul,.cp-prose ol{color:var(--cp-slate);padding-left:1.2rem;margin:0 0 1.25rem}
.cp-prose li{margin-bottom:.5rem}
.cp-prose strong{color:var(--cp-ink);font-weight:600}

.cp-callout{
  border:1px solid var(--cp-ink);background:var(--cp-paper);
  padding:1.5rem 1.75rem;margin:2rem 0;
}
.cp-callout h3{margin-bottom:.5rem}
.cp-callout p{margin:0;color:var(--cp-slate);font-size:0.97rem}
.cp-callout--flag{border-left:3px solid var(--cp-flag)}

.cp-table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:0.95rem}
.cp-table th{
  text-align:left;font-family:var(--cp-data);font-size:0.68rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--cp-slate);font-weight:400;
  padding:.75rem 1rem .75rem 0;border-bottom:1px solid var(--cp-ink);
}
.cp-table td{padding:.85rem 1rem .85rem 0;border-bottom:1px solid var(--cp-rule);color:var(--cp-slate);vertical-align:top}
.cp-table td:first-child{color:var(--cp-ink)}

.cp-inline-cta{
  border-top:1px solid var(--cp-ink);margin-top:3.5rem;padding-top:2rem;
}
.cp-inline-cta h3{margin-bottom:.5rem}
.cp-inline-cta p{color:var(--cp-slate);max-width:52ch}

/* =========================================================
   15. INSIGHTS / ARTICLES
   ========================================================= */
.cp-article{max-width:70ch;margin-inline:auto}
.cp-article .cp-meta{
  font-family:var(--cp-data);font-size:0.72rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--cp-slate);margin-bottom:1rem;
}
.cp-article h1{font-size:clamp(2rem,4.5vw,3.1rem);margin-bottom:1.25rem}
.cp-article .cp-standfirst{
  font-size:1.2rem;color:var(--cp-ink);border-left:2px solid var(--cp-trace);
  padding-left:1.25rem;margin:0 0 2.5rem;
}
.cp-article h2{margin-top:2.75rem;margin-bottom:.85rem}
.cp-article h3{margin-top:2rem;margin-bottom:.5rem}
.cp-article p,.cp-article li{color:var(--cp-slate)}
.cp-article ul,.cp-article ol{padding-left:1.2rem;margin:0 0 1.25rem}
.cp-article li{margin-bottom:.5rem}
.cp-article blockquote{
  margin:2rem 0;padding-left:1.5rem;border-left:2px solid var(--cp-rule);
  font-family:var(--cp-display);font-size:1.25rem;font-style:italic;color:var(--cp-ink);
}

.cp-postlist{display:grid;gap:0;border-top:1px solid var(--cp-ink)}
.cp-postcard{
  display:grid;grid-template-columns:10rem 1fr;gap:2rem;
  padding:1.75rem 0;border-bottom:1px solid var(--cp-rule);
}
@media(max-width:760px){.cp-postcard{grid-template-columns:1fr;gap:.5rem}}
.cp-postcard .cp-meta{font-family:var(--cp-data);font-size:0.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cp-trace);padding-top:.35rem}
.cp-postcard h3 a{text-decoration:none;color:var(--cp-ink)}
.cp-postcard h3 a:hover{color:var(--cp-trace)}
.cp-postcard p{margin:.4rem 0 0;color:var(--cp-slate);font-size:0.97rem;max-width:60ch}

/* =========================================================
   16. AVADA OVERRIDES
   Avada's dynamic CSS loads after the child stylesheet and
   sets its own backgrounds, typography, spacing and button
   colours. These rules take those back.

   ========================================================= */

/* --- 1. THE BACKGROUND ---------------------------------
   Avada puts an opaque fill on #wrapper and #main which
   covers the grid drawn on body. Clear those, then draw the
   chart paper on #main instead. */
.fusion-body,
.fusion-body #boxed-wrapper,
.fusion-body #wrapper{
  background-color:var(--cp-paper) !important;
  background-image:none !important;
}
.fusion-body #main{
  background-color:var(--cp-paper) !important;
  background-image:
    linear-gradient(to right,var(--cp-grid) 1px,transparent 1px),
    linear-gradient(to bottom,var(--cp-grid) 1px,transparent 1px) !important;
  background-size:28px 28px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
}

/* Sections with a solid fill must sit ON TOP of the grid */
.fusion-body .cp-band{background-color:var(--cp-paper-deep) !important}
.fusion-body .cp-strip{background-color:var(--cp-paper) !important}
.fusion-body .cp-contact{background-color:var(--cp-ink) !important}
.fusion-body .cp-plan,
.fusion-body .cp-chart,
.fusion-body .cp-callout{background-color:var(--cp-paper) !important}

/* --- 2. TYPOGRAPHY -------------------------------------
   Avada's typography options target headings with high
   specificity and will replace the display face. */
.fusion-body .cp-section h1,
.fusion-body .cp-section h2,
.fusion-body .cp-section h3,
.fusion-body .cp-article h1,
.fusion-body .cp-article h2,
.fusion-body .cp-article h3,
.fusion-body .cp-faq summary,
.fusion-body .cp-price,
.fusion-body .cp-article .cp-standfirst{
  font-family:var(--cp-display) !important;
  text-transform:none !important;
  letter-spacing:-0.015em !important;
}
.fusion-body .cp-section h1,
.fusion-body .cp-section h2,
.fusion-body .cp-section h3,
.fusion-body .cp-article h1,
.fusion-body .cp-article h2,
.fusion-body .cp-article h3{font-weight:500 !important}

.fusion-body .cp-section p,
.fusion-body .cp-section li,
.fusion-body .cp-section td,
.fusion-body .cp-lede{font-family:var(--cp-body) !important}

.fusion-body .cp-tick,
.fusion-body .cp-obs-when,
.fusion-body .cp-price-note,
.fusion-body .cp-meta,
.fusion-body .cp-dl,
.fusion-body .cp-dl-label,
.fusion-body .cp-reading b,
.fusion-body .cp-reading small,
.fusion-body .cp-chart-head,
.fusion-body .cp-table th,
.fusion-body .cp-stubnote{font-family:var(--cp-data) !important}
.fusion-body .cp-step::before{font-family:var(--cp-data) !important}

/* Heading colours — Avada sets these too */
.fusion-body .cp-section h1,
.fusion-body .cp-section h2,
.fusion-body .cp-section h3{color:var(--cp-ink) !important}
.fusion-body .cp-contact h1,
.fusion-body .cp-contact h2,
.fusion-body .cp-contact h3{color:var(--cp-paper) !important}

/* --- 3. BUTTONS ----------------------------------------
   Avada styles links inside content with its own accent. */
.fusion-body .cp-btn{
  background-color:var(--cp-trace) !important;
  border-color:var(--cp-trace) !important;
  color:var(--cp-paper) !important;
  text-decoration:none !important;
}
.fusion-body .cp-btn:hover{
  background-color:var(--cp-trace-dark) !important;
  border-color:var(--cp-trace-dark) !important;
  color:var(--cp-paper) !important;
}
.fusion-body .cp-btn--ghost{
  background-color:transparent !important;
  color:var(--cp-trace) !important;
}
.fusion-body .cp-btn--ghost:hover{
  background-color:var(--cp-trace-soft) !important;
  color:var(--cp-trace-dark) !important;
}
.fusion-body .cp-contact .cp-btn{
  background-color:var(--cp-paper) !important;
  border-color:var(--cp-paper) !important;
  color:var(--cp-ink) !important;
}

/* --- 4. LAYOUT -----------------------------------------
   Avada containers add their own gutters on top of ours. */
.fusion-body .cp-section .fusion-row{max-width:1120px;margin-inline:auto}
.fusion-body .cp-section .fusion-fullwidth{padding-left:0;padding-right:0}
.fusion-body .cp-obs-row,
.fusion-body .cp-plans,
.fusion-body .cp-steps,
.fusion-body .cp-notes,
.fusion-body .cp-hero-grid,
.fusion-body .cp-contact-grid,
.fusion-body .cp-strip-grid{display:grid}

/* Avada resets list styling inside content */
.fusion-body .cp-plan ul{list-style:none !important;padding-left:0 !important}

/* --- 5. SAFETY NET -------------------------------------
   The page title bar should be turned OFF in
   Avada > Options > Page Title Bar. This hides it if any
   individual page still has it enabled. */
.fusion-body .fusion-page-title-bar{display:none !important}

/* --- 6. HEADER -----------------------------------------
   Avada's default header spacing crams seven menu items
   together. This gives them room and puts the header in the
   ClinicPress palette. */
.fusion-header-wrapper .fusion-header{
  background-color:var(--cp-paper) !important;
  border-bottom:1px solid var(--cp-rule) !important;
  box-shadow:none !important;
}
.fusion-header .fusion-row{
  max-width:1120px !important;
  padding-left:clamp(1.25rem,5vw,4rem) !important;
  padding-right:clamp(1.25rem,5vw,4rem) !important;
}
.fusion-logo img,
.fusion-logo a img{max-height:36px !important;width:auto !important}
.fusion-header .fusion-logo{margin-right:2.5rem !important}

.fusion-main-menu > ul > li{padding-right:26px !important}
.fusion-main-menu > ul > li:last-child{padding-right:0 !important}
.fusion-main-menu > ul > li > a{
  font-family:var(--cp-body) !important;
  font-size:15px !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:var(--cp-slate) !important;
  border-bottom:2px solid transparent !important;
}
.fusion-main-menu > ul > li > a:hover{color:var(--cp-ink) !important}
.fusion-main-menu > ul > li.current-menu-item > a,
.fusion-main-menu > ul > li.current-menu-ancestor > a{
  color:var(--cp-ink) !important;
  border-bottom-color:var(--cp-trace) !important;
}
/* the highlighted Contact item, if you set it as a menu button */
.fusion-main-menu .fusion-menu-highlight-label{
  background-color:var(--cp-trace) !important;
  color:var(--cp-paper) !important;
}
/* mobile menu */
.fusion-mobile-nav-holder .fusion-mobile-nav-item a{
  font-family:var(--cp-body) !important;
  color:var(--cp-ink) !important;
}
.fusion-mobile-menu-icons a{color:var(--cp-ink) !important}

/* --- 7. FOOTER -----------------------------------------
   Match the header, and hide the social row if it's still on. */
.fusion-footer-copyright-area{
  background-color:var(--cp-paper) !important;
  border-top:1px solid var(--cp-rule) !important;
  color:var(--cp-slate) !important;
}
.fusion-footer-copyright-area a{color:var(--cp-trace) !important}
.fusion-social-links-footer{display:none !important}

/* --- 8. LOGO -------------------------------------------
   WordPress blocks SVG uploads, and a PNG wordmark can't be
   set in Newsreader without shipping the font file. So the
   uploaded image is the mark only, and the wordmark is real
   text — it renders in the site's own display face and stays
   sharp at any resolution. */
.fusion-logo a{
  display:flex !important;
  align-items:center;
  gap:11px;
  text-decoration:none !important;
}
.fusion-logo a::after{
  content:"ClinicPress";
  font-family:var(--cp-display);
  font-size:25px;
  font-weight:600;
  letter-spacing:-0.02em;
  line-height:1;
  color:var(--cp-ink);
  white-space:nowrap;
}
.fusion-logo img,
.fusion-logo a img{max-height:34px !important;width:auto !important}
@media(max-width:420px){
  .fusion-logo a::after{font-size:21px}
}

/* ===== 17. FIXES v2 ===== */
/* --- 1. KILL THE GREEN SOCIAL BAR ----------------------
   That strip is Avada's secondary (top) header. Better to
   switch it off in Avada > Options > Header > Secondary
   Header, but this removes it either way. */
.fusion-secondary-header,
.fusion-secondary-main-menu,
.fusion-social-links-header{display:none !important}

/* --- 2. THE CHART-PAPER GRID ---------------------------
   Painting it on #main didn't survive — Avada's containers
   sit on top with their own fill. Paint it on the containers
   themselves instead, and skip the ones that are meant to be
   solid. */
.fusion-body .cp-section{
  background-color:var(--cp-paper) !important;
  background-image:
    linear-gradient(to right,var(--cp-grid) 1px,transparent 1px),
    linear-gradient(to bottom,var(--cp-grid) 1px,transparent 1px) !important;
  background-size:28px 28px !important;
  background-position:0 0 !important;
}
.fusion-body .cp-section.cp-band{
  background-color:var(--cp-paper-deep) !important;
  background-image:none !important;
}
.fusion-body .cp-section.cp-contact{
  background-color:var(--cp-ink) !important;
  background-image:none !important;
}
.fusion-body .cp-section.cp-strip,
.fusion-body .cp-section.cp-pagehead{
  background-image:none !important;
}
/* nudge the grid up so it actually reads against the paper */
:root{--cp-grid:#CBDBD3}

/* --- 3. HEADER HEIGHT ----------------------------------
   The logo band is far too tall. Set Avada > Options >
   Header > Header Content > header height to 70px as well —
   this trims the padding Avada adds around it. */
.fusion-header-wrapper .fusion-header{
  padding-top:0 !important;
  padding-bottom:0 !important;
}
.fusion-header .fusion-row{
  padding-top:10px !important;
  padding-bottom:10px !important;
  align-items:center !important;
}
.fusion-logo{margin:0 !important}
.fusion-logo a{margin:0 !important}
.fusion-header-v1 .fusion-main-menu,
.fusion-header-v2 .fusion-main-menu,
.fusion-header-v3 .fusion-main-menu{float:right}
