/* ==========================================================================
   Rezervace (PHP) – branding Bookly formuláře + layout + ordinační doba.
   Bookly část převzata 1:1 z prophysio.cz (stejný vzhled formuláře).
   Doplňuje home.css.
   ========================================================================== */

/* --- Bookly branding (korálová, velikosti, drobné úpravy) ----------------- */
:root {
    --bookly-main-color: #fe6367 !important;
    --bookly-color: #fe6367 !important;
}
.bookly-form * { font-size: 20px !important; }
.bookly-form select { font-size: 20px !important; }
.bookly-form input[type="text"],
.bookly-form input[type="number"],
.bookly-form input[type="password"],
.bookly-form select,
.bookly-form textarea { font-size: 20px !important; }
.bookly-form input[type="radio"] { display: inline-block; }
.bookly-form select,
.bookly-form option { cursor: pointer; }
.bookly-form select,
.bookly-form input[type="text"] { padding-top: 10px !important; padding-bottom: 10px !important; }
.bookly-form input[type="tel"] { padding-top: 10px !important; padding-bottom: 10px !important; font-size: 20px !important; }
.bookly-nav-steps { border-top: none !important; }
.bookly-progress-tracker .step { height: 5px; margin-bottom: 10px; }
.bookly-payment-nav:after {
    content: "V případě již předplacené terapie nebudete samozřejmě na místě nic hradit.";
    font-size: 16px;
}
.pp-lang-en .bookly-payment-nav:after {
    content: "If you already have a prepaid session, you naturally won't pay anything on site.";
}
.bookly-service-info { font-size: 16px !important; padding-top: 5px; font-style: italic; }
div.bookly-box.bookly-visible-md.bookly-service-info > del { font-size: 14px !important; }
.bookly-form .bookly-label-error {
    font-weight: 600;
    font-size: 17px !important;
    line-height: 23px;
    margin-top: 15px;
    border-radius: 6px;
    padding: 8px 15px;
}
.bookly-css-root .bookly-form .bookly-w-72 { width: 380px; max-width: 100%; }
.bookly-css-root .bookly-form .bookly-bg-slate-100 { background-color: #f3f3f3; }
.bookly-css-root .bookly-form .bookly-leading-4 { background-color: #fff2f2; border-radius: 10px; margin: 1px; }
.bookly-css-root .bookly-form .bookly-opacity-50 { opacity: .3; }
.bookly-css-root .bookly-form .bookly-h-10 { height: 3rem; }
.bookly-css-root .bookly-form .bookly-border-slate-100 { --tw-border-opacity: 1; border-color: #dfdfdf; }

/* --- Layout stránky ------------------------------------------------------- */
.pp-rezervace { padding: 56px 0 20px; }

/* Bílý zaoblený box s nadpisem + Bookly (1:1 jako originál: radius 15px, stín).
   Bez max-width – box je na celou šířku containeru. */
.pp-rezervace__form {
    background: #fff;
    border-radius: 15px;
    box-shadow: 9px 7px 36px 11px rgba(203, 197, 197, .24);
    padding: 18px 48px 40px;
}
.pp-rezervace__form-title {
    text-align: center;
    font-size: 29px;
    font-weight: 700;
    color: #2b2b2b;
    margin: 0 0 30px;
    padding: 10px 0;
}

/* Sekce „Nejste si jistí" – stejné (bílé) pozadí jako sekce s Bookly. */
.pp-rezervace-nastroj { padding: 40px 0; }
.pp-rezervace-terminy { margin-top: 26px; }

/* --- Spojené karty: terapeut + krátký kontakt + ordinační doba ------------ */
.pp-rezervace-team { padding: 50px 0 60px; background-color: #fff; }
.pp-page .pp-rezervace-team__lead {
    text-align: left;
    font-size: 16px;
    font-weight: 600;
    color: #2b2b2b;
    margin: -6px 0 28px;
}
/* Flex místo float → 4 sloupce stejné výšky (kartičky). */
.pp-rezervace-team__grid { display: flex; flex-wrap: wrap; }
.pp-rezervace-team__grid > [class*="col-"] { float: none; }
.pp-team-col { margin-bottom: 22px; display: flex; }
/* Kartička: bílá s jemným borderem, vyplní celou výšku sloupce → stejná výška. */
.pp-team-card {
    width: 100%;
    min-height: 248px;   /* všechny kartičky stejně vysoké (desktop) */
    background: #fff;
    border: 1px solid #efe9e9;
    border-radius: 13px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .04);
    padding: 18px 18px 14px;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.pp-team-card:hover {
    transform: translateY(-3px);
    border-color: #f0dede;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .09);
}
.pp-team-card__photo img { transition: transform .35s ease; }
.pp-team-card:hover .pp-team-card__photo img { transform: scale(1.06); }
.pp-team-card__head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 10px;
}
.pp-team-card__photo img,
.pp-team-card__ini {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid #f3eaea;
    background: #fdf3f3;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 16px;
    color: #c94b4e;
    flex: 0 0 56px;
}
.pp-team-card__name { font-weight: 700; font-size: 18px; color: #2b2b2b; line-height: 1.2; }
.pp-team-card__contact { display: flex; flex-direction: column; margin: 0 0 10px; }
.pp-team-card__tel { color: #2b2b2b; font-size: 13px; text-decoration: none; }
.pp-team-card__mail { color: #555; font-size: 13px; word-break: break-all; text-decoration: none; }
.pp-team-card__tel:hover { text-decoration: underline; }
.pp-team-card__mail:hover { text-decoration: underline; }
.pp-team-card__hours { list-style: none; margin: 0; padding: 0; }
.pp-page .pp-team-card__hours li {
    font-size: 14px;
    line-height: 1.5;
    color: #555;
    padding: 2px 0;
    border: 0;
}
.pp-team-card__hours li strong { color: #2b2b2b; }

/* Lokace jako barevný „tag" (rounded obdélník, bílý text). */
.pp-loc-tag {
    display: inline-block;
    padding: 1px 9px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.6;
    color: #fff;
    vertical-align: middle;
    white-space: nowrap;
    background: #9aa3a8;
}
.pp-loc-tag--raisova { background: #6cb1c8; }
.pp-loc-tag--bulharska { background: #f5888c; }

/* --- Poznámky pod kartami ------------------------------------------------- */
.pp-page .pp-rezervace__note { font-size: 15px; line-height: 1.6; color: #555; margin: 18px 0 12px; }
.pp-rezervace__note a { color: #fe6367; }

/* --- Responsivita --------------------------------------------------------- */
@media (max-width: 600px) {
    .pp-rezervace { padding: 38px 0 22px; }
    .pp-rezervace__form { padding: 22px 18px; border-radius: 13px; }
    .bookly-form *,
    .bookly-form select,
    .bookly-form input[type="text"],
    .bookly-form input[type="tel"],
    .bookly-form input[type="number"],
    .bookly-form textarea { font-size: 16px !important; }
    .pp-team-col { margin-bottom: 16px; }
}
/* Kartičky terapeutů na mobilu na 100 % šířky (jinak je flex drží vedle sebe). */
@media (max-width: 767px) {
    .pp-team-col { flex: 0 0 100%; max-width: 100%; }
    .pp-team-card { min-height: 0; }
}
