/* ===== IVF Baby - Glassmorphism Theme ===== */
/* 8-Dimensions: Bento Grid / Sticky Ads / Stats+FAQ / Extreme Contrast / Elastic Jelly / Glassmorphism / Negative Space / Scroll Reveal */

/* ===== CSS Variables ===== */
:root{
  --ivf-primary:#1976D2;
  --ivf-primary-dark:#1565C0;
  --ivf-primary-light:#42A5F5;
  --ivf-accent:#00BFA5;
  --ivf-accent-light:#1DE9B6;
  --ivf-dark:#0D1B2A;
  --ivf-dark-light:#1B2838;
  --ivf-text:#1a1a2e;
  --ivf-text-light:#5a5a6e;
  --ivf-text-muted:#888;
  --ivf-bg:#f0f4f8;
  --ivf-bg-alt:#e8eef4;
  --ivf-card:rgba(255,255,255,0.72);
  --ivf-card-solid:#fff;
  --ivf-border:rgba(25,118,210,0.12);
  --ivf-border-strong:rgba(25,118,210,0.25);
  --ivf-glass:bg:rgba(255,255,255,0.75);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  --ivf-radius:20px;
  --ivf-radius-sm:12px;
  --ivf-shadow:0 8px 32px rgba(25,118,210,0.12);
  --ivf-shadow-lg:0 20px 60px rgba(25,118,210,0.18);
  --ivf-glow:0 0 40px rgba(0,191,165,0.2);
  --ivf-gradient:linear-gradient(135deg,var(--ivf-primary),var(--ivf-accent));
  --ivf-section-py:120px;
}

/* ===== Base ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;
  color:var(--ivf-text);background:var(--ivf-bg);line-height:1.6;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;padding-bottom:70px!important;
}
a{color:var(--ivf-primary);text-decoration:none;transition:color .3s}
a:hover{color:var(--ivf-accent)}
img{max-width:100%;height:auto}
::selection{background:var(--ivf-accent);color:#fff}

/* ===== Scrollbar ===== */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--ivf-bg)}
::-webkit-scrollbar-thumb{background:var(--ivf-primary);border-radius:3px}

/* ===== Loader ===== */
.ivf-loader{position:fixed;inset:0;z-index:99999;background:var(--ivf-bg);display:flex;align-items:center;justify-content:center;transition:opacity .5s,visibility .5s}
.ivf-loader.hidden{opacity:0;visibility:hidden}
.ivf-loader-ring{width:56px;height:56px;border:3px solid var(--ivf-border);border-top-color:var(--ivf-primary);border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ===== Topbar ===== */
.ivf-topbar{background:var(--ivf-dark);color:#a0b4c8;font-size:.8rem;padding:.4rem 0}
.ivf-topbar a{color:#a0b4c8;text-decoration:none;font-size:.8rem}
.ivf-topbar a:hover{color:#fff}
.ivf-topbar-phone{font-weight:600;color:#fff;font-size:.9rem}
.ivf-topbar-divider{width:1px;height:14px;background:rgba(255,255,255,0.2)}
.ivf-topbar-item{display:flex;align-items:center;gap:.5rem}
.ivf-topbar-link{transition:color .3s}

/* ===== Navbar (Glassmorphism) ===== */
.ivf-navbar{
  background:rgba(255,255,255,0.75)!important;
  backdrop-filter:blur(20px)!important;
  -webkit-backdrop-filter:blur(20px)!important;
  border-bottom:1px solid var(--ivf-border);
  transition:all .4s cubic-bezier(.25,.46,.45,.94);
  padding:.75rem 0;
}
.ivf-navbar.scrolled{padding:.5rem 0;box-shadow:var(--ivf-shadow)}
.ivf-brand{display:flex;align-items:center;gap:.75rem}
.ivf-brand-logo{height:48px;width:auto;transition:height .4s}
.ivf-brand-text{line-height:1.2}
.ivf-brand-name{font-size:1.15rem;font-weight:700;color:var(--ivf-primary);letter-spacing:-.02em}
.ivf-brand-slogan{font-size:.68rem;color:var(--ivf-text-muted)}
.ivf-toggler{border:none;padding:.4rem;background:transparent}
.ivf-toggler-line{display:block;width:22px;height:2px;background:var(--ivf-primary);margin:5px 0;border-radius:1px;transition:all .3s}
.ivf-nav-link{color:var(--ivf-text)!important;font-weight:500;font-size:.9rem;padding:.6rem 1rem!important;border-radius:8px;transition:all .3s}
.ivf-nav-link:hover,.ivf-nav-link.active{background:var(--ivf-primary);color:#fff!important}
.ivf-nav-cta{background:var(--ivf-gradient)!important;color:#fff!important;padding:.6rem 1.25rem!important;border-radius:50px;font-weight:600;box-shadow:0 4px 15px rgba(25,118,210,.3)}
.ivf-nav-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(25,118,210,.4)}
.ivf-nav-phone{font-weight:700;color:var(--ivf-primary)!important;font-size:.95rem}

/* ===== Scroll Ring ===== */
.ivf-scroll-ring{position:fixed;bottom:24px;right:24px;width:44px;height:44px;z-index:1030;cursor:pointer;display:none}
.ivf-ring-bg{fill:none;stroke:var(--ivf-border);stroke-width:3}
.ivf-ring-progress{fill:none;stroke:var(--ivf-primary);stroke-width:3;stroke-linecap:round;stroke-dasharray:126;stroke-dashoffset:126;transition:stroke-dashoffset .2s;transform:rotate(-90deg);transform-origin:center}

/* ===== Hero ===== */
.ivf-hero{position:relative;overflow:hidden}
.ivf-carousel{height:clamp(500px,85vh,900px)}
.ivf-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 8s ease}
.carousel-item.active .ivf-hero-bg{transform:scale(1.08)}
.ivf-hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(13,27,42,.88) 0%,rgba(13,27,42,.5) 60%,rgba(0,191,165,.15) 100%)}
.ivf-hero-content{position:relative;z-index:3}
.ivf-hero-text{padding:2rem 0}
.ivf-hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(0,191,165,.2);color:var(--ivf-accent-light);padding:.4rem 1rem;border-radius:50px;font-size:.85rem;margin-bottom:1.5rem;border:1px solid rgba(0,191,165,.3);backdrop-filter:blur(10px)}
.ivf-hero-title{font-size:clamp(2rem,4.5vw,3.5rem);font-weight:800;color:#fff;line-height:1.15;margin-bottom:1.25rem;letter-spacing:-.02em}
.ivf-hero-title span{color:var(--ivf-accent-light)}
.ivf-hero-desc{font-size:clamp(.95rem,1.4vw,1.15rem);color:rgba(255,255,255,.85);margin-bottom:2rem;max-width:560px;line-height:1.7}
.ivf-hero-actions{display:flex;gap:1rem;flex-wrap:wrap}
.ivf-hero-btn{padding:.85rem 2rem;border-radius:50px;font-weight:600;font-size:1rem;border:none;transition:all .4s cubic-bezier(.34,1.56,.64,1);display:inline-flex;align-items:center;gap:.5rem}
.ivf-hero-btn-primary{background:var(--ivf-gradient);color:#fff;box-shadow:0 8px 30px rgba(25,118,210,.35)}
.ivf-hero-btn-primary:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 40px rgba(25,118,210,.45);color:#fff}
.ivf-hero-btn-outline{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(10px)}
.ivf-hero-btn-outline:hover{background:rgba(255,255,255,.25);color:#fff;transform:translateY(-2px)}
.ivf-hero-stats{position:absolute;bottom:0;left:0;right:0;background:rgba(255,255,255,.1);backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.15);z-index:4;padding:1.25rem 0}
.ivf-hero-stat{text-align:center}
.ivf-hero-stat-num{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;color:#fff;display:block;line-height:1}
.ivf-hero-stat-label{font-size:.8rem;color:rgba(255,255,255,.7);margin-top:.25rem}
.ivf-hero-indicators{bottom:100px}
.ivf-hero-indicators button{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.4);border:none;margin:0 5px}
.ivf-hero-indicators button.active{background:var(--ivf-accent);width:28px;border-radius:5px}
.ivf-hero-ctrl{width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);color:#fff;top:50%;transform:translateY(-50%);backdrop-filter:blur(10px);transition:all .3s}
.ivf-hero-ctrl:hover{background:rgba(255,255,255,.3)}

/* ===== Section Header ===== */
.ivf-section-header{text-align:center;margin-bottom:3rem}
.ivf-section-badge{display:inline-flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,rgba(25,118,210,.1),rgba(0,191,165,.1));color:var(--ivf-primary);padding:.35rem 1rem;border-radius:50px;font-size:.8rem;font-weight:600;margin-bottom:1rem;border:1px solid var(--ivf-border)}
.ivf-section-title{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:800;color:var(--ivf-text);letter-spacing:-.02em;margin-bottom:.75rem;line-height:1.2}
.ivf-section-subtitle{font-size:1.05rem;color:var(--ivf-text-light);max-width:560px;margin:0 auto}

/* ===== Decrypt Stats ===== */
.ivf-decrypt{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-decrypt-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);padding:2.5rem 2rem;text-align:center;
  backdrop-filter:blur(20px);transition:all .4s cubic-bezier(.34,1.56,.64,1);
  position:relative;overflow:hidden;
}
.ivf-decrypt-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--ivf-gradient);border-radius:var(--ivf-radius) var(--ivf-radius) 0 0;transform:scaleX(0);transition:transform .4s}
.ivf-decrypt-card:hover{transform:translateY(-8px);box-shadow:var(--ivf-shadow-lg)}
.ivf-decrypt-card:hover::before{transform:scaleX(1)}
.ivf-decrypt-icon{width:60px;height:60px;border-radius:16px;background:linear-gradient(135deg,rgba(25,118,210,.1),rgba(0,191,165,.1));display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--ivf-primary);margin:0 auto 1.25rem}
.ivf-decrypt-number{font-size:clamp(2rem,4vw,2.8rem);font-weight:800;color:var(--ivf-primary);line-height:1;display:block}
.ivf-decrypt-suffix{font-size:1.1rem;color:var(--ivf-accent);font-weight:600}
.ivf-decrypt-label{font-size:.88rem;color:var(--ivf-text-light);margin-top:.5rem}
.ivf-decrypt-bar{height:6px;background:var(--ivf-bg-alt);border-radius:3px;margin-top:1.25rem;overflow:hidden}
.ivf-decrypt-fill{height:100%;background:var(--ivf-gradient);border-radius:3px;width:0;transition:width 2s cubic-bezier(.25,.46,.45,.94)}

