/*
Theme Name: Choice Community Health
Theme URI: https://choicecommunityhealth.com/
Author: Choice Community Health
Description: Modern responsive WordPress theme with a section-by-section editable Home Page Temp.
Version: 2.2.0
Requires at least: 5.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: choice-community-health
*/
:root{--primary:#176b63;--primary-dark:#0d4f49;--secondary:#e9f6f3;--accent:#f3b562;--dark:#153330;--text:#50605d;--muted:#7c8b88;--white:#fff;--light:#f6faf9;--border:#e3eeeb;--shadow:0 25px 70px rgba(23,107,99,.10);--radius:24px;--body:"DM Sans",sans-serif;--heading:"Manrope",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--body);color:var(--text);line-height:1.7;background:#fff}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.section-padding{padding:110px 0}.section-label{font-size:12px;font-weight:800;letter-spacing:2px;color:var(--primary);margin-bottom:16px}.section-heading{max-width:720px;text-align:center;margin:0 auto 55px}.section-heading h2,.about-content h2,.approach-content h2{font:800 clamp(36px,5vw,54px)/1.12 var(--heading);letter-spacing:-1.8px;color:var(--dark);margin:0}.section-heading h2 span,.about-content h2 span,.approach-content h2 span{color:var(--primary)}.section-heading p{margin-top:20px}.btn{min-height:54px;padding:0 25px;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:700;font-size:14px;transition:.3s}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 12px 25px rgba(23,107,99,.2)}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-3px)}.btn-outline{border:1px solid var(--border);background:#fff;color:var(--dark)}.btn-dark{background:var(--dark);color:#fff}.btn-white{background:#fff;color:var(--primary)}.btn-transparent{border:1px solid rgba(255,255,255,.35);color:#fff}
.header{position:fixed;top:0;left:0;width:100%;z-index:1000;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(227,238,235,.7);transition:.3s}.header.scrolled{box-shadow:0 10px 35px rgba(21,51,48,.08)}.nav-container{height:82px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:11px}.logo-icon{width:44px;height:44px;display:grid;place-items:center;background:var(--secondary);color:var(--primary);border-radius:13px}.logo-text{display:flex;flex-direction:column;line-height:1.05}.logo-text strong{font:800 19px var(--heading);color:var(--dark)}.logo-text small{font-size:9px;letter-spacing:1.2px;text-transform:uppercase;color:var(--primary);font-weight:800}.custom-logo{max-height:55px;width:auto}.nav{display:flex;align-items:center;gap:26px}
.nav .primary-menu{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}
.nav .primary-menu li{position:relative;margin:0;padding:0}
.nav .primary-menu>li>a{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#53615f;padding:10px 0;white-space:nowrap;transition:.25s ease}
.nav .primary-menu>li>a:hover,
.nav .primary-menu>li.current-menu-item>a,
.nav .primary-menu>li.current-menu-ancestor>a,
.nav .primary-menu>li.current-menu-parent>a{color:var(--primary)}
.nav .primary-menu .menu-item-has-children>a:after{content:"\\f107";font-family:"Font Awesome 6 Free";font-weight:900;font-size:10px;margin-left:3px;transition:transform .25s}
.nav .primary-menu .menu-item-has-children:hover>a:after{transform:rotate(180deg)}
.nav .primary-menu .sub-menu{position:absolute;top:calc(100% + 12px);left:-18px;min-width:225px;padding:10px;margin:0;list-style:none;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 20px 45px rgba(21,51,48,.13);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease,visibility .22s;z-index:100}
.nav .primary-menu .sub-menu:before{content:"";position:absolute;top:-6px;left:25px;width:12px;height:12px;background:#fff;border-left:1px solid var(--border);border-top:1px solid var(--border);transform:rotate(45deg)}
.nav .primary-menu li:hover>.sub-menu,.nav .primary-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.nav .primary-menu .sub-menu li{width:100%}
.nav .primary-menu .sub-menu a{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;border-radius:10px;font-size:12px;font-weight:600;color:#53615f;line-height:1.35}
.nav .primary-menu .sub-menu a:hover,
.nav .primary-menu .sub-menu .current-menu-item>a{background:var(--secondary);color:var(--primary)}
.nav .primary-menu .sub-menu .menu-item-has-children>a:after{content:"\\f105";font-family:"Font Awesome 6 Free";font-weight:900}
.nav .primary-menu .sub-menu .sub-menu{top:-10px;left:calc(100% + 8px)}
.nav .primary-menu .sub-menu .sub-menu:before{top:18px;left:-6px;transform:rotate(-45deg)}
.nav-button{background:var(--primary)!important;color:#fff!important;padding:12px 19px;border-radius:100px;display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:700}
.nav-button:hover{background:var(--primary-dark)!important;color:#fff!important}
.menu-toggle{display:none;border:0;background:none;font-size:22px;color:var(--dark);cursor:pointer}
.hero{min-height:850px;padding-top:150px;background:radial-gradient(circle at 80% 20%,#dff4f0 0,transparent 28%),linear-gradient(135deg,#f8fcfb,#fff 70%);position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}.eyebrow{display:flex;align-items:center;gap:9px;color:var(--primary);font-size:12px;font-weight:800;margin-bottom:24px}.eyebrow span{width:7px;height:7px;border-radius:50%;background:var(--accent)}.hero h1{font:800 clamp(48px,6vw,76px)/1.04 var(--heading);letter-spacing:-3px;color:var(--dark);margin:0}.hero h1 span{color:var(--primary)}.hero-content>p{max-width:600px;margin:28px 0 34px;font-size:18px}.hero-buttons{display:flex;flex-wrap:wrap;gap:13px}.hero-trust{display:flex;align-items:center;gap:12px;margin-top:38px}.trust-icon{width:42px;height:42px;border-radius:50%;background:#edf7f5;display:grid;place-items:center;color:var(--primary)}.hero-trust div:last-child{display:flex;flex-direction:column}.hero-trust strong{font-size:13px;color:var(--dark)}.hero-trust span{font-size:11px;color:var(--muted)}.hero-image-card{height:560px;border-radius:40px;background:#e4f3ef;position:relative;overflow:hidden;box-shadow:var(--shadow)}.image-overlay{position:absolute;inset:70px 50px;border-radius:35px;background:linear-gradient(160deg,#b6ddd7,#dcefeb);transform:rotate(2deg)}.image-overlay:after{content:"CARE";position:absolute;color:rgba(23,107,99,.12);font:800 100px var(--heading);bottom:40px;right:25px}.hero-floating-card{position:absolute;z-index:5;background:rgba(255,255,255,.94);border-radius:18px;padding:15px 18px;display:flex;align-items:center;gap:12px;box-shadow:0 18px 40px rgba(21,51,48,.12)}.card-top{top:45px;left:-35px}.card-bottom{right:-25px;bottom:50px}.floating-icon{width:42px;height:42px;display:grid;place-items:center;background:#e7f5f2;color:var(--primary);border-radius:12px}.hero-floating-card div:last-child{display:flex;flex-direction:column}.hero-floating-card strong{font-size:12px;color:var(--dark)}.hero-floating-card span{font-size:10px;color:var(--muted)}.avatar-stack{width:42px;height:42px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center}.hero-shape{position:absolute;border:1px solid #d6ebe7;border-radius:50%}.shape-one{width:400px;height:400px;right:-180px;top:180px}.shape-two{width:250px;height:250px;left:-130px;bottom:20px}.intro{padding:45px 0}.intro-card{background:var(--dark);color:#fff;border-radius:22px;padding:28px 40px;display:flex;align-items:center;gap:20px}.intro-icon{width:50px;height:50px;display:grid;place-items:center;background:rgba(255,255,255,.1);border-radius:14px;color:#9ddbd2}.intro-card p{font:600 16px var(--heading)}.intro-card span{margin-left:auto;font-size:12px;color:#a7bcb8}
.about,.approach,.contact{background:var(--light)}.about-grid,.approach-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center}.about-visual{height:500px;position:relative}.about-main-card{position:absolute;inset:20px 40px 20px 0;border-radius:35px;background:#cde9e4;display:flex;flex-direction:column;align-items:center;justify-content:center}.about-circle{width:125px;height:125px;border-radius:50%;background:#fff;color:var(--primary);display:grid;place-items:center;font-size:45px}.about-main-card span{margin-top:22px;font-size:12px;text-transform:uppercase;letter-spacing:2px;color:var(--primary);font-weight:800}.about-main-card strong{font:700 25px var(--heading);color:var(--dark)}.experience-card{position:absolute;right:-15px;bottom:50px;padding:20px;background:#fff;border-radius:18px;box-shadow:0 20px 50px rgba(21,51,48,.12);display:flex;gap:14px;align-items:center}.experience-card strong{font:800 40px var(--heading);color:var(--primary)}.experience-card span{font-size:11px;font-weight:700;color:var(--dark);line-height:1.4}.about-content h2,.approach-content h2{margin-bottom:25px}.about-points{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:30px 0}.about-point{display:flex;gap:9px;align-items:center;font-size:13px;color:var(--dark);font-weight:600}.about-point i{color:var(--primary)}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--primary);font-weight:800;font-size:13px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{border:1px solid var(--border);border-radius:var(--radius);padding:30px;background:#fff;position:relative;transition:.35s}.service-card:hover,.post-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:transparent}.service-card.featured{background:var(--primary);color:#fff}.service-number{position:absolute;right:25px;top:22px;font-size:12px;font-weight:800;color:#a0b1ae}.featured .service-number{color:rgba(255,255,255,.35)}.service-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:var(--secondary);color:var(--primary);margin-bottom:25px}.featured .service-icon{background:rgba(255,255,255,.12);color:#fff}.service-card h3{font:700 19px/1.3 var(--heading);color:var(--dark);margin:0 0 12px}.featured h3{color:#fff}.service-card p{font-size:13px;margin-bottom:25px}.featured p{color:#c8e4df}.service-link{color:var(--primary);font-size:12px;font-weight:800}.featured .service-link{color:#fff}.approach-visual{min-height:480px;border-radius:35px;background:linear-gradient(145deg,#176b63,#0c4d47);display:flex;align-items:center;padding:50px}.quote-card{max-width:420px;color:#fff}.quote-icon{color:#8bd0c6;font-size:40px}.quote-card p{font:500 24px/1.5 var(--heading)}.quote-card span{color:#b8dad5;font-size:12px}.referral-box{background:linear-gradient(120deg,#123d39,#176b63);border-radius:35px;padding:70px}.referral-content{max-width:650px}.referral-content h2{font:800 clamp(38px,5vw,55px)/1.1 var(--heading);color:#fff;margin:0 0 20px}.referral-content h2 span{color:#a4ded6}.referral-content p{color:#c2dfdb}.referral-buttons{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-info{background:#fff;border-radius:25px;padding:35px}.contact-item{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--border)}.contact-item:last-child{border:0}.contact-icon{width:46px;height:46px;flex-shrink:0;display:grid;place-items:center;border-radius:13px;background:var(--secondary);color:var(--primary)}.contact-item div:last-child{display:flex;flex-direction:column}.contact-item span{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-weight:700}.contact-item strong,.contact-item a{color:var(--dark);font-size:14px;margin-top:4px}.contact-card{border-radius:25px;padding:50px;background:var(--dark);color:#fff;display:flex;flex-direction:column;justify-content:center}.contact-card h3{font:700 36px var(--heading);margin:0 0 12px}.contact-card p{color:#a9bfbb;margin-bottom:30px}.footer{background:#0c2724;color:#fff;padding-top:75px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;padding-bottom:65px}.footer-brand p{max-width:320px;color:#8da7a3;font-size:13px}.footer-column{display:flex;flex-direction:column;gap:12px}.footer-column h4{font-size:13px;margin:0 0 10px}.footer-column a{color:#8da7a3;font-size:12px}.footer-column ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.social-links{display:flex;gap:8px}.social-links a{width:35px;height:35px;display:grid;place-items:center;background:rgba(255,255,255,.07);border-radius:10px;color:#fff!important}.footer-bottom{border-top:1px solid rgba(255,255,255,.08)}.footer-bottom .container{min-height:65px;display:flex;align-items:center;justify-content:space-between;color:#718b87;font-size:10px}.back-top{position:fixed;width:45px;height:45px;right:25px;bottom:25px;border:0;border-radius:14px;background:var(--primary);color:#fff;display:grid;place-items:center;cursor:pointer;opacity:0;visibility:hidden;transition:.3s;z-index:900}.back-top.show{opacity:1;visibility:visible}.page-hero{padding:180px 0 90px;background:radial-gradient(circle at 80% 20%,#dff4f0 0,transparent 30%),#f8fcfb}.page-hero h1{font:800 clamp(42px,6vw,68px)/1.08 var(--heading);letter-spacing:-2px;color:var(--dark);margin:0}.page-hero p{max-width:700px;font-size:17px}.inner-content,.single-post{background:#fff}.narrow-content{max-width:860px}.narrow-content>*{max-width:100%}.narrow-content h2,.narrow-content h3{font-family:var(--heading);color:var(--dark)}.narrow-content img{border-radius:18px}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.post-card{border:1px solid var(--border);border-radius:24px;overflow:hidden;background:#fff;transition:.35s}.post-thumb{display:block;height:220px;background:var(--secondary)}.post-thumb img{width:100%;height:100%;object-fit:cover}.thumb-placeholder{height:100%;display:grid;place-items:center;color:var(--primary);font-size:50px}.post-card-body{padding:28px}.post-meta{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:10px}.post-card h2{font:700 21px/1.3 var(--heading);color:var(--dark);margin:0 0 12px}.post-card p{font-size:13px}.single-post{padding:150px 0 100px}.single-post h1{font:800 clamp(42px,6vw,68px)/1.08 var(--heading);color:var(--dark);letter-spacing:-2px;margin:10px 0 35px}.post-featured img{width:100%;max-height:600px;object-fit:cover;border-radius:25px}.post-body{font-size:17px;margin-top:40px}.post-body h2,.post-body h3{font-family:var(--heading);color:var(--dark)}.comments-area{margin-top:60px}.error-page{text-align:center}.error-page .container{display:flex;align-items:center;flex-direction:column}.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s,transform .7s}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1000px){.hero-grid,.about-grid,.approach-grid{gap:50px}.services-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.blog-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.section-padding{padding:80px 0}.menu-toggle{display:block}.nav{position:absolute;top:82px;left:20px;right:20px;background:#fff;border-radius:20px;padding:20px;box-shadow:0 25px 60px rgba(21,51,48,.12);display:none;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav ul{flex-direction:column;align-items:stretch;gap:0}.nav li a{display:block;padding:10px}.nav-button{text-align:center;margin-top:8px}.hero{padding-top:130px;min-height:auto;padding-bottom:80px}.hero-grid,.about-grid,.approach-grid,.contact-grid{grid-template-columns:1fr}.hero-content{text-align:center}.hero-buttons,.eyebrow,.hero-trust{justify-content:center}.hero-image-card{height:460px}.referral-box{padding:50px 35px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2}}@media(max-width:560px){.container{width:calc(100% - 28px)}.section-padding{padding:65px 0}.hero h1{font-size:46px}.hero-buttons{flex-direction:column}.hero-buttons .btn{width:100%}.hero-image-card{height:390px}.card-top{left:10px;top:20px}.card-bottom{right:10px;bottom:25px}.intro-card{padding:25px;flex-wrap:wrap}.intro-card span{margin-left:70px}.about-points{grid-template-columns:1fr}.services-grid,.blog-grid{grid-template-columns:1fr}.referral-box{padding:40px 25px}.referral-buttons{flex-direction:column}.referral-buttons .btn{width:100%}.contact-card{padding:35px 25px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:span 1}.footer-bottom .container{padding:20px 0;flex-direction:column;align-items:flex-start;gap:5px}.page-hero{padding-top:145px}.single-post{padding-top:140px}}

.about-photo{position:absolute;inset:20px 40px 20px 0;border-radius:35px;background-size:cover;background-position:center;box-shadow:var(--shadow)}

/* ===== WordPress multi-level menu: mobile behavior ===== */
@media (max-width: 800px){
  .nav .primary-menu{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%}
  .nav .primary-menu>li{width:100%;border-bottom:1px solid #edf3f1}
  .nav .primary-menu>li:last-child{border-bottom:0}
  .nav .primary-menu>li>a{padding:12px 10px;width:100%;justify-content:space-between}
  .nav .primary-menu .sub-menu,
  .nav .primary-menu .sub-menu .sub-menu{position:static;display:none;opacity:1;visibility:visible;transform:none;min-width:0;width:100%;padding:0 0 8px 12px;background:transparent;border:0;box-shadow:none}
  .nav .primary-menu .sub-menu:before,
  .nav .primary-menu .sub-menu .sub-menu:before{display:none}
  .nav .primary-menu li.submenu-open>.sub-menu{display:block}
  .nav .primary-menu .sub-menu a{padding:10px 12px;background:transparent}
  .nav .primary-menu .menu-item-has-children>a:after{content:"\f107";font-size:11px}
  .nav .primary-menu .menu-item-has-children.submenu-open>a:after{transform:rotate(180deg)}
  .nav .primary-menu .sub-menu .menu-item-has-children>a:after{content:"\f107"}
  .nav .primary-menu .sub-menu .menu-item-has-children.submenu-open>a:after{transform:rotate(180deg)}
}

.nav .submenu-toggle{display:none;border:0;background:transparent;color:inherit;padding:4px;margin-left:2px;cursor:pointer}
@media (max-width:800px){
  .nav .submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:10px}
  .nav .primary-menu .menu-item-has-children>a{justify-content:space-between}
  .nav .primary-menu .menu-item-has-children>a .submenu-toggle{order:2}
}


/* =========================================================
   CHOICE COMMUNITY HEALTH — CLEAN RESPONSIVE NAVIGATION
   ========================================================= */

.header{
  position:fixed;
  inset:0 0 auto 0;
  z-index:9999;
  width:100%;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid #e8efed;
}

.header .nav-container{
  width:min(1400px,calc(100% - 40px));
  min-height:82px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:30px;
}

.header .logo{
  flex:0 0 auto;
  min-width:190px;
  display:flex;
  align-items:center;
  text-decoration:none;
}

.header .logo .custom-logo-link{
  display:flex;
  align-items:center;
  max-width:190px;
}

.header .logo .custom-logo{
  display:block;
  width:auto;
  max-width:190px;
  max-height:58px;
  height:auto;
}

.header .logo-text{
  max-width:100%;
  line-height:1.05;
}

.header .logo-text strong{
  display:block;
  color:var(--dark);
  font-family:var(--heading);
  font-size:20px;
  font-weight:800;
  overflow-wrap:break-word;
}

.header .logo-text small{
  display:block;
  margin-top:4px;
  color:var(--primary);
  font-size:9px;
  font-weight:800;
  letter-spacing:1.2px;
  text-transform:uppercase;
}

.header .site-navigation{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:20px;
}

.header .site-navigation > .primary-menu{
  flex:0 1 auto;
  min-width:0;
  display:flex !important;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.header .site-navigation .primary-menu,
.header .site-navigation .primary-menu ul{
  list-style:none !important;
}

.header .site-navigation .primary-menu li{
  position:relative;
  display:block;
  margin:0;
  padding:0;
}

.header .site-navigation .primary-menu > li{
  flex:0 0 auto;
}

.header .site-navigation .primary-menu > li > a{
  display:flex;
  align-items:center;
  gap:6px;
  min-height:44px;
  padding:8px 11px;
  border-radius:10px;
  color:#52615e;
  font-size:13px;
  line-height:1.25;
  font-weight:600;
  white-space:nowrap;
  text-decoration:none;
  transition:background .2s ease,color .2s ease;
}

.header .site-navigation .primary-menu > li > a:hover,
.header .site-navigation .primary-menu > li:hover > a,
.header .site-navigation .primary-menu > li.current-menu-item > a,
.header .site-navigation .primary-menu > li.current-menu-parent > a,
.header .site-navigation .primary-menu > li.current-menu-ancestor > a{
  color:var(--primary);
  background:#f1f8f6;
}

/* Parent arrows */
.header .site-navigation .primary-menu > li.menu-item-has-children > a::after{
  content:"\f107";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  font-size:9px;
  line-height:1;
}

/* DESKTOP DROPDOWN: only direct child submenu */
@media (min-width:801px){

  .header .site-navigation .primary-menu > li > ul.sub-menu{
    display:block !important;
    position:absolute !important;
    top:calc(100% + 6px) !important;
    left:0 !important;
    width:250px !important;
    min-width:250px !important;
    max-width:250px !important;
    margin:-7px 0 0 !important;
    padding:8px !important;
    background:#fff !important;
    border:1px solid #e3eeeb !important;
    border-radius:15px !important;
    box-shadow:0 18px 45px rgba(21,51,48,.14) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translateY(7px) !important;
    z-index:100000 !important;
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease !important;
  }

  /* Invisible bridge prevents submenu disappearing while moving mouse down */
  .header .site-navigation .primary-menu > li > ul.sub-menu::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:-12px;
    height:12px;
    background:transparent;
  }

  .header .site-navigation .primary-menu > li:hover > ul.sub-menu,
  .header .site-navigation .primary-menu > li:focus-within > ul.sub-menu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }

  .header .site-navigation .primary-menu ul.sub-menu li{
    display:block !important;
    width:100% !important;
  }

  .header .site-navigation .primary-menu ul.sub-menu li > a{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    width:100% !important;
    min-height:40px;
    padding:9px 11px !important;
    border-radius:9px;
    color:#53615f !important;
    background:transparent !important;
    font-size:12px !important;
    line-height:1.35 !important;
    font-weight:600 !important;
    white-space:normal !important;
    text-decoration:none !important;
  }

  .header .site-navigation .primary-menu ul.sub-menu li > a:hover,
  .header .site-navigation .primary-menu ul.sub-menu li:hover > a,
  .header .site-navigation .primary-menu ul.sub-menu li.current-menu-item > a{
    color:var(--primary) !important;
    background:#e9f6f3 !important;
  }

  /* Level 3 */
  .header .site-navigation .primary-menu ul.sub-menu ul.sub-menu{
    top:0 !important;
    left:calc(100% + 7px) !important;
  }

  .header .site-navigation .primary-menu ul.sub-menu li.menu-item-has-children > a::after{
    content:"\f105";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    font-size:9px;
  }

  .header .site-navigation .primary-menu ul.sub-menu li.menu-item-has-children:hover > ul.sub-menu,
  .header .site-navigation .primary-menu ul.sub-menu li.menu-item-has-children:focus-within > ul.sub-menu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateY(0) !important;
  }

  .header .site-navigation .submenu-toggle{
    display:none !important;
  }

  .header .menu-toggle{
    display:none !important;
  }
}

/* TABLET / MOBILE */
@media (max-width:1100px) and (min-width:801px){
  .header .nav-container{
    width:min(100% - 28px,1200px);
    gap:15px;
  }
  .header .logo{
    min-width:155px;
  }
  .header .logo-text strong{font-size:17px}
  .header .site-navigation .primary-menu > li > a{
    padding:8px 7px;
    font-size:12px;
  }
  .header .nav-button{
    padding:10px 13px;
    font-size:12px;
  }
}

@media (max-width:800px){

  .header .nav-container{
    width:calc(100% - 28px);
    min-height:76px;
    gap:15px;
  }

  .header .logo{
    min-width:0;
    max-width:calc(100% - 55px);
  }

  .header .logo .custom-logo{
    max-width:180px;
    max-height:52px;
  }

  .header .logo-text strong{
    font-size:18px;
  }

  .header .menu-toggle{
    display:grid !important;
    place-items:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    margin-left:auto;
    padding:0;
    border:0;
    border-radius:12px;
    background:#e9f6f3;
    color:var(--primary);
    cursor:pointer;
  }

  .header .site-navigation{
    position:absolute;
    top:calc(100% + 8px);
    left:14px;
    right:14px;
    width:auto;
    max-height:calc(100vh - 95px);
    overflow-y:auto;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:0;
    padding:12px;
    background:#fff;
    border:1px solid #e3eeeb;
    border-radius:18px;
    box-shadow:0 22px 55px rgba(21,51,48,.15);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-8px);
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
  }

  .header .site-navigation.open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }

  .header .site-navigation > .primary-menu{
    width:100%;
    display:flex !important;
    flex-direction:column;
    align-items:stretch;
    gap:0 !important;
  }

  .header .site-navigation .primary-menu > li{
    width:100%;
    border-bottom:1px solid #edf3f1;
  }

  .header .site-navigation .primary-menu > li:last-child{
    border-bottom:0;
  }

  .header .site-navigation .primary-menu > li > a{
    width:100%;
    min-height:48px;
    padding:10px 8px;
    border-radius:9px;
    font-size:14px;
    white-space:normal;
  }

  .header .site-navigation .primary-menu > li > a:hover{
    background:#f1f8f6;
  }

  .header .site-navigation .primary-menu li > ul.sub-menu{
    position:static !important;
    display:none !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 0 8px 12px !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
  }

  .header .site-navigation .primary-menu li.submenu-open > ul.sub-menu{
    display:block !important;
  }

  .header .site-navigation .primary-menu ul.sub-menu li{
    width:100% !important;
  }

  .header .site-navigation .primary-menu ul.sub-menu li > a{
    min-height:42px;
    padding:9px 11px !important;
    border-radius:9px;
    font-size:13px !important;
  }

  .header .site-navigation .primary-menu li > ul.sub-menu ul.sub-menu{
    position:static !important;
    padding-left:12px !important;
  }

  .header .site-navigation .primary-menu .menu-item-has-children > a::after{
    display:none !important;
  }

  .header .site-navigation .submenu-toggle{
    display:inline-grid !important;
    place-items:center;
    flex:0 0 32px;
    width:32px;
    height:32px;
    margin-left:auto;
    padding:0;
    border:0;
    border-radius:8px;
    background:#e9f6f3;
    color:var(--primary);
    cursor:pointer;
  }

  .header .site-navigation .submenu-toggle i{
    font-size:10px;
    transition:transform .2s ease;
  }

  .header .site-navigation .menu-item-has-children.submenu-open > a .submenu-toggle i{
    transform:rotate(180deg);
  }

  .header .site-navigation > .nav-button{
    width:100%;
    min-height:48px;
    margin-top:12px;
    justify-content:center;
  }
}

/* Never let generic navigation ul rules create horizontal submenu rows */
.header .site-navigation ul{
  box-sizing:border-box;
}
.header .site-navigation ul.sub-menu{
  gap:0 !important;
  align-items:stretch !important;
  flex-wrap:nowrap !important;
}
