/*
Theme Name: Digitaali
Author: Digitaali Oy
*/

:root {
    --primary-color: #C81F71;
}

html { scroll-behavior: smooth; overflow-x: hidden; }

@media (min-width: 1200px) {
    .container {
        max-width: 1140px;
    }
}


:where(.wp-block-columns) {
    margin-bottom: 0;
}

:where(.wp-block-columns.has-background) {
    padding: 1.25em 20px;
}

@media (min-width: 500px) {
    :where(.wp-block-columns.has-background) {
        padding: 1.5em 2.5em;
    }
}

.wp-embed-responsive .wp-embed-aspect-16-9 .wp-block-embed__wrapper:before {
    padding-top: 0;
}

@media (max-width: 767px) {
    .dg-hide-on-mobile {
        display: none !important;
    }    
}

@media (min-width: 992px) {
    .dg-hide-on-desktop {
        display: none !important;
    }
}

body.admin-bar #main-navbar {
    padding-top: 32px;
}



/* ==========================================================================
   MPHB Availability Calendar — portattu Bellevue/aloha-powerpack -teemasta
   Alkuperäinen: aloha-powerpack/css/themo-mphb-booking-form.css
   Portattu: 25.2.2026 — FontAwesome/themovation-fonts korvattu CSS-nuolilla
   ========================================================================== */

/* --- Custom properties: värit oletusarvoilla --- */
:root {
    --mphb-booked-date-bg: #f96d64;
    --mphb-booked-date-color: #fff;
    /* --mphb-available-date-bg: #f4f6f2; */
    --mphb-available-date-bg: #81d742;
    --mphb-available-date-color: #6e6e6e;
    --mphb-not-available-date-bg: #fff;
    --mphb-not-available-date-color: #bcbcbc;
    --mphb-selected-date-bg: #6e6e6e;
    --mphb-selected-date-color: #fff;
}

/* --- Kalenterin wrapper: centerointi ja max-width --- */
.mphb-calendar-wrapper,
.mphb_sc_availability_calendar-wrapper {
    max-width: 720px;
    margin: 0 auto;
}

/* --- Perus datepick-rakenne --- */
.datepick-popup .datepick-month-header select,
.datepick-popup .datepick-month-header input,
.mphb-calendar .datepick-month-header select,
.mphb-calendar .datepick-month-header input {
    width: auto;
    display: inline-block;
    margin: 0;
    padding: 0;
    border: none;
    font-size: 100%;
}

.datepick-popup .datepick-month-header select,
.mphb-calendar .datepick-month-header select {
    padding-right: 1.7em;
}

/* --- Navigointinuolet: CSS-nuolet FontAwesomen tilalla --- */
.datepick-popup .datepick-cmd-next,
.datepick-popup .datepick-cmd-prev,
.mphb-calendar .datepick-cmd-next,
.mphb-calendar .datepick-cmd-prev {
    text-indent: 1000px;
    overflow: hidden;
    visibility: hidden;
}

.datepick-popup .datepick-cmd-next::before,
.datepick-popup .datepick-cmd-prev::before,
.mphb-calendar .datepick-cmd-next::before,
.mphb-calendar .datepick-cmd-prev::before {
    visibility: visible;
    font-size: 16px;
    display: inline-block;
    text-indent: 0;
    margin: 0;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    font-family: inherit;
    font-weight: bold;
}

.datepick-popup .datepick-cmd-prev::before,
.mphb-calendar .datepick-cmd-prev::before {
    right: auto;
    left: 1em;
}

.datepick-popup .datepick-cmd-next::before,
.mphb-calendar .datepick-cmd-next::before {
    content: "\203A"; /* single right-pointing angle quotation mark */
    float: right;
}

.datepick-popup .datepick-cmd-prev::before,
.mphb-calendar .datepick-cmd-prev::before {
    content: "\2039"; /* single left-pointing angle quotation mark */
    float: left;
}

.datepick-popup a.datepick-cmd,
.mphb-calendar a.datepick-cmd {
    padding: 0 1em;
    position: relative;
}

/* --- Datepick perustyyli --- */
.mphb-calendar .datepick,
.datepick-popup .datepick {
    font-size: 90%;
    border: 0 solid;
    border-radius: 0;
    width: 31.429em;
    max-width: 100%;
    font-family: inherit;
}