/* ===== Flow Steps ===== */
.ivf-flow{padding:var(--ivf-section-py) 0;background:var(--ivf-bg-alt)}
.ivf-flow-wrap{display:flex;justify-content:space-between;position:relative}
.ivf-flow-wrap::before{content:'';position:absolute;top:35px;left:8%;right:8%;height:2px;background:linear-gradient(90deg,var(--ivf-primary),var(--ivf-accent));border-radius:1px}
.ivf-flow-step{text-align:center;position:relative;z-index:1;flex:1;padding:0 .5rem}
.ivf-flow-ring{
  width:72px;height:72px;border-radius:50%;
  background:linear-gradient(135deg,var(--ivf-primary),var(--ivf-accent));
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 1rem;position:relative;
  box-shadow:0 8px 25px rgba(25,118,210,.3);
}
.ivf-flow-num{font-size:1.5rem;font-weight:800;color:#fff}
.ivf-flow-icon{position:absolute;bottom:-4px;right:-4px;width:26px;height:26px;border-radius:50%;background:var(--ivf-accent);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.7rem;border:2px solid #fff}
.ivf-flow-title{font-size:1.05rem;font-weight:700;color:var(--ivf-text);margin-bottom:.4rem}
.ivf-flow-desc{font-size:.8rem;color:var(--ivf-text-light);line-height:1.5}

/* ===== Bento Grid ===== */
.ivf-bento{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-bento-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
.ivf-bento-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);overflow:hidden;position:relative;
  backdrop-filter:blur(20px);transition:all .4s cubic-bezier(.34,1.56,.64,1);
}
.ivf-bento-card:hover{transform:translateY(-6px);box-shadow:var(--ivf-shadow-lg)}
.ivf-bento-large{grid-column:span 2;grid-row:span 2}
.ivf-bento-wide{grid-column:span 2}
.ivf-bento-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .6s}
.ivf-bento-card:hover .ivf-bento-bg{transform:scale(1.1)}
.ivf-bento-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(13,27,42,.9) 100%)}
.ivf-bento-content{position:relative;z-index:2;padding:2rem}
.ivf-bento-icon{
  width:56px;height:56px;border-radius:var(--ivf-radius-sm);
  background:var(--ivf-gradient);display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;color:#fff;margin-bottom:1rem;box-shadow:0 8px 20px rgba(25,118,210,.3);
}
.ivf-bento-tag{display:inline-block;background:rgba(0,191,165,.15);color:var(--ivf-accent);padding:.2rem .75rem;border-radius:50px;font-size:.72rem;font-weight:600;margin-bottom:.5rem}
.ivf-bento-title{font-size:1.25rem;font-weight:700;color:#0ba0b8;;margin-bottom:.4rem}
.ivf-bento-desc{font-size:.85rem;color:rgb(0, 191, 165);line-height:1.6;margin-bottom:1rem}
.ivf-bento-price{font-size:1.5rem;font-weight:800;color:var(--ivf-accent-light)}
.ivf-bento-link{
  display:inline-flex;align-items:center;gap:.4rem;color:var(--ivf-accent-light);font-size:.85rem;font-weight:600;
  text-decoration:none;transition:gap .3s;
}
.ivf-bento-link:hover{gap:.75rem;color:var(--ivf-accent-light)}
.ivf-bento-text{padding:1.75rem}
.ivf-bento-row{display:flex;gap:1.25rem;align-items:center;margin-bottom:1.25rem}
.ivf-bento-row-reverse{flex-direction:row-reverse}
.ivf-bento-col{flex:1}
.ivf-bento-square .ivf-bento-content{display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-height:200px}

/* ===== Marquee ===== */
.ivf-marquee{padding:3rem 0;background:var(--ivf-bg);overflow:hidden;border-top:1px solid var(--ivf-border);border-bottom:1px solid var(--ivf-border)}
.ivf-marquee-track{display:flex;animation:marqueeScroll 30s linear infinite;width:max-content}
.ivf-marquee-track:hover{animation-play-state:paused}
.ivf-marquee-inner{display:flex;align-items:center;gap:3rem;padding:0 1.5rem}
.ivf-marquee-item{font-size:clamp(1.2rem,2vw,1.5rem);font-weight:700;color:var(--ivf-text-muted);white-space:nowrap;opacity:.6;transition:opacity .3s}
.ivf-marquee-item:hover{opacity:1;color:var(--ivf-primary)}
@keyframes marqueeScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ===== Tilt Cards ===== */
.ivf-tilt{padding:var(--ivf-section-py) 0;background:var(--ivf-bg-alt)}
.ivf-tilt-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);padding:2.5rem 2rem;text-align:center;
  backdrop-filter:blur(20px);position:relative;overflow:hidden;
  transform-style:preserve-3d;perspective:1000px;transition:transform .3s;
}
.ivf-tilt-card:hover{box-shadow:var(--ivf-shadow-lg)}
.ivf-tilt-shine{position:absolute;inset:0;background:radial-gradient(circle at var(--shine-x,50%) var(--shine-y,50%),rgba(255,255,255,.4),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none;border-radius:var(--ivf-radius)}
.ivf-tilt-card:hover .ivf-tilt-shine{opacity:1}
.ivf-tilt-icon{
  width:72px;height:72px;border-radius:20px;
  background:linear-gradient(135deg,rgba(25,118,210,.12),rgba(0,191,165,.12));
  display:flex;align-items:center;justify-content:center;
  font-size:1.75rem;color:var(--ivf-primary);margin:0 auto 1.25rem;
  transform:translateZ(30px);
}
.ivf-tilt-bigicon{font-size:3rem;color:var(--ivf-primary);opacity:.15;position:absolute;top:1rem;right:1rem;transform:translateZ(10px)}
.ivf-tilt-title{font-size:1.15rem;font-weight:700;color:var(--ivf-text);margin-bottom:.5rem;transform:translateZ(25px)}
.ivf-tilt-desc{font-size:.85rem;color:var(--ivf-text-light);line-height:1.6;transform:translateZ(20px)}
.ivf-tilt-stat{font-size:1.8rem;font-weight:800;color:var(--ivf-primary);display:block;margin-top:1rem;transform:translateZ(35px)}
.ivf-tilt-wide{grid-column:span 2}
.ivf-tilt-content{position:relative;z-index:2}

/* ===== Team ===== */
.ivf-team{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-team-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);overflow:hidden;position:relative;
  backdrop-filter:blur(20px);transition:all .4s;
}
.ivf-team-card:hover{transform:translateY(-6px);box-shadow:var(--ivf-shadow-lg)}
.ivf-team-photo{width:100%;height:280px;object-fit:cover;transition:transform .5s}
.ivf-team-card:hover .ivf-team-photo{transform:scale(1.08)}
.ivf-team-overlay{position:absolute;top:0;left:0;right:0;height:280px;background:linear-gradient(180deg,transparent 50%,rgba(13,27,42,.8) 100%);opacity:0;transition:opacity .4s}
.ivf-team-card:hover .ivf-team-overlay{opacity:1}
.ivf-team-info{padding:1.5rem;position:relative}
.ivf-team-name{font-size:1.15rem;font-weight:700;color:var(--ivf-text)}
.ivf-team-role{font-size:.85rem;color:var(--ivf-accent);font-weight:600;margin-bottom:.5rem}
.ivf-team-brief{font-size:.82rem;color:var(--ivf-text-light);line-height:1.5}
.ivf-team-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}
.ivf-team-tag{font-size:.72rem;padding:.2rem .6rem;border-radius:50px;background:rgba(25,118,210,.1);color:var(--ivf-primary)}
.ivf-team-social{position:absolute;top:1rem;right:1rem;display:flex;flex-direction:column;gap:.5rem;opacity:0;transform:translateX(10px);transition:all .4s}
.ivf-team-card:hover .ivf-team-social{opacity:1;transform:translateX(0)}
.ivf-team-social a{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;color:var(--ivf-primary);font-size:.9rem;backdrop-filter:blur(10px);border:1px solid var(--ivf-border);transition:all .3s}
.ivf-team-social a:hover{background:var(--ivf-primary);color:#fff}

/* ===== City Directory ===== */
.ivf-citydir{padding:var(--ivf-section-py) 0;background:var(--ivf-bg-alt)}
.ivf-citydir-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}
.ivf-citydir-item{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--ivf-card);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius-sm);transition:all .3s;backdrop-filter:blur(10px)}
.ivf-citydir-item:hover{background:var(--ivf-primary);color:#fff;transform:translateY(-3px);box-shadow:var(--ivf-shadow);border-color:var(--ivf-primary)}
.ivf-citydir-item:hover .ivf-citydir-name,.ivf-citydir-item:hover .ivf-citydir-label{color:#fff}
.ivf-citydir-dot{width:8px;height:8px;border-radius:50%;background:var(--ivf-accent);flex-shrink:0}
.ivf-citydir-name{font-size:.88rem;font-weight:600;color:var(--ivf-text);transition:color .3s}
.ivf-citydir-label{font-size:.72rem;color:var(--ivf-text-muted);transition:color .3s}
.ivf-citydir-note{font-size:.85rem;color:var(--ivf-text-light);text-align:center;margin-top:2rem}

/* ===== News ===== */
.ivf-news{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-news-intro{background:var(--ivf-bg-alt);padding:var(--ivf-section-py) 0;margin-bottom:0}
.ivf-news-intro-inner{text-align:center}
.ivf-news-filter{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}
.ivf-filter-tag{padding:.5rem 1.2rem;border-radius:50px;font-size:.85rem;border:1px solid var(--ivf-border);background:transparent;color:var(--ivf-text-light);cursor:pointer;transition:all .3s}
.ivf-filter-tag:hover,.ivf-filter-tag.active{background:var(--ivf-primary);color:#fff;border-color:var(--ivf-primary)}
.ivf-news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}
.ivf-news-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);overflow:hidden;
  backdrop-filter:blur(20px);transition:all .4s;
  display:flex;flex-direction:column;
}
.ivf-news-card:hover{transform:translateY(-6px);box-shadow:var(--ivf-shadow-lg)}
.ivf-news-img{height:200px;object-fit:cover;width:100%;transition:transform .5s}
.ivf-news-card:hover .ivf-news-img{transform:scale(1.08)}
.ivf-news-body{padding:1.5rem;flex:1;display:flex;flex-direction:column}
.ivf-news-cat{font-size:.75rem;color:var(--ivf-accent);font-weight:600;margin-bottom:.5rem}
.ivf-news-title{font-size:1.1rem;font-weight:700;color:var(--ivf-text);line-height:1.4;margin-bottom:.5rem}
.ivf-news-desc{font-size:.85rem;color:var(--ivf-text-light);line-height:1.6;flex:1}
.ivf-news-meta{display:flex;align-items:center;gap:1rem;margin-top:1rem;font-size:.78rem;color:var(--ivf-text-muted)}
.ivf-news-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--ivf-primary);font-size:.85rem;font-weight:600;margin-top:1rem}
.ivf-news-link:hover{gap:.7rem}
.ivf-news-list{display:flex;flex-direction:column;gap:1rem}
.ivf-news-item{display:flex;gap:1.25rem;padding:1.25rem;background:var(--ivf-card);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius-sm);transition:all .3s;backdrop-filter:blur(10px)}
.ivf-news-item:hover{transform:translateX(6px);box-shadow:var(--ivf-shadow);border-color:var(--ivf-border-strong)}
.ivf-news-item-img{width:160px;height:110px;object-fit:cover;border-radius:var(--ivf-radius-sm);flex-shrink:0}
.ivf-news-item-body{flex:1}
.ivf-news-item-cat{font-size:.75rem;color:var(--ivf-accent);font-weight:600}
.ivf-news-item-title{font-size:1.05rem;font-weight:700;color:var(--ivf-text);line-height:1.3;margin-bottom:.35rem}
.ivf-news-item-desc{font-size:.82rem;color:var(--ivf-text-light);line-height:1.5}
.ivf-news-item-footer{display:flex;align-items:center;gap:1rem;margin-top:.5rem;font-size:.75rem;color:var(--ivf-text-muted)}
.ivf-news-item-tags{display:flex;flex-wrap:wrap;gap:.35rem}
.ivf-news-tag{font-size:.72rem;padding:.15rem .55rem;border-radius:50px;background:rgba(25,118,210,.08);color:var(--ivf-primary)}
.ivf-news-item-more{color:var(--ivf-primary);font-size:.82rem;font-weight:600}
.ivf-news-item-more:hover{color:var(--ivf-accent)}

