@charset "utf-8";

/*
Theme Name: Flourise - Artisan Bakery & Pastry Shop HTML5 Template
Author: Metropolitanthemes
Version: 1.0.0

Responsive stylesheet - desktop first: 1399 / 1199 / 991 / 767 / 575
*/

/*======================
(min-width: 1600px)
========================*/
@media (min-width: 1600px) {
  /* 1. General */
  .container {
    max-width: 1440px;
  }
  html {
    font-size: 17px;
  }

  /* 8. Home One */
  .hero-mosaic .hero-arrow {
    top: 50%;
    bottom: auto;
    transform: translateY(-50%);
  }
  .hero-mosaic .hero-prev {
    left: -100px;
  }
  .hero-mosaic .hero-next {
    left: auto;
    right: -100px;
  }
  .hero-mosaic .fr-facts {
    margin-top: 60px;
  }

  /* 8. Home One */
  .night-track {
    padding: 0 max(24px, calc((100vw - 1440px) / 2 + 12px));
  }
}

/*======================
(min-width: 1960px)
========================*/
@media (min-width: 1960px) {
  /* 1. General */
  .container {
    max-width: 1560px;
  }
  html {
    font-size: 18px;
  }

  /* 8. Home One */
  .night-track {
    padding: 0 max(24px, calc((100vw - 1560px) / 2 + 12px));
  }
}

/*======================
(max-width: 1399px)
========================*/
@media (max-width: 1399px) {
  /* 1. General */
  .sec-pt-130 {
    padding-top: 110px;
  }
  .sec-pb-130 {
    padding-bottom: 110px;
  }

  /* 3. Header */
  .fr-header .wide {
    padding: 0 28px;
  }
  .header-style-two .side {
    gap: 16px;
  }
  .header-style-two .header-actions .header-btn {
    display: none;
  }

  /* 3. Header */
  .fr-nav > ul {
    gap: 28px;
  }
  .fr-nav > ul > li > a {
    font-size: 15px;
  }

  /* 9. Home Two */
  .hero-cream .hero-arrow {
    top: auto;
    bottom: 34px;
    transform: none;
  }
  .hero-cream .hero-prev {
    left: 50%;
    margin-left: -170px;
  }
  .hero-cream .hero-next {
    right: 50%;
    margin-right: -170px;
  }

  /* 9. Home Two */
  .case-cut[data-depth="3"] {
    width: 220px;
  }
  .case-cut[data-depth="2"] {
    width: 160px;
  }
  .case-cut.is-p5,
  .case-cut.is-p9 {
    display: none;
  }
}

/*======================
(max-width: 1199px)
========================*/
@media (max-width: 1199px) {
  /* 3. Header */
  .fr-nav,
  .header-nav {
    display: none;
  }
  .fr-menu-toggle {
    display: inline-flex;
  }
  .header-brand .wide {
    height: 96px;
  }
  .header-brand .fr-logo img {
    height: 50px;
  }
  .header-brand .brand-left .header-icon,
  .header-brand .brand-left .fr-open {
    display: none;
  }
  .header-top .top-right > a {
    display: none;
  }
  /* without its menu row, style one sticks as the brand row */
  .header-style-one.is-sticky .header-brand {
    display: block;
    box-shadow: 0 12px 30px rgba(40, 30, 15, 0.1);
  }
  .header-style-one.is-sticky .header-brand .wide {
    height: 80px;
  }
  .header-style-two .side.is-left {
    flex: 0 0 auto;
  }
  .header-style-two .header-main .wide {
    height: 92px;
    justify-content: space-between;
  }
  .header-style-two .fr-logo {
    order: -1;
  }

  /* 7. Components */
  .fr-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .fr-facts li:nth-child(3) {
    border-left: 0;
  }
  .fr-facts li:nth-child(n + 3) {
    border-top: 1px solid var(--fr-line-2);
  }

  /* 8. Home One */
  .mosaic .hero-copy .fr-btn {
    height: 50px;
    padding: 0 24px;
  }

  /* 10. Home Three */
  .hero-photo .hero-arrow {
    top: auto;
    bottom: 34px;
    transform: none;
  }
  .hero-photo .hero-prev {
    left: 50%;
    margin-left: -170px;
  }
  .hero-photo .hero-next {
    right: 50%;
    margin-right: -170px;
  }

  /* 10. Home Three */
  .explorer-grid {
    grid-template-columns: 200px minmax(0, 1fr);
  }
  .explorer-facts {
    grid-column: 1 / span 2;
  }

  /* 13. Bakery Pages */
  .loc-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .loc-map {
    grid-column: 1 / span 2;
    min-height: 340px;
  }
  .loc-map iframe {
    min-height: 340px;
  }
  .loc-row.is-flip .loc-photo,
  .loc-row.is-flip .loc-info,
  .loc-row.is-flip .loc-map {
    order: 0;
  }
}

