
/* =================================================================
   KIDS DENTISTRY PAGE — KD-specific CSS
   ================================================================= */

/* ── WHAT SECTION — FIRST VISIT CALLOUT ────────────────────────── */
.kd-first-visit {
    display:flex;gap:14px;align-items:flex-start;margin-top:22px;
    background:linear-gradient(135deg,#F0FDFA,#EFF6FF);
    border:1px solid #A7F3D0;border-radius:14px;padding:18px 20px;
}
.kd-first-visit-icon {
    flex-shrink:0;width:40px;height:40px;border-radius:10px;
    background:linear-gradient(135deg,#0A1628,#1B6FD8);
    display:flex;align-items:center;justify-content:center;
    color:#2EC4B6;margin-top:2px;
}
.kd-first-visit > div:last-child { flex:1; }
.kd-first-visit strong { display:block;font-size:.93rem;font-weight:700;color:#0A1628;margin-bottom:6px; }
.kd-first-visit p { font-size:.86rem;color:#374151;line-height:1.7;margin:0; }

/* ── SIGNS GRID ─────────────────────────────────────────────────── */
.kd-signs-grid {
    display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:8px;
}
.kd-sign-card {
    display:flex;flex-direction:column;gap:10px;align-items:flex-start;
    background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:20px 16px;
    box-shadow:0 2px 10px rgba(10,22,40,.05);
    transition:transform .2s,box-shadow .2s,border-color .2s;
}
.kd-sign-card:hover { transform:translateY(-3px);box-shadow:0 8px 24px rgba(46,196,182,.1);border-color:#A7F3D0; }
.kd-sign-card p { font-size:.86rem;color:#374151;line-height:1.6;margin:0; }
.kd-sign-card-wide { grid-column:span 2; }

/* ── SERVICES SECTION ───────────────────────────────────────────── */
.kd-services { padding:80px 0;background:#fff; }
.kd-services-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:24px; }

.kd-service-card {
    display:flex;gap:18px;align-items:flex-start;
    background:#F9FAFB;border:1px solid #E5E7EB;border-radius:18px;padding:28px 24px;
    transition:transform .2s,box-shadow .2s,border-color .2s;
}
.kd-service-card:hover { transform:translateY(-3px);box-shadow:0 8px 28px rgba(46,196,182,.1);border-color:#A7F3D0; }

/* ── SERVICE ICON COLOURS ───────────────────────────────────────── */
.kd-service-icon {
    flex-shrink:0;width:52px;height:52px;border-radius:14px;
    display:flex;align-items:center;justify-content:center;
}
.kd-icon-blue   { background:linear-gradient(135deg,#1E40AF,#3B82F6);color:#fff; }
.kd-icon-teal   { background:linear-gradient(135deg,#0A1628,#2EC4B6);color:#fff; }
.kd-icon-amber  { background:linear-gradient(135deg,#92400E,#F59E0B);color:#fff; }
.kd-icon-green  { background:linear-gradient(135deg,#065F46,#10B981);color:#fff; }
.kd-icon-red    { background:linear-gradient(135deg,#991B1B,#EF4444);color:#fff; }
.kd-icon-purple { background:linear-gradient(135deg,#4C1D95,#8B5CF6);color:#fff; }

/* ── SERVICE BODY ───────────────────────────────────────────────── */
.kd-service-body { flex:1; }
.kd-service-body h3 { font-size:.97rem;font-weight:700;color:#0A1628;margin-bottom:8px;display:flex;align-items:center;gap:8px; }
.kd-service-body > p { font-size:.86rem;color:#4B5563;line-height:1.7;margin-bottom:14px; }

.kd-service-items { display:flex;flex-direction:column;gap:9px; }
.kd-service-item {
    font-size:.84rem;color:#374151;line-height:1.65;
    padding-left:14px;position:relative;
}
.kd-service-item::before {
    content:'';position:absolute;left:0;top:9px;
    width:5px;height:5px;border-radius:50%;background:#2EC4B6;flex-shrink:0;
}
.kd-service-item strong { color:#0A1628; }
.kd-service-item a { color:#1B6FD8;font-weight:600;text-decoration:none; }
.kd-service-item a:hover { text-decoration:underline; }

/* ── EMERGENCY CARD ─────────────────────────────────────────────── */
.kd-service-emergency {
    border-color:#FCA5A5;background:linear-gradient(160deg,#FFF5F5,#FFF1F1);
}
.kd-service-emergency:hover { border-color:#EF4444;box-shadow:0 8px 28px rgba(239,68,68,.1); }
.kd-emergency-tag {
    display:inline-block;font-size:.7rem;font-weight:800;text-transform:uppercase;
    letter-spacing:.06em;background:#EF4444;color:#fff;
    border-radius:20px;padding:3px 10px;vertical-align:middle;margin-left:6px;
}
.kd-emergency-call {
    display:inline-flex;align-items:center;margin-top:14px;
    background:#EF4444;color:#fff;font-size:.87rem;font-weight:700;
    border-radius:10px;padding:10px 18px;text-decoration:none;
    transition:background .2s,transform .2s;
}
.kd-emergency-call:hover { background:#DC2626;transform:translateY(-1px); }

/* ── WHY — IMAGE ────────────────────────────────────────────────── */
.kd-why-img-wrap {
    border-radius:16px;overflow:hidden;box-shadow:0 8px 32px rgba(10,22,40,.1);
    margin-bottom:40px;
}
.kd-why-img-wrap img { width:100%;height:300px;object-fit:cover;display:block; }

/* ── KD RESPONSIVE ──────────────────────────────────────────────── */
@media(max-width:1200px){
    .kd-signs-grid { grid-template-columns:repeat(3,1fr); }
    .kd-sign-card-wide { grid-column:span 1; }
}
@media(max-width:1024px){
    .kd-signs-grid { grid-template-columns:repeat(2,1fr); }
    .kd-sign-card-wide { grid-column:span 2; }
    .kd-services-grid { grid-template-columns:1fr; }
}
@media(max-width:768px){
    .kd-services { padding:64px 0; }
    .kd-signs-grid { grid-template-columns:1fr 1fr; }
    .kd-sign-card-wide { grid-column:span 2; }
    .kd-why-img-wrap img { height:200px; }
    .kd-service-card { flex-direction:column;gap:14px; }
    .kd-service-icon { width:44px;height:44px;border-radius:11px; }
}
@media(max-width:480px){
    .kd-signs-grid { grid-template-columns:1fr; }
    .kd-sign-card-wide { grid-column:span 1; }
    .kd-first-visit { flex-direction:column;gap:10px; }
}
