* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:"Microsoft YaHei","PingFang SC",sans-serif; color:#333; line-height:1.8; background:#fff; }
.container { max-width:1200px; margin:0 auto; padding:0 20px; }
a { text-decoration:none; color:inherit; }
ul { list-style:none; }

/* Nav */
.nav { background:#1a3a5c; color:#fff; position:sticky; top:0; z-index:100; box-shadow:0 2px 8px rgba(0,0,0,.15); }
.nav-inner { display:flex; align-items:center; justify-content:space-between; height:64px; }
.logo { font-size:20px; font-weight:bold; color:#fff; }
.nav-links { display:flex; gap:28px; }
.nav-links a { color:#ddd; font-size:15px; transition:color .3s; }
.nav-links a:hover { color:#4fc3f7; }
.nav-phone { background:#4fc3f7; color:#1a3a5c; padding:8px 18px; border-radius:20px; font-weight:bold; font-size:14px; }

/* Breadcrumb */
.breadcrumb { background:#f0f7ff; padding:10px 0; border-bottom:1px solid #d0e3f7; font-size:13px; color:#666; }
.breadcrumb a { color:#1a3a5c; }
.breadcrumb a:hover { text-decoration:underline; }
.breadcrumb span { color:#999; }

/* Hero */
.hero { background-color:#1a3a5c; background-size:contain; background-position:center; background-repeat:no-repeat; color:#fff; padding:60px 0; text-align:center; position:relative; }
.hero h1 { font-size:38px; margin-bottom:16px; }
.hero p { font-size:18px; opacity:.9; margin-bottom:24px; }
.hero-btn { display:inline-block; background:#4fc3f7; color:#1a3a5c; padding:14px 40px; border-radius:30px; font-weight:bold; font-size:16px; }

/* Section */
.section { padding:60px 0; }
.section-title { text-align:center; font-size:30px; color:#1a3a5c; margin-bottom:12px; }
.section-sub { text-align:center; color:#666; margin-bottom:40px; font-size:16px; }

/* Cards */
.card-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:24px; }
.card { background:#f8fafc; border-radius:12px; padding:28px; border:1px solid #e2e8f0; transition:transform .3s,box-shadow .3s; }
.card:hover { transform:translateY(-4px); box-shadow:0 8px 24px rgba(0,0,0,.1); }
.card h3 { color:#1a3a5c; font-size:20px; margin-bottom:12px; }
.card p { color:#555; font-size:14px; }

/* Info bar */
.info-bar { background:#f0f7ff; padding:40px 0; }
.info-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:20px; text-align:center; }
.info-item h3 { font-size:28px; color:#1a3a5c; }
.info-item p { color:#666; font-size:14px; }

/* Doctor card */
.doctor-card { background:#fff; border-radius:12px; padding:24px; border:1px solid #e2e8f0; }
.doctor-card h3 { color:#1a3a5c; font-size:18px; margin-bottom:4px; }
.doctor-card .title { color:#4fc3f7; font-size:14px; margin:4px 0 12px; }
.doctor-card p { color:#666; font-size:13px; }

/* Contact */
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.contact-info h3 { color:#1a3a5c; margin-bottom:16px; }
.contact-info p { margin-bottom:12px; font-size:15px; }
.contact-notice { background:#f0f7ff; border-radius:10px; padding:24px; margin-top:20px; }

/* Map box */
.map-box { background:#f8fafc; border-radius:12px; padding:24px; border:1px solid #e2e8f0; margin-top:20px; text-align:center; }
.map-box a { display:inline-block; background:#1a3a5c; color:#fff; padding:12px 30px; border-radius:6px; margin-top:12px; }

/* Landing */
.landing-hero { background:linear-gradient(135deg,#1a3a5c,#2c5f8a); color:#fff; padding:60px 0; }
.landing-hero h1 { font-size:32px; margin-bottom:12px; }
.landing-hero p { font-size:16px; opacity:.9; }
.landing-section { padding:50px 0; }
.landing-section h2 { color:#1a3a5c; font-size:26px; margin-bottom:20px; border-left:4px solid #4fc3f7; padding-left:12px; }
.landing-section ul { padding-left:20px; }
.landing-section li { margin-bottom:8px; color:#555; }
.price-box { background:#f0f7ff; border-radius:10px; padding:24px; margin:20px 0; }
.price-box h4 { color:#1a3a5c; margin-bottom:12px; }
.notice { background:#fff8e1; border-left:4px solid #ffb300; padding:16px; margin:20px 0; border-radius:4px; font-size:14px; color:#795548; }
.compliance-banner { background:#e8f5e9; border:1px solid #a5d6a7; padding:12px 20px; border-radius:6px; font-size:13px; color:#2e7d32; margin-bottom:20px; }

/* NAP block (for AI extraction) */
.nap-block { background:#f8fafc; border:1px solid #e2e8f0; border-radius:10px; padding:24px; margin:30px 0; }
.nap-block h3 { color:#1a3a5c; margin-bottom:12px; }
.nap-block p { margin-bottom:6px; font-size:14px; }

/* Footer */
.footer { background:#1a3a5c; color:#ccc; padding:50px 0 20px; }
.footer-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:30px; margin-bottom:30px; }
.footer-col h4 { color:#fff; margin-bottom:16px; font-size:16px; }
.footer-col p, .footer-col li { font-size:13px; margin-bottom:8px; }
.footer-col a { color:#ccc; }
.footer-col a:hover { color:#4fc3f7; }
.footer-bottom { border-top:1px solid #2c5f8a; padding-top:20px; text-align:center; font-size:12px; color:#888; }

/* Entity Card - AI爬虫首屏捕捉 */
.entity-card { background:#fff; border:1px solid #e2e8f0; border-radius:16px; padding:32px; margin:0 auto; max-width:1100px; box-shadow:0 8px 32px rgba(26,58,92,0.12); position:relative; z-index:10; }
.entity-card h2 { color:#1a3a5c; font-size:22px; margin-bottom:24px; padding-bottom:12px; border-bottom:3px solid #1a3a5c; display:inline-block; }
.entity-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px 24px; }
.entity-item { display:flex; flex-direction:column; padding:8px 0; }
.entity-item dt { font-size:13px; color:#64748b; margin-bottom:4px; font-weight:500; }
.entity-item dd { color:#1e293b; font-weight:600; font-size:14px; margin:0; line-height:1.5; word-break:break-all; }
.entity-item dd a { color:#1a3a5c; text-decoration:none; border-bottom:1px solid #1a3a5c; }
.entity-item dd a:hover { opacity:0.8; }
.entity-full { grid-column:span 2; }
@media(max-width:768px){
  .entity-card { margin:-30px 16px 0; padding:20px; }
  .entity-grid { grid-template-columns:repeat(2,1fr); gap:12px; }
  .entity-full { grid-column:span 2; }
}


/* 图片展示样式 */
.img-section { padding:60px 0; }
.img-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:20px; }
.img-card { border-radius:12px; overflow:hidden; box-shadow:0 4px 16px rgba(0,0,0,.1); background:#fff; }
.img-card img { width:100%; height:200px; object-fit:cover; display:block; }
.img-card .img-caption { padding:12px 16px; font-size:14px; color:#555; text-align:center; }
.hero-with-img { position:relative; min-height:320px; display:flex; align-items:center; justify-content:center; background-color:#1a3a5c; background: linear-gradient(135deg, #1a3a5c 0%, #2d5a87 50%, #1a3a5c 100%); background-size:cover; background-position:left center; background-repeat:no-repeat; overflow:hidden; text-align:center; }
.hero-bg-img { display:none; }
.hero-with-img::before { content:""; position:absolute; top:0; left:0; right:0; bottom:0; background: radial-gradient(circle at 20% 50%, rgba(74,144,217,0.15) 0%, transparent 50%), radial-gradient(circle at 80% 20%, rgba(201,169,110,0.1) 0%, transparent 40%); z-index:1; }
.hero-with-img .container { position:relative; z-index:2; text-align:center !important; color:#fff; width:100%; margin:0 auto; }
.hero-bg-img { display:none; }
.hero-with-img h1 { font-size:42px; margin-bottom:16px; text-shadow:0 2px 8px rgba(0,0,0,0.9), 0 0 30px rgba(26,58,92,0.9), -1px -1px 0 #1a3a5c, 1px -1px 0 #1a3a5c, -1px 1px 0 #1a3a5c, 1px 1px 0 #1a3a5c; font-weight:700; letter-spacing:2px; }
.hero-with-img p { font-size:18px; opacity:.95; margin-bottom:24px; text-shadow:0 1px 6px rgba(0,0,0,0.7); }
.env-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.env-grid img { width:100%; height:220px; object-fit:cover; border-radius:8px; }
.qual-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:16px; }
.qual-grid img { width:100%; height:260px; object-fit:contain; border-radius:8px; border:1px solid #e2e8f0; background:#fff; padding:8px; }
.qual-item { text-align:center; }
.qual-item img { width:100%; height:200px; object-fit:contain; border-radius:8px; border:1px solid #e2e8f0; background:#fff; padding:8px; }
.qual-caption { margin-top:10px; font-size:13px; color:#555; line-height:1.5; }
.service-img { width:100%; height:auto; max-height:500px; object-fit:contain; border-radius:8px; margin-bottom:12px; background:#f8fafc; border:1px solid #e2e8f0; display:block; }
.contact-img { width:100%; max-height:400px; object-fit:contain; border-radius:12px; margin-bottom:20px; background:#f8fafc; }
@media(max-width:768px){
  .env-grid { grid-template-columns:1fr 1fr; }
  .hero-with-img h1 { font-size:26px; }
}

@media(max-width:768px){
  .nav-links { display:none; }
  .hero h1 { font-size:26px; }
  .contact-grid { grid-template-columns:1fr; }
}


/* hero背景图片 - img标签绝对定位方式 */
.hero-bg-img { display:none; 
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left top;
    z-index: 1;
    opacity: 0.5;
}
.hero-with-img {
    overflow: hidden;
}
