/* MDIX Bakery Harmoni — audit fixes */

/* The theme's language picker does nothing (demo only). */
.language-select {
  visibility: hidden;
}

/* The vendor Google Maps key no longer works; an embedded map iframe replaces it. */
#googleMap {
  display: none !important;
}
iframe.google-map {
  display: block;
}

/* Testimonial avatars are photos now; keep them round and cropped. */
.client-img img {
  border-radius: 50%;
  object-fit: cover;
}

/* Popular goods: photos fill their card on narrow screens. */
.popular-item-slider .single-item img {
  width: 100%;
  height: auto;
}

/* ===== Design QA 2026-10-12 ===== */
:root {
  --mdix-rose: #c2375a;        /* brand pink darkened for AA text/buttons (white on it 5.3:1) */
  --mdix-rose-soft: #fc7790;   /* original pink, decorative surfaces only */
  --mdix-violet: #7f58ad;      /* hover violet, AA on white (theme #be9eda was 2.3:1) */
  --mdix-ink: #2b2b2b;
}

/* Contrast (D-20): pink text/buttons with white text failed AA (2.6:1). */
.top-bar { background-color: var(--mdix-rose); }
.single-address span { color: #fff; }
.section-title,
.single-bakery h2,
.long-title span,
.address-list span,
.menu li a:hover,
.menu li.active a { color: var(--mdix-rose); }
.menu li a:hover,
.menu li.active a { border-color: var(--mdix-rose); }
.single-baked p,
.single-baker-item p,
.descount-button a,
.send-button { background-color: var(--mdix-rose); }
.send-button span { color: #fff; }
.single-bakery:hover .item-title { color: var(--mdix-violet); }
.single-bakery:hover .bakery-img,
.baked-slider li.slick-active button { background: var(--mdix-violet); }
.bakers-right-arrow:hover,
.bakers-left-arrow:hover { color: var(--mdix-violet); border-color: var(--mdix-violet); }
.bakers-right-arrow,
.bakers-left-arrow { color: #767676; border-color: #bdbdbd; }
.popular-item .section-title-div h2 { color: var(--mdix-ink); }
.popular-item .section-title::before,
.popular-item .section-title::after { filter: brightness(0.3); }
.contact-form input,
.contact-form select,
.contact-form textarea { color: #595959; }
.contact-form ::placeholder { color: #6b6b6b; opacity: 1; }
.descout-content > p { background: rgba(194, 55, 90, 0.85); }
.subsection-item:hover { color: #fff; }

/* Indonesian titles: theme capitalised every word ("Pesan Di Muka"). */
.single-bakery h2,
.send-button { text-transform: none; }

/* Hero: JS sets the slide height to the viewport; keep the photo's aspect ratio (was squashed). */
.home-single-slider img {
  height: calc(100vh - 117px);
  object-fit: cover;
  object-position: center;
}
/* Before slick starts only the first slide shows (stops the load-time jump of the category bar). */
.home-image-slider:not(.slick-initialized) .home-single-slider + .home-single-slider { display: none; }

/* Top bar phone number must not wrap ("+62 811-0000-/0000" at 1024). */
.single-address p { white-space: nowrap; }

/* FAQ: question text ran under the +/- icon. */
.panel-title a { padding-right: 40px; }

/* Testimonial and "Paling Laris" dots: 24px hit area, same look (drawn by ::after). */
.testimonial-slider .slick-dots li button,
.popular-item-slider .slick-dots li button {
  position: relative; box-sizing: border-box; height: 24px; padding: 0;
  border: 0 !important; background: transparent !important; border-radius: 0;
}
.testimonial-slider .slick-dots li button { width: 24px; }
.popular-item-slider .slick-dots li button { width: 40px; }
.testimonial-slider .slick-dots li button::after,
.popular-item-slider .slick-dots li button::after {
  content: ""; position: absolute; box-sizing: border-box; top: 50%;
}
.testimonial-slider .slick-dots li button::after {
  left: 5px; width: 14px; height: 14px; margin-top: -7px; border: 2px solid var(--mdix-rose); border-radius: 50%;
}
.testimonial-slider .slick-dots li.slick-active button::after { border-color: var(--mdix-violet); background: var(--mdix-violet); }
.testimonial-slider .slick-dots li { margin-right: 2px; }
.testimonial-slider .slick-dots { bottom: 6px; }
.popular-item-slider .slick-dots li button::after {
  left: 4px; right: 4px; height: 6px; margin-top: -3px; border: 1px solid var(--mdix-ink); border-radius: 50px;
}
.popular-item-slider .slick-dots li.slick-active button::after { background: var(--mdix-ink); }

/* About text: 11px at 768–991 was below the 12px minimum. */
.about-content { font-size: 14px; }

/* Bottom photo strip (tucked behind "Paling Laris"): theme stacked three 360px photos on phones. */
@media (max-width: 767px) {
  .contact-bottom-section .row { display: flex; margin: 0 -5px; }
  .contact-bottom-section .col-sm-4 { width: 33.333%; padding: 0 5px; }
  .single-bottom-img img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 10px; }
}

/* Promo banner: "DISKON 35%" broke over two lines on phones/tablets. */
@media (max-width: 991px) {
  .descout-content h2 { font-size: 60px; white-space: nowrap; }
}
@media (max-width: 767px) {
  .descout-content h2 { font-size: 48px; }
  .home-single-slider img { height: 52vh !important; }
  .home-subsection { background: #4a3a3e; }
  .blanksection { display: none; }
  .contact-bottom-section { bottom: 0; }
  .contact-bottom-section .container { padding-bottom: 24px; }
  .home-image-slider .slick-arrow { top: 50% !important; bottom: auto !important; margin-top: -25px; }
}

/* Products on phones: two per row instead of eight full-width cards. */
@media (max-width: 767px) {
  .baked-slider .row { display: flex; flex-wrap: wrap; }
  .baked-slider .col-sm-3 { width: 50%; padding: 0 5px; }
  .single-baked { padding: 0 !important; margin-bottom: 16px; }
  .single-baked h2 { font-size: 20px; padding: 12px 4px; }
  .single-baked img { aspect-ratio: 4 / 3; object-fit: cover; }
  .single-baked p { padding: 5px 10px; font-size: 13px; }
  .baked-slider { margin: 0 -4px; }
  .baked-slider .row { margin: 0; }
}

/* Touch: menu toggle 44px, top-bar social 44px, popular names visible without hover. */
.navbar-toggle { min-width: 44px; min-height: 44px; }
@media (max-width: 991px) {
  .social-icon a { width: 40px; height: 40px; line-height: 40px; margin: 2px; }
}
@media (hover: none), (max-width: 991px) {
  .single-hover-item {
    transform: none;
    top: auto; bottom: 0; height: auto;
    background: linear-gradient(transparent, rgba(0, 0, 0, .7));
    border-radius: 0 0 15px 15px;
  }
  .single-hover-item h2.home-title { line-height: 1.2 !important; font-size: 24px !important; padding: 24px 8px 10px; margin: 0; }
}

/* Back-to-top button no longer sits on the last footer icon. */
@media (max-width: 1199px) {
  .footer-section .footer-padding { padding-bottom: 70px; }
}

/* Product grid: equal rows (a two-line price left holes in the float grid); prices never wrap. */
.baked-slider .row { display: flex; flex-wrap: wrap; }
.single-baked p span.baked-price { white-space: nowrap; }
@media (min-width: 768px) and (max-width: 991px) {
  .single-baked p { padding: 5px 10px; }
}

/* Top-bar social icons wrapped to two rows until the web font loaded (CLS 0.36 at 1024). */
@media (min-width: 768px) { .social-icon { white-space: nowrap; } }
.social-icon a { color: var(--mdix-rose); }

/* Hero fade: the brick body pattern showed through mid-transition; dark base behind the slides. */
.home-image-slider, .home-image-slider .slick-list { background: #3b2d30; }
