/* MDIX Toko Online Utama — per-template fixes from the template audit (homepage1.html). */

/* Hero slider: dark grey headline sat directly on busy room photos; a soft light veil keeps it readable. */
.mt-main-slider .holder::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.55);
}
.mt-main-slider .holder > * {
  position: relative;
  z-index: 1;
}
.mt-main-slider .text p,
.mt-main-slider .shop {
  color: #2b2b2b;
}

/* Promo banners: thin light text on real product photos was unreadable. */
.banner-frame .holder {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88) 0%, rgba(255, 255, 255, 0.45) 55%, rgba(255, 255, 255, 0.2) 100%);
}
.banner-frame h2,
.banner-frame .price,
.banner-frame .btn-shop,
.banner-frame .shop {
  color: #222 !important;
}
.banner-frame h2 {
  font-weight: 400;
}

/* ---- design-QA 2026-10-12 ---------------------------------------------------- */

/* Header icons: 44px touch targets; account button shows a user icon (was a 2nd hamburger) */
#mt-header .mt-icon-list > li > a {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
/* hamburger: 44px hit box, the theme's 24px ring is drawn by ::before */
#mt-header .mt-bottom-bar .mt-icon-list > li > a.bar-opener {
  display: block;
  position: relative;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 0;
  padding: 18px 16px 0 0;
}
#mt-header .mt-bottom-bar .mt-icon-list > li > a.bar-opener .bar {
  float: none;
  display: block;
  margin: 0 0 1px auto;
}
#mt-header .mt-bottom-bar .mt-icon-list > li > a.bar-opener::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 10px;
  width: 24px;
  height: 24px;
  border: 2px solid #000;
  border-radius: 50%;
  box-sizing: border-box;
  transition: border-color .3s ease-in-out;
}
#mt-header .mt-bottom-bar .mt-icon-list > li > a.bar-opener:hover::before,
#mt-header .mt-bottom-bar .mt-icon-list > li > a.bar-opener.active::before { border-color: #ff6060; }
#mt-header .account-opener .icon-user {
  font-size: 22px;
  line-height: 1;
}
@media (max-width: 479px) {
  #mt-header .mt-icon-list > li { margin-left: 2px; }
  #mt-header .mt-icon-list > li > a { min-width: 40px; }
}