/* ===== News Sidebar ===== */
.ivf-news-sidebar{position:sticky;top:100px}
.ivf-sidebar-card{background:var(--ivf-card);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius);padding:1.5rem;margin-bottom:1.5rem;backdrop-filter:blur(20px)}
.ivf-sidebar-title{font-size:1.1rem;font-weight:700;color:var(--ivf-text);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--ivf-border);position:relative}
.ivf-sidebar-title::after{content:'';position:absolute;bottom:-2px;left:0;width:40px;height:2px;background:var(--ivf-gradient)}
.ivf-sidebar-list{list-style:none;padding:0;margin:0}
.ivf-sidebar-list li{padding:.6rem 0;border-bottom:1px solid var(--ivf-border)}
.ivf-sidebar-list li:last-child{border:none}
.ivf-sidebar-link{display:flex;justify-content:space-between;align-items:center;color:var(--ivf-text);font-size:.88rem;transition:all .3s}
.ivf-sidebar-link:hover{color:var(--ivf-primary);padding-left:.5rem}
.ivf-sidebar-num{width:22px;height:22px;border-radius:50%;background:var(--ivf-bg-alt);display:flex;align-items:center;justify-content:center;font-size:.72rem;color:var(--ivf-text-muted);font-weight:600}
.ivf-sidebar-link:hover .ivf-sidebar-num{background:var(--ivf-primary);color:#fff}
.ivf-sidebar-contact{text-align:center}
.ivf-sidebar-phone{font-size:1.4rem;font-weight:800;color:var(--ivf-primary);display:block;margin-bottom:.25rem}
.ivf-sidebar-hours{font-size:.8rem;color:var(--ivf-text-muted);margin-bottom:1rem}
.ivf-sidebar-btn{display:block;width:100%;padding:.75rem;border-radius:var(--ivf-radius-sm);font-weight:600;text-align:center;margin-bottom:.5rem;border:none;cursor:pointer;transition:all .3s}
.ivf-sidebar-qr{max-width:140px;margin:0 auto;display:block}
.ivf-sidebar-desc{font-size:.78rem;color:var(--ivf-text-muted);margin-top:.5rem}
.ivf-sidebar-text{font-size:.85rem;color:var(--ivf-text-light);line-height:1.6}
.ivf-tag-cloud{display:flex;flex-wrap:wrap;gap:.5rem}
.ivf-tag-lg{font-size:.85rem!important;padding:.4rem 1rem!important;background:var(--ivf-bg-alt)!important}

/* ===== Article Detail ===== */
.ivf-detail-page{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-article{background:var(--ivf-card);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius);padding:2.5rem;backdrop-filter:blur(20px)}
.ivf-article-content{font-size:1.05rem;line-height:1.9;color:var(--ivf-text-light)}
.ivf-article-content p{margin-bottom:1.25rem}
.ivf-article-content h2{font-size:1.5rem;font-weight:700;color:var(--ivf-text);margin:2rem 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--ivf-border)}
.ivf-article-content h3{font-size:1.25rem;font-weight:700;color:var(--ivf-text);margin:1.5rem 0 .75rem}
.ivf-article-content img{max-width:100%;border-radius:var(--ivf-radius-sm);margin:1.5rem 0}
.ivf-article-content ul,.ivf-article-content ol{padding-left:1.5rem;margin-bottom:1.25rem}
.ivf-article-content li{margin-bottom:.35rem}
.ivf-article-content strong{color:var(--ivf-text)}
.ivf-article-content blockquote{border-left:4px solid var(--ivf-accent);padding-left:1rem;margin:1.5rem 0;color:var(--ivf-text-light);font-style:italic;background:rgba(0,191,165,.05);padding:1rem 1rem 1rem 1.5rem;border-radius:0 var(--ivf-radius-sm) var(--ivf-radius-sm) 0}
.ivf-article-content a{color:var(--ivf-primary);text-decoration:underline;text-underline-offset:3px}
.ivf-article-content a:hover{color:var(--ivf-accent)}
.ivf-article-content table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem}
.ivf-article-content th{background:var(--ivf-primary);color:#fff;padding:.75rem;font-weight:600;text-align:left}
.ivf-article-content td{padding:.75rem;border-bottom:1px solid var(--ivf-border)}
.ivf-article-content tr:nth-child(even){background:rgba(25,118,210,.03)}
.ivf-article-caption{text-align:center;font-size:.88rem;color:var(--ivf-text-muted);margin-top:-1rem;margin-bottom:1.5rem;font-style:italic}
.ivf-article-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;margin-top:2rem;border-top:1px solid var(--ivf-border);flex-wrap:wrap;gap:1rem}
.ivf-article-share{display:flex;align-items:center;gap:.5rem}
.ivf-share-label{font-size:.85rem;color:var(--ivf-text-muted)}
.ivf-share-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--ivf-border);background:var(--ivf-card);display:flex;align-items:center;justify-content:center;color:var(--ivf-text-light);transition:all .3s}
.ivf-share-btn:hover{background:var(--ivf-primary);color:#fff;border-color:var(--ivf-primary)}
.ivf-article-keywords{display:flex;flex-wrap:wrap;gap:.5rem}
.ivf-article-nav{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}
.ivf-article-nav-prev,.ivf-article-nav-next{background:var(--ivf-card);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius-sm);padding:1.25rem;transition:all .3s;backdrop-filter:blur(10px)}
.ivf-article-nav-prev:hover,.ivf-article-nav-next:hover{border-color:var(--ivf-border-strong);transform:translateY(-3px)}
.ivf-article-nav-next{text-align:right}
.ivf-author{display:flex;align-items:center;gap:1rem;margin-top:2rem;padding:1.5rem;background:var(--ivf-bg-alt);border-radius:var(--ivf-radius-sm)}
.ivf-author-avatar{width:60px;height:60px;border-radius:50%;object-fit:cover}
.ivf-author-name{font-weight:700;color:var(--ivf-text)}
.ivf-author-bio{font-size:.82rem;color:var(--ivf-text-light)}
.ivf-author-link{font-size:.82rem;color:var(--ivf-primary);font-weight:600}
.ivf-detail-cta{background:var(--ivf-gradient);border-radius:var(--ivf-radius);padding:2rem;text-align:center;color:#fff;margin-top:2rem}
.ivf-detail-cta-title{font-size:1.3rem;font-weight:700;margin-bottom:.5rem}
.ivf-detail-cta-btn{background:#fff;color:var(--ivf-primary);padding:.75rem 2rem;border-radius:50px;font-weight:600;border:none;display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;transition:all .3s}
.ivf-detail-cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.2);color:var(--ivf-primary-dark)}

