/* cohesion-fix.css — static-restore layout cohesion for Japan is Style (Divi/WooCommerce)
   Linked LAST in <head> so it overrides theme + plugin CSS.
   Goal: reveal Divi scroll-animated content that stays hidden without waypoint JS,
   restore FontAwesome icons via CDN, and guard mobile overflow. */

/* 1. Reveal Divi scroll-reveal animations (waypoint JS not running on static) */
.et_pb_section,
.et_pb_row,
.et_pb_column,
.et_pb_module,
.et_animated,
.et_pb_animation_top,
.et_pb_animation_bottom,
.et_pb_animation_left,
.et_pb_animation_right,
.et_pb_animation_fade,
[class*="et_pb_animation_"]{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  animation:none !important;
  -webkit-animation:none !important;
}

/* Divi "et-waypoint" / fade-in helpers that gate visibility */
.et_pb_section.et_pb_section_first,
.et-waypoint:not(.et_pb_animated){
  opacity:1 !important;
  visibility:visible !important;
}

/* Lazy images: force any deferred src to display */
img[data-src]{ }
img[loading="lazy"]{ opacity:1 !important; }

/* 2. FontAwesome via CDN — restore icon glyphs (theme/plugin fonts may 404) */
.fa,.fas,.far,.fab,.fal,
[class^="fa-"],[class*=" fa-"]{
  font-family:"Font Awesome 6 Free","Font Awesome 6 Brands",FontAwesome !important;
}
.fab,[class*=" fab"]{ font-family:"Font Awesome 6 Brands" !important; font-weight:400 !important; }
.fas,.fa-solid{ font-weight:900 !important; }

/* Divi default icon font (ETmodules) — keep as-is; if missing, it degrades gracefully */

/* 3. Mobile overflow guard (TR/global mobile-first) */
html,body{ overflow-x:hidden; max-width:100%; }
img,video,iframe{ max-width:100%; height:auto; }
.et_pb_row,.et_pb_section{ max-width:100%; }

/* 4. WooCommerce/cart popups & cookie banners that need backend/JS — keep hidden so they
      don't block content on static */
.cmplz-cookiebanner,
#cmplz-cookiebanner-container,
.cartpops-overlay,
.chaty-widget,
.pum-overlay,
.lpc_modal{
  display:none !important;
}

/* 5. Ensure header/menu visible (Divi fixed header sometimes hidden pre-JS) */
#main-header,#et-top-navigation,.et_header_style_default #main-header{
  opacity:1 !important; visibility:visible !important;
}

/* 6. Keep content readable: no leftover absolute-positioned orphan collapse */
.et_pb_text,.et_pb_blurb,.et_pb_image{ position:relative; }

/* et_pb_section_0_ : ~3937px-tall Divi section whose giant wooden background-image bleeds
   behind stacked off-theme stock. Drop the bleeding bg + grid the stacked product images. */
.et_pb_section_0_ { background-image: none !important; background-color: #fff !important; }
.et_pb_section_0_ .et_pb_row { display: flex !important; flex-wrap: wrap !important; justify-content: center; align-items: flex-start; }
.et_pb_section_0_ .et_pb_column { float: none !important; }
.et_pb_section_0_ .et_pb_image, .et_pb_section_0_ .et_pb_image img { max-width: 100% !important; height: auto !important; }

/* GLOBAL: this thin restore has MULTIPLE Divi sections whose giant background-images bleed
   (wooden crate / product shelf) behind stacked off-theme stock. Kill every section bg-image. */
.et_pb_section { background-image: none !important; }

/* Divi Theme-Builder footer: section_0_tb_footer is the junk brand-showcase (17 off-theme /
   Russian-text stock photos over bleeding wooden backgrounds). Hide it. The copyright bar
   (section_2_tb_footer "© JapanIsStyle") stays. This is the "trim to clean core" cut. */
.et_pb_section_0_tb_footer { display: none !important; }

/* Broken plugin widgets render full-screen on a static restore (their CSS/JS is gone):
   CartPops side-cart (cpops-*) + Complianz cookie banner (cmplz-*) had giant 1366px SVG icons.
   Hide them. + restore FontAwesome SVG-mode 1em sizing for any remaining FA icons. */
[class*="cpops"], [id*="cpops"], [class*="cartpops"],
[class*="cmplz"], [id*="cmplz"] { display: none !important; }
.svg-inline--fa { width: 1em !important; height: 1em !important; display: inline-block; }
