/* Janel Hello Base v1.1 - Hello-compatible reset */
*{box-sizing:border-box}
html{line-height:1.15;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:#fff;color:#222;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:16px;line-height:1.55;overflow-x:hidden}
a{color:inherit}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Containers */
.jhb-container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.jhb-main{min-height:60vh;padding:0;width:100%;max-width:none}.jhb-page-content,.jhb-page-full,.jhb-front-page{width:100%;max-width:none;margin:0;padding:0}.jhb-article{width:100%;max-width:none;margin:0;padding:0}.jhb-boxed-page{padding-top:36px;padding-bottom:36px}.jhb-entry-title{margin:0 0 24px;font-size:34px;line-height:1.2}

/* Header/footer basic fallback */
.jhb-site-header{background:#fff;border-bottom:1px solid #eee}.jhb-header-inner{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px}.jhb-brand a{text-decoration:none;font-weight:800;font-size:24px}.jhb-menu{list-style:none;margin:0;padding:0;display:flex;gap:22px;align-items:center}.jhb-menu a{text-decoration:none}.jhb-site-footer{border-top:1px solid #eee;background:#fafafa;padding:24px 0;color:#555;text-align:center}

/* Elementor and WP alignment */
.alignwide{max-width:1200px;margin-left:auto;margin-right:auto}.alignfull{max-width:100vw;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.wp-block-group.alignfull{padding-left:0;padding-right:0}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1200px}.elementor-default .jhb-main{padding:0}

/* Clinic plugin compatibility layer */
.hcr-card,.hcr-portal,.hcr-account,.hcr-dashboard,.hcr-auth-card{max-width:1150px;margin:40px auto!important;padding:32px!important;border-radius:24px;background:#fff;border:1px solid #dff3e3;box-shadow:0 12px 35px rgba(0,0,0,.06)}
.hcr-card input,.hcr-card select,.hcr-card textarea,.hcr-portal input,.hcr-portal select,.hcr-portal textarea,.hcr-account input,.hcr-account select,.hcr-account textarea,.hcr-dashboard input,.hcr-dashboard select,.hcr-dashboard textarea{max-width:100%;box-sizing:border-box;padding:12px 14px;border-radius:12px;border:1px solid #cfded2;font-size:15px}
.hcr-card input[type="text"],.hcr-card input[type="email"],.hcr-card input[type="password"],.hcr-card input[type="tel"],.hcr-card input[type="date"],.hcr-card input[type="url"],.hcr-card select,.hcr-card textarea,.hcr-portal input[type="text"],.hcr-portal input[type="email"],.hcr-portal input[type="password"],.hcr-portal input[type="tel"],.hcr-portal input[type="date"],.hcr-portal input[type="url"],.hcr-portal select,.hcr-portal textarea,.hcr-dashboard input[type="text"],.hcr-dashboard input[type="email"],.hcr-dashboard input[type="password"],.hcr-dashboard input[type="tel"],.hcr-dashboard input[type="date"],.hcr-dashboard input[type="url"],.hcr-dashboard select,.hcr-dashboard textarea{width:100%}
.hcr-card button,.hcr-card .button,.hcr-portal button,.hcr-portal .button,.hcr-dashboard button,.hcr-dashboard .button,.hcr-account button,.hcr-account .button{background:#2e7d32;color:#fff;border:none;border-radius:999px;padding:12px 22px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block}.hcr-two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}.hcr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}.hcr-table{width:100%;border-collapse:collapse}.hcr-table th,.hcr-table td{padding:12px;border-bottom:1px solid #e5f3e8;text-align:left;vertical-align:top}

/* Smart intake forms: prevent theme from squeezing fields */
.hc-smart-intake,.hcr-smart-intake,.smart-intake-form,.hcr-form{max-width:1150px;margin:35px auto!important;padding:28px!important;background:#fff;border-radius:22px;border:1px solid #e2f3e6;box-shadow:0 10px 30px rgba(0,0,0,.05)}
.hc-smart-intake input,.hc-smart-intake select,.hc-smart-intake textarea,.hcr-smart-intake input,.hcr-smart-intake select,.hcr-smart-intake textarea,.smart-intake-form input,.smart-intake-form select,.smart-intake-form textarea,.hcr-form input,.hcr-form select,.hcr-form textarea{max-width:100%;padding:10px 12px;border:1px solid #cfded2;border-radius:10px;box-sizing:border-box}.hc-smart-intake textarea,.hcr-smart-intake textarea,.smart-intake-form textarea,.hcr-form textarea{width:100%;min-height:100px}

/* Home page classes from clinic template */
.hc-hero,.hc-section,.hc-footer{width:100%;max-width:none}.hc-grid{display:grid}.hc-consult-grid{display:grid}.hc-card,.hc-consult-card{box-sizing:border-box}

@media(max-width:768px){.jhb-container{padding:0 14px}.jhb-header-inner{align-items:flex-start;flex-direction:column;padding:14px 0}.jhb-menu{flex-wrap:wrap;gap:12px}.hcr-card,.hcr-portal,.hcr-account,.hcr-dashboard,.hcr-auth-card,.hc-smart-intake,.hcr-smart-intake,.smart-intake-form,.hcr-form{margin:20px 12px!important;padding:22px!important}.hcr-two-col{grid-template-columns:1fr}.hcr-table{display:block;overflow-x:auto;white-space:nowrap}.jhb-entry-title{font-size:28px}}


/* v1.3: stronger clinic layout compatibility */
body, .jhb-main, .jhb-page-content{width:100%;max-width:none!important;}
.jhb-main{display:block!important;}
body:not(.wp-admin) .site, body:not(.wp-admin) #page, body:not(.wp-admin) #content{max-width:none!important;width:100%!important;}

/* Keep plugin pages full and centered regardless of theme/page wrapper */
body .hcr-card, body .hcr-portal, body .hcr-account, body .hcr-dashboard, body .hcr-auth-card,
body .hc-smart-intake-wrap, body .hcr-smart-intake-wrap, body .sai-wrap, body .smart-intake-wrap{
  max-width:1150px!important;
  width:calc(100% - 32px)!important;
  margin:40px auto!important;
}

/* Smart Adaptive Intake v2.x common classes */
body form[class*="smart"], body div[class*="smart-intake"], body div[class*="sai-"]{
  box-sizing:border-box;
}
body form[class*="smart"] input:not([type="checkbox"]):not([type="radio"]),
body form[class*="smart"] select,
body form[class*="smart"] textarea{
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Avoid old theme title/header fragments looking like the main header */
.jhb-page-content > h1:first-child:only-child{display:none;}

@media(max-width:768px){
  body .hcr-card, body .hcr-portal, body .hcr-account, body .hcr-dashboard, body .hcr-auth-card,
  body .hc-smart-intake-wrap, body .hcr-smart-intake-wrap, body .sai-wrap, body .smart-intake-wrap{
    width:calc(100% - 20px)!important;
    margin:20px auto!important;
  }
}
