.elementor-5412 .elementor-element.elementor-element-400c5778{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5412 .elementor-element.elementor-element-ce7f037{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-5412 .elementor-element.elementor-element-ce7f037.e-con{--align-self:center;}.elementor-5412 .elementor-element.elementor-element-75e8f2e1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-5412 .elementor-element.elementor-element-1e91b451{text-align:center;}.elementor-5412 .elementor-element.elementor-element-1e91b451 .elementor-heading-title{font-family:var( --e-global-typography-f748faa0-font-family ), Sans-serif;font-size:var( --e-global-typography-f748faa0-font-size );font-weight:var( --e-global-typography-f748faa0-font-weight );line-height:var( --e-global-typography-f748faa0-line-height );color:var( --e-global-color-dark-text );}.elementor-5412 .elementor-element.elementor-element-7b8493b6{text-align:center;}.elementor-5412 .elementor-element.elementor-element-7b8493b6 img{width:100px;}.elementor-5412 .elementor-element.elementor-element-355c6cb1{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-5412 .elementor-element.elementor-element-8f91332{text-align:center;}.elementor-5412 .elementor-element.elementor-element-8f91332 .elementor-heading-title{font-family:var( --e-global-typography-f748faa0-font-family ), Sans-serif;font-size:var( --e-global-typography-f748faa0-font-size );font-weight:var( --e-global-typography-f748faa0-font-weight );line-height:var( --e-global-typography-f748faa0-line-height );color:var( --e-global-color-dark-text );}.elementor-5412 .elementor-element.elementor-element-4fe6378c{text-align:center;}.elementor-5412 .elementor-element.elementor-element-4fe6378c img{width:80px;}.elementor-5412 .elementor-element.elementor-element-24e15b1{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-5412 .elementor-element.elementor-element-24e15b1.e-con{--align-self:center;}.elementor-5412 .elementor-element.elementor-element-b78bed4{--display:flex;}.elementor-5412 .elementor-element.elementor-element-b269530{padding:20px 20px 20px 20px;}.elementor-5412 .elementor-element.elementor-element-978308e{--n-accordion-title-font-size:var( --e-global-typography-f748faa0-font-size );--n-accordion-title-justify-content:space-between;--n-accordion-title-flex-grow:1;--n-accordion-title-icon-order:initial;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-border-radius:14px 14px 14px 14px;--n-accordion-title-normal-color:var( --e-global-color-dark-text );--n-accordion-icon-size:15px;}.elementor-5412 .elementor-element.elementor-element-978308e {--n-accordion-padding:15px 20px 15px 20px;}:where( .elementor-5412 .elementor-element.elementor-element-978308e > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:var( --e-global-typography-f748faa0-font-family ), Sans-serif;font-weight:var( --e-global-typography-f748faa0-font-weight );line-height:var( --e-global-typography-f748faa0-line-height );}@media(max-width:1024px){.elementor-5412 .elementor-element.elementor-element-1e91b451 .elementor-heading-title{font-size:var( --e-global-typography-f748faa0-font-size );line-height:var( --e-global-typography-f748faa0-line-height );}.elementor-5412 .elementor-element.elementor-element-8f91332 .elementor-heading-title{font-size:var( --e-global-typography-f748faa0-font-size );line-height:var( --e-global-typography-f748faa0-line-height );}.elementor-5412 .elementor-element.elementor-element-978308e{--n-accordion-title-font-size:var( --e-global-typography-f748faa0-font-size );}:where( .elementor-5412 .elementor-element.elementor-element-978308e > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{line-height:var( --e-global-typography-f748faa0-line-height );}}@media(min-width:768px){.elementor-5412 .elementor-element.elementor-element-ce7f037{--content-width:1000px;}.elementor-5412 .elementor-element.elementor-element-24e15b1{--width:1000px;}}@media(max-width:767px){.elementor-5412 .elementor-element.elementor-element-ce7f037{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-5412 .elementor-element.elementor-element-75e8f2e1{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-5412 .elementor-element.elementor-element-1e91b451 .elementor-heading-title{font-size:var( --e-global-typography-f748faa0-font-size );line-height:var( --e-global-typography-f748faa0-line-height );}.elementor-5412 .elementor-element.elementor-element-355c6cb1{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5412 .elementor-element.elementor-element-8f91332 .elementor-heading-title{font-size:var( --e-global-typography-f748faa0-font-size );line-height:var( --e-global-typography-f748faa0-line-height );}.elementor-5412 .elementor-element.elementor-element-24e15b1{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-5412 .elementor-element.elementor-element-978308e{--n-accordion-title-font-size:var( --e-global-typography-f748faa0-font-size );}:where( .elementor-5412 .elementor-element.elementor-element-978308e > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{line-height:var( --e-global-typography-f748faa0-line-height );}}/* Start custom CSS *//* ============================================
   SHARED DESIGN SYSTEM — APC Bone Health
   ============================================ */

/* --- POPUPS: close button inside panel, no background, clearly visible --- */
.elementor-popup-modal .dialog-widget-content {
    position: relative !important;
    border-radius: 16px !important;
    overflow: visible !important;
}
.elementor-popup-modal .dialog-close-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    font-size: 24px !important;
    color: #333333 !important;
    background: transparent !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    line-height: 1 !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
    z-index: 20 !important;
    border: none !important;
    box-shadow: none !important;
}
.elementor-popup-modal .dialog-close-button:hover {
    background-color: rgba(0,0,0,0.06) !important;
    color: #000000 !important;
}
.elementor-popup-modal .dialog-close-button i,
.elementor-popup-modal .dialog-close-button svg {
    font-size: 20px !important;
    width: 20px !important;
    height: 20px !important;
}
.elementor-popup-modal .dialog-message { overflow: visible !important; height: auto !important; }
.elementor-popup-modal .dialog-widget-content { height: auto !important; }
.elementor-popup-modal .e-con-inner { height: auto !important; }

/* --- POPUP PANEL: auto height, no fixed/min height, no stretch --- */
.elementor-location-popup .e-con,
.elementor-location-popup .e-con-inner {
    min-height: 0 !important;
    height: auto !important;
    flex-grow: 0 !important;
    justify-content: flex-start !important;
    align-content: flex-start !important;
}

/* --- QUESTIONS LIST: numbered rows with pastel badges --- */
.ask-qrow {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #e8ecf0 !important;
}
.ask-qrow:last-child {
    border-bottom: none !important;
    padding-bottom: 0 !important;
}
.ask-qnum {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background-color: #e8f5e9 !important;
    color: #28903a !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    flex-shrink: 0 !important;
}
.ask-qtext {
    font-size: 14px !important;
    color: #333333 !important;
    line-height: 1.45 !important;
}

/* --- POPUP HEADING HIERARCHY --- */
.ask-popup-title .elementor-heading-title { font-size: 22px !important; font-weight: 700 !important; }
.ask-popup-why-heading .elementor-heading-title,
.ask-popup-questions-heading .elementor-heading-title { font-size: 16px !important; font-weight: 700 !important; }

/* --- CARDS: bigger headings, tighter body text --- */
.elementor-element[class*="bento-card"] .elementor-heading-title { font-size: 20px !important; font-weight: 700 !important; }
.elementor-element[class*="bento-card"] .elementor-widget-text-editor { font-size: 14px !important; line-height: 1.45 !important; }
.elementor-element[class*="diet-card-"] .elementor-widget-text-editor { line-height: 1.45 !important; }

/* --- CARDS: consistent radius, shadow, hover lift --- */
.elementor-element[class*="diet-card-"], .elementor-element[class*="bento-card"], .elementor-element[class*="fx-card-"] { border-radius: 12px !important; box-shadow: 0 2px 12px rgba(0,0,0,0.08) !important; transition: transform 0.25s ease, box-shadow 0.25s ease !important; cursor: pointer; }
.elementor-element[class*="diet-card-"]:hover, .elementor-element[class*="bento-card"]:hover, .elementor-element[class*="fx-card-"]:hover { transform: translateY(-4px) !important; box-shadow: 0 8px 30px rgba(0,0,0,0.14) !important; }

/* --- BADGES: consistent 32px circles --- */
.elementor-element[class*="diet-badge-"] .elementor-heading-title, .elementor-element[class*="fx-badge-"] .elementor-heading-title, .elementor-element[class*="step-badge-"] .elementor-heading-title { width: 32px !important; height: 32px !important; display: flex !important; align-items: center !important; justify-content: center !important; border-radius: 50% !important; font-size: 14px !important; font-weight: 700 !important; line-height: 1 !important; }

/* --- ACCORDIONS: consistent styling --- */
.elementor-accordion .elementor-accordion-item { border: 1px solid #e8ecf0 !important; border-radius: 8px !important; margin-bottom: 8px !important; overflow: hidden; }
.elementor-accordion .elementor-tab-title { padding: 16px 20px !important; font-weight: 600 !important; font-size: 15px !important; transition: background-color 0.2s ease !important; }
.elementor-accordion .elementor-tab-title:hover { background-color: #f8f9fa !important; }
.elementor-accordion .elementor-tab-content { padding: 0 20px 16px 20px !important; font-size: 14px !important; line-height: 1.6 !important; color: #444444 !important; }/* End custom CSS */