/* ════════════════════════════════════════════════════════
   scorchgallery.com — Mobile + Tablet Responsive
   Applies globally (loaded on every page via mu-plugin)
   ════════════════════════════════════════════════════════ */

/* ── Small phone (≤480px) ── */
@media (max-width: 480px) {
  .sg-hero { min-height: 420px; height: 85vh; }
  .sg-hero-content { padding: 0 5%; }
  .sg-hero-content h1 { font-size: 1.7rem; }
  .sg-hero-content h1 .script-accent { font-size: 2.2rem; }
  .sg-hero-content p { font-size: 0.85rem; margin-bottom: 1.8rem; }
  .sg-hero .sg-btn, .sg-hero .sg-btn-outline { width: 90%; padding: 0.8rem 1.5rem; font-size: 0.78rem; display: block; margin: 0.5rem auto; }
  .sg-process h2 { font-size: 1.8rem; }
  .sg-process .sub { font-size: 0.78rem; margin-bottom: 2.5rem; }
  .sg-process-text h3 { font-size: 1.3rem; }
  .sg-process-text p { font-size: 0.85rem; }
  .sg-process { padding: 3rem 5%; }
  .sg-gallery h2 { font-size: 1.8rem; }
  .sg-gallery .sub { font-size: 0.78rem; margin-bottom: 2rem; }
  .sg-art-card img { height: 240px; }
  .sg-gallery-grid { gap: 0.75rem; }
  .sg-art-overlay { padding: 1rem; }
  .sg-art-overlay h3 { font-size: 0.95rem; }
  .sg-about-text h2 { font-size: 1.5rem; }
  .sg-about-text p { font-size: 0.85rem; }
  .sg-about-text .quote { font-size: 1rem; padding-left: 1rem; }
  .sg-contact h2 { font-size: 1.5rem; }
  .sg-contact .sub { font-size: 0.78rem; margin-bottom: 2rem; }
  .sg-contact-info { flex-direction: column; gap: 1.5rem; }
  .sg-contact .btn { width: 80%; padding: 0.85rem 1.5rem; font-size: 0.8rem; }
}

/* ── Large phone (≤600px) ── */
@media (max-width: 600px) {
  .sg-hero-content h1 { font-size: 2rem; }
  .sg-hero-content h1 .script-accent { font-size: 2.6rem; }
  .sg-hero .sg-btn, .sg-hero .sg-btn-outline { margin-bottom: 0.75rem; display: block; width: 80%; margin-left: auto; margin-right: auto; }
  .sg-gallery-grid { grid-template-columns: 1fr; }
  .sg-process-row { margin-bottom: 2.5rem; }
  .sg-about { padding: 3rem 5%; }
  .sg-about img { height: 240px; }
  .sg-gallery { padding: 3rem 5%; }
  .sg-art-card img { height: 280px; }
}

/* ── Tablet portrait (≤768px) ── */
@media (max-width: 768px) {
  /* Kadence inner pages: content padding */
  .content-container { padding-left: 5% !important; padding-right: 5% !important; }
  .entry-content-wrap { padding: 2rem 5% !important; }
  .wp-block-kadence-column { padding-left: 0 !important; padding-right: 0 !important; }
  /* Hide Kadence page hero */
  .page-hero-section, .entry-hero.page-hero-section { display:none !important; }
  body.home #inner-wrap { display:none !important; }
  .site { margin-top:0 !important; padding-top:0 !important; }
  /* WooCommerce shop mobile */
  .woocommerce ul.products.columns-4 { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .woocommerce ul.products li.product { width: 100% !important; }
  .woocommerce ul.products li.product a img { height: 200px; object-fit: cover; }
  /* Contact info stack */
  .sg-contact-info { gap: 2rem; }
  .sg-about { grid-template-columns: 1fr; gap: 2rem; padding: 4rem 5%; }
  .sg-about img { height: 300px; }
  .sg-gallery-grid { gap: 1rem; }
}

/* ── Tablet portrait narrow (≤900px) ── */
@media (max-width: 900px) {
  .sg-process-row { grid-template-columns: 1fr; gap: 2rem; margin-bottom: 3rem; }
  .sg-process-row--reverse { direction: ltr; }
  .sg-process-row--reverse .sg-process-img { order: 0; }
  .sg-process-text { padding: 0; }
  .sg-process { padding: 4rem 6%; }
  .sg-hero-content h1 { font-size: 2.8rem; }
  .sg-hero-content h1 .script-accent { font-size: 3.4rem; }
  .sg-gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .sg-about-text { text-align: center; }
  .sg-contact-info { gap: 2rem; flex-wrap: wrap; }
}

/* ── Tablet landscape (≤1024px) ── */
@media (max-width: 1024px) {
  .sg-hero { min-height: 500px; }
  .sg-hero-content h1 { font-size: 3.2rem; }
  .sg-hero-content h1 .script-accent { font-size: 4rem; }
  .sg-hero-content p { font-size: 0.95rem; }
  .sg-process { padding: 5rem 5%; }
  .sg-process-row { gap: 3rem; }
  .sg-gallery { padding: 4rem 5%; }
  .sg-gallery-grid { gap: 1rem; }
  .sg-about { gap: 3rem; }
  .sg-about img { height: 380px; }
  .sg-contact { padding: 4rem 5%; }
  .sg-art-card img { height: 280px; }
}

/* ── Global overrides (any device) ── */
img { max-width: 100% !important; height: auto !important; }
* { box-sizing: border-box !important; }

/* ── Mobile: ensure sg-header and sg-hero touch ── */
@media (max-width: 768px) {
  body.home .sg-home { line-height: 0; font-size: 0; margin: 0; padding: 0; }
  body.home .sg-home .sg-hero { line-height: normal; font-size: 16px; }
  body.home .site { margin-top: 0 !important; padding-top: 0 !important; }
  body.home .sg-hero { margin-top: 0 !important; }
  body.home.wp-site-blocks { margin-top: 0 !important; padding-top: 0 !important; }
}

/* ── Fix: sg-home lives OUTSIDE site.flex container on home page ── */
@media (max-width: 768px) {
  body.home .wp-site-blocks .site { min-height: 0 !important; height: auto !important; }
  body.home .wp-site-blocks .site .sg-header ~ *:not(.sg-home) { display: none !important; }
}

/* ── Fix gallery CTA text cutoff on mobile ── */
@media (max-width: 480px) {
  .sg-gallery-cta a { font-size: 0.7rem !important; letter-spacing: 0.05em !important; white-space: nowrap; }
}
/* ── Fix gallery CTA text cutoff on mobile ── */
@media (max-width: 480px) {
  .sg-gallery-cta { text-align:center; margin-top:2.5rem; width:100%; }
  .sg-gallery-cta a { display:block; font-size:0.8rem; white-space:normal; letter-spacing:0.08em; padding:0.6rem 1.5rem; border:2px solid #D4A574; border-bottom:2px solid #D4A574; }
}