/*======================
(max-width: 991px)
========================*/
@media (max-width: 991px) {
  /* 1. General */
  .sec-pt-130 {
    padding-top: 90px;
  }
  .sec-pb-130 {
    padding-bottom: 90px;
  }
  .sec-pt-90 {
    padding-top: 70px;
  }
  .sec-pb-90 {
    padding-bottom: 70px;
  }
  .fr-sketch {
    width: 240px;
  }

  /* 1. General */
  .fr-title {
    margin-bottom: 46px;
  }
  .fr-title.is-split {
    display: block;
  }
  .fr-title.is-split .fr-lead {
    margin-top: 22px;
  }

  /* 1. General */
  .fr-menu-list {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  /* 7. Components */
  .process-row::before {
    display: none;
  }
  .process-step.is-2 .fr-stamp,
  .process-step.is-4 .fr-stamp {
    margin-top: 0;
  }

  /* 7. Components */
  .ck-panel {
    padding: 46px 40px;
  }

  /* 7. Components */
  .fr-seals {
    justify-content: center;
  }
  .fr-seals .seal {
    width: 104px;
    height: 104px;
  }

  /* 8. Home One */
  .mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: 260px 300px 260px;
  }
  .mosaic .m-a {
    grid-column: 1;
    grid-row: 1;
  }
  .mosaic .m-b {
    grid-column: 2;
    grid-row: 1;
  }
  .mosaic .m-card {
    grid-column: 1 / span 2;
    grid-row: 2;
  }
  .mosaic .m-c {
    grid-column: 1;
    grid-row: 3;
  }
  .mosaic .m-d {
    grid-column: 2;
    grid-row: 3;
  }

  /* 9. Home Two */
  .cream-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }
  .cream-media {
    order: -1;
    min-height: 320px;
  }
  .hero-cutout {
    max-height: 320px;
  }
  .hero-cream .swiper-slide {
    padding: 60px 0 110px;
  }
  .cream-ribbon {
    display: none;
  }

  /* 9. Home Two */
  .fr-case {
    padding: 260px 0 260px;
  }
  .case-cut[data-depth="3"] {
    width: 170px;
  }
  .case-cut[data-depth="2"] {
    width: 120px;
  }
  .case-cut.is-p1 {
    top: 3%;
  }
  .case-cut.is-p6 {
    top: 2%;
  }
  .case-cut.is-p4 {
    top: auto;
    bottom: 3%;
  }
  .case-cut.is-p10 {
    top: auto;
    bottom: 4%;
  }
  .case-cut.is-p3,
  .case-cut.is-p7,
  .case-cut.is-p8 {
    display: none;
  }

  /* 9. Home Two */
  .cat-row > div:nth-child(3) .cat-tile {
    border-left: 0;
  }
  .cat-row > div:nth-child(n + 3) .cat-tile {
    padding-top: 40px;
  }

  /* 10. Home Three */
  .history-line::before {
    left: 18px;
  }
  .hist-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 26px;
    padding: 30px 0 30px 54px;
  }
  .hist-row.is-flip .hist-photo,
  .hist-row.is-flip .hist-copy {
    order: 0;
    justify-self: start;
  }
  .hist-year {
    left: 18px;
    top: 30px;
    transform: translate(-50%, 0);
    font-size: 26px;
    writing-mode: vertical-rl;
    padding: 10px 0;
  }
  .hist-photo::before {
    display: none;
  }

  /* 12. Menu & Order Pages */
  .board-line {
    display: none;
  }
  .board-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    row-gap: 30px;
  }

  /* 13. Bakery Pages */
  .gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 240px;
  }

  /* 14. Bakery Shop */
  .order-summary {
    position: static;
  }

  /* 15. Blog & Account */
  .account-wrap {
    grid-template-columns: 1fr;
  }
  .account-side {
    min-height: 460px;
  }

  /* 15. Blog & Account */
  .bare-grid {
    grid-template-columns: 1fr;
  }
  .bare-photo-side {
    height: 320px;
  }
  .bare-seal {
    top: auto;
    right: 30px;
    bottom: -60px;
    width: 120px;
    margin-top: 0;
  }
  .bare-inner {
    padding: 90px 24px 70px;
  }

  /* 16. Subheader */
  .sub-seal {
    right: -10px;
    top: -24px;
    width: 116px;
    height: 116px;
  }
  .sub-card {
    margin-top: -70px;
    padding: 36px 34px 40px;
  }

  /* 17. Footer */
  .footer-signoff {
    padding: 70px 0 50px;
  }
  .footer-sheaf {
    max-width: 300px;
    margin: 0 auto;
  }
  .footer-widgets {
    padding: 60px 0 40px;
  }
}

