/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/

/* ===== Speaker page (page-id-3932) mobile fixes =====
   Lives in the child theme (not inline <style> in page content) because the content
   output pipeline strips inline <style> rule bodies. Structural rules are scoped to
   .post-content so they only affect the page body, never the global footer/header. */
@media (max-width:640px){
  /* ROOT FIX: Avada full-width sections use a fixed -50px breakout margin that only
     matches the desktop #main padding (50px). On mobile #main padding is 20px, so every
     section overflowed 30px each side and got clipped by body overflow-x:hidden ("cut off").
     Re-bleed each page section to exactly the viewport regardless of #main padding. */
  .page-id-3932 .post-content .fusion-fullwidth{margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;max-width:100vw!important;}
  /* Builder rows carry negative gutter margins + 104% width -> reset on mobile.
     Also zero inner horizontal padding so content aligns exactly to the section padding. */
  .page-id-3932 .post-content .fusion-builder-row{margin-left:0!important;margin-right:0!important;max-width:100%!important;width:100%!important;padding-left:0!important;padding-right:0!important;}
  .page-id-3932 .post-content .fusion-layout-column{max-width:100%!important;float:none!important;padding-left:0!important;padding-right:0!important;}
  .page-id-3932 .post-content .fusion-column-wrapper{max-width:100%!important;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;}
  /* Embeds / code blocks must never force width */
  .page-id-3932 .post-content .fusion-code,.page-id-3932 .post-content .fusion-code>div{max-width:100%!important;overflow:hidden!important;}
  .page-id-3932 .post-content iframe{max-width:100%!important;}
  .page-id-3932 .post-content .instagram-media,.page-id-3932 .post-content .tiktok-embed{min-width:0!important;max-width:100%!important;width:100%!important;}
  .page-id-3932 .post-content .fusion-text p{max-width:100%!important;overflow-wrap:break-word;}
  /* Typography: stop oversized headings overflowing narrow screens */
  .page-id-3932 .fusion-title-1{--awb-font-size:38px!important;letter-spacing:-1px!important;line-height:1.1!important;overflow-wrap:break-word;}
  .page-id-3932 .fusion-title-2{--awb-font-size:18px!important;line-height:1.42!important;}
  .page-id-3932 .fusion-title-3,.page-id-3932 .fusion-title-4{--awb-font-size:29px!important;line-height:1.18!important;}
  .page-id-3932 .fusion-title-5{--awb-font-size:25px!important;line-height:1.3!important;}
  .page-id-3932 .fusion-title-6{--awb-font-size:26px!important;line-height:1.3!important;}
  /* Global section cities line: stop messy wrapping */
  .page-id-3932 .dc-global-cities{font-size:11px!important;letter-spacing:1px!important;line-height:2.2!important;}
  /* Align all content (text + images) to the header: logo "D" left (~20px) to hamburger right */
  .page-id-3932 .post-content .fusion-fullwidth{padding-left:20px!important;padding-right:20px!important;}
  /* Hero: image on top, name/text below — matches homepage mobile (issue 2) */
  .page-id-3932 .dc-hero-img{order:-1!important;min-height:400px!important;margin-bottom:26px!important;}
  .page-id-3932 .dc-hero-txt{order:0!important;}
  /* 1st (hero) + 2nd (about) photos: full content width, aligned edge-to-edge with header (symmetric) */
  .page-id-3932 .dc-hero-img{margin-left:0!important;margin-right:0!important;width:100%!important;max-width:none!important;}
  .page-id-3932 .dc-about-img{display:block!important;width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;}
  .page-id-3932 .dc-about-img img{width:100%!important;max-width:none!important;display:block;}
  /* Footer newsletter submit button has a desktop alignment nudge (right:-15px) that
     pushes it past the screen edge on mobile -> pin it to the container edge. */
  .page-id-3932 .newsletterbutton{right:0!important;}
}
@media (max-width:400px){
  .page-id-3932 .fusion-title-1{--awb-font-size:34px!important;}
}

/* ===== Speaking & Media: uniform 9:16 card grid (issue: empty boxes + non-uniform sizes).
   Full content width (aligned to the header box like the rest of the page) — not capped/centered. ===== */
.page-id-3932 .dc-media-grid{display:grid;gap:16px!important;max-width:none!important;margin:0!important;width:100%!important;}
@media (min-width:601px){.page-id-3932 .dc-media-grid{grid-template-columns:repeat(3,1fr)!important;}}
@media (min-width:1025px){.page-id-3932 .dc-media-grid{grid-template-columns:repeat(5,1fr)!important;}}
@media (max-width:600px){.page-id-3932 .dc-media-grid{grid-template-columns:repeat(2,1fr)!important;gap:12px!important;}}
.page-id-3932 .dc-media-card{transition:transform .25s ease,box-shadow .25s ease;}
.page-id-3932 .dc-media-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(0,0,0,0.18)!important;}

/* ===== Desktop: align all content to the header content box (logo "D" left -> nav right edge).
   Header = max-width:1700px centered within #main's 50px side padding. Sections stay full-width
   (backgrounds bleed edge-to-edge) but their CONTENT is constrained to the same box. ===== */
@media (min-width:1025px){
  /* Section stays full-bleed; use its own flex to center a 1700px-max content row,
     with a fixed 50px side gutter (= #main padding). This reproduces the header box:
     content = min(1700, viewport-100) centered, at every width. */
  /* Header content box = max-width:1700px centered within #main's 50px side padding.
     Match it: fixed 50px section padding; the rows get width:100%/max-width:1700px/margin:auto
     via a small script (Avada sets the row width:104% INLINE, which CSS can't override). */
  .page-id-3932 #main .post-content .fusion-fullwidth{padding-left:50px!important;padding-right:50px!important;}
  .page-id-3932 #main .post-content .fusion-column-wrapper{margin-left:0!important;margin-right:0!important;}
}

/* ===== Hero buttons: uniform size on desktop + mobile (same width & height, centered) ===== */
.page-id-3932 .dc-hero-txt .fusion-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  min-width:265px!important;
  height:50px!important;
  padding-top:0!important;
  padding-bottom:0!important;
  white-space:nowrap!important;
}
