/* =====================================================================
   IW7 Game — Homepage styles (child theme)
   Rebuilt from exported Claude Design. Organised by section.
   ===================================================================== */

:root{
  --iw7-bg:#14100f; --iw7-bg2:#191413;
  --iw7-card:#1c1716; --iw7-card2:#1f1917; --iw7-card3:#1b1615; --iw7-ph:#221d1b;
  --iw7-red:#e5322b; --iw7-red-h:#c72a24; --iw7-red-l:#e5735f;
  --iw7-ink:#f4efec; --iw7-muted:#b6aca6; --iw7-muted2:#8f8580;
  --iw7-muted3:#a89e98; --iw7-muted4:#c0b6b0; --iw7-dim:#7c726c; --iw7-dim2:#5f5651;
  --iw7-line:#241f1d; --iw7-line2:#2b2422; --iw7-line3:#2a2321; --iw7-line4:#3a322f;
  --iw7-head:'Space Grotesk',system-ui,sans-serif;
  --iw7-body:'IBM Plex Sans',system-ui,sans-serif;
}

/* ---------- Base ---------- */
body{ background:var(--iw7-bg); color:var(--iw7-ink); font-family:var(--iw7-body); -webkit-font-smoothing:antialiased; }
body h1,body h2,body h3,body h4,body h5,body h6{ font-family:var(--iw7-head); color:var(--iw7-ink); }
::selection{ background:var(--iw7-red); color:#fff; }
@keyframes iw7PulseGlow{ 0%,100%{opacity:.55;} 50%{opacity:.9;} }

/* Full-bleed content: strip Astra container padding on the home page */
.home .site-content .ast-container,
.home #primary,
.home .entry-content{ max-width:100%; padding-left:0; padding-right:0; margin:0; }
.home .entry-content > *{ margin-top:0; margin-bottom:0; }
.home .ast-container{ display:block; }

/* ---------- Header (Astra) ---------- */
.site-header, .ast-primary-header-bar{ background:rgba(20,16,15,.92)!important; }
.site-header{ position:sticky; top:0; z-index:99; -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); border-bottom:1px solid var(--iw7-line2); }
.main-header-bar{ border-bottom:0!important; }
.ast-primary-header-bar .site-primary-header-wrap, .main-header-bar .ast-container{ max-width:1080px; margin:0 auto; }
.site-title{ font-family:var(--iw7-head)!important; font-weight:700!important; font-size:19px!important; line-height:1!important; margin:0!important; }
.site-title a{ color:var(--iw7-ink)!important; display:inline-flex; align-items:center; gap:10px; letter-spacing:-.01em; }
.ast-logo-title-inline .site-logo-img { padding-right: 10px !important; }