/*======================
(max-width: 767px)
========================*/
@media (max-width: 767px) {
  /* 1. General */
  /* Bootstrap's widest gutter is wider than the container's side padding on a phone: rows would spill past the screen */
  .g-5,
  .gx-5 {
    --bs-gutter-x: 1.5rem;
  }

  /* 3. Header */
  .header-top {
    display: none;
  }
  .header-actions .is-wish,
  .header-actions .fr-theme-toggle,
  .header-actions .header-btn {
    display: none;
  }

  /* 7. Components */
  .checker {
    grid-template-columns: minmax(0, 1fr);
  }
  .ck-photo {
    min-height: 300px;
  }
  .checker > :nth-child(3) {
    order: 4;
  }
  .checker > :nth-child(4) {
    order: 3;
  }

  /* 8. Home One */
  .fr-night {
    padding: 90px 0;
  }
  .night-clock {
    min-width: 0;
    text-align: left;
  }
  .night-head {
    margin-bottom: 44px;
  }
  .night-track {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: auto;
    gap: 40px;
    padding: 0 24px;
  }
  .night-stage {
    width: auto;
    opacity: 1;
  }

  /* 9. Home Two */
  .checker.is-two {
    grid-template-columns: minmax(0, 1fr);
  }

  /* 9. Home Two */
  .fr-visit .container {
    position: static;
    transform: none;
    pointer-events: auto;
  }
  .visit-map {
    height: 380px;
  }
  .visit-card {
    width: auto;
    margin-top: -80px;
    position: relative;
  }

  /* 10. Home Three */
  .explorer-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
  }
  .explorer-facts {
    grid-column: auto;
  }
  .explorer-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    padding: 0;
    border: 0;
  }
  .explorer-list li {
    flex: 0 0 auto;
  }
  .explorer-list button {
    width: auto;
    padding: 9px 16px;
    background: var(--fr-surface);
    font-size: 12.5px;
  }
  .explorer-list button::after {
    display: none;
  }
  .explorer-list button.is-active {
    background: var(--fr-char);
    color: #FFFFFF;
  }
  .explorer-media {
    min-height: 300px;
  }
  .explorer-img {
    max-height: 300px;
  }

  /* 12. Menu & Order Pages */
  .mg-head {
    flex-wrap: wrap;
  }
  .mg-note {
    margin-left: 0;
    flex-basis: 100%;
  }

  /* 12. Menu & Order Pages */
  .oa-items li {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }
  .oa-items .fr-qty {
    grid-column: 2 / span 2;
    justify-self: start;
  }
  .oa-steps li {
    font-size: 0;
  }
  .oa-steps li span {
    font-size: 22px;
  }
  .oa-done {
    padding-left: 0;
    padding-top: 140px;
  }

  /* 13. Bakery Pages */
  .numbers-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 40px;
  }
  .numbers-row li:nth-child(3) {
    border-left: 0;
  }

  /* 13. Bakery Pages */
  .loc-row {
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
  }
  .loc-map {
    grid-column: auto;
  }
  .loc-strip {
    flex-wrap: wrap;
  }

  /* 14. Bakery Shop */
  .pc-actions .pc-act,
  .pc-add {
    opacity: 1;
    transform: none;
  }
  .pc-add {
    position: static;
  }

  /* 14. Bakery Shop */
  .bag-line,
  .bag-lines.is-wish .bag-line {
    grid-template-columns: 80px 1fr 40px;
    gap: 14px 18px;
  }
  .bag-line .fr-qty,
  .bag-line .bl-total,
  .bag-lines.is-wish .bag-line .fr-btn {
    grid-column: 2;
  }
  .bag-line .bl-total {
    text-align: left;
  }
  .bl-remove {
    grid-row: 1;
    grid-column: 3;
  }

  /* 15. Blog & Account */
  .author-box {
    flex-direction: column;
    align-items: flex-start;
    padding: 30px 24px;
  }
  .comment-list ul {
    padding-inline-start: 30px;
  }
  .post-nav b {
    display: none;
  }
  .article-rows > div {
    grid-template-columns: 1fr;
    gap: 2px;
  }
  .article-quote {
    padding: 30px 24px;
  }
}

