/*
Theme Name: Born Cares Elementor
Theme URI: https://borncares.com/
Author: Web Infotech Solution
Description: WordPress conversion of the Born Cares PHP website, prepared for Elementor editing.
Version: 1.4.0
Text Domain: born-cares-elementor
*/

/* WordPress / Elementor bridge */
.site-main { width:100%; }
.elementor-page .site-main { margin:0; }
.born-cares-success { max-width: 1200px; margin: 20px auto; padding: 14px 20px; background:#e8fff7; color:#13795b; border:1px solid #9fe5d0; border-radius:10px; }
.main-menu__list { margin:0; padding:0; }
.main-menu__list > li { position:relative; }
.main-menu__list ul { list-style:none; margin:0; padding:10px 0; }
@media (min-width: 1200px) {
  .main-menu__list > li.dropdown:hover > ul { opacity:1; visibility:visible; transform:translateY(0); }
}

/* v2 layout repair: full-width Elementor content + complete header/footer */
html, body { margin:0 !important; padding:0 !important; width:100%; max-width:100%; overflow-x:hidden; }
body.elementor-page, body.elementor-editor-active { width:100%; }
#page, .site, .site-main, .bc-site-main, .elementor, .elementor-page { width:100% !important; max-width:none !important; margin-left:0 !important; margin-right:0 !important; }
.bc-site-main { padding:0 !important; }
.elementor-section, .elementor-section-wrap { width:100%; max-width:none; }
.elementor-section.elementor-section-boxed > .elementor-container { width:100%; max-width:1400px; }
.elementor-container { margin-left:auto; margin-right:auto; }
.elementor-widget-html { width:100%; }
.elementor-widget-container > section:first-child { width:100%; }

.bc-header { position:relative; z-index:1000; background:#fff; }
.bc-header .container-fluid { width:100%; max-width:none; padding-left:32px; padding-right:32px; }
.bc-header .navigation { width:100%; min-height:92px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.bc-header .left-side { flex:1 1 auto; min-width:0; display:flex; align-items:center; gap:clamp(35px,5vw,110px) !important; }
.bc-brand { display:flex; align-items:center; flex:0 0 auto; }
.bc-header .header-logo { width:70px !important; height:70px !important; object-fit:contain; display:block; }
.bc-header .main-menu__nav { display:flex; align-items:center; }
.bc-header .main-menu__list { display:flex; align-items:center; gap:clamp(20px,2.2vw,42px); }
.bc-header .main-menu__list > li > a { white-space:nowrap; }
.bc-header-right { flex:0 0 auto; display:flex; align-items:center; }
.bc-header-right .right-side { display:flex; align-items:center; gap:22px; }
.bc-header-right .socialicons { display:flex; align-items:center; gap:14px; }
.bc-header-right .socialicons .icon { display:flex; align-items:center; justify-content:center; width:34px; height:34px; }
.bc-call-btn { display:inline-flex !important; align-items:center; gap:8px; white-space:nowrap; }
.bc-call-btn .icon { display:inline-flex; }
.bc-mobile-toggle { border:0; background:transparent; padding:8px; cursor:pointer; }
.bc-mobile-toggle img { width:30px; height:30px; }

.bc-footer { width:100%; position:relative; }
.bc-footer > .container-fluid { width:100%; max-width:none; padding-left:clamp(24px,5vw,80px); padding-right:clamp(24px,5vw,80px); }
.bc-footer-logo-img { width:90px !important; height:90px !important; object-fit:contain; }
.bc-footer .social-icons { display:flex; gap:12px; }
.bc-footer .social-icons .icon { display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%; }

@media (max-width:1199px) {
  .bc-header .container-fluid { padding-left:20px; padding-right:20px; }
  .bc-header-right { display:none !important; }
  .bc-header .left-side { justify-content:space-between; width:100%; gap:20px !important; }
  .bc-header .main-menu__nav { display:none; }
  .bc-mobile-toggle { display:flex !important; }
}
@media (max-width:767px) {
  .bc-header .navigation { min-height:74px; }
  .bc-header .header-logo { width:64px !important; height:64px !important; }
  .bc-header .container-fluid { padding-left:14px; padding-right:14px; }
  .elementor-section.elementor-section-boxed > .elementor-container { max-width:100%; }
  .bc-footer > .container-fluid { padding-left:20px; padding-right:20px; }
}

/* Header parity fix: restore the original right-side actions and SVG icons. */
.bc-header .main-menu__right { display:flex !important; flex:0 0 auto; align-items:center; }
.bc-header .main-menu__right .right-side { display:flex !important; align-items:center; gap:18px !important; }
.bc-header .socialicons { display:flex !important; align-items:center; gap:18px !important; }
.bc-header .socialicons .icon { width:23px !important; height:24px !important; display:flex !important; align-items:center; justify-content:center; color:#21AC94 !important; text-decoration:none !important; }
.bc-header .socialicons .icon svg { width:23px !important; height:24px !important; display:block !important; fill:#21AC94 !important; stroke:#21AC94 !important; stroke-width:0; }
.bc-header .socialicons .icon svg rect { fill:none !important; stroke:#21AC94 !important; stroke-width:1.8 !important; }
.bc-header .socialicons .icon svg circle { fill:none !important; stroke:#21AC94 !important; stroke-width:1.8 !important; }
.bc-header .socialicons .icon svg .fill-dot { fill:#21AC94 !important; stroke:none !important; }
.bc-header .bc-header-actions { display:flex !important; align-items:center; gap:12px !important; }
.bc-header .bc-call-btn,
.bc-header .bc-start-btn { text-decoration:none !important; }
.bc-header .bc-call-btn .icon,
.bc-header .bc-start-btn .icon { position:relative !important; width:34px !important; height:32px !important; min-width:34px !important; min-height:32px !important; }
.bc-header .bc-call-btn .icon::before,
.bc-header .bc-start-btn .icon::before { left:0 !important; top:0 !important; width:100% !important; height:100% !important; }
.bc-header .bc-call-btn .icon svg,
.bc-header .bc-start-btn .icon svg { position:relative !important; width:16px !important; height:16px !important; z-index:5 !important; display:block !important; }
.bc-header .bc-call-btn .icon svg { fill:#21AC94 !important; stroke:none !important; }
.bc-header .bc-start-btn .icon svg { fill:#F7B631 !important; stroke:none !important; }
.bc-header .bc-call-btn .text,
.bc-header .bc-start-btn .text { position:relative; z-index:5; white-space:nowrap; }
.bc-header .bc-call-btn { min-height:42px; }
.bc-header .bc-start-btn { min-height:42px; }
@media (min-width:1200px) and (max-width:1399px) {
  .bc-header .left-side { gap:35px !important; }
  .bc-header .main-menu__list { gap:22px; }
  .bc-header .main-menu__right .right-side { gap:14px !important; }
  .bc-header .socialicons { gap:12px !important; }
  .bc-header .bc-header-actions { gap:10px !important; }
  .bc-header .bc-call-btn .text { font-size:14px !important; }
  .bc-header .bc-start-btn .text { font-size:18px !important; }
}
@media (max-width:1199px) {
  .bc-header .main-menu__right { display:none !important; }
}


/* v3: header/sticky/icon and Elementor conversion hardening */
.bc-header { background:#fff !important; border-bottom:1px solid #eee; }
.bc-header .main-menu { background:#fff !important; }
.bc-header .main-menu__right { visibility:visible !important; opacity:1 !important; }
.bc-header .socialicons .icon svg path,
.bc-header .socialicons .icon svg rect,
.bc-header .socialicons .icon svg circle { vector-effect:non-scaling-stroke; }
.bc-header .socialicons .icon svg path { fill:#21AC94 !important; }
.bc-header .socialicons .icon svg rect,
.bc-header .socialicons .icon svg circle { stroke:#21AC94 !important; }
.bc-header .bc-call-btn .icon svg path { fill:#21AC94 !important; }
.bc-header .bc-start-btn .icon svg path { fill:#F7B631 !important; }
.bc-header .bc-call-btn .icon,
.bc-header .bc-start-btn .icon { background:#fff !important; border-radius:10px; }
.stricky-header { z-index:99999 !important; }
.stricky-header .sticky-header__content { background:#fff !important; }
.stricky-header .sticky-header__content .main-menu { width:100% !important; }
.stricky-header .sticky-header__content .header-logo { width:70px !important; height:70px !important; }
.stricky-header .sticky-header__content .main-menu__right { display:flex !important; }
.stricky-header .sticky-header__content .socialicons .icon svg path { fill:#21AC94 !important; }
.stricky-header .sticky-header__content .socialicons .icon svg rect,
.stricky-header .sticky-header__content .socialicons .icon svg circle { stroke:#21AC94 !important; }
.elementor-page .site-main > .elementor { width:100% !important; max-width:none !important; }
.elementor-page .elementor-widget-html .elementor-widget-container { width:100% !important; max-width:none !important; padding-left:0 !important; padding-right:0 !important; }
.elementor-page .elementor-widget-html .elementor-widget-container > section { width:100% !important; max-width:none !important; }
@media (max-width:1199px) {
  .bc-header .main-menu__right { display:none !important; }
  .bc-header .header-logo { width:64px !important; height:64px !important; }
  .stricky-header { display:none !important; }
}

/* =========================================================
   Born Cares - Original PHP Gallery recreation
   Recreates the circular gallery animation seen on the PHP site.
   ========================================================= */
.gallery-section {
  position: relative;
  width: 100% !important;
  padding: 80px 0 90px !important;
  overflow: hidden;
  background: linear-gradient(115deg,#fff9fc 0%,#f8fbff 48%,#eefaff 100%);
}
.gallery-section > .container {
  width: min(1200px, calc(100% - 40px)) !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}
.gallery-section .text-center { text-align:center; }
.gallery-section .text-center h2 {
  margin: 0 0 14px !important;
  font-size: clamp(32px,4vw,48px) !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}
.gallery-section .text-center p {
  max-width: 760px;
  margin: 0 auto 45px !important;
  font-size: 17px;
  line-height: 1.7;
}
.gallery-section .text-baby-blue { color:#21AC94 !important; }
.gallery-section .text-baby-pink { color:#ff5b78 !important; }
.gallery-section .row {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:38px 28px !important;
  margin:0 !important;
}
.gallery-section .row > [class*="col-"] {
  width:auto !important;
  max-width:none !important;
  padding:0 !important;
  margin:0 !important;
  flex:none !important;
}
.gallery-section .gallery-item {
  position:relative !important;
  width:min(100%,260px) !important;
  aspect-ratio:1/1 !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:7px !important;
  border-radius:50% !important;
  background:conic-gradient(from 18deg,#ff646d 0 15%,#fff 15% 24%,#f8bd38 24% 39%,#fff 39% 48%,#23cdb3 48% 64%,#fff 64% 73%,#7046dc 73% 87%,#fff 87% 94%,#32d5ef 94% 100%) !important;
  box-shadow:0 12px 30px rgba(30,60,80,.12) !important;
  transition:transform .45s ease, border-radius .45s ease, box-shadow .45s ease !important;
  isolation:isolate;
}
.gallery-section .gallery-item::before {
  content:"";
  position:absolute;
  inset:3px;
  z-index:-1;
  border-radius:inherit;
  background:#fff;
}
.gallery-section .gallery-item::after {
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:inset 0 0 0 4px rgba(255,255,255,.92);
  pointer-events:none;
  z-index:3;
}
.gallery-section .gallery-item img {
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  min-height:0 !important;
  object-fit:cover !important;
  border-radius:50% !important;
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:#f4f8fb !important;
  transition:border-radius .45s ease, transform .45s ease !important;
}
.gallery-section .gallery-item .overlay {
  position:absolute !important;
  inset:7px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  background:rgba(33,172,148,.62) !important;
  opacity:0 !important;
  visibility:hidden !important;
  transition:opacity .35s ease, visibility .35s ease, border-radius .45s ease !important;
  z-index:4 !important;
}
.gallery-section .gallery-item .overlay a {
  width:52px !important;
  height:52px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#21AC94 !important;
  text-decoration:none !important;
  font-size:24px !important;
  box-shadow:0 8px 18px rgba(0,0,0,.16) !important;
}
.gallery-section .gallery-item .overlay a::before { content:"↗"; font-weight:800; line-height:1; }
.gallery-section .gallery-item .overlay i { display:none !important; }
.gallery-section .gallery-item:hover {
  transform:translateY(-4px) scale(1.01) !important;
  border-radius:28px !important;
  box-shadow:0 18px 38px rgba(30,60,80,.18) !important;
}
.gallery-section .gallery-item:hover::before,
.gallery-section .gallery-item:hover::after,
.gallery-section .gallery-item:hover img,
.gallery-section .gallery-item:hover .overlay { border-radius:28px !important; }
.gallery-section .gallery-item:hover img { transform:scale(1.015) !important; }
.gallery-section .gallery-item:hover .overlay { opacity:1 !important; visibility:visible !important; }
@media (max-width: 991px) {
  .gallery-section .row { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:30px 22px !important; }
}
@media (max-width: 575px) {
  .gallery-section { padding:55px 0 65px !important; }
  .gallery-section > .container { width:calc(100% - 28px) !important; }
  .gallery-section .row { grid-template-columns:1fr !important; }
  .gallery-section .gallery-item { width:min(100%,300px) !important; }
}