/* Primary menu */
.main-header-menu .menu-link, .ast-header-navigation-arrow{ color:#cabfb9!important; font-size:14px!important; font-weight:500!important; }
.main-header-menu .menu-item:hover > .menu-link,
.main-header-menu .current-menu-item > .menu-link{ color:var(--iw7-red)!important; }
.main-header-menu{ background:transparent!important; }
/* Mobile toggle + menu */
.ast-mobile-menu-buttons .menu-toggle{ background:transparent!important; color:var(--iw7-ink)!important; }
.ast-button-wrap .menu-toggle .menu-toggle-icon{ color:var(--iw7-ink); }
.ast-mobile-header-wrap .main-header-menu, .ast-mobile-popup-drawer .main-header-menu{ background:var(--iw7-bg)!important; }
.ast-mobile-popup-drawer .menu-item .menu-link{ color:#e6ddd8!important; border-bottom:1px solid #221d1b; }
#ast-mobile-header .main-header-bar-navigation .menu-item a{ color:#e6ddd8!important; }

/* ---------- Shared building blocks ---------- */
.iw7{ font-family:var(--iw7-body); color:var(--iw7-ink); }
.iw7 *{ box-sizing:border-box; }
.iw7 .iw7-sec{ position:relative; }
.iw7 .iw7-inner{ margin:0 auto; padding:52px 22px; }
.iw7 .w640{ max-width:640px; } .iw7 .w720{ max-width:720px; } .iw7 .w1080{ max-width:1080px; }
.iw7 .iw7-alt{ background:var(--iw7-bg2); border-top:1px solid var(--iw7-line); border-bottom:1px solid var(--iw7-line); }
.iw7 h2{ font-weight:700; font-size:27px; letter-spacing:-.01em; margin:0 0 16px; line-height:1.2; }
.iw7 h3{ font-family:var(--iw7-head); }
.iw7 p{ font-family:var(--iw7-body); }
.iw7 .iw7-eyebrow{ font-size:12px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--iw7-red-l); }
.iw7 .iw7-lede{ font-size:15px; line-height:1.65; color:var(--iw7-muted2); margin:0 0 28px; }

/* Buttons */
/* Anchor-only: keeps these off the Gutenberg Button wrapper divs */
.iw7 a.btn-red,.iw7 a.btn-ghost{ display:inline-block; text-decoration:none; font-weight:600; font-size:16px; border-radius:12px; transition:background .15s,border-color .15s,color .15s; text-align:center; cursor:pointer; }
.iw7 a.btn-red{ background:var(--iw7-red); color:#fff; padding:16px 22px; box-shadow:0 8px 24px rgba(229,50,43,.32); }
.iw7 a.btn-red:hover{ background:var(--iw7-red-h); color:#fff; }
.iw7 a.btn-ghost{ background:transparent; color:#e6ddd8; padding:15px 22px; border:1px solid var(--iw7-line4); }
.iw7 a.btn-ghost:hover{ border-color:var(--iw7-red); color:#fff; }

/* ---------- Hero ---------- */
.iw7 .iw7-hero{ overflow:hidden; border-bottom:1px solid var(--iw7-line); }
.iw7 .iw7-hero .glow{ position:absolute; top:-120px; left:50%; transform:translateX(-50%); width:520px; height:520px; max-width:96vw; background:radial-gradient(circle, rgba(229,50,43,.28), rgba(229,50,43,0) 70%); pointer-events:none; animation:iw7PulseGlow 5s ease-in-out infinite; }
.iw7 .iw7-hero .iw7-inner{ position:relative; max-width:640px; padding:52px 22px 44px; text-align:center; }
.iw7 .iw7-badge{ display:inline-block; font-size:12px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--iw7-red-l); background:rgba(229,50,43,.12); border:1px solid rgba(229,50,43,.3); padding:6px 14px; border-radius:100px; }
.iw7 .hero-h1{ font-weight:700; font-size:40px; line-height:1.06; letter-spacing:-.02em; margin:22px 0 0; }
.iw7 .hero-h1 .accent{ color:var(--iw7-red); }
.iw7 .hero-sub{ font-size:16px; line-height:1.65; color:var(--iw7-muted); margin:18px auto 0; max-width:500px; }
.iw7 .hero-cta{ display:flex; flex-direction:column; gap:12px; margin-top:30px; }
.iw7 .hero-note{ font-size:13px; color:var(--iw7-dim); margin-top:18px; }

/* Hero carousel */
.iw7 .iw7-carousel{ margin-top:36px; }
.iw7 .carousel-frame{ position:relative; max-width:270px; margin:0 auto; }
.iw7 .carousel-window{ overflow:hidden; border-radius:30px; }
.iw7 .carousel-track{ display:flex; transition:transform .4s cubic-bezier(.4,0,.2,1); }
.iw7 .carousel-slide{ flex:0 0 100%; display:flex; justify-content:center; }
.iw7 .carousel-slide .phone{ width:100%; border-radius:30px; border:1px solid var(--iw7-line2); background:#000; padding:6px; box-shadow:0 18px 50px rgba(0,0,0,.5); }
.iw7 .carousel-slide img{ display:block; width:100%; height:auto; border-radius:24px; }
.iw7 .carousel-btn{ position:absolute; top:50%; transform:translateY(-50%); width:40px; height:40px; border-radius:50%; background:#1c1716; border:1px solid var(--iw7-line4); color:var(--iw7-ink); font-size:18px; cursor:pointer; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 18px rgba(0,0,0,.45); }
.iw7 .carousel-btn.prev{ left:-14px; } .iw7 .carousel-btn.next{ right:-14px; }
.iw7 .carousel-dots{ display:flex; justify-content:center; gap:9px; margin-top:18px; }
.iw7 .carousel-dots button{ width:9px; height:9px; border-radius:100px; border:0; cursor:pointer; transition:all .25s ease; background:#463c39; padding:0; }
.iw7 .carousel-dots button.active{ width:26px; background:var(--iw7-red); }

/* Hero — Gutenberg block equivalents (section rebuilt with native blocks) */
.iw7 .iw7-hero::before{ content:""; position:absolute; top:-120px; left:50%; transform:translateX(-50%); width:520px; height:520px; max-width:96vw; background:radial-gradient(circle, rgba(229,50,43,.28), rgba(229,50,43,0) 70%); pointer-events:none; animation:iw7PulseGlow 5s ease-in-out infinite; }
.iw7 p.iw7-badge{ margin:0; }
.iw7 .hero-h1 mark.has-inline-color{ background:transparent; }
.iw7 .hero-cta.wp-block-buttons{ display:flex; flex-direction:column; gap:12px; }
.iw7 .hero-cta .wp-block-button__link{ display:block; width:100%; }
.iw7 .wp-block-button.btn-red .wp-block-button__link{ background:var(--iw7-red); color:#fff; padding:17px 22px 18px; box-shadow:0 8px 24px rgba(229,50,43,.32); font-weight:600; font-size:16px; border-radius:12px; text-decoration:none; transition:background .15s,color .15s; }
.iw7 .wp-block-button.btn-red .wp-block-button__link:hover{ background:var(--iw7-red-h); color:#fff; }
.iw7 .wp-block-button.btn-ghost .wp-block-button__link{ background:transparent; color:#e6ddd8; padding:17px 22px 18px; border:1px solid var(--iw7-line4); font-weight:600; font-size:16px; border-radius:12px; text-decoration:none; transition:border-color .15s,color .15s; }
.iw7 .wp-block-button.btn-ghost .wp-block-button__link:hover{ border-color:var(--iw7-red); color:#fff; }
.iw7 figure.carousel-slide.phone{ margin:0; flex:0 0 100%; width:100%; border-radius:30px; border:1px solid var(--iw7-line2); background:#000; padding:6px; box-shadow:0 18px 50px rgba(0,0,0,.5); }

/* ---------- Prose paragraphs ---------- */
.iw7 .iw7-prose p{ font-size:15.5px; line-height:1.7; color:var(--iw7-muted); margin:0 0 14px; }
.iw7 .iw7-prose p:last-child{ margin-bottom:0; }

/* ---------- Feature cards ---------- */
.iw7 .feat-list{ display:flex; flex-direction:column; gap:14px; }
.iw7 .feat-card{ background:var(--iw7-card2); border:1px solid #2c2523; border-radius:14px; padding:20px; }
.iw7 .feat-card .feat-head{ display:flex; align-items:center; gap:12px; margin-bottom:9px; }
.iw7 .feat-card .dot{ flex:none; width:9px; height:9px; border-radius:50%; background:var(--iw7-red); box-shadow:0 0 12px rgba(229,50,43,.7); }
.iw7 .feat-card h3{ font-weight:600; font-size:17px; margin:0; }
/* Features — Gutenberg block equivalents: red dot rendered via CSS, heading is a plain H3 block */
.iw7 .feat-card > h3{ display:flex; align-items:center; gap:12px; margin:0 0 9px; }
.iw7 .feat-card > h3::before{ content:""; flex:none; width:9px; height:9px; border-radius:50%; background:var(--iw7-red); box-shadow:0 0 12px rgba(229,50,43,.7); }
.iw7 .feat-card p{ font-size:14.5px; line-height:1.62; color:var(--iw7-muted3); margin:0; }

/* ---------- Games grid ---------- */
.iw7 .games-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap:16px; }
.iw7 .gcard{ background:var(--iw7-card); border:1px solid var(--iw7-line3); border-radius:16px; overflow:hidden; transition:transform .18s ease, border-color .18s ease; }
.iw7 .gcard:hover{ transform:translateY(-3px); border-color:var(--iw7-red); }
.iw7 .gcard .thumb{ position:relative; aspect-ratio:5/4; overflow:hidden; background:var(--iw7-ph); }
.iw7 .gcard .thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.iw7 .gcard .tag{ position:absolute; top:10px; left:10px; font-size:9.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#fff; background:rgba(229,50,43,.92); padding:4px 9px; border-radius:100px; }
.iw7 .gcard .cap{ position:absolute; left:0; right:0; bottom:0; padding:22px 12px 11px; background:linear-gradient(to top, rgba(12,9,8,.95), rgba(12,9,8,0)); }
.iw7 .gcard .cap h3{ font-weight:700; font-size:15px; margin:0; color:#fff; }
.iw7 .gcard .blurb{ font-size:12.5px; line-height:1.55; color:#948a84; margin:0; padding:12px 13px 14px; }

/* Library strip */
.iw7 .lib-head{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:14px; }
.iw7 .lib-head h3{ font-weight:600; font-size:16px; margin:0; }
.iw7 .lib-head span{ font-size:12.5px; color:var(--iw7-dim); }
.iw7 .lib-strip{ display:flex; gap:12px; overflow-x:auto; padding:2px 22px 14px; margin:0 -22px; scroll-snap-type:x mandatory; scrollbar-width:none; -ms-overflow-style:none; }
.iw7 .lib-strip::-webkit-scrollbar{ display:none; }
.iw7 .lib-item{ flex:0 0 auto; width:132px; scroll-snap-align:start; }
.iw7 .lib-item .lib-img{ border-radius:13px; overflow:hidden; border:1px solid var(--iw7-line3); aspect-ratio:211/260; background:var(--iw7-ph); transition:transform .18s ease, border-color .18s ease; }
.iw7 .lib-item .lib-img:hover{ transform:translateY(-3px); border-color:var(--iw7-red); }
.iw7 .lib-item img{ width:100%; height:100%; object-fit:cover; display:block; }
.iw7 .lib-wrap{ margin-top:34px; }
.iw7 .games-cta{ text-align:center; margin-top:24px; }
.iw7 .games-cta a.btn-red{ font-size:15px; padding:14px 26px; box-shadow:0 8px 24px rgba(229,50,43,.28); }

/* Games — Gutenberg block equivalents */
.iw7 .games-lede{ max-width:560px; }
.iw7 .gcard .thumb .wp-block-image{ margin:0; position:absolute; inset:0; }
.iw7 .gcard .thumb .wp-block-image img{ width:100%; height:100%; object-fit:cover; }
.iw7 .gcard p.tag{ margin:0; }
.iw7 .lib-head p{ font-size:12.5px; color:var(--iw7-dim); margin:0; }
.iw7 .lib-strip .wp-block-image.lib-item{ margin:0; flex:0 0 auto; width:132px; scroll-snap-align:start; border-radius:13px; overflow:hidden; border:1px solid var(--iw7-line3); aspect-ratio:211/260; background:var(--iw7-ph); transition:transform .18s ease, border-color .18s ease; }
.iw7 .lib-strip .wp-block-image.lib-item:hover{ transform:translateY(-3px); border-color:var(--iw7-red); }
.iw7 .lib-strip .wp-block-image.lib-item img{ width:100%; height:100%; object-fit:cover; display:block; }
.iw7 .games-cta.wp-block-buttons{ display:flex; justify-content:center; margin-top:24px; }
.iw7 .games-cta .wp-block-button.btn-red .wp-block-button__link{ font-size:15px; padding:17px 26px 18px; box-shadow:0 8px 24px rgba(229,50,43,.28); }

/* ---------- Steps ---------- */
.iw7 .steps{ display:flex; flex-direction:column; gap:2px; }
.iw7 .step{ display:flex; gap:16px; padding:14px 0; border-bottom:1px solid var(--iw7-line); }
.iw7 .step .num{ flex:none; width:30px; height:30px; border-radius:9px; background:rgba(229,50,43,.14); border:1px solid rgba(229,50,43,.35); color:var(--iw7-red-l); font-family:var(--iw7-head); font-weight:700; font-size:14px; display:flex; align-items:center; justify-content:center; }
.iw7 .step p{ font-size:14.5px; line-height:1.55; color:var(--iw7-muted4); margin:0; padding-top:4px; }
.iw7 .steps-note{ font-size:13.5px; line-height:1.6; color:var(--iw7-muted2); margin:18px 0 22px; }
.iw7 .btn-block{ display:block; width:100%; }
.iw7 .mt22{ margin-top:22px; } .iw7 .mt24{ margin-top:24px; }

/* Steps — Gutenberg block equivalents: eyebrow as paragraph, number badges via CSS counter
   (scoped to .wp-block-group so legacy HTML steps with their span.num are unaffected) */
.iw7 p.iw7-eyebrow{ margin:0; }
.iw7 p.iw7-eyebrow + h2{ margin:8px 0 24px; }
.iw7 .steps{ counter-reset:iw7-step; }
.iw7 .steps > *{ margin-block-start:0; margin-block-end:0; } /* kill Gutenberg flow-layout gap; .steps uses its own 2px flex gap */
.iw7 .step > p{ margin:0; }
.iw7 p.iw7-eyebrow + h2.mb8{ margin:8px 0 8px; }
.iw7 .iw7-lede.mb24{ margin-bottom:24px; }
.iw7 .wp-block-group.step::before{ counter-increment:iw7-step; content:counter(iw7-step); flex:none; width:30px; height:30px; border-radius:9px; background:rgba(229,50,43,.14); border:1px solid rgba(229,50,43,.35); color:var(--iw7-red-l); font-family:var(--iw7-head); font-weight:700; font-size:14px; display:flex; align-items:center; justify-content:center; }
.iw7 .wp-block-button.btn-block{ width:100%; }
.iw7 .wp-block-button.btn-block .wp-block-button__link{ display:block; width:100%; }

/* ---------- FAQ ---------- */
.iw7 .faq-list{ display:flex; flex-direction:column; gap:10px; }
.iw7 .faq-item{ background:var(--iw7-card3); border:1px solid var(--iw7-line3); border-radius:12px; overflow:hidden; }
.iw7 .faq-q{ width:100%; text-align:left; background:transparent; border:0; cursor:pointer; padding:16px 18px; display:flex; align-items:center; justify-content:space-between; gap:14px; }
.iw7 .faq-q span.q{ font-family:var(--iw7-head); font-weight:600; font-size:15px; color:var(--iw7-ink); line-height: 1.5; }
.iw7 .faq-q .ico{ flex:none; color:var(--iw7-red); font-size:20px; font-weight:700; line-height:1; transition:transform .2s ease; }
.iw7 .faq-item.open .faq-q .ico{ transform:rotate(45deg); }
.iw7 .faq-a{ font-size:14px; line-height:1.65; color:var(--iw7-muted3); margin:0; padding:0 18px; max-height:0; overflow:hidden; transition:max-height .3s ease, padding .3s ease; }
.iw7 .faq-item.open .faq-a{ max-height:500px; padding:0 18px 18px; }
/* FAQ — Gutenberg block equivalents: question is a Paragraph, + icon drawn via CSS */
.iw7 p.faq-q{ margin:0; padding:16px 18px; display:flex; align-items:center; justify-content:space-between; gap:14px; cursor:pointer; font-family:var(--iw7-head); font-weight:600; font-size:15px; color:var(--iw7-ink); line-height:1.5; }
.iw7 p.faq-q::after{ content:"+"; flex:none; color:var(--iw7-red); font-size:20px; font-weight:700; line-height:1; transition:transform .2s ease; }
.iw7 .faq-item.open p.faq-q::after{ transform:rotate(45deg); }
.iw7 .faq-list > *, .iw7 .faq-item > *{ margin-block-start:0; margin-block-end:0; } /* kill Gutenberg flow-layout gaps */
.iw7 p.iw7-eyebrow + h2.mb16{ margin:8px 0 16px; }

/* ---------- Footer (Astra small footer) ---------- */
.home .site-footer, .site-below-footer-wrap, .ast-small-footer{ background:#100c0b!important; border-top:1px solid var(--iw7-line); color:var(--iw7-dim); }
.ast-small-footer .ast-footer-copyright{ font-size:12.5px; line-height:1.6; color:var(--iw7-dim); }
.ast-small-footer .ast-footer-copyright a{ color:var(--iw7-muted); text-decoration:none; }
.ast-small-footer .ast-footer-copyright .iw7-foot-badge{ display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:8px; border:1.5px solid var(--iw7-red); color:var(--iw7-red); font-family:var(--iw7-head); font-weight:700; font-size:13px; margin-right:8px; vertical-align:middle; }
.ast-small-footer .ast-footer-copyright .iw7-foot-copy{ display:block; margin-top:10px; color:var(--iw7-dim2); }

/* ---------- Responsive ---------- */
@media (min-width:640px){
  .iw7 .hero-h1{ font-size:52px; }
  .iw7 .hero-cta{ flex-direction:row; justify-content:center; }
  .iw7 .hero-cta a{ flex:0 1 auto; }
}
@media (min-width:768px){
  .iw7 h2{ font-size:30px; }
}


/* =====================================================================
   Design fixes (responsive buttons, arrows, underlines)
   ===================================================================== */

/* Never underline buttons (belt-and-suspenders with Astra link-underline off) */
.iw7 .btn-red, .iw7 .btn-ghost,
.iw7 a.btn-red, .iw7 a.btn-ghost { text-decoration: none !important; }

/* Hero CTAs: full-width, stacked at every screen size (matches design) */
.iw7 .hero-cta { flex-direction: column !important; align-items: stretch; }
.iw7 .hero-cta .btn-red, .iw7 .hero-cta .btn-ghost { display: block; width: 100%; }

/* Carousel navigation arrows: force perfect circles (override Astra button padding) */
.iw7 .carousel-btn {
  width: 40px !important; height: 40px !important;
  min-width: 0 !important; max-width: none;
  padding: 0 !important; border-radius: 50% !important;
  flex: 0 0 auto; aspect-ratio: 1 / 1; line-height: 1;
}

/* ===== Mobile dropdown menu (Astra) ===== */
.ast-mobile-header-content,
#ast-mobile-header .ast-mobile-header-content,
.ast-mobile-header-content .main-header-menu,
.ast-mobile-header-content .sub-menu,
.ast-mobile-header-content .menu-item { background-color: #14100f !important; }
.ast-mobile-header-content .menu-link,
.ast-mobile-header-content .ast-menu-toggle { color: #e6ddd8 !important; border-top: 1px solid #221d1b !important; }
.ast-mobile-header-content .menu-item:hover > .menu-link,
.ast-mobile-header-content .current-menu-item > .menu-link { color: #e5322b !important; background-color: #1c1716 !important; }
.ast-mobile-header-content .ast-mobile-header-content-inner,
#ast-mobile-header { border-color: #2b2422 !important; }

/* ===== Mobile menu: force dark on every item (high specificity, mobile-scoped) ===== */
@media (max-width: 921px) {
  #ast-hf-mobile-menu,
  #ast-hf-mobile-menu li,
  #ast-hf-mobile-menu .menu-item,
  #ast-hf-mobile-menu .menu-link,
  #ast-hf-mobile-menu .sub-menu,
  .ast-mobile-header-content .main-header-menu,
  .ast-mobile-header-content .main-header-menu .menu-item,
  .ast-mobile-header-content .main-header-menu .menu-link { background-color: #14100f !important; }
  #ast-hf-mobile-menu .menu-link,
  .ast-mobile-header-content .menu-link { color: #e6ddd8 !important; }
  #ast-hf-mobile-menu .menu-item,
  .ast-mobile-header-content .menu-item { border-top: 1px solid #221d1b !important; }
  #ast-hf-mobile-menu .menu-item:hover > .menu-link,
  #ast-hf-mobile-menu .current-menu-item > .menu-link { color: #e5322b !important; }
}

/* ===== Fixes round 3 ===== */
/* Remove gap between header and hero (block-group default padding) */
.home .entry-content .wp-block-group.iw7,
.iw7.wp-block-group { padding-top: 0 !important; padding-bottom: 0 !important; margin-top: 0 !important; }

/* Step number badges: vertically centre with their text (fixes 2-line steps) */
.iw7 .step { align-items: center; }
.iw7 .step p { padding-top: 0; }

/* ===== Footer (rebuilt to match HTML design) ===== */
.site-below-footer-wrap, .ast-small-footer { background: #100c0b !important; border-top: 1px solid #241f1d; }
.site-below-footer-wrap .ast-builder-grid-row-container-inner,
.ast-small-footer .site-below-footer-inner-wrap { max-width: 1080px; margin: 0 auto; padding: 40px 22px 30px; }
.site-below-footer-inner-wrap { justify-content: flex-start !important; }
.ast-footer-copyright { text-align: left !important; width: 100%; }
.ast-footer-copyright > p { margin: 0; }
.ast-footer-copyright > p:empty { display: none; }
.iw7-footer { color: #7c726c; }
.iw7-footer-top { display: flex; flex-direction: column; gap: 12px; }
.iw7-footer-brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; }
.iw7-footer-logo { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 8px; background: #e5322b; color: #fff; font-family: var(--iw7-head); font-weight: 700; font-size: 14px; }
.iw7-footer-name { font-family: var(--iw7-head); font-weight: 700; font-size: 17px; color: #f4efec; }
.iw7-footer-tag { font-size: 13.5px; line-height: 1.6; color: #7c726c; margin: 0; max-width: 380px; }
.iw7-footer-nav { display: flex; flex-wrap: wrap; gap: 8px 26px; margin-top: 10px; }
.iw7-footer-nav a { text-decoration: none; color: #b6aca6; font-size: 14px; font-weight: 500; }
.iw7-footer-nav a:hover { color: #e5322b; }
.iw7-footer-bottom { margin-top: 26px; padding-top: 20px; border-top: 1px solid #241f1d; display: flex; flex-direction: column; gap: 12px; }
.iw7-footer-resp { display: flex; align-items: center; gap: 10px; font-size: 12.5px; line-height: 1.5; color: #7c726c; }
.iw7-foot-badge { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 8px; border: 1.5px solid #e5322b; color: #e5322b; font-family: var(--iw7-head); font-weight: 700; font-size: 13px; }
.iw7-foot-copy { font-size: 12.5px; color: #5f5651; margin: 0; }

/* ===== Fixes round 4 ===== */
/* Remove Astra default light border line at footer top */
.site-below-footer-wrap { border-top: 0 !important; }

/* FAQ: smooth height-based open/close (JS sets inline height) */
.iw7 .faq-a { max-height: none !important; height: 0; overflow: hidden; padding: 0 18px; margin: 0; transition: height .28s ease, padding .28s ease; }
.iw7 .faq-item.open .faq-a { padding: 0 18px 18px; }

/* Back-to-top button: fully rounded circle */
#ast-scroll-top { border-radius: 50% !important; }

/* Mobile Padding */
.home .entry-content .wp-block-group.iw7, .iw7.wp-block-group {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

@media screen and (max-width: 1199px) {
	.site-content .ast-container {
		padding-top: 20px;
	}
	.home .site-content .ast-container {
		padding-top: 0px !important;
	}	
}