/*======================
(max-width: 575px)
========================*/
@media (max-width: 575px) {
  /* 1. General */
  .sec-pt-130 {
    padding-top: 72px;
  }
  .sec-pb-130 {
    padding-bottom: 72px;
  }
  .sec-pt-90 {
    padding-top: 60px;
  }
  .sec-pb-90 {
    padding-bottom: 60px;
  }
  body {
    font-size: 16px;
  }
  .fr-lead {
    font-size: 17px;
  }

  /* 1. General */
  .fr-btn {
    height: 52px;
    padding: 0 24px;
  }

  /* 1. General */
  .fr-back-top {
    right: 16px;
    bottom: 16px;
    width: 46px;
    height: 46px;
  }

  /* 1. General */
  .fr-menu-item {
    gap: 0 14px;
  }
  .fr-menu-item .mi-ico {
    width: 46px;
    height: 46px;
  }
  .fr-menu-item .mi-ico .fr-ico {
    width: 30px;
    height: 30px;
  }
  .mi-head h3,
  .mi-head h4 {
    font-size: 19px;
  }
  .mi-price {
    font-size: 21px;
  }

  /* 2. Preloader */
  .pre-stage {
    transform: scale(0.8);
  }
  .pre-logo img {
    height: 52px;
  }

  /* 3. Header */
  .fr-header .wide {
    padding: 0 16px;
  }
  .header-brand .wide,
  .header-style-two .header-main .wide {
    height: 78px;
  }
  .header-brand .fr-logo img,
  .header-style-two .fr-logo img {
    height: 42px;
  }
  .header-actions {
    gap: 8px;
  }
  .header-icon,
  .fr-menu-toggle {
    width: 44px;
    height: 44px;
  }

  /* 7. Components */
  .fr-facts {
    grid-template-columns: minmax(0, 1fr);
  }
  .fr-facts li {
    padding: 18px 20px;
    border-left: 0;
  }
  .fr-facts li + li {
    border-top: 1px solid var(--fr-line-2);
  }

  /* 8. Home One */
  .hero-mosaic {
    padding-top: 16px;
  }
  .mosaic {
    grid-template-rows: 170px 320px 170px;
    gap: 6px;
  }
  .mosaic .hero-title {
    font-size: 30px;
  }

  /* 8. Home One */
  .special-media {
    padding: 0 0 20px;
  }
  .special-media .fr-sticker {
    top: -24px;
    right: 4px;
    width: 96px;
    height: 96px;
    font-size: 16px;
  }

  /* 9. Home Two */
  .hero-cream .hero-title {
    font-size: 46px;
  }
  .cream-media {
    min-height: 250px;
  }
  .hero-cutout {
    max-height: 250px;
  }

  /* 9. Home Two */
  .case-cut.is-p2 {
    display: none;
  }
  .case-cut[data-depth="3"] {
    width: 140px;
  }

  /* 9. Home Two */
  .cat-row > div + div .cat-tile {
    border-left: 0;
    border-top: 1px solid var(--fr-line);
    padding-top: 40px;
  }

  /* 9. Home Two */
  .fr-voices-band .fr-avatars {
    margin: 14px 0 0;
  }
  .fr-voices-band .voices-nav {
    flex-wrap: wrap;
  }

  /* 10. Home Three */
  .hero-photo .swiper-slide {
    min-height: 600px;
    padding: 130px 0 120px;
  }
  .hero-photo .hero-title {
    font-size: 54px;
  }
  .hero-sprig {
    width: 110px;
  }

  /* 10. Home Three */
  .recipes-pair {
    gap: 14px;
  }
  .recipes-pair .fr-stamp:nth-child(2) {
    margin-top: 40px;
  }
  .recipes-pair .fr-sticker {
    right: 2px;
    width: 92px;
    height: 92px;
    font-size: 15px;
  }

  /* 10. Home Three */
  .oven-stages li {
    grid-template-columns: 70px minmax(0, 1fr);
  }
  .oven-stages small {
    grid-column: 2;
  }
  .gauge-dial .tick {
    font-size: 12px;
  }

  /* 11. Inner Pages */
  .fr-panel {
    padding: 34px 22px;
  }
  .fr-sidebar .widget {
    padding: 30px 24px;
  }

  /* 12. Menu & Order Pages */
  .board-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* 12. Menu & Order Pages */
  .finish-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .size-card {
    padding-right: 60px;
  }
  .size-from {
    position: static;
    margin-left: auto;
    transform: none;
  }

  /* 13. Bakery Pages */
  .class-hero .fr-sticker {
    right: 6px;
  }

  /* 13. Bakery Pages */
  .profile-media .fr-sticker {
    right: 6px;
  }

  /* 13. Bakery Pages */
  .gallery-grid {
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: 260px;
  }
  .gallery-cell.is-tall,
  .gallery-cell.is-wide {
    grid-row: auto;
    grid-column: auto;
  }

  /* 15. Blog & Account */
  .blog-post.is-quote,
  .blog-post.is-link {
    padding: 44px 26px;
  }
  .bp-body {
    padding: 34px 0 0;
  }
  .bp-glyph {
    font-size: 100px;
  }
  .audio-bar {
    left: 14px;
    right: 14px;
    bottom: 30px;
  }

  /* 15. Blog & Account */
  .account-form,
  .account-side {
    padding: 40px 24px;
  }

  /* 15. Blog & Account */
  .launch-count {
    grid-template-columns: 1fr 1fr;
  }
  .launch-count b {
    font-size: 38px;
  }
  .bare-news {
    flex-direction: column;
  }

  /* 16. Subheader */
  .fr-subheader {
    padding-top: 14px;
  }
  .sub-banner {
    height: 220px;
  }
  .sub-seal {
    right: 4px;
    top: -14px;
    width: 92px;
    height: 92px;
  }
  .sub-card {
    margin: -50px 6px 0;
    padding: 30px 20px 32px;
  }
  .sub-card h1 {
    font-size: 38px;
  }

  /* 17. Footer */
  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}