/* ===== Testimonials ===== */
.ivf-testi{padding:var(--ivf-section-py) 0;background:var(--ivf-bg-alt)}
.ivf-testi-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);padding:2rem;
  backdrop-filter:blur(20px);transition:all .4s;
  position:relative;
}
.ivf-testi-card:hover{transform:translateY(-5px);box-shadow:var(--ivf-shadow-lg)}
.ivf-testi-card::before{content:'\201C';position:absolute;top:1rem;left:1.5rem;font-size:4rem;color:var(--ivf-primary);opacity:.15;line-height:1;font-family:Georgia,serif}
.ivf-testi-text{font-size:1rem;color:var(--ivf-text-light);line-height:1.8;margin-bottom:1.5rem;position:relative;z-index:1}
.ivf-testi-author{display:flex;align-items:center;gap:1rem}
.ivf-testi-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid var(--ivf-border)}
.ivf-testi-name{font-weight:700;color:var(--ivf-text)}
.ivf-testi-detail{font-size:.82rem;color:var(--ivf-text-muted)}
.ivf-testi-stars{color:#FFC107;font-size:.85rem}

/* ===== FAQ ===== */
.ivf-faq{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-faq-item{background:var(--ivf-card);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius-sm);margin-bottom:1rem;overflow:hidden;backdrop-filter:blur(20px)}
.ivf-faq-btn{
  width:100%;text-align:left;padding:1.25rem 1.5rem;background:none;border:none;
  display:flex;align-items:center;gap:1rem;font-weight:600;color:var(--ivf-text);
  font-size:1rem;cursor:pointer;transition:all .3s;
}
.ivf-faq-btn:hover{background:rgba(25,118,210,.04)}
.ivf-faq-btn:not(.collapsed){background:rgba(25,118,210,.06);color:var(--ivf-primary)}
.ivf-faq-icon{
  width:32px;height:32px;border-radius:50%;background:var(--ivf-gradient);
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8rem;
  flex-shrink:0;transition:transform .4s;
}
.ivf-faq-btn:not(.collapsed) .ivf-faq-icon{transform:rotate(180deg)}
.ivf-faq-accordion .accordion-body{padding:0 1.5rem 1.25rem 3.2rem;color:var(--ivf-text-light);font-size:.92rem;line-height:1.7}
.ivf-faq-cta{background:var(--ivf-gradient);border-radius:var(--ivf-radius);padding:3rem 2rem;text-align:center;color:#fff;margin-top:2rem}
.ivf-faq-cta-inner{max-width:500px;margin:0 auto}
.ivf-faq-phone{font-size:1.8rem;font-weight:800;color:#fff;display:block;margin:.75rem 0}

/* ===== CTA ===== */
.ivf-cta{position:relative;padding:var(--ivf-section-py) 0;overflow:hidden}
.ivf-cta-bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--ivf-primary),var(--ivf-accent))}
.ivf-cta-overlay{position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.06'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.ivf-cta-content{position:relative;z-index:2;text-align:center;color:#fff}
.ivf-cta-title{font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:800;margin-bottom:1rem}
.ivf-cta-desc{font-size:1.1rem;opacity:.9;max-width:560px;margin:0 auto 2rem}
.ivf-cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.ivf-cta-feature{display:flex;align-items:center;gap:.5rem;font-size:.88rem;opacity:.9}
.ivf-cta-features{display:flex;gap:2rem;justify-content:center;margin-top:1.5rem;flex-wrap:wrap}

/* ===== About ===== */
.ivf-about-intro{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-about-img{border-radius:var(--ivf-radius);box-shadow:var(--ivf-shadow-lg)}
.ivf-about-text{font-size:1.05rem;color:var(--ivf-text-light);line-height:1.9}
.ivf-about-features{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.5rem}
.ivf-about-feature{display:flex;align-items:center;gap:.75rem;font-size:.92rem;color:var(--ivf-text)}
.ivf-about-feature i{color:var(--ivf-accent);font-size:1.2rem}
.ivf-about-btn{margin-top:1.5rem}
.ivf-values{padding:var(--ivf-section-py) 0;background:var(--ivf-bg-alt)}
.ivf-value-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);padding:2rem;text-align:center;
  backdrop-filter:blur(20px);transition:all .4s;
}
.ivf-value-card:hover{transform:translateY(-6px);box-shadow:var(--ivf-shadow-lg)}
.ivf-value-icon{
  width:64px;height:64px;border-radius:50%;
  background:linear-gradient(135deg,rgba(25,118,210,.12),rgba(0,191,165,.12));
  display:flex;align-items:center;justify-content:center;
  font-size:1.5rem;color:var(--ivf-primary);margin:0 auto 1rem;
}
.ivf-value-title{font-size:1.1rem;font-weight:700;color:var(--ivf-text);margin-bottom:.4rem}
.ivf-value-desc{font-size:.85rem;color:var(--ivf-text-light);line-height:1.6}

