/*
Theme Name: Hello Elementor Child - Japanexa
Template: hello-elementor
Description: Japanexa child theme for site-specific customizations (WooCommerce/bKash gateway).
Version: 1.0.0
*/


/* ---- Japanexa visual polish ---- */
body {
  color: #0F172A;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hind Siliguri", "Noto Sans Bengali", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, "Noto Sans", Arial, sans-serif;
  background: #FFFDF8;
}

.elementor-widget-heading .elementor-heading-title {
  color: #0F172A;
  font-weight: 800;
  line-height: 1.25;
}

.elementor-widget-button .elementor-button {
  border-radius: 999px !important;
  font-weight: 700;
  padding: 14px 26px !important;
  transition: transform .15s ease, opacity .15s ease;
}
.elementor-widget-button .elementor-button:hover {
  transform: translateY(-1px);
  opacity: .92;
}

/* Icon lists read as a checklist of short cards rather than a bare bullet list */
.elementor-icon-list-items {
  display: grid;
  gap: 10px;
}
.elementor-icon-list-item {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 14px 16px !important;
}
.elementor-icon-list-icon i {
  color: #D12B3D;
}
.elementor-icon-list-text {
  color: #1f2937;
  line-height: 1.6;
}

/* Hero image never towers over the text column on desktop */
@media (min-width: 769px) {
  .elementor-top-section:first-of-type .elementor-widget-image img {
    max-height: 520px;
    width: auto;
    object-fit: cover;
  }
}

.elementor-section {
  overflow: hidden;
}

footer, #colophon {
  border-top: 1px solid #e5e7eb;
  padding: 32px 0;
}


/* Hide the theme/WooCommerce auto page-title everywhere (Elementor pages
   already render their own headings inside the content). */
.page-header,
h1.entry-title,
.woocommerce-products-header__title.page-title,
.woocommerce-page .page-title {
  display: none !important;
}

/* Tighten header logo/tagline spacing */
.site-branding { margin-bottom: 0 !important; }
.custom-logo-link { display: inline-flex; margin-bottom: 2px !important; }
.site-description { margin: 0 !important; padding: 0 !important; line-height: 1.3; }

/* Header logo block: kill every default gap between the logo image and the
   tagline underneath it (the .site-logo wrapper div was the real culprit --
   fixing only .site-description wasn't enough). */
.site-branding { margin-bottom: 0 !important; }
.site-branding .site-logo { margin: 0 !important; padding: 0 !important; line-height: 0; }
.site-branding .custom-logo-link { display: inline-block; margin: 0 !important; }
.site-branding img.custom-logo { display: block; }
.site-branding .site-description { margin: 4px 0 0 !important; padding: 0 !important; line-height: 1.3; }