/* MDIX audit: the contact photo is light, so white text and form lines were unreadable */
.gdlr-core-pbf-background[style*="contact-bg.jpg"] {
  box-shadow: inset 0 0 0 4000px rgba(10, 10, 10, 0.62);
}

/* hero phone/e-mail were grey on a busy photo */
#gdlr-core-wrapper-1 .gdlr-core-text-box-item-content {
  color: #fff !important;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.7);
}

/* ===== design-QA 2026-10-13 (mdix-studio-foto-sentosa) ===== */

/* Logo: the 80x35 PNG was shrunk to 62px and unreadable; SVG wordmark at a readable size */
.ztudiox-logo-inner { max-width: 170px !important; }
.ztudiox-logo-inner img { width: 100%; height: auto; }
.ztudiox-animate-fixed-navigation .ztudiox-logo-inner,
.ztudiox-animate-fixed-navigation.ztudiox-header-style-boxed .ztudiox-logo-inner { max-width: 150px !important; }
@media (max-width: 767px) { .ztudiox-mobile-header .ztudiox-logo-inner { max-width: 140px !important; } }

/* Menu toggles: 44x44 tap area, same three bars */
.ztudiox-mobile-button-hamburger { width: 44px !important; height: 44px !important; margin: -6px; }
.ztudiox-mobile-button-hamburger span,
.ztudiox-mobile-button-hamburger:before,
.ztudiox-mobile-button-hamburger:after { left: 6px !important; }
.ztudiox-mobile-button-hamburger:before { top: 12px !important; }
.ztudiox-mobile-button-hamburger span { top: 21px !important; }
.ztudiox-mobile-button-hamburger:after { top: 30px !important; }

/* Social icons: 44px tap targets, spacing kept visually similar */
.gdlr-core-social-network-icon {
  display: inline-flex !important; align-items: center; justify-content: center;
  min-width: 44px; min-height: 44px; margin-left: 2px !important; margin-right: 2px !important;
}

/* Portfolio hover overlay: links big enough to tap, titles never split mid-word */
.gdlr-core-portfolio-icon-wrap a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
.gdlr-core-image-overlay-content .gdlr-core-portfolio-title a { display: inline-block; padding: 6px 0; }
.gdlr-core-portfolio-title, .gdlr-core-portfolio-title a { word-break: normal !important; overflow-wrap: normal !important; hyphens: none !important; }
@media (max-width: 999px) {
  .gdlr-core-image-overlay-content .gdlr-core-portfolio-title { font-size: 14px !important; letter-spacing: 0.5px !important; }
}

/* Hero: "SENTOSA" (160px) ran off the right edge on tablets */
@media (max-width: 999px) {
  #gdlr-core-wrapper-1 h3.gdlr-core-title-item-title[style*="font-size: 160px"] { font-size: clamp(56px, 15vw, 150px) !important; }
  #gdlr-core-wrapper-1 h3.gdlr-core-title-item-title[style*="font-size: 124px"] { font-size: clamp(44px, 12vw, 116px) !important; }
  #gdlr-core-wrapper-1 h3.gdlr-core-title-item-title[style*="font-size: 80px"] { font-size: clamp(34px, 9vw, 76px) !important; }
}

/* Counters sit on a light snowy photo: darken it so white text reads */
.gdlr-core-pbf-background[style*="counter-bg.jpg"] { box-shadow: inset 0 0 0 4000px rgba(10, 10, 10, 0.45); }

/* Client logo strip (SEASONS, "Mercedez"…) implies clients we cannot show: hidden with its divider */
.gdlr-core-pbf-wrapper:has(img[src*="upload/banner-"]) { display: none !important; }
.gdlr-core-pbf-wrapper:has(img[src*="upload/banner-"]) + .gdlr-core-pbf-wrapper:has(.gdlr-core-divider-item) { display: none !important; }

/* Contact block on tablets: info column was 1/3 wide and broke the phone number */
@media (min-width: 768px) and (max-width: 999px) {
  .gdlr-core-pbf-wrapper:has(.gdlr-core-pbf-background[style*="contact-bg.jpg"]) .gdlr-core-pbf-column { width: 100% !important; float: none !important; }
}

/* Tap targets (≥24px) for small text links: logo, card meta, portfolio titles, contact links */
.ztudiox-logo-inner a { display: inline-block; padding: 8px 0; }
.gdlr-core-portfolio-title a, .gdlr-core-blog-info a, .ztudiox-blog-info a,
a[href^="mailto:"], a[href^="tel:"] { display: inline-block; padding-top: 3px; padding-bottom: 3px; }
.gdlr-core-blog-thumbnail > a, .gdlr-core-blog-thumbnail a:has(> img) { display: block; }

/* Rupiah prices are longer than the theme's "$60": smaller number so it stays on one line */
.gdlr-core-price-table-price-number { font-size: clamp(30px, 3.4vw, 44px) !important; white-space: nowrap; }
.gdlr-core-price-table-price { white-space: nowrap; }