/* ===== Timeline ===== */
.ivf-timeline{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-timeline-wrap{position:relative;padding-left:40px}
.ivf-timeline-line{position:absolute;left:15px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--ivf-primary),var(--ivf-accent))}
.ivf-timeline-item{position:relative;padding-bottom:2.5rem}
.ivf-timeline-dot{position:absolute;left:-33px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--ivf-gradient);border:3px solid var(--ivf-bg);box-shadow:0 0 0 3px var(--ivf-border-strong)}
.ivf-timeline-card{background:var(--ivf-card);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius-sm);padding:1.5rem;backdrop-filter:blur(20px)}
.ivf-timeline-year{font-size:1.3rem;font-weight:800;color:var(--ivf-primary);margin-bottom:.25rem}
.ivf-timeline-title{font-weight:700;color:var(--ivf-text);margin-bottom:.4rem}
.ivf-timeline-desc{font-size:.88rem;color:var(--ivf-text-light);line-height:1.6}

/* ===== Equipment ===== */
.ivf-equip{padding:var(--ivf-section-py) 0;background:var(--ivf-bg-alt)}
.ivf-equip-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);padding:2rem;text-align:center;
  backdrop-filter:blur(20px);transition:all .4s;
}
.ivf-equip-card:hover{transform:translateY(-5px);box-shadow:var(--ivf-shadow-lg)}
.ivf-equip-icon{
  width:80px;height:80px;border-radius:50%;
  background:var(--ivf-gradient);display:flex;align-items:center;justify-content:center;
  font-size:2rem;color:#fff;margin:0 auto 1.25rem;
  box-shadow:0 8px 25px rgba(25,118,210,.3);
}
.ivf-equip-title{font-size:1.1rem;font-weight:700;color:var(--ivf-text);margin-bottom:.4rem}
.ivf-equip-desc{font-size:.85rem;color:var(--ivf-text-light);line-height:1.6}

