@charset "utf-8";

/*
Theme Name: Pharmora - Pharmacy & Medical Store HTML5 Template.
Author: Metropolitanthemes
Version: 1.0.0

%%%%%%% Responsive Stylesheet %%%%%%%
Desktop-first max-width cascade: 1399 / 1199 / 991 / 767 / 575
*/

/*======================
Max Width 1399px
========================*/
@media (max-width: 1399.98px) {
  /* Header */
  .ph-header .header-inner {
    gap: 24px;
  }
  /* the over-hero bar holds logo, menu and icons on one row: tighter links keep it inside the container */
  .ph-header.is-over .header-inner {
    gap: 24px;
  }
  .ph-header.is-over .ph-nav > ul > li > a {
    padding: 34px 8px;
  }
  .ph-header.is-over .ph-logo img {
    height: 44px;
  }
  /* the language picker shows its flag alone here; the menu it opens still names every language */
  .ph-header.is-over .ph-lang.is-icon [data-lang-code],
  .ph-header.is-over .ph-lang.is-icon .lang-btn > .fa-chevron-down {
    display: none;
  }
  .ph-header.is-over .ph-lang.is-icon .lang-btn {
    padding: 0 11px;
  }
  .ph-nav > ul > li > a {
    padding: 22px 10px;
    font-size: 0.875rem;
  }
  .ph-header .nav-inner {
    gap: 18px;
  }
  /* Home 01 Main Store */
  .dept-link-grid {
    gap: 24px;
  }
  .ph-offer {
    padding: 36px;
  }
  .offer-img {
    width: 210px;
    height: 210px;
  }
  /* Home 04 Skincare And Beauty */
  /* six steps to a row leave each card too narrow for thumb and price side by side: the price goes under */
  .step-product {
    flex-direction: column;
    align-items: flex-start;
  }
  .step-product .mini-copy {
    max-width: 100%;
  }
}

/*======================
Max Width 1199px
========================*/
@media (max-width: 1199.98px) {
  /* Header */
  .head-help {
    display: none;
  }
  .ph-header .ph-search {
    max-width: none;
  }
  .dept-btn span {
    display: none;
  }
  .dept-btn {
    padding: 0;
  }
  .ph-nav > ul > li > a {
    padding: 22px 8px;
  }
  /* below 1200 the one-row bar cannot hold the menu: it moves to the toggle, as every header does at 991 */
  .ph-header.is-over .ph-nav {
    display: none;
  }
  .ph-header.is-over .ph-menu-toggle {
    display: inline-flex;
  }
  .ph-header.is-over .header-icons {
    margin-left: auto;
  }
  .dept-inner {
    grid-template-columns: 250px 1fr;
  }
  .dept-pane {
    grid-template-columns: 1fr 1fr;
  }
  .dept-picks {
    display: none;
  }
  .ph-nav .mega-menu {
    grid-template-columns: 1.6fr 1fr;
  }
  .mega-promo {
    display: none;
  }
  /* Hero */
  .hero-slide {
    min-height: 600px;
  }
  .hero-sticker {
    right: 8%;
    width: 116px;
    height: 116px;
  }
  .hero-float.is-c {
    display: none;
  }
  /* Home 01 Main Store */
  .tiles-row {
    grid-template-columns: repeat(5, minmax(240px, 1fr));
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-bottom: 6px;
  }
  .ph-tile {
    scroll-snap-align: start;
  }
  .dept-link-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .rx-photo {
    min-height: 640px;
  }
  .rx-cards {
    grid-template-columns: 1fr;
  }
  .basket-card {
    padding: 32px;
  }
  /* Home 02 Pharmacy */
  .rx-bar {
    grid-template-columns: 1fr 1fr;
  }
  .rx-bar-item.is-refill {
    grid-column: 1 / -1;
    border-bottom: 1px solid var(--ph-line-night);
  }
  .rx-bar-item.is-refill + .rx-bar-item {
    border-left: 0;
  }
  .org-cell {
    height: 150px;
  }
  .org-pill {
    width: 38px;
    height: 38px;
    margin-left: -19px;
  }
  /* Home 03 Supplements And Wellness */
  .round-row {
    grid-template-columns: repeat(3, 1fr);
    row-gap: 30px;
  }
  .features-bar {
    grid-template-columns: repeat(2, 1fr);
  }
  .feature:nth-child(3) {
    border-left: 0;
  }
  .feature:nth-child(n+3) {
    border-top: 1px solid var(--ph-line);
  }
  /* Home 04 Skincare And Beauty */
  .routine-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .ph-mosaic {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 300px 260px 260px;
  }
  .mosaic-tile.is-tall {
    grid-row: auto;
    grid-column: 1 / -1;
  }
  .glyph-row {
    grid-template-columns: repeat(4, 1fr);
  }
  /* Shop */
  .ph-product.is-row .product-media {
    flex-basis: 200px;
  }
  .ph-product.is-row .product-actions {
    left: 162px;
  }
  /* Cart, Checkout And Account */
  .compare-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .acc-stats {
    grid-template-columns: repeat(2, 1fr);
  }
  /* Pharmacy Pages */
  .process-row {
    grid-template-columns: repeat(2, 1fr);
  }
  .topic-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .tool-out.is-four {
    grid-template-columns: repeat(2, 1fr);
  }
  /* Inner Pages */
  .auth-side,
  .auth-main {
    padding: 50px 40px;
  }
  /* Footer */
  .band-inner {
    grid-template-columns: 160px 1fr;
  }
  .footer-sign {
    width: 160px;
    height: 160px;
  }
  .band-actions {
    grid-column: 1 / -1;
  }
  /* Utilities */
  .ph-pt-120 {
    padding-top: 100px;
  }
  .ph-pb-120 {
    padding-bottom: 100px;
  }
}

