@charset "UTF-8";

/* Focused 2.3.9 refinements: integration, pharmacist profile and registration.
   The approved hero, type family, prices and eleven transitions are untouched. */
.pl-integration__layout {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr);
    align-items: start;
    gap: clamp(2rem, 4vw, 4.5rem);
    margin-top: 2.75rem;
    text-align: left;
}
.pl-integration__flow { list-style: none; margin: 0; padding: 0; }
.pl-integration__checkpoint {
    position: relative;
    display: grid;
    grid-template-columns: 3rem minmax(0, 1fr);
    gap: 1.1rem;
    padding-bottom: 2rem;
}
.pl-integration__checkpoint:last-child { padding-bottom: 0; }
.pl-integration__checkpoint:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 1.5rem;
    top: 3.35rem;
    bottom: .35rem;
    width: 1px;
    background: #bbd9df;
}
.pl-integration__symbol {
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    border: 1px solid #b4dfe2;
    border-radius: 1rem;
    background: #e0f5f3;
    color: #007c87;
}
.pl-integration__symbol .pl-ico { width: 1.5rem; height: 1.5rem; }
.pl-integration__checkpoint h3 { font-size: 1.1rem; line-height: 1.4; margin: 0 0 .5rem; }
.pl-integration__checkpoint p { font-size: .9375rem; line-height: 1.65; color: #46677b; }
.pl-integration__workspace { min-width: 0; }
.pl-integration__screen-title { font-size: 1rem; font-weight: 600; margin: 0 0 1.15rem; color: #46677b; }
.pl-integration__context { margin-top: 1.5rem; border-block: 1px solid #bdd9e0; }
.pl-integration__context summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: 3.5rem;
    padding-block: .75rem;
    color: #007c87;
    font-size: .9375rem;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
}
.pl-integration__context summary::-webkit-details-marker { display: none; }
.pl-integration__context summary .pl-ico { width: 1.1rem; height: 1.1rem; flex-shrink: 0; }
.pl-integration__context[open] summary .pl-ico { transform: rotate(180deg); }
.pl-integration__context .pl-shot { margin: .5rem 0 1.5rem; }
.pl-integration__notes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2rem;
    margin-top: 2.75rem;
    padding-top: 1.75rem;
    border-top: 1px solid #bdd9e0;
    text-align: left;
}
.pl-integration__notes dt { margin-bottom: .65rem; font-size: .9375rem; font-weight: 700; color: #007c87; }
.pl-integration__notes dd { margin: 0; font-size: .875rem; line-height: 1.7; color: #46677b; }

.pl-profile { margin-top: clamp(3.5rem, 6vw, 6rem); padding-top: clamp(3rem, 5vw, 5rem); border-top: 1px solid #285162; scroll-margin-top: 7rem; }
.pl-profile__layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: start; gap: clamp(2rem, 3vw, 3rem); margin-top: 2.5rem; }
.pl-profile__screen { min-width: 0; }
.pl-profile__features { list-style: none; padding: 0; margin: 0; display: grid; gap: 1.5rem; text-align: left; }
.pl-profile__features li { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: .9rem; }
.pl-profile__icon { color: #39d5ce; padding-top: .15rem; }
.pl-profile__icon .pl-ico { width: 1.5rem; height: 1.5rem; }
.pl-profile__features h3 { margin-bottom: .4rem; font-size: 1rem; line-height: 1.4; color: #f3fbff; }
.pl-profile__features p { font-size: .875rem; line-height: 1.65; color: #b5cfdb; }
.pl-profile__roadmap { margin-top: 2rem; }

/* Styling only: the form contract, labels, consent and field order stay intact. */
.pl-final .pl-final__form {
    padding: clamp(1.5rem, 2.6vw, 2.5rem);
    border: 1px solid #326071;
    border-top: 3px solid #3cd5ce;
    border-radius: 1.5rem;
    background: #103547;
    box-shadow: 0 20px 60px #001c2c40;
    color-scheme: dark;
    text-align: left;
}
.pl-final__form .plab-regform__title { color: #f5fbff; font-size: clamp(1.4rem, 1.9vw, 1.7rem); }
.pl-final__form .plab-regform__text,
.pl-final__form .plab-regform__note,
.pl-final__form .pl-final__contact-label { color: #b5cfdb; }
.pl-final__form .plab-regform__text { line-height: 1.7; }
.pl-final__form .plab-regform__form { margin-top: 1.75rem; }
.pl-final__form .plab-regform__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 1rem; }
.pl-final__form .plab-regform__field { min-width: 0; }
.pl-final__form .plab-regform__label { color: #e5f2f7; font-size: .875rem; text-align: left; }
.pl-final__form .plab-regform__required { color: #ffb6b6; }
.pl-final__form .plab-regform__input {
    min-height: 3.1rem;
    border: 1px solid #60889b;
    border-radius: .6rem;
    background: #092a3a;
    color: #f5fbff;
    caret-color: #50e0d8;
    text-align: left;
    font-size: 1rem;
}
.pl-final__form .plab-regform__input:hover { border-color: #7bb6c6; }
.pl-final__form .plab-regform__input:focus-visible {
    border-color: #50e0d8;
    outline: 2px solid #50e0d8;
    outline-offset: 3px;
    box-shadow: none;
}
.pl-final__form .plab-regform__input:-webkit-autofill {
    -webkit-text-fill-color: #f5fbff;
    -webkit-box-shadow: 0 0 0 1000px #092a3a inset;
}
.pl-final__form .plab-regform__consent {
    grid-template-columns: 1.5rem minmax(0, 1fr);
    justify-items: stretch;
    align-items: start;
    gap: .5rem .85rem;
    padding: 1rem;
    margin-top: 1.5rem;
    border: 1px solid #386172;
    border-radius: .75rem;
    background: #163f50;
    color: #d1e3eb;
    text-align: left;
    font-size: .8125rem;
    line-height: 1.65;
}
.pl-final__form .plab-regform__consent label { cursor: pointer; }
.pl-final__form .plab-regform__checkbox { margin-top: .12rem; accent-color: #42d6cf; cursor: pointer; }
.pl-final__form .plab-regform__checkbox:focus-visible { outline: 2px solid #50e0d8; outline-offset: 4px; }
.pl-final__form .plab-regform__consent .plab-regform__error { grid-column: 2; }
.pl-final__form .plab-regform__consent a,
.pl-final__form .pl-phone { color: #50e0d8; }
.pl-final__form .plab-regform__submit { margin-top: 1.25rem; min-height: 3.5rem; box-shadow: none; font-size: 1rem; }
.pl-final__form .plab-regform__submit .plab-ico { display: block; flex-shrink: 0; width: 1.25rem; height: 1.25rem; }
.pl-final__form .plab-regform__note { text-align: left; font-size: .8125rem; line-height: 1.7; }
.pl-final__form .pl-final__contact { border-color: #386172; margin-top: 1.5rem; padding-top: 1.5rem; }
.pl-final__form .pl-phone { flex-wrap: wrap; justify-content: center; font-size: 1.05rem; gap: .4rem .65rem; }
.pl-final__form .plab-regform__error { color: #ffb6b6; }
.pl-final__form .plab-regform__field--error .plab-regform__input,
.pl-final__form .plab-regform__input[aria-invalid="true"] { background: #3f2c3a; border-color: #ffb6b6; }
.pl-final__form .plab-regform__alert { background: #3f2c3a; border-color: #cd8e99; color: #ffe2e2; }
.pl-final__form .plab-regform__success { background: #124d4e; border-color: #51b6a5; color: #e4fff5; }
.pl-final__form .plab-regform__success-icon { background: #b9f5df; color: #006456; }

@media (max-width: 1023px) {
    .pl-integration__layout, .pl-profile__layout { grid-template-columns: 1fr; gap: 2rem; }
    .pl-integration__flow { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.75rem; }
    .pl-integration__checkpoint { padding: 0; }
    .pl-integration__checkpoint::after { display: none; }
    .pl-profile__features { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.75rem; }
}
@media (max-width: 599px) {
    .pl-integration__layout, .pl-profile__layout { margin-top: 2rem; }
    .pl-integration__flow, .pl-integration__notes, .pl-profile__features { grid-template-columns: 1fr; }
    .pl-integration__notes { gap: 1.5rem; margin-top: 2rem; }
    .pl-integration__checkpoint { gap: .9rem; }
    .pl-integration__checkpoint h3 { font-size: 1rem; }
    .pl-final .pl-final__form { padding: 1.25rem; border-radius: 1.2rem; }
    .pl-final__form .plab-regform__grid { grid-template-columns: 1fr; }
    .pl-final__form .plab-regform__consent { padding: .85rem; gap: .5rem .7rem; }
}