/* ===== Certifications ===== */
.ivf-cert{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-cert-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);padding:2rem;text-align:center;
  backdrop-filter:blur(20px);transition:all .4s;
}
.ivf-cert-card:hover{transform:translateY(-5px);box-shadow:var(--ivf-shadow-lg);border-color:var(--ivf-border-strong)}
.ivf-cert-icon{font-size:2.5rem;color:var(--ivf-primary);margin-bottom:1rem}
.ivf-cert-title{font-size:1.05rem;font-weight:700;color:var(--ivf-text)}
.ivf-cert-desc{font-size:.85rem;color:var(--ivf-text-light)}

/* ===== Contact ===== */
.ivf-contact{padding:var(--ivf-section-py) 0;background:var(--ivf-bg)}
.ivf-contact-card{
  background:var(--ivf-card);border:1px solid var(--ivf-border);
  border-radius:var(--ivf-radius);padding:2rem;
  backdrop-filter:blur(20px);transition:all .4s;
}
.ivf-contact-card:hover{transform:translateY(-4px);box-shadow:var(--ivf-shadow)}
.ivf-contact-icon{
  width:56px;height:56px;border-radius:var(--ivf-radius-sm);
  background:var(--ivf-gradient);display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;color:#fff;margin-bottom:1rem;
  box-shadow:0 6px 18px rgba(25,118,210,.25);
}
.ivf-contact-label{font-size:.85rem;color:var(--ivf-text-muted);margin-bottom:.2rem}
.ivf-contact-value{font-size:1.1rem;font-weight:700;color:var(--ivf-text)}
.ivf-contact-tip{font-size:.78rem;color:var(--ivf-text-muted);margin-top:.25rem}
.ivf-form-wrap{background:var(--ivf-card);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius);padding:2.5rem;backdrop-filter:blur(20px)}
.ivf-form-label{font-size:.88rem;font-weight:600;color:var(--ivf-text);margin-bottom:.4rem}
.ivf-form-input,.ivf-form-textarea{
  width:100%;padding:.8rem 1rem;border:1.5px solid var(--ivf-border);
  border-radius:var(--ivf-radius-sm);background:var(--ivf-card-solid);
  color:var(--ivf-text);font-size:.95rem;transition:all .3s;
}
.ivf-form-input:focus,.ivf-form-textarea:focus{outline:none;border-color:var(--ivf-primary);box-shadow:0 0 0 3px rgba(25,118,210,.1)}
.ivf-form-textarea{resize:vertical;min-height:120px}
.ivf-form-check{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;color:var(--ivf-text-light)}
.ivf-form-check input{margin-top:.25rem;accent-color:var(--ivf-primary)}
.ivf-form-submit{
  width:100%;padding:1rem;border:none;border-radius:var(--ivf-radius-sm);
  background:var(--ivf-gradient);color:#fff;font-weight:700;font-size:1rem;
  cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);
  display:flex;align-items:center;justify-content:center;gap:.5rem;
}
.ivf-form-submit:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(25,118,210,.35)}
.ivf-form-result{margin-top:1rem;padding:1rem;border-radius:var(--ivf-radius-sm);font-size:.9rem;display:none}
.ivf-form-result.show{display:block}
.ivf-form-result.success{background:rgba(0,191,165,.1);color:#00897B;border:1px solid rgba(0,191,165,.2)}
.ivf-form-result.error{background:rgba(244,67,54,.1);color:#D32F2F;border:1px solid rgba(244,67,54,.2)}
.ivf-form-hint{font-size:.78rem;color:var(--ivf-text-muted);margin-top:.25rem}
.ivf-form-note{font-size:.85rem;color:var(--ivf-text-light);margin-bottom:1.5rem}
.ivf-contact-banner{background:var(--ivf-gradient);border-radius:var(--ivf-radius);padding:2rem;color:#fff;text-align:center}
.ivf-contact-banner-title{font-size:1.3rem;font-weight:700;margin-bottom:.25rem}
.ivf-contact-banner-desc{font-size:.9rem;opacity:.9;margin-bottom:1rem}
.ivf-contact-banner-tel{font-size:1.6rem;font-weight:800;color:#fff;display:block;margin-bottom:1rem}
.ivf-contact-cities{margin-top:2rem}
.ivf-contact-citylink{display:inline-block;padding:.4rem 1rem;background:var(--ivf-card);border:1px solid var(--ivf-border);border-radius:50px;font-size:.85rem;color:var(--ivf-text);margin:.25rem;transition:all .3s}
.ivf-contact-citylink:hover{background:var(--ivf-primary);color:#fff;border-color:var(--ivf-primary)}
.ivf-contact-faq{margin-top:2rem}
.ivf-contact-faq-title{font-size:1.1rem;font-weight:700;margin-bottom:1rem}
.ivf-contact-promise{padding:1.5rem;background:var(--ivf-bg-alt);border-radius:var(--ivf-radius-sm);margin-top:1.5rem}
.ivf-contact-promise-title{font-size:1rem;font-weight:700;margin-bottom:.75rem}
.ivf-contact-promise-list{list-style:none;padding:0}
.ivf-contact-promise-list li{padding:.4rem 0;font-size:.88rem;color:var(--ivf-text-light)}
.ivf-contact-promise-list li i{color:var(--ivf-accent);margin-right:.5rem}
.ivf-contact-qr{text-align:center;margin-top:2rem}
.ivf-contact-qr-title{font-size:1rem;font-weight:700;margin-bottom:.25rem}
.ivf-contact-qr-tip{font-size:.82rem;color:var(--ivf-text-muted)}
.ivf-contact-side{position:sticky;top:100px}
.ivf-contact-address{font-size:.88rem;color:var(--ivf-text-light);line-height:1.7}

/* ===== Page Header ===== */
.ivf-pagehead{position:relative;padding:clamp(80px,15vh,140px) 0;overflow:hidden}
.ivf-pagehead-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.ivf-pagehead-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(13,27,42,.92) 0%,rgba(13,27,42,.7) 100%)}
.ivf-pagehead-title{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;color:#fff;position:relative;z-index:2}
.ivf-pagehead-breadcrumb{position:relative;z-index:2;color:rgba(255,255,255,.7);font-size:.85rem;margin-top:.5rem}
.ivf-pagehead-breadcrumb a{color:rgba(255,255,255,.9)}
.ivf-pagehead-breadcrumb a:hover{color:var(--ivf-accent-light)}
.ivf-pagehead-desc{position:relative;z-index:2;color:rgba(255,255,255,.85);font-size:1rem;margin-top:.75rem;max-width:600px}
.ivf-pagehead-meta{position:relative;z-index:2;color:rgba(255,255,255,.6);font-size:.85rem;margin-top:1rem}
.ivf-pagehead-sm{padding:clamp(60px,10vh,100px) 0}

/* ===== Footer ===== */
.ivf-footer{background:var(--ivf-dark);color:#a0b4c8;padding:4rem 0 0}
.ivf-footer-logo{height:44px;width:auto;margin-bottom:1rem;filter:brightness(1.2)}
.ivf-footer-brand{color:#7a8fa3;font-size:.88rem;line-height:1.7;margin-bottom:1.5rem}
.ivf-footer-title{font-size:1.05rem;font-weight:700;color:#fff;margin-bottom:1.25rem}
.ivf-footer-list{list-style:none;padding:0;margin:0}
.ivf-footer-list li{padding:.35rem 0}
.ivf-footer-list a{color:#7a8fa3;font-size:.88rem;transition:all .3s;display:flex;align-items:center;gap:.4rem}
.ivf-footer-list a:hover{color:var(--ivf-accent-light);padding-left:.3rem}
.ivf-footer-contact-item{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;color:#7a8fa3;font-size:.88rem}
.ivf-footer-contact-item i{color:var(--ivf-accent-light);width:20px;text-align:center}
.ivf-footer-cta{background:rgba(25,118,210,.15);border:1px solid rgba(25,118,210,.3);border-radius:var(--ivf-radius);padding:1.5rem;text-align:center;margin-top:1.5rem;backdrop-filter:blur(10px)}
.ivf-footer-cta-title{font-size:1.1rem;font-weight:700;color:#fff;margin-bottom:.25rem}
.ivf-footer-cta-desc{font-size:.82rem;color:#7a8fa3;margin-bottom:1rem}
.ivf-footer-cta-phone{font-size:1.4rem;font-weight:800;color:var(--ivf-accent-light);display:block;margin-bottom:.75rem}
.ivf-footer-cta-btns{display:flex;gap:.5rem;justify-content:center}
.ivf-footer-cta-link{padding:.6rem 1.2rem;border-radius:50px;font-size:.85rem;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;transition:all .3s}
.ivf-footer-cities{display:flex;flex-wrap:wrap;gap:.5rem}
.ivf-footer-cities a{color:#7a8fa3;font-size:.82rem;transition:color .3s}
.ivf-footer-cities a:hover{color:var(--ivf-accent-light)}
.ivf-friendlinks{border-top:1px solid rgba(255,255,255,.08);padding:1.5rem 0;margin-top:2rem}
.ivf-friendlinks-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:#6a7f93;font-size:.85rem}
.ivf-friendlinks-body{display:flex;flex-wrap:wrap;gap:.75rem}
.ivf-friendlinks-body a{color:#5a6f83;font-size:.82rem;transition:color .3s}
.ivf-friendlinks-body a:hover{color:var(--ivf-accent-light)}
.ivf-copyright{border-top:1px solid rgba(255,255,255,.08);padding:1.5rem 0;text-align:center;color:#5a6f83;font-size:.82rem}
.ivf-copy-links{display:flex;justify-content:center;gap:1.5rem;margin-top:.5rem}
.ivf-copy-links a{color:#5a6f83;font-size:.82rem}
.ivf-copy-links a:hover{color:var(--ivf-accent-light)}
.ivf-copy-divider{width:1px;height:12px;background:rgba(255,255,255,.15)}
.ivf-copy-warning{font-size:.78rem;color:#5a6f83;margin-top:.5rem;opacity:.7}

/* ===== Floating WeChat ===== */
.ivf-float-wechat{position:fixed;bottom:100px;right:24px;z-index:1020}
.ivf-wechat-trigger{width:50px;height:50px;border-radius:50%;background:var(--ivf-accent);color:#fff;border:none;display:flex;align-items:center;justify-content:center;font-size:1.4rem;cursor:pointer;box-shadow:0 4px 15px rgba(0,191,165,.4);transition:all .3s}
.ivf-wechat-trigger:hover{transform:scale(1.1);box-shadow:0 6px 20px rgba(0,191,165,.5)}
.ivf-wechat-panel{position:absolute;bottom:60px;right:0;background:var(--ivf-card-solid);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius-sm);padding:1rem;text-align:center;box-shadow:var(--ivf-shadow-lg);width:180px;opacity:0;visibility:hidden;transform:translateY(10px);transition:all .3s}
.ivf-wechat-panel.show{opacity:1;visibility:visible;transform:translateY(0)}
.ivf-wechat-qr{width:140px;height:140px;margin-bottom:.5rem}
.ivf-wechat-name{font-size:.85rem;font-weight:600;color:var(--ivf-text)}
.ivf-wechat-tip{font-size:.72rem;color:var(--ivf-text-muted)}
.ivf-wechat-label{position:absolute;bottom:-8px;right:12px;width:16px;height:16px;background:var(--ivf-card-solid);border-right:1px solid var(--ivf-border);border-bottom:1px solid var(--ivf-border);transform:rotate(45deg)}

/* ===== Toast ===== */
.ivf-toast-container{position:fixed;top:100px;right:24px;z-index:1060}
.ivf-toast{background:var(--ivf-card-solid);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius-sm);padding:1rem 1.25rem;box-shadow:var(--ivf-shadow-lg);display:flex;align-items:center;gap:.75rem;font-size:.9rem;transform:translateX(120%);transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.ivf-toast.show{transform:translateX(0)}
.ivf-toast i{color:var(--ivf-accent);font-size:1.1rem}

/* ===== Live Notify ===== */
.ivf-live-notify{position:fixed;bottom:160px;left:24px;z-index:1020;background:var(--ivf-card-solid);border:1px solid var(--ivf-border);border-radius:var(--ivf-radius-sm);padding:.75rem 1rem;box-shadow:var(--ivf-shadow);display:flex;align-items:center;gap:.75rem;font-size:.85rem;max-width:260px;animation:liveSlideIn .5s cubic-bezier(.34,1.56,.64,1)}
@keyframes liveSlideIn{from{transform:translateX(-120%);opacity:0}to{transform:translateX(0);opacity:1}}
.ivf-live-icon{width:8px;height:8px;border-radius:50%;background:#4CAF50;animation:livePulse 2s infinite}
@keyframes livePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}
.ivf-live-text{color:var(--ivf-text);font-weight:500}
.ivf-live-time{color:var(--ivf-text-muted);font-size:.78rem}
.ivf-live-user{color:var(--ivf-primary);font-weight:600}
.ivf-live-action{color:var(--ivf-text-light);font-size:.78rem}

/* ===== Mobile Bottom Bar ===== */
.ivf-mobile-bar{position:fixed;bottom:0;left:0;right:0;background:var(--ivf-card-solid);border-top:1px solid var(--ivf-border);padding:.5rem 0;z-index:1040;display:flex;justify-content:space-around;backdrop-filter:blur(20px)}
.ivf-mbar-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;color:var(--ivf-text-muted);font-size:.65rem;text-decoration:none;transition:color .3s}
.ivf-mbar-item i{font-size:1.1rem}
.ivf-mbar-item:hover,.ivf-mbar-item.active{color:var(--ivf-primary)}
.ivf-mbar-call{background:var(--ivf-gradient);color:#fff!important;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:-20px;box-shadow:0 4px 15px rgba(25,118,210,.3);border:3px solid var(--ivf-bg)}
.ivf-mbar-call i{font-size:1.3rem}

/* ===== Pagination ===== */
.ivf-pagination-wrap{display:flex;justify-content:center;margin-top:2rem}
.page-link{color:var(--ivf-primary);border-color:var(--ivf-border);background:var(--ivf-card);border-radius:var(--ivf-radius-sm);margin:0 .15rem;padding:.5rem .9rem;font-size:.88rem;transition:all .3s}
.page-link:hover{background:var(--ivf-primary);color:#fff;border-color:var(--ivf-primary)}
.page-item.active .page-link{background:var(--ivf-primary);border-color:var(--ivf-primary)}

/* ===== Empty State ===== */
.ivf-empty{text-align:center;padding:4rem 2rem}
.ivf-empty i{font-size:4rem;color:var(--ivf-border-strong);margin-bottom:1rem;display:block}

/* ===== Breadcrumb Area ===== */
.ivf-breadcrumb-area{background:var(--ivf-card);border-bottom:1px solid var(--ivf-border);padding:.6rem 0;font-size:.82rem}
.ivf-breadcrumb{margin:0;color:var(--ivf-text-muted)}
.ivf-breadcrumb a{color:var(--ivf-text-light)}
.ivf-breadcrumb a:hover{color:var(--ivf-primary)}

/* ===== Page Info ===== */
.ivf-pageinfo{padding:2rem 0;background:var(--ivf-bg-alt)}
.ivf-pageinfo-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}

/* ===== Scroll Reveal ===== */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .7s cubic-bezier(.25,.46,.45,.94),transform .7s cubic-bezier(.25,.46,.45,.94)}
.reveal.revealed{opacity:1;transform:translateY(0)}
.reveal-delay-1{transition-delay:.1s}
.reveal-delay-2{transition-delay:.2s}
.reveal-delay-3{transition-delay:.3s}
.reveal-delay-4{transition-delay:.4s}
.reveal-delay-5{transition-delay:.5s}

/* ===== Responsive ===== */
@media(max-width:1199.98px){
  .ivf-bento-grid{grid-template-columns:repeat(3,1fr)}
  .ivf-bento-large{grid-column:span 2;grid-row:span 1}
}
@media(max-width:991.98px){
  :root{--ivf-section-py:80px}
  .ivf-navbar{padding:.5rem 0}
  .ivf-brand-logo{height:40px}
  .ivf-nav-collapse{background:rgba(255,255,255,.95);backdrop-filter:blur(30px);border-radius:var(--ivf-radius);margin-top:.75rem;padding:1rem;border:1px solid var(--ivf-border);box-shadow:var(--ivf-shadow)}
  .ivf-hero-stats{display:none}
  .ivf-hero-indicators{bottom:20px}
  .ivf-bento-grid{grid-template-columns:repeat(2,1fr)}
  .ivf-bento-large{grid-column:span 2;grid-row:span 1}
  .ivf-bento-wide{grid-column:span 2}
  .ivf-flow-wrap{flex-direction:column;gap:2rem}
  .ivf-flow-wrap::before{display:none}
  .ivf-flow-step{max-width:300px;margin:0 auto}
  .ivf-tilt-wide{grid-column:span 1}
  .ivf-float-wechat{display:none!important}
  .ivf-scroll-ring{display:none!important}
  .ivf-sticky-cta{top:70px}
  .ivf-news-sidebar{position:static;margin-top:2rem}
  .ivf-sidebar-card{margin-bottom:1rem}
  .ivf-contact-side{position:static;margin-top:2rem}
}
@media(max-width:767.98px){
  .ivf-bento-grid{grid-template-columns:1fr}
  .ivf-bento-large,.ivf-bento-wide{grid-column:span 1}
  .ivf-hero-btn{padding:.7rem 1.5rem;font-size:.9rem}
  .ivf-hero-title{font-size:clamp(1.6rem,5vw,2.2rem)}
  .ivf-section-title{font-size:clamp(1.5rem,4vw,2rem)}
  .ivf-pagehead-title{font-size:clamp(1.5rem,4vw,2rem)}
  .ivf-form-wrap{padding:1.5rem}
  .ivf-article{padding:1.5rem}
  .ivf-article-nav{grid-template-columns:1fr}
  .ivf-timeline-wrap{padding-left:30px}
  .ivf-timeline-dot{left:-25px}
  .ivf-footer-cta-btns{flex-direction:column;align-items:center}
  .ivf-marquee-track{animation-duration:20s}
  .ivf-news-item{flex-direction:column}
  .ivf-news-item-img{width:100%;height:160px}
  .ivf-news-grid{grid-template-columns:1fr}
  .ivf-citydir-grid{grid-template-columns:repeat(2,1fr)}
  body{padding-bottom:65px!important}
}
@media(min-width:992px){
  .ivf-mobile-bar{display:none!important}
}

/* ===== Reduced Motion ===== */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .ivf-marquee-track{animation:none}
  .reveal{opacity:1;transform:none}
}