/*======================
Max Width 991px
========================*/
@media (max-width: 991.98px) {
  /* General */
  .ph-head.is-split {
    flex-direction: column;
    align-items: flex-start;
  }
  .ph-head {
    margin-bottom: 36px;
  }
  /* Header */
  .ph-header .header-nav {
    display: none;
  }
  .ph-header.is-scrolled {
    padding-bottom: 0;
  }
  .ph-menu-toggle {
    display: inline-flex;
  }
  .ph-header .header-inner {
    flex-wrap: wrap;
    gap: 12px 18px;
    min-height: 0;
    padding: 16px 0;
  }
  .ph-header .header-icons {
    margin-left: auto;
  }
  .ph-header .ph-search {
    order: 3;
    flex: 1 1 100%;
  }
  .ph-header.is-over .ph-nav {
    display: none;
  }
  .ph-header.is-over .header-inner {
    flex-wrap: nowrap;
  }
  .ph-topbar .top-address {
    display: none;
  }
  /* Subheader */
  .ph-subheader.is-ice {
    padding: 60px 0 64px;
  }
  .ph-subheader.is-photo {
    padding: 90px 0 96px;
  }
  .sub-decor.is-a {
    right: 4%;
    width: 130px;
    height: 130px;
  }
  .sub-decor.is-b {
    display: none;
  }
  /* Hero */
  .hero-slide::before {
    background: linear-gradient(90deg, rgba(16, 35, 94, 0.9) 0%, rgba(16, 35, 94, 0.7) 60%, rgba(16, 35, 94, 0.35) 100%);
  }
  .hero-float.is-b {
    display: none;
  }
  .hero-arrow {
    top: auto;
    bottom: 22px;
    width: 46px;
    height: 46px;
    transform: none;
  }
  .hero-arrow.is-prev {
    left: auto;
    right: 76px;
    border-radius: var(--ph-radius);
  }
  .hero-arrow.is-next {
    right: 22px;
    border-radius: var(--ph-radius);
  }
  /* Home 01 Main Store */
  .rx-photo {
    min-height: 600px;
  }
  .rx-welcome {
    padding: 40px 34px;
  }
  .basket-card {
    position: relative;
    top: 0;
  }
  .ph-head.is-split .ph-head-actions {
    flex-wrap: wrap;
  }
  /* Home 02 Pharmacy */
  .hero-slide.is-boxed .hero-copy {
    padding: 80px 40px 110px;
  }
  .boxed-foot {
    left: 40px;
  }
  .boxed-frame .hero-arrow {
    bottom: 24px;
  }
  /* Home 03 Supplements And Wellness */
  .ph-hero.is-centre .hero-slide {
    min-height: 640px;
  }
  .sub-plans {
    grid-template-columns: 1fr;
  }
  .summer-card {
    min-height: 420px;
  }
  .day-panel {
    width: 420px;
  }
  /* Home 04 Skincare And Beauty */
  .panels-intro {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .ph-panel {
    height: 480px;
  }
  .routine-head {
    flex-direction: column;
    align-items: flex-start;
  }
  /* Shop */
  .shop-sidebar {
    position: static;
  }
  .shop-fluid {
    padding-left: 20px;
    padding-right: 20px;
  }
  /* Product Pages */
  .pd-gallery {
    position: static;
  }
  .pd-video {
    grid-template-columns: 1fr;
  }
  .ph-tab-row.is-line {
    overflow-x: auto;
    flex-wrap: nowrap;
  }
  .ph-tab-row.is-line .ph-tab {
    flex: 0 0 auto;
  }
  /* Cart, Checkout And Account */
  .ph-totals.is-sticky,
  .acc-side {
    position: static;
  }
  .co-switch,
  .co-pay {
    grid-template-columns: 1fr;
  }
  /* Pharmacy Pages */
  .rx-way-tabs {
    grid-template-columns: 1fr;
  }
  .rx-next,
  .book-side.is-sticky,
  .loc-map {
    position: static;
  }
  .loc-map {
    height: 460px;
  }
  /* Inner Pages */
  .about-grid {
    grid-template-columns: 1fr;
  }
  .about-tile.ph-cover {
    min-height: 320px;
  }
  .numbers-row {
    grid-template-columns: repeat(2, 1fr);
  }
  .blog-sidebar,
  .faq-side {
    position: static;
  }
  .auth-card {
    grid-template-columns: 1fr;
  }
  /* Footer */
  .ph-mobile-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 985;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-top: 1px solid var(--ph-line);
    background: var(--ph-surface);
    box-shadow: 0 -10px 30px rgba(16, 35, 94, 0.08);
  }
  .ph-mobile-bar a,
  .ph-mobile-bar button {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    padding: 10px 0 12px;
    border: 0;
    background: transparent;
    color: var(--ph-heading);
    font-size: 0.75rem;
    font-weight: 600;
  }
  .ph-mobile-bar i {
    font-size: 1.25rem;
  }
  .ph-mobile-bar .ph-count {
    top: 4px;
    right: calc(50% - 24px);
  }
  body {
    padding-bottom: 64px;
  }
  body.page-coming-soon,
  body.page-404 {
    padding-bottom: 0;
  }
  .ph-back-to-top {
    bottom: 84px;
    right: 16px;
  }
  /* Utilities */
  .ph-pt-120 {
    padding-top: 90px;
  }
  .ph-pb-120 {
    padding-bottom: 90px;
  }
  .ph-pt-80 {
    padding-top: 70px;
  }
  .ph-pb-80 {
    padding-bottom: 70px;
  }
}