/* Page titles: long Indonesian words (PASCAPRODUKSI) must fit on phones */
@media (max-width: 767px) {
  .ztudiox-page-title { font-size: clamp(26px, 8.5vw, 40px) !important; letter-spacing: 1px !important; word-break: normal; }
}

/* Blog sidebars were exported empty: simple Indonesian widgets added in HTML */
.mdix-sidebar { position: relative; padding: 60px 0 30px 30px; line-height: 1.7; }
.ztudiox-sidebar-area.ztudiox-item-pdlr .mdix-sidebar { padding: 0; }
.mdix-sidebar .ztudiox-widget { margin-bottom: 44px; }
.mdix-sidebar .ztudiox-widget-title { font-size: 14px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 18px; color: #0a0a0a; }
.mdix-sidebar p { font-size: 15px; color: #555; margin-bottom: 12px; }
.mdix-sidebar ul { list-style: none; margin: 0; padding: 0; }
.mdix-sidebar li { border-bottom: 1px solid #e5e5e5; }
.mdix-sidebar li a { display: block; padding: 10px 0; font-size: 15px; color: #222; }
.mdix-sidebar li a:hover, .mdix-sidebar li a:focus-visible { color: #2b42f4; }
.mdix-sidebar-cta { display: inline-block; padding: 12px 24px; background: #2b42f4; color: #fff !important; font-size: 13px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.mdix-sidebar-cta:hover, .mdix-sidebar-cta:focus-visible { background: #1d2fc4; }
@media (max-width: 999px) { .mdix-sidebar { padding: 30px 0; } }

/* Duplicate price table on price-table.html (theme demo of a second style) */
.mdix-hide-duplicate { display: none !important; }

/* Text over photos: testimonial and team-carousel backgrounds were too busy to read */
.gdlr-core-pbf-background[style*="quote-bg"] { box-shadow: inset 0 0 0 4000px rgba(255, 255, 255, 0.86); }
.gdlr-core-pbf-background[style*="page-title-bg"] { box-shadow: inset 0 0 0 4000px rgba(10, 10, 10, 0.6); }

/* Anti-spam question field of the comment form is plugin noise in a static demo */
.antispam-group { display: none !important; }

/* No-space portfolio grids: rows of unequal height left holes; start every row on a new line */
.gdlr-core-portfolio-item-holder:not(.filter-container) > .gdlr-core-item-list.gdlr-core-column-30:nth-child(2n+1),
.gdlr-core-portfolio-item-holder:not(.filter-container) > .gdlr-core-item-list.gdlr-core-column-20:nth-child(3n+1),
.gdlr-core-portfolio-item-holder:not(.filter-container) > .gdlr-core-item-list.gdlr-core-column-15:nth-child(4n+1),
.gdlr-core-portfolio-item-holder:not(.filter-container) > .gdlr-core-item-list.gdlr-core-column-12:nth-child(5n+1) { clear: left; }

/* Contact forms (quform): the submit was a tiny unstyled word */
.quform-submit button, .quform-submit input[type=submit], .quform .quform-submit-inner button {
  display: inline-block; min-height: 44px; padding: 12px 32px; background: #0a0a0a; color: #fff;
  font-size: 13px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; border: 0; cursor: pointer;
}
.quform-submit button:hover, .quform-submit button:focus-visible { background: #2b42f4; }

/* Page-title banners: white title/caption sat on a light street photo (overlay was opacity 0) */
.ztudiox-page-title-overlay { opacity: 0.45 !important; background-color: #000 !important; }

/* Phones: testimonial quote was 27px uppercase, one word per line */
@media (max-width: 767px) {
  .gdlr-core-blockquote-item-content { font-size: 18px !important; line-height: 1.5 !important; }
  .gdlr-core-blockquote-item-content p { font-size: inherit !important; }
  .gdlr-core-personnel-item .gdlr-core-block-item-title-wrap { padding-left: 16px; padding-right: 16px; }
  .gdlr-core-personnel-item .gdlr-core-block-item-title { font-size: 18px !important; }
}
@media (max-width: 767px) {
  .gdlr-core-style-blog-full-with-frame .gdlr-core-blog-title { font-size: 22px !important; line-height: 1.3 !important; }
  .gdlr-core-style-blog-full-with-frame .gdlr-core-blog-full-frame { padding-left: 22px !important; padding-right: 22px !important; }
}

/* More text-over-photo sections (service boxes, studio-rate intro) */
.gdlr-core-pbf-background[style*="service-bg"],
.gdlr-core-pbf-background[style*="camera-bg-1"] { box-shadow: inset 0 0 0 4000px rgba(10, 10, 10, 0.5); }

/* Image links measured as 23px-high inline boxes: make them wrap the whole image */
.gdlr-core-personnel-list-image > a, .gdlr-core-gallery-list > a.gdlr-core-ilightbox,
.gdlr-core-media-image > a.gdlr-core-ilightbox { display: block; }

/* Remaining small text links (team names, portfolio tags, map link, 404 home link) */
.gdlr-core-personnel-list-title a, .gdlr-core-portfolio-info-tag a, a[href*="maps.google.com/?q"],
.ztudiox-not-found-back-to-home a { display: inline-block; padding-top: 4px; padding-bottom: 4px; }

/* Load CLS (0.12–0.19 on inner pages): theme JS sets this spacer to the header height after load; reserve it */
@media (min-width: 1000px) { .ztudiox-header-transparent-substitute { height: 176px; } }

/* ===== design-QA 2026-10-13 round 4 (re-audit after interrupted WIP) ===== */

/* Index: "Selengkapnya" (Cerita Kami) and "Baca Blog" were white text on a white section */
#gdlr-core-button-id-69642, #gdlr-core-button-id-37009 { color: #0c0c0c !important; }
#gdlr-core-button-id-69642:hover, #gdlr-core-button-id-37009:hover,
#gdlr-core-button-id-69642:focus-visible, #gdlr-core-button-id-37009:focus-visible { color: #2b42f4 !important; }

/* Team carousel arrows: white icon on a white round button (invisible on the dark section) */
.gdlr-core-flexslider-nav.gdlr-core-round-style li a,
.gdlr-core-flexslider-nav.gdlr-core-round-style li a i { color: #0c0c0c !important; }

/* Footer social icons are now links: 44px targets, same visual rhythm; stacked under the © text on phones */
.ztudiox-copyright-right .mdix-footer-social { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
.ztudiox-copyright-right .mdix-footer-social i { margin-right: 0 !important; }
.ztudiox-copyright-right .mdix-footer-social:hover i, .ztudiox-copyright-right .mdix-footer-social:focus-visible i { color: #8a9bff !important; }
.ztudiox-copyright-right { margin-right: -11px; }
@media (max-width: 767px) {
  .ztudiox-copyright-right { margin: 10px 0 0 -11px; }
}

/* Audio post format: the music embed was removed (D-25), leaving an empty grey strip above the card */
.gdlr-core-blog-thumbnail.gdlr-core-media-audio:not(:has(audio, iframe)) { display: none !important; }

/* Portfolio 5 columns: "Muat lainnya" needs the WordPress AJAX endpoint and did nothing on the static demo */
.gdlr-core-load-more-wrap { display: none !important; }

/* Contact 2 hero: white title and white logo sat on a light studio portrait */
.gdlr-core-pbf-background[style*="port-men-bg-1"] { box-shadow: inset 0 0 0 4000px rgba(10, 10, 10, 0.45); }

/* Remaining small tap targets: lightbox/portfolio image links were 23px-high inline boxes,
   blog comment counters 6–9px wide, post meta/comment links 18–21px high */
.gdlr-core-portfolio-thumbnail-image-wrap > a, p > a.gdlr-core-ilightbox:has(> img) { display: block; }
.gdlr-core-portfolio-title a { min-height: 24px; }
.gdlr-core-blog-info-comment-number a { display: inline-block; min-width: 24px; min-height: 24px; text-align: center; }
.gdlr-core-blog-info-category a, .comment-time a, .comment-reply a, .ztudiox-single-nav a, .ztudiox-single-related-post-wrap a { display: inline-block; min-height: 24px; padding-top: 3px; padding-bottom: 3px; }

/* 404: page was shorter than the viewport, leaving a white strip under the footer */
.ztudiox-not-found-wrap { min-height: calc(100vh - 92px); }

/* Coming soon: newsletter field looked like an empty white bar (placeholder was white) */
.newsletter-email { color: #0c0c0c !important; }
.newsletter-email::placeholder { color: #6b6b6b !important; opacity: 1; }

/* Comment form: 13px consent checkbox → 24px target */
#wp-comment-cookies-consent { width: 24px; height: 24px; vertical-align: middle; }

/* Overlay menu: page headings showed through the 88% black panel behind the menu links */
.ztudiox-overlay-menu-content { background-color: rgba(10, 10, 10, 0.97) !important; }
/* text-style buttons line up with the copy above them */
#gdlr-core-button-id-69642, #gdlr-core-button-id-37009 { padding-left: 0 !important; padding-right: 0 !important; }
/* 1000–1199px: contact column is ~228px, five 44px social targets wrapped to two rows */
@media (min-width: 1000px) and (max-width: 1199px) {
  .gdlr-core-social-network-item { white-space: nowrap; }
  .gdlr-core-social-network-item .gdlr-core-social-network-icon { margin-left: 0 !important; margin-right: 0 !important; min-width: 40px; }
}

/* Final re-verification 2026-10-13: white wordmark sat on the light left side of the hero photo
   (~1.5:1). A thin dark gradient behind the transparent header keeps logo and menu readable. */
.ztudiox-header-wrap.ztudiox-header-style-plain,
.ztudiox-mobile-header { background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), rgba(0, 0, 0, 0.35) 70%, rgba(0, 0, 0, 0)) !important; }
