/*
Theme Name: CACI Clinic
Description: Custom responsive CACI Clinic theme with one-click demo import.
Version: 1.0.9
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: caci-clinic
*/

:root{--purple:#6A2D5B;--deep:#271140;--plum:#53165f;--lilac:#A293BF;--pink:#BD64A7;--light:#fbf9fc;--text:#28232e;--muted:#605c65;--border:#ece6ef;--container:1340px;--round:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:'DM Sans',sans-serif;background:#fff}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}.container{width:min(calc(100% - 76px),var(--container));margin-inline:auto}.topbar{border-bottom:1px solid #f2eef3;background:#fff}.headtop{display:flex;align-items:center;justify-content:space-between;min-height:90px;gap:25px}.brand{display:flex;flex-direction:column;line-height:1;flex-shrink:0;color:var(--plum);letter-spacing:-.09em}.brand-top{font-family:Manrope,sans-serif;font-size:clamp(35px,4.2vw,69px);font-weight:700;line-height:.9;letter-spacing:-.115em}.brand-lower{display:flex;gap:11px;align-items:center;margin-top:4px;font-family:Manrope,sans-serif;letter-spacing:.48em;font-size:clamp(12px,1.05vw,18px);margin-left:5px}.brand-lower:before,.brand-lower:after{content:"";height:2px;background:var(--purple);flex:1}.headright{display:flex;align-items:center;gap:30px}.contact-inline{display:flex;align-items:center;gap:11px;font-size:14px;line-height:1.4}.contact-inline svg{color:var(--purple);flex-shrink:0}.btn{border:1px solid transparent;border-radius:8px;background:var(--purple);color:white;display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:15px 25px;font-weight:600;font-size:15px;white-space:nowrap;transition:background .2s,transform .2s,box-shadow .2s}.btn:hover{background:var(--deep);transform:translateY(-2px);box-shadow:0 9px 24px #27114028}.btn-outline{background:transparent;color:var(--purple);border-color:var(--purple)}.btn-outline:hover{color:white}.nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(17px,3.2vw,50px);min-height:52px}.nav a{position:relative;font-weight:500;padding:13px 0;font-size:14px}.nav a:hover,.nav a.active{color:var(--purple)}.nav a.active:after,.nav a:hover:after{content:"";height:3px;background:var(--purple);position:absolute;bottom:0;left:0;right:0}.menu-toggle{display:none;background:none;border:0;color:var(--purple);padding:7px}.hero{min-height:485px;position:relative;overflow:hidden;background:linear-gradient(90deg,#faf7fb 0%,#f8f4fa 47%,#e9dfe9 100%)}.hero::after{content:"";position:absolute;bottom:-72px;left:-10%;height:95px;width:120%;background:#fff;transform:rotate(-2deg);z-index:4}.hero::before{content:"";position:absolute;z-index:3;bottom:22px;left:-5%;height:26px;width:110%;background:linear-gradient(90deg,#a77eae55,#ad78a7aa,#9b5c9b65);transform:rotate(-2deg);filter:blur(.5px)}.hero-photo{position:absolute;inset:0 0 0 43%;background-image:linear-gradient(90deg,#f8f4fa 0%,#f8f4fa00 27%),url('assets/CACI-treatment-hero.webp');background-size:cover;background-position:center 42%;filter:saturate(.89)}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0 35%,#6a2d5b20)}.hero-inner{min-height:485px;display:flex;align-items:center;position:relative;z-index:2;padding-block:44px 80px}.hero-copy{max-width:635px}.eyebrow{color:var(--purple);letter-spacing:.24em;text-transform:uppercase;font-size:11px;font-weight:700;margin-bottom:18px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500}h1{font-size:clamp(41px,4.9vw,73px);line-height:1.09;letter-spacing:-.035em;color:var(--plum);margin-bottom:19px}h2{font-size:clamp(30px,3vw,44px);line-height:1.18;letter-spacing:-.025em;color:var(--plum)}h3{font-size:28px;line-height:1.15;color:var(--plum)}.lead{font-size:clamp(16px,1.5vw,21px);line-height:1.5;max-width:485px;margin-bottom:29px}.hero-actions{display:flex;gap:20px;flex-wrap:wrap}.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding-block:35px 38px}.benefit{display:flex;align-items:center;gap:17px}.benefit svg{width:47px;height:47px;color:#8a3c8c;flex-shrink:0;stroke-width:1.35}.benefit h4{margin:0 0 4px;font-size:17px;color:var(--deep)}.benefit p{font-size:13px;line-height:1.35;margin:0}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-bottom:65px}.feature-card{min-height:250px;border-radius:var(--round);background:#faf7fb;overflow:hidden;position:relative;display:flex;align-items:flex-end;box-shadow:0 3px 18px #2f14470a;transition:transform .25s,box-shadow .25s}.feature-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #2f14471d}.feature-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.feature-card::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fbf8fb 0%,#fbf8fbed 42%,#fbf8fb11 100%)}.feature-card .card-info{position:relative;z-index:1;padding:29px;width:100%;max-width:300px}.feature-card h3{margin-bottom:12px;font-size:clamp(25px,2.2vw,34px)}.feature-card p{font-size:14px;line-height:1.5;margin-bottom:18px}.card-arrow{position:absolute;right:20px;bottom:20px;z-index:2;width:37px;height:37px;border:1px solid var(--purple);color:var(--purple);border-radius:50%;display:grid;place-items:center;font-size:24px;background:#fff9}.feature-card.ultimate img{object-position:65% center}.feature-card.ultimate::after{background:linear-gradient(90deg,#fcfafceF 0%,#faf7facb 42%,#f9f3f900 87%)}.feature-card.treatments img{object-position:center}.feature-card.why::after{background:#f8f5f9ea}.why ul{padding:0;margin:16px 0 0;list-style:none}.why li{margin:0 0 12px;font-size:14px}.why li:before{content:'✓';font-size:19px;color:var(--purple);font-weight:800;margin-right:12px}.section{padding:78px 0}.section-soft{background:var(--light)}.section-title{text-align:center;max-width:680px;margin:0 auto 35px}.section-title p{color:var(--muted);line-height:1.65}.treat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.treat-card{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff;transition:transform .2s}.treat-card:hover{transform:translateY(-4px)}.treat-card img{width:100%;height:185px;object-fit:cover}.treat-content{padding:19px 20px}.treat-content h3{font-size:22px;margin-bottom:8px}.treat-content p{font-size:13px;line-height:1.5;color:var(--muted);margin-bottom:8px}.inline-link{font-size:13px;font-weight:700;color:var(--purple)}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split img{border-radius:18px;width:100%;height:420px;object-fit:cover}.split p{line-height:1.8;color:#534e59}.split .btn{margin-top:12px}.quote{font-family:'Playfair Display',serif;font-size:25px;color:var(--deep);line-height:1.5}.testimonial{background:#fff;border:1px solid var(--border);padding:30px;border-radius:15px}.testimonial strong{display:block;color:var(--purple);font-size:13px}.cta{background:linear-gradient(115deg,#36113e,#6A2D5B);color:white;padding:65px 0}.cta h2{color:white;margin-bottom:15px}.cta p{max-width:560px;line-height:1.7;opacity:.9}.cta-flex{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta .btn{background:white;color:var(--purple)}.cta .btn:hover{background:#f1e9f3}footer{background:#1e1426;color:#ede8f0;padding:28px 0;font-size:13px}footer .container{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.muted{color:#ad9bb5}a:focus-visible,button:focus-visible{outline:3px solid var(--pink);outline-offset:3px}
@media(max-width:1050px){.headright{gap:18px}.headright .contact-inline:nth-child(1){display:none}.benefits{gap:15px}.benefit{gap:10px}.benefit h4{font-size:15px}.benefit p{font-size:12px}.hero-photo{left:48%}.feature-card{min-height:265px}.feature-card .card-info{padding:20px}.treat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.container{width:min(calc(100% - 36px),var(--container))}.headtop{min-height:78px}.brand-top{font-size:44px}.brand-lower{font-size:12px}.headright .contact-inline{display:none}.headright>.btn{padding:11px 13px;font-size:12px}.menu-toggle{display:block}.nav{display:none;flex-direction:column;align-items:stretch;gap:0;padding:7px 0 18px;min-height:auto}.nav.open{display:flex}.nav a{padding:11px 5px}.nav a.active:after,.nav a:hover:after{height:1px}.hero{min-height:665px}.hero-photo{inset:0 0 0 0;background-image:linear-gradient(0deg,#f8f4fa 0%,#f8f4facf 32%,#f8f4fa15 65%),url('assets/CACI-treatment-hero.webp');background-position:57% top;background-size:auto 58%;background-repeat:no-repeat}.hero-inner{min-height:665px;align-items:flex-end;padding-bottom:98px}.hero-copy{max-width:100%}.hero h1{font-size:clamp(37px,10vw,56px)}.lead{font-size:16px}.hero-actions{gap:10px}.hero-actions .btn{padding:13px 14px;font-size:13px}.benefits{grid-template-columns:repeat(2,1fr);gap:24px 16px;padding-block:30px}.benefit svg{width:33px;height:33px}.feature-grid{grid-template-columns:1fr;gap:15px;padding-bottom:35px}.feature-card{min-height:210px}.section{padding:50px 0}.treat-grid{gap:12px}.treat-card img{height:130px}.treat-content{padding:14px}.treat-content h3{font-size:19px}.split{grid-template-columns:1fr;gap:25px}.split img{height:290px}.cta-flex{flex-direction:column;align-items:flex-start}footer .container{flex-direction:column}.headright{gap:7px}}
@media(max-width:380px){.brand-top{font-size:34px}.brand-lower{font-size:10px}.benefits{grid-template-columns:1fr 1fr}.hero-actions .btn{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}


/* Shared navigation and interior pages */
.nav{justify-content:flex-end}.nav-items{display:flex;justify-content:flex-end;align-items:center;gap:clamp(14px,2.8vw,42px);margin:0;padding:0;list-style:none}.nav-items>li{position:relative;display:flex;align-items:center;gap:4px}.nav-items>li>a{display:block}.sub-toggle{background:none;border:0;color:var(--purple);font-size:19px;padding:5px;line-height:1}.sub-menu{display:none;position:absolute;right:-12px;top:100%;background:#fff;box-shadow:0 18px 45px #27114026;border:1px solid var(--border);padding:10px;min-width:245px;max-height:65vh;overflow:auto;z-index:20;border-radius:10px;list-style:none;margin:0}.nav-parent:hover>.sub-menu,.nav-parent:focus-within>.sub-menu,.nav-parent.expanded>.sub-menu{display:block}.sub-menu a{display:block!important;padding:10px 12px!important;font-size:13px!important;border-radius:6px}.sub-menu a:hover{background:#f7f1f8}.sub-menu a:after{display:none!important}.nav-items>li>a.active:after{content:"";height:3px;background:var(--purple);position:absolute;bottom:0;left:0;right:0}.page-hero{background:linear-gradient(110deg,#fbf9fc,#eee6f3);padding:68px 0 64px;border-bottom:1px solid #e9deec}.page-hero .eyebrow{margin-bottom:12px}.page-hero h1{font-size:clamp(36px,4.4vw,62px);margin:0 0 13px}.page-hero p{max-width:680px;font-size:17px;line-height:1.7;color:var(--muted);margin:0}.breadcrumbs{font-size:12px;color:var(--purple);margin-bottom:15px}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.page-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:55px;align-items:start;padding:64px 0 90px}.page-article{font-size:16px;line-height:1.86;color:#514857;min-width:0}.page-article p{margin-bottom:17px}.page-article h2{margin:33px 0 18px}.page-article h3{font-size:26px;margin:27px 0 14px}.page-article img{max-width:100%;height:auto;border-radius:13px}.page-article img.main{float:right;margin:0 0 24px 28px;max-width:min(44%,360px)}.page-article a:not(.btn){color:var(--purple);text-decoration:underline;text-underline-offset:3px}.page-article ul,.page-article ol{padding-left:24px}.page-article:after{content:'';display:block;clear:both}.page-sidebar{border:1px solid var(--border);border-radius:15px;background:#fcf9fc;padding:25px;position:sticky;top:18px}.page-sidebar h3{font-size:23px;margin:0 0 12px}.page-sidebar ul{list-style:none;padding:0;margin:10px 0 23px}.page-sidebar li{border-bottom:1px solid #ece3ed}.page-sidebar li a{display:block;padding:9px 0;font-size:13px;line-height:1.3}.page-sidebar li a:hover{color:var(--purple)}.page-sidebar p{font-size:13px;line-height:1.6}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:10px 0 40px}.directory-card{overflow:hidden;border:1px solid var(--border);border-radius:13px;display:block;transition:transform .2s,box-shadow .2s;background:white}.directory-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #27114016}.directory-card img{width:100%;height:160px;object-fit:cover}.directory-card .inner{padding:17px}.directory-card h3{font-size:21px;margin:0 0 7px}.directory-card p{font-size:13px;color:var(--muted);line-height:1.5;margin:0}.fine-print{font-size:12px;color:#7c6d7e}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-box{border:1px solid var(--border);padding:24px;border-radius:14px;background:#faf7fb}.contact-box h2{font-size:27px;margin:0 0 15px}.contact-box a{color:var(--purple)}.page-note{background:#f7f0f9;border-left:3px solid var(--purple);padding:16px 20px;border-radius:5px;font-size:13px;line-height:1.65;margin-top:28px}.footer-links{display:flex;gap:20px;flex-wrap:wrap}.footer-links a:hover{color:white;text-decoration:underline}.page-article .path,.page-article .uc,.page-article script{display:none}
@media(max-width:1050px){.nav-items{gap:12px}.page-layout{gap:28px;grid-template-columns:minmax(0,1fr) 250px}.directory-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.nav{display:none}.nav.open{display:block}.nav-items{display:block;padding:0 0 15px}.nav-items>li{display:flex;flex-wrap:wrap;justify-content:space-between;border-bottom:1px solid var(--border)}.nav-items>li>a{flex:1}.nav-items>li>a:after{display:none!important}.sub-menu{position:static;min-width:100%;flex-basis:100%;box-shadow:none;border:0;border-radius:0;max-height:none;padding:0 0 8px 12px;display:none}.nav-parent:hover>.sub-menu,.nav-parent:focus-within>.sub-menu{display:none}.nav-parent.expanded>.sub-menu{display:block}.page-hero{padding:45px 0}.page-layout{grid-template-columns:1fr;gap:28px;padding:35px 0 55px}.page-sidebar{position:static}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.directory-card img{height:110px}.directory-card .inner{padding:12px}.directory-card h3{font-size:18px}.page-article img.main{float:none;width:100%;max-width:100%;margin:0 0 20px}.contact-grid{grid-template-columns:1fr}}


/* Navigation refinement */
.nav{justify-content:flex-end;min-height:58px;overflow:visible}.nav-items{display:flex;align-items:center;gap:clamp(12px,2.2vw,34px);list-style:none;padding:0;margin:0}.nav-items>li{position:relative;display:flex;align-items:center;gap:3px}.nav-items>li>a{white-space:nowrap}.sub-toggle{appearance:none;border:0;background:none;display:grid;place-items:center;color:var(--purple);width:26px;height:32px;padding:0;margin:0 0 0 2px;cursor:pointer}.sub-toggle:before{content:"";display:block;width:7px;height:7px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);transition:transform .2s}.nav-parent.expanded>.sub-toggle:before,.nav-parent:hover>.sub-toggle:before{transform:rotate(225deg) translate(-1px,-1px)}.nav .sub-menu{position:absolute;z-index:99;top:calc(100% - 1px);left:0;min-width:250px;max-width:320px;width:max-content;max-height:min(66vh,530px);overflow-y:auto;overscroll-behavior:contain;list-style:none;margin:0;padding:10px;background:#fff;border:1px solid var(--border);border-top:3px solid var(--purple);border-radius:0 0 12px 12px;box-shadow:0 15px 36px #27114022;display:none}.nav .sub-menu li{display:block}.nav .sub-menu a{display:block;white-space:normal;line-height:1.4;padding:10px 12px;border-radius:6px;font-size:13px}.nav .sub-menu a:hover,.nav .sub-menu a:focus{background:#f6eff9}.nav .sub-menu a:after{display:none}.nav-parent:hover>.sub-menu,.nav-parent:focus-within>.sub-menu,.nav-parent.expanded>.sub-menu{display:block}.nav-items>li:last-child .sub-menu{right:0;left:auto}.site-footer-widgets{background:#271140;color:#f6eff8;padding:48px 0;border-bottom:1px solid #ffffff20}.footer-widget-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.site-footer-widgets h3{font-family:'DM Sans',sans-serif;font-size:17px;color:#fff}.site-footer-widgets a{color:#f6dffa}.site-footer-widgets p{font-size:14px;line-height:1.8}.site-footer-widgets ul{padding:0;margin:0;list-style:none}.site-footer-widgets li{margin:8px 0}.widget{margin-bottom:20px}main{display:block}.site-main{min-height:55vh}
@media(max-width:700px){.nav{display:none}.nav.open{display:block}.nav-items{display:block}.nav-items>li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0}.nav-items>li>a{flex:1}.sub-toggle{width:44px;height:44px}.nav .sub-menu{display:none;position:static;max-width:none;min-width:100%;width:100%;max-height:none;overflow:visible;box-shadow:none;border:none;border-left:2px solid #d0bad9;border-radius:0;margin:0 0 10px 7px;padding:0 10px}.nav-parent:hover>.sub-menu,.nav-parent:focus-within>.sub-menu{display:none}.nav-parent.expanded>.sub-menu{display:block}.footer-widget-grid{grid-template-columns:1fr;gap:12px}.site-footer-widgets{padding:35px 0}}

/* v1.0.7: requested header phone and hero top border */
.site-header .contact-inline[href^="tel:"] { font-size:22px; font-weight:900; color:#5f3159; }
.hero { border-top:20px solid #c1aac4; }

/* v1.0.8: clinic experience / illustrative feedback layouts */
.caci-feedback-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:28px 0 38px}.caci-feedback-card,.caci-feedback-grid blockquote{margin:0;padding:28px;border-radius:18px;background:#f8f5f9;border:1px solid #eee5ef}.caci-feedback-card h3{color:#5f3159;margin-top:0}.caci-feedback-grid blockquote{font-size:1.04rem;line-height:1.7}.caci-feedback-grid blockquote footer{font-size:.8rem;margin-top:16px;color:#745a72}.caci-feedback-note{padding:28px;border:1px solid #c1aac4;border-radius:18px;margin:20px 0 48px}.caci-feedback-note>h3{margin-top:0}.caci-feedback-note>.caci-feedback-grid{margin-bottom:0}@media(max-width:760px){.caci-feedback-grid{grid-template-columns:1fr}.caci-feedback-note{padding:18px}}