/*======================
Max Width 767px
========================*/
@media (max-width: 767.98px) {
  /* Header */
  .ph-topbar .top-contacts {
    display: none;
  }
  .ph-topbar .topbar-inner {
    justify-content: center;
  }
  .ph-logo img {
    height: 44px;
  }
  /* on a phone these live in the menu panel */
  .head-account,
  .ph-header .ph-theme-toggle,
  .ph-header .header-icons .ph-lang {
    display: none;
  }
  /* Offcanvas, Cart Drawer And Modals */
  .qv-box {
    grid-template-columns: 1fr;
  }
  .qv-media {
    padding: 24px 24px 0;
  }
  .qv-media img {
    max-width: 260px;
  }
  .qv-body {
    padding: 24px;
  }
  .oc-group ul {
    grid-template-columns: 1fr;
  }
  /* Hero */
  .hero-slide {
    min-height: 560px;
  }
  .hero-copy {
    padding: 80px 0 120px;
  }
  .hero-sticker {
    top: 26px;
    bottom: auto;
    right: 18px;
    width: 92px;
    height: 92px;
  }
  .hero-sticker b {
    font-size: 1.0625rem;
  }
  .hero-sticker span {
    font-size: 0.6875rem;
  }
  .hero-float.is-a {
    top: auto;
    bottom: 90px;
    right: -30px;
    width: 130px;
    height: 130px;
    opacity: 0.7;
  }
  .hero-lead {
    font-size: 1.0625rem;
  }
  /* the Home 01 photos keep their subject right of centre: follow it when the slide turns portrait */
  .ph-hero.is-full .hero-img img {
    /*rtl:ignore*/
    object-position: 68% 50%;
  }
  /* Home 01 Main Store */
  .ph-cat-tiles {
    padding: 16px 16px 0;
  }
  .tiles-row {
    gap: 14px;
  }
  .rx-cards {
    left: 16px;
    right: 16px;
    bottom: 16px;
  }
  .dept-link-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .ph-offer {
    grid-template-columns: 1fr;
    padding: 30px;
  }
  .offer-img {
    width: 180px;
    height: 180px;
  }
  .voices-card,
  .ph-newsletter {
    padding: 32px 26px;
  }
  .voices-head {
    flex-direction: column;
    align-items: flex-start;
  }
  .news-decor {
    top: -24px;
    right: -36px;
    width: 120px;
    height: 120px;
    opacity: 0.55;
  }
  /* Home 02 Pharmacy */
  .ph-strip {
    flex-wrap: wrap;
    gap: 12px 18px;
    padding: 18px 22px;
  }
  .strip-caps {
    display: none;
  }
  .hero-slide.is-boxed {
    min-height: 500px;
  }
  .hero-slide.is-boxed .hero-copy {
    padding: 60px 26px 110px;
  }
  .boxed-foot {
    left: 26px;
  }
  .rx-bar {
    grid-template-columns: 1fr;
  }
  .rx-bar-item + .rx-bar-item {
    border-left: 0;
    border-top: 1px solid var(--ph-line-night);
  }
  .organizer {
    gap: 6px;
    padding: 10px;
  }
  .org-lid b {
    font-size: 0.6875rem;
  }
  .org-pill {
    width: 30px;
    height: 30px;
    margin-left: -15px;
  }
  .ph-tool,
  .consult-card {
    padding: 28px 22px;
  }
  .slot-list {
    grid-template-columns: repeat(3, 1fr);
  }
  .ph-consult {
    padding: 90px 0;
  }
  /* Home 03 Supplements And Wellness */
  .round-row {
    grid-template-columns: repeat(2, 1fr);
  }
  .round-img {
    width: 140px;
    height: 140px;
    margin-top: -70px;
  }
  .round-cat {
    margin-top: 70px;
  }
  .features-bar {
    grid-template-columns: 1fr;
  }
  .feature + .feature {
    border-left: 0;
    border-top: 1px solid var(--ph-line);
  }
  .day-panel {
    width: 320px;
    padding: 28px;
  }
  .day-time {
    font-size: 3rem;
  }
  .ph-hero.is-centre .hero-copy {
    padding: 130px 0 130px;
  }
  /* Home 04 Skincare And Beauty */
  .routine-steps {
    grid-template-columns: 1fr 1fr;
  }
  .ph-mosaic {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    grid-auto-rows: 260px;
  }
  .glyph i {
    font-size: 2.75rem;
  }
  .panels-viewport {
    padding: 0 16px;
  }
  /* Shop */
  .ph-product.is-row {
    flex-direction: column;
    align-items: stretch;
  }
  .ph-product.is-row .product-media {
    flex-basis: auto;
  }
  .ph-product.is-row .product-actions {
    left: auto;
    right: 14px;
  }
  .ph-product.is-row .product-body {
    padding: 0 22px 22px;
  }
  .shop-sort .ph-control {
    min-width: 0;
  }
  .shop-tools {
    width: 100%;
  }
  .shop-sort {
    flex: 1 1 auto;
  }
  .filterbar-end {
    flex: 1 1 100%;
  }
  /* Cart, Checkout And Account */
  .ph-table thead {
    display: none;
  }
  .ph-table,
  .ph-table tbody,
  .ph-table tr,
  .ph-table td {
    display: block;
    width: 100%;
  }
  .ph-table tr {
    position: relative;
    margin-bottom: 14px;
    padding: 14px 16px;
    border: 1px solid var(--ph-line);
    border-radius: var(--ph-radius-card);
  }
  .ph-table td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 0;
    border-bottom: 0;
  }
  .ph-table td[data-label]::before {
    content: attr(data-label);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ph-muted);
  }
  .ph-table td:first-child::before {
    display: none;
  }
  .ph-table td.line-remove {
    position: absolute;
    top: 10px;
    right: 10px;
    width: auto;
    padding: 0;
  }
  .co-block,
  .ph-totals,
  .track-card,
  .acc-card {
    padding: 24px 20px;
  }
  .compare-grid {
    grid-template-columns: 1fr;
  }
  /* Pharmacy Pages */
  .vax-out {
    grid-template-columns: 1fr;
  }
  .process-row {
    grid-template-columns: 1fr;
  }
  .loc-card {
    flex-direction: column;
  }
  .loc-img {
    flex-basis: auto;
    height: 180px;
  }
  .rx-next,
  .book-side {
    padding: 26px 22px;
  }
  .loc-count {
    margin-left: 0;
  }
  /* Inner Pages */
  .about-tile {
    padding: 34px 26px;
  }
  .entry-body {
    padding: 24px 22px 26px;
  }
  .entry-title {
    font-size: 1.375rem;
  }
  .entry-quote {
    padding: 34px 26px;
  }
  .author-box {
    flex-direction: column;
  }
  .post-nav {
    grid-template-columns: 1fr;
  }
  .post-nav-link.is-next {
    text-align: left;
  }
  .comment.is-reply {
    margin-left: 30px;
  }
  .contact-offices {
    grid-template-columns: 1fr;
  }
  .ph-countdown.is-soon .cd-cell {
    width: 72px;
    height: 72px;
  }
  .ph-countdown.is-soon .cd-cell b {
    font-size: 1.625rem;
  }
  .auth-side,
  .auth-main {
    padding: 36px 24px;
  }
  /* Footer */
  .band-inner {
    grid-template-columns: 1fr;
    justify-items: start;
    gap: 22px;
  }
  .footer-main {
    padding: 56px 0 48px;
  }
  .bottom-inner {
    justify-content: center;
    text-align: center;
  }
  .bottom-contacts {
    justify-content: center;
  }
  /* Utilities */
  /* the widest Bootstrap gutter is wider than a phone's container padding: halve it there */
  .row.g-5 {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 2.5rem;
  }
  .ph-pt-120 {
    padding-top: 80px;
  }
  .ph-pb-120 {
    padding-bottom: 80px;
  }
}

