
/* =================================================================
   CROWNS & BRIDGES PAGE — CB-specific CSS
   ================================================================= */

/* ── WHAT SECTION EXTRAS ───────────────────────────────────────── */
.cb-in-short {
    display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;
}
.cb-in-short-item {
    display:flex;gap:12px;align-items:flex-start;
    background:#F9FAFB;border:1px solid #E5E7EB;border-radius:12px;padding:14px 16px;
}
.cb-in-short-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;
}
.cb-in-short-icon-teal { background:linear-gradient(135deg,#2EC4B6,#1B6FD8); }
.cb-in-short-item > div:last-child { flex:1; }
.cb-in-short-item strong { display:block;font-size:.9rem;font-weight:700;color:#0A1628;margin-bottom:3px; }
.cb-in-short-item span { font-size:.83rem;color:#4B5563;line-height:1.5; }

/* ── TYPES GRID ────────────────────────────────────────────────── */
.cb-types-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:40px; }
.cb-type-card {
    position:relative;
    background:#fff;border:1px solid #E5E7EB;border-radius:18px;padding:28px 22px;
    box-shadow:0 2px 12px rgba(10,22,40,.06);
    transition:transform .2s,box-shadow .2s,border-color .2s;
}
.cb-type-card:hover { transform:translateY(-3px);box-shadow:0 8px 28px rgba(46,196,182,.12);border-color:#A7F3D0; }
.cb-type-card-featured { border-color:#2EC4B6;background:linear-gradient(160deg,#F0FDFA,#F0F9FF); }
.cb-type-badge {
    position:absolute;top:16px;right:16px;
    background:#2EC4B6;color:#fff;font-size:.72rem;font-weight:700;
    padding:4px 10px;border-radius:20px;letter-spacing:.04em;text-transform:uppercase;
}
.cb-type-icon {
    width:48px;height:48px;border-radius:12px;
    background:linear-gradient(135deg,#0A1628,#1B6FD8);
    display:flex;align-items:center;justify-content:center;color:#2EC4B6;margin-bottom:16px;
}
.cb-type-card h3 { font-size:.97rem;font-weight:700;color:#0A1628;margin-bottom:8px; }
.cb-type-card p { font-size:.86rem;color:#4B5563;line-height:1.7;margin-bottom:12px; }
.cb-type-tag {
    display:inline-block;font-size:.78rem;font-weight:700;
    background:#EFF6FF;color:#1E40AF;border:1px solid #BFDBFE;
    border-radius:20px;padding:4px 12px;
}
.cb-type-tag-teal { background:#ECFDF5;color:#065F46;border-color:#A7F3D0; }
.cb-premium-tag {
    display:inline-block;font-size:.68rem;font-weight:700;
    background:#FEF3C7;color:#92400E;border:1px solid #FCD34D;
    border-radius:10px;padding:2px 8px;vertical-align:middle;margin-left:6px;
}

/* ── BRIDGE TABLE SECTION ──────────────────────────────────────── */
.cb-bridge-section { margin-top:8px; }
.cb-bridge-section h3 {
    font-family:'Fraunces',Georgia,serif;font-size:1.2rem;font-weight:700;
    color:#0A1628;margin-bottom:16px;
}
.cb-bridge-table td:first-child { font-weight:600;color:#374151; }
.cb-td-highlight { font-weight:700 !important;color:#0A1628 !important; }

/* ── WHEN COLS ─────────────────────────────────────────────────── */
.cb-when { background:#fff; }
.cb-when-cols { display:grid;grid-template-columns:1fr 1fr;gap:24px; }
.cb-when-col {
    background:#F9FAFB;border:1px solid #E5E7EB;border-radius:16px;padding:24px 22px;
}
.cb-when-col h3 { font-size:.97rem;font-weight:700;color:#0A1628;margin-bottom:14px; }
.cb-when-list { list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px; }
.cb-when-list li {
    font-size:.88rem;color:#374151;line-height:1.6;
    padding-left:20px;position:relative;
}
.cb-when-list li::before {
    content:'✓';position:absolute;left:0;color:#2EC4B6;font-weight:700;font-size:.85rem;
}

/* ── STEPS IMAGE ───────────────────────────────────────────────── */
.cb-steps-img-wrap {
    border-radius:16px;overflow:hidden;box-shadow:0 8px 32px rgba(0,0,0,.12);margin-top:32px;
}
.cb-steps-img-wrap img { width:100%;height:320px;object-fit:cover;display:block; }

/* ── COST MODIFIER ─────────────────────────────────────────────── */
.cb-cost { background:linear-gradient(160deg,#F8FAFF,#EFF6FF) !important; }

/* ── COMPARE SECTION ───────────────────────────────────────────── */
.cb-compare { padding:80px 0;background:#fff; }
.cb-compare-note {
    text-align:center;font-size:.88rem;color:#374151;margin-top:20px;
}
.cb-compare-note a { color:#1B6FD8;font-weight:600;text-decoration:none; }
.cb-compare-note a:hover { text-decoration:underline; }

/* ── CTA HOURS ─────────────────────────────────────────────────── */
.cb-cta-hours {
    text-align:center;margin-top:20px;font-size:.82rem;
    color:rgba(255,255,255,.65);letter-spacing:.02em;
}

/* ── CB RESPONSIVE ─────────────────────────────────────────────── */
@media(max-width:1024px){
    .cb-types-grid { grid-template-columns:1fr 1fr; }
    .cb-when-cols { grid-template-columns:1fr; }
    .cb-in-short { grid-template-columns:1fr; }
}
@media(max-width:768px){
    .cb-compare { padding:64px 0; }
    .cb-types-grid { grid-template-columns:1fr; }
    .cb-steps-img-wrap img { height:200px; }
    .cb-bridge-table thead { display:none; }
    .cb-bridge-table td { display:block;padding:6px 12px; }
    .cb-bridge-table tr { border-bottom:1px solid #E5E7EB;display:block;padding:10px 0; }
}
@media(max-width:480px){
    .cb-type-badge { position:static;display:inline-block;margin-bottom:10px; }
}
