/* OPD embeds: carousel + quick appointment */
.obpc,.obpq{
	--obp-primary:#0e7490;--obp-accent:#14b8a6;--obp-heading:#0f2c33;--obp-ink:#37525c;--obp-muted:#6f8a95;
	--obp-bg:#ffffff;--obp-soft:#eef7f8;--obp-line:#d7e8ea;
	font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
	color:var(--obp-ink);max-width:1200px;margin:0 auto;box-sizing:border-box
}
.obpc *,.obpq *{box-sizing:border-box}
.obpc.obp-mode-dark,.obpq.obp-mode-dark{--obp-heading:#f0f7f8;--obp-ink:#c9d8de;--obp-muted:#8fa8b1;--obp-bg:#141f26;--obp-soft:#1b2a32;--obp-line:#2a3b44}
@media (prefers-color-scheme: dark){
	.obpc.obp-mode-auto,.obpq.obp-mode-auto{--obp-heading:#f0f7f8;--obp-ink:#c9d8de;--obp-muted:#8fa8b1;--obp-bg:#141f26;--obp-soft:#1b2a32;--obp-line:#2a3b44}
}

/* ---- Carousel ---- */
.obpc-head h2{font-size:clamp(20px,3vw,28px);font-weight:700;color:var(--obp-heading);margin:0 0 18px;text-align:center}
.obpc-track-wrap{position:relative;display:flex;align-items:center;gap:8px}
.obpc-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:6px 2px 14px;flex:1}
.obpc-track::-webkit-scrollbar{display:none}
.obpc-card{scroll-snap-align:start;flex:0 0 clamp(240px,80vw,290px);background:var(--obp-bg);border:1px solid var(--obp-line);border-radius:18px;padding:22px;box-shadow:0 10px 30px -18px rgba(15,40,50,.3);display:flex;flex-direction:column;transition:.18s}
.obpc-card:hover{transform:translateY(-3px);border-color:var(--obp-primary)}
.obpc-name{font-weight:700;font-size:16px;color:var(--obp-heading);min-height:2.6em;line-height:1.3;display:flex;align-items:flex-start}
.obpc-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:6px 0}
.obpc-now{color:var(--obp-primary);font-weight:700;font-size:22px}
.obpc-price del{color:var(--obp-muted);font-size:14px;font-weight:600}
.obpc-off{background:linear-gradient(135deg,#e11d48,#f43f5e);color:#fff;font-size:11px;font-weight:800;padding:2px 9px;border-radius:20px}
.obpc-dur{color:var(--obp-muted);font-size:12.5px}
.obpc-features{display:flex;flex-direction:column;gap:5px;margin:10px 0;font-size:13px;flex:1 1 auto}
.obpc-features span{color:var(--obp-ink)}
.obpc-more{color:var(--obp-primary);font-weight:600;font-size:12.5px}
.obpc-actions{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:12px}
.obpc-btn{border:none;border-radius:11px;font-weight:600;font-size:14px;padding:12px;cursor:pointer;font-family:inherit;text-align:center;text-decoration:none;transition:.15s;display:block}
.obpc-btn-primary{background:linear-gradient(120deg,var(--obp-primary),var(--obp-accent));color:#fff}
.obpc-btn-primary:hover{filter:brightness(1.05);color:#fff}
.obpc-btn-ghost{background:transparent;border:1.5px solid var(--obp-line);color:var(--obp-primary)}
.obpc-btn-ghost:hover{border-color:var(--obp-primary)}
.obpc-arrow{flex:0 0 auto;width:42px;height:42px;border-radius:50%;border:1px solid var(--obp-line);background:var(--obp-bg);color:var(--obp-primary);font-size:22px;line-height:1;cursor:pointer;box-shadow:0 6px 16px -8px rgba(15,40,50,.4);transition:.15s}
.obpc-arrow:hover{background:var(--obp-primary);color:#fff;border-color:transparent}
.obpc-empty{color:var(--obp-muted);padding:20px}
@media(max-width:600px){.obpc-arrow{display:none}}

/* carousel modal */
.obpc-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px}
.obpc-modal-back{position:absolute;inset:0;background:rgba(15,30,45,.55);backdrop-filter:blur(3px)}
.obpc-modal-box{position:relative;background:var(--obp-bg);border-radius:18px;max-width:520px;width:100%;max-height:85vh;overflow:auto;padding:30px;box-shadow:0 30px 80px -20px rgba(0,0,0,.5)}
.obpc-modal-close{position:absolute;top:12px;right:16px;border:none;background:none;font-size:28px;cursor:pointer;color:var(--obp-muted)}
.obpc-modal-content h3{margin:0 0 4px;color:var(--obp-heading)}
.obpc-modal-price{color:var(--obp-primary);font-weight:700;font-size:20px;margin-bottom:14px}
.obpc-modal-content ul{list-style:none;padding:0;margin:0;display:grid;gap:7px}
.obpc-modal-content li{position:relative;padding-left:24px;font-size:14px}
.obpc-modal-content li::before{content:"\2713";position:absolute;left:0;color:#18a566;font-weight:700}

/* ---- Quick appointment ---- */
.obpq-card{background:linear-gradient(135deg,var(--obp-primary),var(--obp-accent));border-radius:22px;padding:28px;box-shadow:0 24px 60px -28px rgba(15,40,50,.6)}
.obpq-intro{text-align:center;color:#fff;margin-bottom:20px}
.obpq-intro h3{margin:0 0 4px;font-size:clamp(20px,3vw,26px);color:#fff}
.obpq-intro p{margin:0;opacity:.92;font-size:14px}
.obpq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.obpq-in,.obpq-sel select{width:100%;padding:14px 16px;border:none;border-radius:12px;font-size:15px;font-family:inherit;background:#fff;color:#16232e}
.obpq-in:focus,.obpq-sel select:focus{outline:none;box-shadow:0 0 0 4px rgba(255,255,255,.35)}
.obpq-sel{position:relative}
.obpq-sel select{appearance:none;cursor:pointer;padding-right:40px}
.obpq-sel::after{content:"";position:absolute;right:16px;top:50%;width:8px;height:8px;border-right:2px solid var(--obp-primary);border-bottom:2px solid var(--obp-primary);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.obpq-sel select:disabled{background:#eef2f4;color:#9fb0bd;cursor:not-allowed}
.obpq-btn{grid-column:1 / -1;background:#0b2f3a;color:#fff;border:none;border-radius:12px;padding:15px;font-weight:700;font-size:15px;cursor:pointer;font-family:inherit;transition:.15s;letter-spacing:.3px}
.obpq-btn:hover{background:#08252e}
.obpq-btn:disabled{opacity:.6;cursor:not-allowed}
.obpq-msg{grid-column:1 / -1;margin-top:14px;background:#fff;border-radius:12px;padding:16px;text-align:center;font-weight:600}
.obpq-msg.is-ok{color:#0b6b4f}
.obpq-msg.is-err{color:#c0392b}
@media(max-width:820px){.obpq-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.obpq-grid{grid-template-columns:1fr}.obpq-card{padding:20px}}