.mphb-calendar a,
.datepick-popup a {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

/* --- Navigaatio- ja kontrollipalkit --- */
.mphb-calendar .datepick-nav,
.mphb-calendar .datepick-ctrl,
.datepick-popup .datepick-nav,
.datepick-popup .datepick-ctrl {
    font-size: inherit;
    font-weight: normal;
}

.mphb-calendar .datepick-nav,
.datepick-popup .datepick-nav {
    background-color: #e5e7e9;
}

.mphb-calendar .datepick-nav a,
.datepick-popup .datepick-nav a {
    color: #515151;
}

.mphb-calendar .datepick-nav a:hover,
.datepick-popup .datepick-nav a:hover {
    background-color: #eeeff1;
    color: #000;
}

.mphb-calendar .datepick-nav a.datepick-disabled,
.datepick-popup .datepick-nav a.datepick-disabled {
    cursor: not-allowed;
    color: #848484;
}

.mphb-calendar .datepick-nav a.datepick-disabled:hover,
.datepick-popup .datepick-nav a.datepick-disabled:hover {
    background-color: #e5e7e9;
}

.mphb-calendar .datepick-ctrl,
.datepick-popup .datepick-ctrl {
    border-left: 1px solid #e0e0e0;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background-color: #fff;
}

.mphb-calendar .datepick-ctrl a,
.datepick-popup .datepick-ctrl a {
    color: #fc5c63;
    text-transform: uppercase;
    font-size: 85%;
}

.mphb-calendar .datepick-ctrl .datepick-cmd:hover,
.datepick-popup .datepick-ctrl .datepick-cmd:hover {
    background-color: #fff;
    color: #484848;
}

.mphb-calendar a.datepick-cmd,
.datepick-popup a.datepick-cmd {
    height: auto;
    line-height: 3.2em;
}

.mphb-calendar a.datepick-cmd.datepick-cmd-today,
.datepick-popup a.datepick-cmd.datepick-cmd-today {
    color: #919191;
    text-transform: uppercase;
    font-size: 15px;
}

/* --- Kuukausi header --- */
.mphb-calendar .datepick-month-header,
.mphb-calendar .datepick-month-header select,
.mphb-calendar .datepick-month-header input,
.datepick-popup .datepick-month-header,
.datepick-popup .datepick-month-header select,
.datepick-popup .datepick-month-header input {
    height: 2.778em;
    background-color: #f1f3f4;
    color: #717171;
    font-weight: 400;
    line-height: 2.778em;
    font-family: inherit;
    text-transform: uppercase;
}

/* --- Kuukausiblokit --- */
.mphb-calendar {
    margin-bottom: 50px;
}
.mphb-calendar .datepick-month,
.datepick-popup .datepick-month {
    width: 100%;
    border: 0 solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    border-right: 1px solid #e0e0e0;
    border-left: 1px solid #e0e0e0;
}

/* --- 3 kuukautta vierekkain desktopissa --- */
@media screen and (min-width: 48em) {
    .mphb-calendar .datepick-month,
    .datepick-popup .datepick-month {
        width: 33.333%;
        /* padding-right: 1px; */
    }

    .mphb-calendar .datepick-month.last,
    .datepick-popup .datepick-month.last {
        border-left: 0 solid #e0e0e0;
    }

    .mphb-calendar .datepick-month.first,
    .datepick-popup .datepick-month.first {
        border-right: 0 solid #e0e0e0;
    }

    .mphb-calendar .datepick-month .datepick-month-header,
    .datepick-popup .datepick-month .datepick-month-header {
        margin-right: -1px;
    }

    .mphb-calendar .datepick-month + .datepick-month,
    .datepick-popup .datepick-month + .datepick-month {
        border-left: 1px solid #e0e0e0;
        padding-right: 0;
    }

    .mphb-calendar .datepick-month + .datepick-month .datepick-month-header,
    .datepick-popup .datepick-month + .datepick-month .datepick-month-header {
        margin-right: 0;
    }
}

/* --- Taulukko (päivät) --- */
.mphb-calendar .datepick-month table,
.datepick-popup .datepick-month table {
    margin: 0 auto;
    width: 100%;
}

.mphb-calendar .datepick-month tbody,
.datepick-popup .datepick-month tbody {
    line-height: 2.5em;
}

.mphb-calendar .datepick-month th,
.datepick-popup .datepick-month th {
    border: 1px solid #fff;
    font-size: 80%;
    font-weight: 400;
    padding: 0.5em 0;
}

.mphb-calendar .datepick-month th,
.mphb-calendar .datepick-month th a,
.datepick-popup .datepick-month th,
.datepick-popup .datepick-month th a {
    background-color: #fff;
    color: gray;
}

.mphb-calendar .datepick-month tr,
.datepick-popup .datepick-month tr {
    border-bottom: 1px solid #e5e7e9;
}

.mphb-calendar .datepick-month td,
.datepick-popup .datepick-month td {
    background-color: #fff;
    border: none;
}

.mphb-calendar .datepick-month a,
.datepick-popup .datepick-month a {
    padding: 0;
    background-color: #fff;
    color: #484848;
}

.mphb-calendar .datepick-month span,
.datepick-popup .datepick-month span {
    padding: 0;
}

.mphb-calendar .datepick-month td span,
.datepick-popup .datepick-month td span {
    color: #bcbcbc;
}

.mphb-calendar .datepick-month td .datepick-weekend,
.datepick-popup .datepick-month td .datepick-weekend {
    background-color: #fff;
}

/* --- Transitiot --- */
.mphb-calendar a,
.datepick-popup a {
    transition: background 0.3s, color 0.3s;
}

/* --- Saatavuusvari (available) --- */
.mphb-calendar.mphb-datepick .datepick-month td .mphb-available-date {
    background-color: #f4f6f2;
    color: #6e6e6e;
}

/* --- Ei-saatavat, yliviivatut --- */
.mphb-calendar.mphb-datepick .datepick-month td .mphb-not-stay-in-date:not(.mphb-past-date),
.mphb-calendar.mphb-datepick .datepick-month td .mphb-not-available-date,
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-not-stay-in-date:not(.mphb-past-date),
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-not-available-date {
    background-color: #fff;
    color: #B9BCB9;
    text-decoration: line-through;
}

/* --- Menneet paivat --- */
.mphb-calendar.mphb-datepick .datepick-month td .mphb-past-date,
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-past-date {
    opacity: 1;
    background-color: #fff;
    color: #bcbcbc;
}

/* --- Min/max date rajat --- */
.mphb-calendar.mphb-datepick .datepick-month td .mphb-earlier-min-date,
.mphb-calendar.mphb-datepick .datepick-month td .mphb-later-max-date,
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-earlier-min-date,
.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-later-max-date {
    background-color: #fff;
    color: #bcbcbc;
    text-decoration: line-through;
    opacity: 1;
}

/* --- Valittu paiva --- */
.mphb-calendar.mphb-datepick .datepick-month td .datepick-selected,
.datepick-popup .mphb-datepick-popup .datepick-month td .datepick-selected {
    background-color: #6e6e6e;
    color: #fff;
}

/* --- Varattu paiva (booked) --- */
.mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date {
    opacity: 1;
}

/* --- Popup-spesifit --- */
.datepick-popup {
    -moz-box-shadow: 0 4px 8px rgba(51, 51, 51, 0.15);
    -webkit-box-shadow: 0 4px 8px rgba(51, 51, 51, 0.15);
    box-shadow: 0 4px 8px rgba(51, 51, 51, 0.15);
}

.datepick-popup .mphb-datepick-popup .datepick-month td .datepick-today {
    background-color: #fff;
    font-weight: 600;
    color: #363636;
}

.datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date:not(.mphb-selectable-date) {
    background-color: #fff;
    color: #B9BCB9;
    text-decoration: line-through;
}

.datepick-popup .mphb-datepick-popup .datepick-month td a.datepick-highlight {
    background-color: #6e6e6e;
    color: #fff;
}

.datepick-popup .mphb-datepick-popup.mphb-check-in-datepick .datepick-month td .mphb-not-check-in-date:not(.mphb-past-date) {
    background-color: #fff;
    color: #B9BCB9;
    text-decoration: line-through;
}

.datepick-popup .mphb-datepick-popup.mphb-check-out-datepick .datepick-month td .mphb-not-check-out-date:not(.mphb-past-date) {
    background-color: #fff;
    color: #B9BCB9;
    text-decoration: line-through;
}

.datepick-popup .mphb-datepick-popup.mphb-check-out-datepick .datepick-month td span.mphb-check-in-date:not(.mphb-past-date) {
    background-color: gray;
    color: #fff;
    text-decoration: none;
}

/* --- Booked-paiva: perusvari ja diagonaaligradientit --- */
.mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date {
    background-color: #f96d64;
    text-decoration: none;
}

/* Check-in JA check-out samana paivana */
.mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date.mphb-date-check-in.mphb-date-check-out {
    background: linear-gradient(to bottom right, #f96d64 0, #f96d64 50%, #f96d64 50%, #f96d64 100%);
}

/* Check-in: available -> booked diagonaali */
.mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date.mphb-date-check-in {
    background: linear-gradient(to bottom right, #f4f6f2 0, #f4f6f2 50%, #f96d64 50%, #f96d64 100%);
}

/* Check-out: booked -> available diagonaali */
.mphb-calendar.mphb-datepick .datepick-month td .mphb-available-date.mphb-date-check-out {
    background: linear-gradient(to bottom right, #f96d64 0, #f96d64 50%, #f4f6f2 50%, #f4f6f2 100%);
}

/* --- Popup padding --- */
.datepick-popup {
    max-width: 100%;
    padding: 0 1em;
}

@media screen and (min-width: 48em) {
    .datepick-popup {
        padding: 0;
    }
}

/* --- Hover/focus ei-underline --- */
a.mphb-date-cell.mphb-date-selectable:hover,
a.mphb-date-cell.mphb-selectable-date:hover,
a.mphb-date-cell.mphb-date-selectable:focus,
a.mphb-date-cell.mphb-selectable-date:focus {
    text-decoration: none;
}

/* --- Cmd-painikkeet margin --- */
.datepick-popup a.datepick-cmd,
.mphb-calendar a.datepick-cmd {
    padding: 0;
    margin: 0 0.8%;
}

/* --- Popup z-index --- */
.datepick-popup {
    z-index: 10001;
}

/* --- Today-painike teksti piiloon --- */
body .mphb-calendar a.datepick-cmd.datepick-cmd-today,
body .datepick-popup a.datepick-cmd.datepick-cmd-today {
    color: white;
}

/* ==========================================================================
   MPHB Custom Property -pohjaiset tyylitykset (teeman override)
   Naita kayttavat seka saatavuuskalenteri etta varaus-popup
   ========================================================================== */

/* --- Available --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-available-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-available-date {
    /* background-color: var(--mphb-available-date-bg);  */
    background-color: #81d742 !important;
    color: var(--mphb-available-date-color);
}

/* --- Available + check-out diagonaali --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-available-date.mphb-date-check-out,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-available-date.mphb-date-check-out {
    background: linear-gradient(to bottom right, var(--mphb-booked-date-bg) 0, var(--mphb-booked-date-bg) 50%, var(--mphb-available-date-bg) 50%, var(--mphb-available-date-bg) 100%);
}

/* --- Available + check-out + later-max-date --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-available-date.mphb-date-check-out.mphb-later-max-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-available-date.mphb-date-check-out.mphb-later-max-date {
    background: linear-gradient(to bottom right, var(--mphb-booked-date-bg) 0, var(--mphb-booked-date-bg) 50%, var(--mphb-not-available-date-bg) 50%, var(--mphb-not-available-date-bg) 100%);
}

/* --- Booked --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date {
    background-color: var(--mphb-booked-date-bg);
    color: var(--mphb-booked-date-color);
}

/* --- Booked + check-in diagonaali --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date.mphb-date-check-in,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date.mphb-date-check-in {
    background: linear-gradient(to bottom right, var(--mphb-available-date-bg) 0, var(--mphb-available-date-bg) 50%, var(--mphb-booked-date-bg) 50%, var(--mphb-booked-date-bg) 100%);
}

/* --- Booked check-in: unavailable variant --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date.mphb-date-check-in .mphb-mark-as-unavailable--check-in.mphb-mark-as-unavailable--check-out,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date.mphb-date-check-in .mphb-mark-as-unavailable--check-in.mphb-mark-as-unavailable--check-out {
    background: linear-gradient(to bottom right, var(--mphb-not-available-date-bg) 0, var(--mphb-not-available-date-bg) 50%, var(--mphb-booked-date-bg) 50%, var(--mphb-booked-date-bg) 100%);
}

/* --- Booked ei-valittava --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date:not(.mphb-selectable-date),
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date:not(.mphb-selectable-date) {
    background-color: var(--mphb-booked-date-bg);
    color: var(--mphb-booked-date-color);
}

/* --- Highlight + booked check-in --- */
body .mphb-calendar.mphb-datepick .datepick-month td a.datepick-highlight.mphb-booked-date.mphb-date-check-in,
body .datepick-popup .mphb-datepick-popup .datepick-month td a.datepick-highlight.mphb-booked-date.mphb-date-check-in {
    background: linear-gradient(to bottom right, var(--mphb-selected-date-bg) 0, var(--mphb-selected-date-bg) 50%, var(--mphb-booked-date-bg) 50%, var(--mphb-booked-date-bg) 100%);
    color: var(--mphb-selected-date-color);
}

/* --- Nav-palkki (custom property override) --- */
body .mphb-calendar.mphb-datepick .datepick-nav,
body .datepick-popup .mphb-datepick-popup .datepick-nav {
    background-color: #e5e7e9;
}

body .mphb-calendar.mphb-datepick .datepick-nav a,
body .datepick-popup .mphb-datepick-popup .datepick-nav a {
    color: #515151;
}

body .mphb-calendar.mphb-datepick .datepick-nav a:hover,
body .datepick-popup .mphb-datepick-popup .datepick-nav a:hover {
    background-color: #eeeff1;
    color: #000;
}

body .mphb-calendar.mphb-datepick .datepick-nav a.datepick-disabled,
body .datepick-popup .mphb-datepick-popup .datepick-nav a.datepick-disabled {
    color: #848484;
}

body .mphb-calendar.mphb-datepick .datepick-nav a.datepick-disabled:hover,
body .datepick-popup .mphb-datepick-popup .datepick-nav a.datepick-disabled:hover {
    background-color: #e5e7e9;
}

/* --- Ctrl-palkki (custom property override) --- */
body .mphb-calendar.mphb-datepick .datepick-ctrl,
body .datepick-popup .mphb-datepick-popup .datepick-ctrl {
    background-color: #fff;
}

body .mphb-calendar.mphb-datepick .datepick-ctrl a,
body .datepick-popup .mphb-datepick-popup .datepick-ctrl a {
    color: #fc5c63;
}

body .mphb-calendar.mphb-datepick .datepick-ctrl .datepick-cmd:hover,
body .datepick-popup .mphb-datepick-popup .datepick-ctrl .datepick-cmd:hover {
    background-color: #fff;
    color: #484848;
}

body .mphb-calendar.mphb-datepick a.datepick-cmd.datepick-cmd-today,
body .datepick-popup .mphb-datepick-popup a.datepick-cmd.datepick-cmd-today {
    color: #919191;
}

/* --- Kuukausi header (custom property override) --- */
body .mphb-calendar.mphb-datepick .datepick-month-header,
body .mphb-calendar.mphb-datepick .datepick-month-header select,
body .mphb-calendar.mphb-datepick .datepick-month-header input,
body .datepick-popup .mphb-datepick-popup .datepick-month-header,
body .datepick-popup .mphb-datepick-popup .datepick-month-header select,
body .datepick-popup .mphb-datepick-popup .datepick-month-header input {
    background-color: #f1f3f4;
    color: #717171;
}

/* --- Paivaotsikot (th) --- */
body .mphb-calendar.mphb-datepick .datepick-month th,
body .mphb-calendar.mphb-datepick .datepick-month th a,
body .datepick-popup .mphb-datepick-popup .datepick-month th,
body .datepick-popup .mphb-datepick-popup .datepick-month th a {
    background-color: #fff;
    color: gray;
    font-weight: normal;
}

/* --- Solut (td) --- */
body .mphb-calendar.mphb-datepick .datepick-month td,
body .datepick-popup .mphb-datepick-popup .datepick-month td {
    background-color: #fff;
    border: none;
}

body .mphb-calendar.mphb-datepick .datepick-month a,
body .datepick-popup .mphb-datepick-popup .datepick-month a {
    background-color: #fff;
    color: #484848;
}

body .mphb-calendar.mphb-datepick .datepick-month td span,
body .datepick-popup .mphb-datepick-popup .datepick-month td span {
    color: #bcbcbc;
}

body .mphb-calendar.mphb-datepick .datepick-month td .datepick-weekend,
body .datepick-popup .mphb-datepick-popup .datepick-month td .datepick-weekend {
    background-color: #fff;
}

/* --- Available (body-spesifisyys) --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-available-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-available-date {
    background-color: var(--mphb-available-date-bg) !important;
    color: var(--mphb-available-date-color);
}

/* --- Tanaan --- */
body .mphb-calendar.mphb-datepick .datepick-month td .datepick-today,
body .datepick-popup .mphb-datepick-popup .datepick-month td .datepick-today,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .datepick-today {
    background-color: var(--mphb-available-date-bg);
    color: var(--mphb-available-date-color);
}

/* --- Booked ei-valittava (body-spesifisyys) --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date:not(.mphb-selectable-date),
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date:not(.mphb-selectable-date),
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-booked-date:not(.mphb-selectable-date) {
    background-color: var(--mphb-booked-date-bg);
    color: var(--mphb-booked-date-color);
}

/* --- Highlight (valittu paiva popup:ssa) --- */
body .mphb-calendar.mphb-datepick .datepick-month td a.datepick-highlight,
body .datepick-popup .mphb-datepick-popup .datepick-month td a.datepick-highlight,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td a.datepick-highlight {
    background: var(--mphb-selected-date-bg);
    color: var(--mphb-selected-date-color);
}

/* --- Highlight + mark-as-unavailable check-out --- */
body .mphb-calendar.mphb-datepick .datepick-month td a.datepick-highlight.mphb-mark-as-unavailable--check-out,
body .datepick-popup .mphb-datepick-popup .datepick-month td a.datepick-highlight.mphb-mark-as-unavailable--check-out,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td a.datepick-highlight.mphb-mark-as-unavailable--check-out {
    background: linear-gradient(to top left, var(--mphb-selected-date-bg) 0, var(--mphb-selected-date-bg) 50%, var(--mphb-not-available-date-bg) 50%, var(--mphb-not-available-date-bg) 100%);
}

/* --- Highlight + mark-as-unavailable check-in --- */
body .mphb-calendar.mphb-datepick .datepick-month td a.datepick-highlight.mphb-mark-as-unavailable--check-in,
body .datepick-popup .mphb-datepick-popup .datepick-month td a.datepick-highlight.mphb-mark-as-unavailable--check-in,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td a.datepick-highlight.mphb-mark-as-unavailable--check-in {
    background: linear-gradient(to bottom right, var(--mphb-selected-date-bg) 0, var(--mphb-selected-date-bg) 50%, var(--mphb-booked-date-bg) 50%, var(--mphb-booked-date-bg) 100%);
    color: var(--mphb-selected-date-color);
}

/* --- Not-stay-in / not-available (body-spesifisyys) --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-not-stay-in-date:not(.mphb-past-date),
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-not-available-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-not-stay-in-date:not(.mphb-past-date),
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-not-available-date,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-not-stay-in-date:not(.mphb-past-date),
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-not-available-date {
    background: var(--mphb-not-available-date-bg);
    color: var(--mphb-not-available-date-color);
}

/* --- Past date (body-spesifisyys) --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-past-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-past-date,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-past-date {
    background: var(--mphb-not-available-date-bg);
    color: var(--mphb-not-available-date-color);
}

/* --- Earlier-min / later-max (body-spesifisyys) --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-earlier-min-date,
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-later-max-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-earlier-min-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-later-max-date,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-earlier-min-date,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-later-max-date {
    background: var(--mphb-not-available-date-bg);
    color: var(--mphb-not-available-date-color);
}

/* --- Selectable date --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-selectable-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-selectable-date,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-selectable-date {
    background-color: var(--mphb-available-date-bg);
    color: var(--mphb-available-date-color);
}

/* --- Selected (important override) --- */
body .mphb-calendar.mphb-datepick .datepick-month td .datepick-selected,
body .datepick-popup .mphb-datepick-popup .datepick-month td .datepick-selected,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .datepick-selected {
    background: var(--mphb-selected-date-bg) !important;
    color: var(--mphb-selected-date-color) !important;
}

/* --- Check-in datepick: not-check-in --- */
body .mphb-calendar.mphb-datepick.mphb-check-in-datepick .datepick-month td .mphb-not-check-in-date:not(.mphb-past-date),
body .datepick-popup .mphb-datepick-popup.mphb-check-in-datepick .datepick-month td .mphb-not-check-in-date:not(.mphb-past-date),
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup.mphb-check-in-datepick .datepick-month td .mphb-not-check-in-date:not(.mphb-past-date) {
    background-color: var(--mphb-not-available-date-bg);
    color: var(--mphb-not-available-date-color);
}

/* --- Check-out datepick: not-check-out --- */
body .mphb-calendar.mphb-datepick.mphb-check-out-datepick .datepick-month td .mphb-not-check-out-date:not(.mphb-past-date),
body .datepick-popup .mphb-datepick-popup.mphb-check-out-datepick .datepick-month td .mphb-not-check-out-date:not(.mphb-past-date),
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup.mphb-check-out-datepick .datepick-month td .mphb-not-check-out-date:not(.mphb-past-date) {
    background-color: var(--mphb-not-available-date-bg);
    color: var(--mphb-not-available-date-color);
}

/* --- Check-out datepick: check-in span --- */
body .mphb-calendar.mphb-datepick.mphb-check-out-datepick .datepick-month td span.mphb-check-in-date:not(.mphb-past-date),
body .datepick-popup .mphb-datepick-popup.mphb-check-out-datepick .datepick-month td span.mphb-check-in-date:not(.mphb-past-date),
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup.mphb-check-out-datepick .datepick-month td span.mphb-check-in-date:not(.mphb-past-date) {
    background: none;
    background-color: var(--mphb-selected-date-bg);
    color: var(--mphb-selected-date-color);
}

/* --- Booked (body-spesifisyys kaikki variantit) --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-booked-date {
    background-color: var(--mphb-booked-date-bg);
}

/* --- Booked check-in+check-out diagonaali --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date.mphb-date-check-in.mphb-date-check-out,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date.mphb-date-check-in.mphb-date-check-out,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-booked-date.mphb-date-check-in.mphb-date-check-out {
    background: linear-gradient(to bottom right, var(--mphb-booked-date-bg) 0, var(--mphb-booked-date-bg) 50%, var(--mphb-booked-date-bg) 50%, var(--mphb-booked-date-bg) 100%);
}

/* --- Booked check-in diagonaali --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-booked-date.mphb-date-check-in,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-booked-date.mphb-date-check-in,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-booked-date.mphb-date-check-in {
    background: linear-gradient(to bottom right, var(--mphb-available-date-bg) 0, var(--mphb-available-date-bg) 50%, var(--mphb-booked-date-bg) 50%, var(--mphb-booked-date-bg) 100%);
}

/* --- Available check-out diagonaali --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-available-date.mphb-date-check-out,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-available-date.mphb-date-check-out,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-available-date.mphb-date-check-out {
    background: linear-gradient(to bottom right, var(--mphb-booked-date-bg) 0, var(--mphb-booked-date-bg) 50%, var(--mphb-available-date-bg) 50%, var(--mphb-available-date-bg) 100%);
}

/* --- Available check-out highlight --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-available-date.mphb-date-check-out.datepick-highlight,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-available-date.mphb-date-check-out.datepick-highlight,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-available-date.mphb-date-check-out.datepick-highlight {
    background: linear-gradient(to bottom right, var(--mphb-booked-date-bg) 0, var(--mphb-booked-date-bg) 50%, var(--mphb-selected-date-bg) 50%, var(--mphb-selected-date-bg) 100%);
}

/* --- Earlier-min + available check-out --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-earlier-min-date.mphb-available-date.mphb-date-check-out,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-earlier-min-date.mphb-available-date.mphb-date-check-out,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-earlier-min-date.mphb-available-date.mphb-date-check-out {
    background: linear-gradient(to bottom right, var(--mphb-booked-date-bg) 0, var(--mphb-booked-date-bg) 50%, var(--mphb-not-available-date-bg) 50%, var(--mphb-not-available-date-bg) 100%);
}

/* --- Earlier-min + booked check-in --- */
body .mphb-calendar.mphb-datepick .datepick-month td .mphb-earlier-min-date.mphb-booked-date.mphb-date-check-in,
body .datepick-popup .mphb-datepick-popup .datepick-month td .mphb-earlier-min-date.mphb-booked-date.mphb-date-check-in,
body .datepick-popup [class*="mphb-datepicker-"].mphb-datepick-popup .datepick-month td .mphb-earlier-min-date.mphb-booked-date.mphb-date-check-in {
    background: linear-gradient(to bottom right, var(--mphb-not-available-date-bg) 0, var(--mphb-not-available-date-bg) 50%, var(--mphb-booked-date-bg) 50%, var(--mphb-booked-date-bg) 100%);
}

.datepick.datepick-multi {
    width: 100% !important;
}

.mphb_sc_checkout-wrapper label {
    display: block;
}

/* ==========================================================================
   MPHB Booking Form & Single Room Type — portattu hotel-booking.css:stä
   Alkuperäinen: bellevuex/assets/css/hotel-booking.css
   Portattu: 2.3.2026
   ========================================================================== */

/* --- Single room type h2 otsikot (Saatavuus, Varauslomake) --- */
.mphb-reservation-form-title {
    border-top: 1px solid #e0e0e0;
    margin: 1.85em 0 1.75em;
    padding: 3.1em 0 0;
    font-size: 22px;
    line-height: 1.75;
}
@media screen and (min-width: 48em) {
    .single .mphb_room_type h2,
    .mphb-reservation-form-title {
        font-size: 24px;
        line-height: 1.25;
    }
}

/* --- Varauslomake --- */
.mphb-booking-form .mphb-reserve-btn {
    padding: 1.3em 3.4em;
    height: auto;
    background-color: #333;
    color: #fff;
    border: none;
    cursor: pointer;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: background-color 0.3s;
}
.mphb-booking-form .mphb-reserve-btn:hover {
    background-color: #555;
}

.mphb-booking-form .mphb-confirm-reservation {
    padding: 1.3em 3.4em;
    height: auto;
    background-color: #333;
    color: #fff;
    border: none;
    cursor: pointer;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: background-color 0.3s;
}
.mphb-booking-form .mphb-confirm-reservation:hover {
    background-color: #555;
}

.mphb-booking-form .mphb-adults-wrapper,
.mphb-booking-form .mphb-children-wrapper {
    float: left;
    max-width: 170px;
    width: 50%;
}
.mphb-booking-form .mphb-adults-wrapper {
    padding-right: 0.625em;
}
.mphb-booking-form .mphb-children-wrapper {
    padding-left: 0.625em;
}
.mphb-booking-form .mphb-reserve-btn-wrapper {
    clear: both;
}

/* --- Datepicker input-kentät --- */
input[type='text'].mphb-datepick.is-datepick {
    padding-right: 1.7em;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-repeat: no-repeat;
    background-position: right 0.4em top 0.6em;
    background-size: 1rem 1rem;
}

/* --- Required fields tip --- */
.mphb-required-fields-tip {
    color: #333;
    text-align: left;
}
.mphb-required-fields-tip small {
    font-size: 12px;
    line-height: 14px;
}

/* --- Hinta-tyyli --- */
.mphb-regular-price strong {
    font-weight: 400;
}
.single-mphb_room_type .mphb-regular-price {
    margin: 2.6em 0 4em;
}
.mphb-regular-price .mphb-price {
    font-size: 20px;
    line-height: 1.4;
    font-weight: 600;
}

/* --- Lomakkeen label-tyylit --- */
.mphb-booking-form label {
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #333;
}

/* --- Input-kenttien tyylit --- */
.mphb-booking-form input[type="text"],
.mphb-booking-form select {
    width: 100%;
    padding: 0.8em 1em;
    border: 1px solid #e0e0e0;
    font-size: 16px;
    font-family: inherit;
}

/* --- Kalenterin ja lomakkeen wrapper max-width --- */
.mphb-booking-form {
    max-width: 720px;
}

/* --- Piilota "Varauslomake" väliotsikko (lomake suoraan kalenterin alle) --- */
.mphb-reservation-form-title {
    display: none;
}

/* --- Inline varauslomake: kentät ja nappi rivissä --- */
.mphb-booking-form {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 1em;
}
.mphb-booking-form > p.mphb-required-fields-tip {
    display: none;
}
.mphb-booking-form > input[type="hidden"],
.mphb-booking-form > .mphb-errors-wrapper {
    display: none;
}
.mphb-booking-form .mphb-check-in-date-wrapper,
.mphb-booking-form .mphb-check-out-date-wrapper {
    flex: 1 1 180px;
    margin: 0;
}
.mphb-booking-form .mphb-reserve-btn-wrapper {
    flex: 0 0 auto;
    margin: 0;
    clear: none;
}
.mphb-booking-form .mphb-reserve-room-section {
    flex: 0 0 100%;
}

/* --- Mobiilissa pinottuna --- */
@media screen and (max-width: 600px) {
    .mphb-booking-form {
        flex-direction: column;
    }
    .mphb-booking-form .mphb-check-in-date-wrapper,
    .mphb-booking-form .mphb-check-out-date-wrapper {
        width: 100%;
    }
}

.mphb_cb_checkout_form>.mphb-checkout-section:not(:first-of-type), .mphb_sc_checkout-form>.mphb-checkout-section:not(:first-of-type) {
    margin-top: 25px;
}

table.mphb-price-breakdown {
  width: 100%;
  max-width: 100%;
  /* max-width: 500px; */
  border-collapse: collapse;
  font-size: 15px;
}

table.mphb-price-breakdown td,
table.mphb-price-breakdown th {
  padding: 10px 16px;
  text-align: left;
}

table.mphb-price-breakdown .mphb-table-price-column {
  text-align: right;
}

table.mphb-price-breakdown .mphb-price-breakdown-booking {
  background: #f0f7f7;
  border-radius: 6px;
}

table.mphb-price-breakdown .mphb-price-breakdown-booking a {
  font-weight: 600;
  text-decoration: none;
}

table.mphb-price-breakdown .mphb-price-breakdown-guests td,
table.mphb-price-breakdown .mphb-price-breakdown-nights td {
  color: #555;
  border-bottom: 1px solid #eee;
}

table.mphb-price-breakdown .mphb-price-breakdown-dates th {
  border-bottom: 2px solid #ddd;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #777;
  padding-top: 16px;
}

table.mphb-price-breakdown .mphb-price-breakdown-date td {
  border-bottom: 1px solid #f0f0f0;
}

table.mphb-price-breakdown .mphb-price-breakdown-dates-subtotal th,
table.mphb-price-breakdown .mphb-price-breakdown-accommodation-subtotal th,
table.mphb-price-breakdown .mphb-price-breakdown-subtotal th {
  border-top: 1px solid #ddd;
  font-weight: 500;
  font-size: 14px;
  color: #444;
}

table.mphb-price-breakdown tfoot th {
  border-top: 2px solid #028090;
  padding-top: 14px;
  font-size: 18px;
  font-weight: 700;
  color: #028090;
}

table.mphb-price-breakdown .mphb-currency {
  margin-left: 2px;
}

table.mphb-price-breakdown {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
}
table.mphb-price-breakdown td,
table.mphb-price-breakdown th {
  padding: 10px 16px;
  text-align: left;
}
table.mphb-price-breakdown .mphb-table-price-column {
  text-align: right;
}
table.mphb-price-breakdown .mphb-price-breakdown-booking {
  background: #f0f7f7;
  border-radius: 6px;
}
table.mphb-price-breakdown .mphb-price-breakdown-booking a {
  font-weight: 600;
  text-decoration: none;
}
table.mphb-price-breakdown .mphb-price-breakdown-guests td,
table.mphb-price-breakdown .mphb-price-breakdown-nights td {
  color: #555;
  border-bottom: 1px solid #eee;
}
table.mphb-price-breakdown .mphb-price-breakdown-dates th {
  border-bottom: 2px solid #ddd;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #777;
  padding-top: 16px;
}
table.mphb-price-breakdown .mphb-price-breakdown-date td {
  border-bottom: 1px solid #f0f0f0;
}
table.mphb-price-breakdown .mphb-price-breakdown-dates-subtotal th,
table.mphb-price-breakdown .mphb-price-breakdown-accommodation-subtotal th,
table.mphb-price-breakdown .mphb-price-breakdown-subtotal th {
  border-top: 1px solid #ddd;
  font-weight: 500;
  font-size: 14px;
  color: #444;
}
table.mphb-price-breakdown tfoot th {
  border-top: 2px solid #028090;
  padding-top: 14px;
  font-size: 18px;
  font-weight: 700;
  color: #028090;
}
table.mphb-price-breakdown .mphb-currency {
  margin-left: 2px;
}
.mphb_sc_checkout-form .mphb-checkout-section {
  margin-bottom: 32px;
  padding: 24px;
  background: #f9fafb;
  border-radius: 8px;
  border: 1px solid #e5e7eb;
}
.mphb_sc_checkout-form h3,
.mphb_sc_checkout-form h4 {
  margin-top: 0;
}
.mphb_sc_checkout-form label {
  font-weight: 500;
  color: #374151;
}
.mphb_sc_checkout-form input[type="text"],
.mphb_sc_checkout-form input[type="email"],
.mphb_sc_checkout-form select,
.mphb_sc_checkout-form textarea {
  width: 100%;
  max-width: 100%;
  padding: 10px 12px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  font-size: 15px;
  transition: border-color 0.2s;
}
.mphb_sc_checkout-form input:focus,
.mphb_sc_checkout-form select:focus,
.mphb_sc_checkout-form textarea:focus {
  border-color: #028090;
  outline: none;
  box-shadow: 0 0 0 3px rgba(42, 157, 143, 0.15);
}
.mphb_sc_checkout-form .mphb-customer-details p {
  margin-bottom: 16px;
}
.mphb-total-price {
  font-size: 20px;
  padding: 16px 24px;
  background: #f0f7f7;
  border-radius: 8px;
  border: 2px solid #028090;
}
/* .mphb_sc_checkout-submit-wrapper input[type="submit"] {
  background: #028090;
  color: #fff;
  border: none;
  padding: 14px 32px;
  font-size: 16px;
  font-weight: 600;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.2s;
} */
.mphb_sc_checkout-submit-wrapper input[type="submit"]:hover {
  background: #238b7e;
}
.mphb-errors-wrapper {
  color: #dc2626;
  background: #fef2f2;
  padding: 12px 16px;
  border-radius: 6px;
  border: 1px solid #fecaca;
}
.mphb-coupon-code-wrapper input[type="text"] {
  max-width: 250px;
}
.mphb-coupon-code-wrapper .mphb-apply-coupon-code-button, 
.mphb_sc_checkout-submit-wrapper input[type="submit"] {
  background: #298a99 !important;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 30px;
  cursor: pointer;
}

abbr[data-original-title], abbr[title] {
    text-decoration: none;
}

/* ==========================================================================
   Checkout / Varauksen vahvistus -sivun tyylitys
   ========================================================================== */

/* --- Varauksen tiedot: päivämäärät korostettuna --- */
.mphb_sc_checkout-form .mphb-booking-details p {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 8px;
}
.mphb_sc_checkout-form .mphb-booking-details strong {
  color: #1f2937;
}

/* --- Sektio-otsikot --- */
.mphb_sc_checkout-form .mphb-checkout-section > h3,
.mphb_sc_checkout-form .mphb-checkout-section > h4 {
  color: #028090;
  padding-bottom: 12px;
  margin-bottom: 25px;
  border-bottom: 2px solid #e5e7eb;
}

/* --- Lisäpalvelut: checkboxit isommiksi ja selkeämmiksi --- */
.mphb_sc_checkout-services-list > li {
    padding: 12px 16px;
    margin-bottom: 8px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;

}
.mphb_sc_checkout-form .mphb-services-details label {
  display: flex;
  align-items: center;
  gap: 10px;
  /* padding: 12px 16px; */
  /* margin-bottom: 8px;
   background: #fff;
  border: 1px solid #e5e7eb; */
  border-radius: 8px;
  cursor: pointer;
  transition: border-color 0.2s, box-shadow 0.2s;
  font-weight: 400;
}
.mphb_sc_checkout-form .mphb-services-details label:hover {
  border-color: #028090;
  box-shadow: 0 0 0 2px rgba(2, 128, 144, 0.1);
}
.mphb_sc_checkout-form .mphb-services-details input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #028090;
  flex-shrink: 0;
}

/* --- Lisäpalvelujen select (varten X vierasta) --- */
.mphb_sc_checkout-form .mphb-services-details select {
  max-width: 180px;
  margin-top: 8px;
}

/* --- Kuponkikoodi-kenttä vierekkäin --- */
.mphb-coupon-code-wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 10px;
}
.mphb-coupon-code-wrapper p {
  margin-bottom: 0;
}

/* --- Kokonaishinta isommin --- */
.mphb-total-price .mphb-price {
  font-size: 24px;
  font-weight: 700;
  color: #028090;
}

/* --- Submit-nappi isompi ja näkyvämpi --- */
.mphb_sc_checkout-submit-wrapper input[type="submit"] {
  padding: 14px 36px !important;
  font-size: 17px !important;
  font-weight: 600;
  letter-spacing: 0.3px;
  transition: background 0.2s, transform 0.1s;
}
.mphb_sc_checkout-submit-wrapper input[type="submit"]:active {
  transform: scale(0.98);
}

/* --- Ehdot-checkbox siistimmin --- */
.mphb-checkout-terms-wrapper label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.mphb-checkout-terms-wrapper input[type="checkbox"] {
  width: 20px;
  height: 20px;
  margin-top: 2px;
  accent-color: #028090;
  flex-shrink: 0;
}

/* --- Hintaerittely-taulukko siistimmin --- */
table.mphb-price-breakdown {
  width: 100%;
  border-collapse: collapse;
}
table.mphb-price-breakdown th,
table.mphb-price-breakdown td {
  padding: 8px 12px;
  border-bottom: 1px solid #e5e7eb;
  text-align: left;
}
table.mphb-price-breakdown tr:last-child th,
table.mphb-price-breakdown tr:last-child td {
  border-bottom: none;
  font-weight: 700;
}

/* --- Mobiili: tiiviimpi padding --- */
@media (max-width: 600px) {
  .mphb_sc_checkout-form .mphb-checkout-section {
    padding: 16px;
  }
  .mphb_sc_checkout-form .mphb-services-details label {
    padding: 10px 12px;
  }
}

.mphb-reserve-rooms-details,
.mphb-services-details {
    margin-top: 50px;
}
ul.mphb_sc_checkout-services-list  {
    padding-left: 0;
}

table.mphb-price-breakdown .mphb-price-breakdown-guests td:nth-child(2), 
table.mphb-price-breakdown .mphb-price-breakdown-nights td:nth-child(2) {
    text-align: right;
}

.mphb_sc_checkout-wrapper label {
    margin-bottom: 0;
}