/* Account side panel: grey-on-grey text failed AA */
.mt-side-menu .mt-side-title { color: #333; }
.mt-side-menu p,
.mt-side-menu .mt-side-subtitle,
.mt-side-menu label,
.mt-side-menu .help,
.or-divider { color: #555; }
.mt-side-menu label { font-size: 12px; }
.mt-side-menu .btn-type1 { background: #444; color: #fff; }
.mt-side-menu .btn-type1:hover,
.mt-side-menu .btn-type1:focus-visible { background: #222; }
.or-divider .txt:after { left: -140px; right: -140px; }

/* Hero: headline fits phone widths without breaking a word */
@media (max-width: 767px) {
  .mt-main-slider h1 { font-size: 32px; line-height: 1.15; }
  .mt-main-slider h2 { font-size: 22px; line-height: 1.2; }
}
@media (max-width: 374px) {
  .mt-main-slider h1 { font-size: 28px; }
}

/* "-20%" badge: white on yellow was 1.5:1 */
.banner-frame .banner-1 .holder span,
.banner-frame [class*="banner-"] .holder .off,
.banner-frame .price-off { color: #222 !important; }

/* Product tabs: 12px minimum, darker inactive tabs, 24px+ targets */
.mt-producttabs .producttabs a { font-size: 12px; }
.mt-producttabs .producttabs li a:not(.active) { color: #595959; }
.mt-producttabs .producttabs a,
.mt-main-slider .shop,
.banner-frame .shop,
.mt-product1 .txt .title a,
.mt-product4 .text strong a,
.mt-shoplist-header .mt-textbox a {
  display: inline-block;
  min-height: 24px;
  line-height: 24px;
}

/* Footer: light grey text on #f5f5f5 failed AA; social icons 44px */
#mt-footer .footer-holder p,
#mt-footer .footer-holder address,
#mt-footer .footer-holder li,
#mt-footer .footer-holder a,
#mt-footer .footer-area p,
#mt-footer .f-widget-news .txt-box p { color: #555; }
#mt-footer .footer-holder a:hover,
#mt-footer .footer-holder a:focus-visible { color: #111; }
#mt-footer .social-network li { margin: 0 2px 0 0; }
#mt-footer .social-network a {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}
#mt-footer .social-network { margin-left: -14px; }
#mt-footer .address-list a { display: inline-block; min-height: 24px; line-height: 24px; }

/* Cart / checkout / wishlist banner: header is no longer laid over it */
.mt-contact-banner.mt-banner-22 {
  min-height: 0;
  padding: 90px 0 40px;
}
.mt-contact-banner.mt-banner-22::before,
.mt-contact-banner.style4::before,
.mt-contact-banner:not(.mt-banner-22)::before {
  content: "";
  position: absolute;
  inset: 0;
}
.mt-contact-banner { position: relative; }
.mt-contact-banner > .container { position: relative; z-index: 1; }
.mt-contact-banner.mt-banner-22::before { background: rgba(0, 0, 0, 0.5); }
.mt-contact-banner:not(.mt-banner-22)::before { background: rgba(255, 255, 255, 0.55); }
.mt-contact-banner.mt-banner-22 .breadcrumbs ul { opacity: 1; }
.mt-contact-banner.mt-banner-22 .breadcrumbs { text-align: center; }
.mt-contact-banner .breadcrumbs ul,
.mt-contact-banner .breadcrumbs a { color: #333; }
.mt-contact-banner.mt-banner-22 .breadcrumbs ul,
.mt-contact-banner.mt-banner-22 .breadcrumbs a { color: #fff; }

/* Wishlist: add-to-cart as a real button */
.mt-product-table .wish-cart-btn {
  display: inline-block;
  margin-top: 32px;
  padding: 10px 14px;
  background: #2f2f2f;
  color: #fff;
  font: 700 12px/1.2 "Montserrat", sans-serif;
  text-transform: uppercase;
  border-radius: 2px;
  white-space: nowrap;
}
.mt-product-table .wish-cart-btn:hover,
.mt-product-table .wish-cart-btn:focus-visible { background: #000; color: #fff; }
.mt-product-table .product-name a { color: inherit; }

/* Product detail: H1 product title keeps the theme's h2 look */
.mt-product-detial .detial-holder h1.product-title {
  font: 300 36px/1.2 "Source Sans Pro", sans-serif;
  color: #3a3a3a;
  margin: 0 0 12px;
}
.mt-blog-detail .blog-txt h1.blog-title {
  font: 700 24px/1.3 "Montserrat", sans-serif;
  color: #2f2f2f;
  text-transform: uppercase;
  margin: 0 0 10px;
}

/* Contact: keyless map embed fills the map band */
.mt-map-holder.mdix-map { height: 420px; }
.mt-map-holder.mdix-map iframe { display: block; width: 100%; height: 100%; border: 0; }
@media (max-width: 767px) { .mt-map-holder.mdix-map { height: 300px; } }

/* Coming soon: dark veil so the white text reads on the room photo */
.coming-soon { position: relative; }
.coming-soon::before { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, 0.55); }
.coming-soon > * { position: relative; z-index: 1; }
.coming-soon .footer-social a { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; }

/* Checkout: payment hint text was 11px light grey */
.mt-detail-sec .panel-body p { font-size: 13px; color: #555; }
.banner-frame .discount span { color: #222 !important; }
.banner-frame .btn-shop span { color: #333 !important; }
.banner-frame .btn-shop { display: inline-flex; align-items: center; min-height: 24px; }

/* Phones: products before the filter sidebar on listing pages */
@media (max-width: 767px) {
  #mt-main .row:has(> #sidebar) { display: flex; flex-direction: column; }
  #mt-main .row:has(> #sidebar) > #sidebar { order: 2; margin-top: 30px; }
}

/* Cart/checkout on phones: hide the column header row, keep the 3 steps on one line */
@media (max-width: 767px) {
  .mt-product-table .container > .row.border:first-child:has(strong.title) { display: none; }
  .mt-process-sec .process-list li,
  .mt-process-sec .process-list li:first-child { min-width: 0; width: 31%; margin: 0 0 10px; display: inline-block; }
  .mt-process-sec .process-list li:before { display: none; }
  .mt-process-sec .process-list .counter { width: 56px; height: 56px; font-size: 20px; padding: 17px 0 0; line-height: 20px; margin-bottom: 10px; }
  .mt-process-sec .process-list .title { font-size: 13px; }
}

/* ---- contrast pass 2: the theme's light greys (#9f9f9f, #a0a0a0, #8a8a8a…) fail AA ---- */
.mt-side-menu .box label,
.mt-side-menu .box .help { color: #555 !important; font-size: 12px !important; }
.or-divider .txt { z-index: 1; }
.or-divider .txt:after { display: none; }
.or-divider::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; border-top: 1px solid #e6e6e6; }

/* product detail */
.mt-product-detial .detial-holder .breadcrumbs,
.mt-product-detial .detial-holder .breadcrumbs a,
.mt-product-detial .rank-rating .total-price,
.mt-product-detial .detial-holder .list a,
.mt-product-detial .txt-wrap p,
.mt-product-detial .text-holder del,
.mt-product-detial .product-form label,
.mt-product-detial .comment-list a,
.product-detail-tab .tab-content p,
.product-detail-tab .mt-tabs a:not(.active),
.product-comment .mt-hold time,
.p-commentform label { color: #555; }
.mt-product-detial .product-form button,
.mt-product-detial .product-form button[type="submit"] { background: #c62828; color: #fff; }
.mt-product-detial .product-form button:hover,
.mt-product-detial .product-form button:focus-visible { background: #8e1c1c; }

/* product cards and listing sidebar */
.mt-product1 .txt .title a,
.mt-product1 .title a { color: #444; }
.mt-product1 .price span,
.mt-product1 .price { white-space: nowrap; }
.nice-form .fake-label,
.nice-form .num,
.category-list .name,
.category-list .num,
.mt-product4 .text strong a,
.mt-product4 del,
.mt-shoplist-header .mt-textbox p,
.mt-shoplist-header .mt-textbox a,
.product-post .txt-holder p,
.product-post .rating-list li,
.product-post .nav a { color: #555; }
.product-post .nav a { font-size: 12px; }
.mt-pagination a { color: #333; }

/* badges on photos: dark text on the theme's light badges */
.mt-product1 .caption .off,
.mt-product1 .caption .best-price,
.caption .best-price { color: #1a1a1a !important; }

/* cart / checkout */
.mt-process-sec .process-list,
.mt-process-sec .process-list .counter,
.mt-process-sec .process-list .title { color: #595959; }
.mt-process-sec .process-list .active .title,
.mt-process-sec .process-list .active .counter { color: #000; }
.mt-product-table .title,
.mt-detail-sec .block .sub-title,
.mt-detail-sec .block .title,
.mt-detail-sec .block span,
.mt-detail-sec .block-holder,
.mt-detail-sec .bill-detail label,
.mt-detail-sec .bill-detail .form-group { color: #444; }
.mt-detail-sec .bill-detail .form-control::placeholder,
.mt-product-table .coupon-form .form-control::placeholder,
.mt-side-menu .input::placeholder { color: #6b6b6b; opacity: 1; }
.mt-product-table .coupon-form button { background: #2f2f2f; color: #fff; }
.mt-detail-sec .update-btn { color: #333; border-color: #333; }
.mt-detail-sec .process-btn { background: #2e7d32; color: #fff; }
.mt-detail-sec .process-btn:hover,
.mt-detail-sec .process-btn:focus-visible { background: #1b5e20; color: #fff; }

/* home: "Terlaris" sub-heading, slick arrows (44px, visible) */
.mt-bestseller .heading p,
.mt-bestseller p { color: #595959; }
.mt-producttabs .slick-prev, .mt-producttabs .slick-next,
.mt-bestseller .slick-prev, .mt-bestseller .slick-next { color: #555; box-shadow: 0 0 0 1px #d0d0d0; }
.mt-producttabs .slick-prev:before, .mt-producttabs .slick-next:before,
.mt-bestseller .slick-prev:before, .mt-bestseller .slick-next:before { color: #555; }
.mt-producttabs .slick-prev:hover, .mt-producttabs .slick-next:hover,
.mt-producttabs .slick-prev:focus-visible, .mt-producttabs .slick-next:focus-visible,
.mt-bestseller .slick-prev:hover, .mt-bestseller .slick-next:hover { background: #c62828; color: #fff; }
#mt-footer .f-widget-tabs .tabs a { min-height: 28px; line-height: 26px; }

/* ---- contrast/targets pass 3 ---- */
.mt-product1 .txt .title a,
.mt-product4 .text strong a,
.mt-product4 .text .frame a { color: #444 !important; }
.mt-product-detial .text-holder del,
.mt-product4 del,
.mt-product1 del { color: #6b6b6b !important; }
.product-comment .mt-hold .name { color: #333; }
.product-comment .p-commentform h2 { color: #333; }
.btn-type4 { background: #333; color: #fff; }
.mt-detail-sec .update-btn { color: #333 !important; border-color: #333 !important; }
.mt-detail-sec .panel-title a { color: #333; display: block; padding: 4px 0; }
.mt-shoplist-header .drop-link { color: #444 !important; }
.product-post .btn-cart { background: #2f2f2f !important; color: #fff !important; }
.product-post .btn-cart:hover, .product-post .btn-cart:focus-visible { background: #000 !important; }
.mt-about-sec .sub-title, .mt-team-sec .sub-title, .mt-txt .sub-title { color: #595959 !important; }
.mt-blog-detail .time,
.blog-post .time { color: #fff; background: #555; }
.mt-blog-detail .widget a,
.mt-blog-detail .popular-post a,
.mt-blog-detail .tags a,
.mt-author-box .author-txt p,
.mt-comments-section .txt p,
.mt-comments-section .mt-time { color: #555; }
.mt-comments-section .mt-time { font-size: 12px; }
.mt-leave-comment .form-btn { background: #333; color: #fff; }

/* 24px minimum for inline links in navigation-like blocks */
.breadcrumbs a,
.blog-nav a,
.btn-more,
.widget-nav a,
.popular-post a,
.tag-widget .tags a,
.mt-product-table .product-name a,
.mt-contact-detail a,
.mt-shoplist-header .mt-textbox a,
.product-post .nav a,
.product-post .txt-holder .title a,
.mt-product-detial .comment-list a,
.mt-product-detial .detial-holder .list a,
.mt-product-detial .breadcrumbs a,
.mt-blog-detail .blog-txt h2 a {
  display: inline-block;
  min-height: 24px;
  line-height: 24px;
}
.mt-shoplist-header .mt-textbox a { padding: 0 6px; }
.filter-widget .filter-btn { padding: 4px 10px; line-height: 18px; }
main .social-network a,
.mt-author-box .social-network a {
  display: inline-flex;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
}
.mt-leave-comment .comment-form .form-btn { background: #333 !important; color: #fff !important; }
.mt-comments-section .txt .mt-time { font-size: 12px !important; color: #555 !important; }
.mt-shoplist-header .mt-textbox a { min-width: 24px; text-align: center; }

/* CLS: sliders stack every slide until slick runs; show only the first slide before init */
.banner-slider:not(.slick-initialized) > .holder ~ .holder { display: none; }
.tabs-slider:not(.slick-initialized) > .slide ~ .slide,
.bestseller-slider:not(.slick-initialized) > * ~ * { display: none; }
.tabs-content > div:not(:first-child) .tabs-slider:not(.slick-initialized) { display: none; }
@media (min-width: 992px) and (max-width: 1199px) {
  #mt-footer .social-network a { width: 38px; }
}
.blog-post .blog-txt h2 { line-height: 1.25; }

/* Final re-verification 2026-10-13: MDIX wordmark was 112x29 (text ~9px). Files are now 2x; shown at 168px (130px on phones). */
.mt-bottom-bar .mt-logo img { width: 168px; height: auto; }
#mt-footer .logo { width: 168px; }
#mt-footer .logo img { width: 100%; height: auto; }
@media (max-width: 767px) {
  .mt-bottom-bar .mt-logo img { width: 130px; }
}

/* Footer payment strip: foreign card/Amazon logos replaced by Indonesian methods (text). */
.bank-card .mdix-pay { display: inline-block; font-size: 13px; line-height: 1.5; color: #4b5563; }

/* Final re-verification 2026-10-13: wordmark redrawn as one line (480x64) — two-line mark showed ~6–9px letters. */
.mt-bottom-bar .mt-logo img { width: 220px; }
#mt-footer .logo { width: 220px; max-width: 100%; }
@media (max-width: 767px) { .mt-bottom-bar .mt-logo img { width: 175px; } }
@media (max-width: 360px) { .mt-bottom-bar .mt-logo img { width: 160px; } }
/* one-line wordmark is only ~23px tall: keep the logo link a 24px+ touch target */
.mt-bottom-bar .mt-logo a { display: inline-block; padding: 5px 0; }