/*======================
Max Width 575px
========================*/
@media (max-width: 575.98px) {
  /* General */
  .ph-btn {
    min-height: 50px;
    padding: 12px 22px;
  }
  .ph-line {
    white-space: normal;
  }
  .ph-lead {
    font-size: 1.0625rem;
  }
  /* Header */
  .ph-logo img {
    height: 38px;
  }
  .header-icons {
    gap: 2px;
  }
  .head-wish {
    display: none;
  }
  .ph-topbar .top-status {
    font-size: 0.75rem;
  }
  /* Subheader */
  .sub-decor.is-a {
    top: auto;
    bottom: -30px;
    right: -20px;
    opacity: 0.6;
  }
  .sub-lead {
    font-size: 1.0625rem;
  }
  /* Product Cards */
  .product-body {
    padding: 0 18px 20px;
  }
  .product-media {
    padding: 14px;
  }
  /* Home 01 Main Store */
  .ph-facts {
    grid-template-columns: 1fr;
  }
  .cd-cell {
    width: 52px;
    height: 52px;
  }
  .sale-ends {
    flex-wrap: wrap;
  }
  .ph-voice blockquote {
    font-size: 1.1875rem;
  }
  /* Home 02 Pharmacy */
  .org-cell {
    height: 120px;
  }
  .org-lid {
    height: 34px;
  }
  .promo-pack {
    width: 110px;
    height: 110px;
  }
  /* Home 04 Skincare And Beauty */
  .routine-steps {
    grid-template-columns: 1fr;
  }
  .glyph-row {
    grid-template-columns: repeat(2, 1fr);
  }
  .mosaic-pack {
    width: 110px;
    height: 110px;
  }
  /* Product Pages */
  .pd-review {
    flex-direction: column;
  }
  .pd-review-form {
    padding: 24px 20px;
  }
  /* Cart, Checkout And Account */
  .acc-stats {
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
  .acc-stat {
    padding: 16px;
  }
  /* Pharmacy Pages */
  .topic-grid {
    grid-template-columns: 1fr;
  }
  .result-num {
    font-size: 2.375rem;
  }
  .vd-eq {
    height: 30px;
    transform: rotate(90deg);
  }
  /* Utilities */
  .ph-pt-120 {
    padding-top: 70px;
  }
  .ph-pb-120 {
    padding-bottom: 70px;
  }
  .ph-pt-80 {
    padding-top: 60px;
  }
  .ph-pb-80 {
    padding-bottom: 60px;
  }
}
