/* Базові стилі — використовують CSS variables з header.php */
:root {
    
    /* fallback if variables missing */
    --color-text:  #000;
    
    --color-secondary:  #ff6600;
    
    --color-bg:  #fff;
    
    --color-btn:  #89FF00;
    
    --color-btn-text:  #fff;
    
    --color-header:  #f5f5f5;
    
    --color-footer:  #f5f5f5;
    
}
header {
    
    color:  var(--color-text);
    
}
body  {
    
    background-color:  var(--color-bg);
    
    color:  var(--color-text);
    
    font-family:  var(--font-family,  Arial,  sans-serif);
    
    margin:  0;
    
    padding:  0;
    
    -webkit-font-smoothing: antialiased;
    
    overflow-x:  hidden;
    
}
/* Global list reset:  all lists without markers */
ul,  ol  {
     list-style-type:  none;
     padding-left:  0;
     margin-left:  0;
 }

main  {
     padding-top:  60px;
 }

.container  {
    
    max-width:  1200px;
    
    margin:  0 auto;
    
    padding:  20px;
    
}
/* Ensure direct children fill available width only in main content containers */
.site-main .container > *  {
     width:  100%;
 }


.site-header  {
    
    background:  var(--color-header);
    
    padding:  0;
    
    position:  fixed;
    
    width:  100%;
    
    top:  0;
    
    left:  0;
    
    z-index:  1000;
    
}
.site-header .header-inner  {
    
    display: flex;
    
    align-items: center;
    
    justify-content: space-between;
    
    gap:  16px;
    
}
.site-branding img  {
     max-height:  80px;
     width:  auto;
     display: block;
 }


/* Mobile burger */
.menu-toggle  {
     display: none;
     background: none;
     border: 0;
     padding: 10px;
     margin-left:  auto;
     cursor: pointer;
 }

.menu-toggle .bar  {
     display: block;
     width: 24px;
     height: 2px;
     background:  var(--color-text);
     margin: 5px 0;
     border-radius: 2px;
     transition:  transform .2s ease,  opacity .2s ease;
 }

.menu-open .menu-toggle .bar:nth-child(1) {
     transform:  translateY(7px) rotate(45deg);
 }

.menu-open .menu-toggle .bar:nth-child(2) {
     opacity: 0;
 }

.menu-open .menu-toggle .bar:nth-child(3) {
     transform:  translateY(-7px) rotate(-45deg);
 }


/* Menu */
.primary-menu  {
     list-style: none;
     margin: 0;
     padding: 0;
     display: flex;
     gap: 16px;
 }

.primary-menu li  {
     display: inline-block;
 }

.primary-menu a  {
     color:  var(--color-text);
     text-decoration: none;
 }


/* Header actions: language switcher + account links */
.header-actions  {
     display: flex;
     gap: 16px;
     align-items: center;
 }

.site-nav  {
     display: flex;
     align-items: center;
     justify-content:  space-between;
     gap: 16px;
     width:  auto;
     margin-left:  24px;
 }

.site-nav .header-actions  {
     display: flex;
     align-items: center;
     gap: 16px;
     margin-left:  auto;
 }

.header-actions .account-link  {
     color:  var(--color-text);
     text-decoration: none;
     padding: 6px 10px;
     border: 1px solid var(--color-border);
     border-radius: 6px;
 }

.header-actions .account-link + .account-link  {
     margin-left: 6px;
 }

/* Custom language switcher */
.lang-switcher  {
     position: relative;
 }

.lang-switcher .lang-toggle  {
     padding: 6px 10px;
     border: 1px solid var(--color-border);
     border-radius: 6px;
     background:  var(--color-bg);
     color:  var(--color-text);
     cursor: pointer;
 }
 .content-block--hero_block {
     left: 0 !important;
     right: 0!important;
     margin-top: -10px !important;
 }

.lang-switcher .lang-menu  {
     position: absolute;
     right: 0;
     top: calc(100% + 6px);
     background:  var(--color-bg);
     border: 1px solid var(--color-border);
     border-radius: 8px;
     padding: 6px;
     min-width: 160px;
     box-shadow:  0 6px 20px rgba(0, 0, 0, 0.08);
     z-index:  10;
 }

.lang-switcher .lang-menu li  {
     margin: 0;
 }

.lang-switcher .lang-menu a  {
     display: block;
     padding: 8px 10px;
     color:  var(--color-text);
     text-decoration: none;
     border-radius: 6px;
 }

.lang-switcher .lang-menu a:hover  {
     background:  rgba(0, 0, 0, 0.04);
 }


/* Buttons */
.btn  {
    
    display: inline-block;
    
    padding:  10px 18px;
    
    background:  var(--color-btn);
    
    color:  var(--color-btn-text);
    
    border-radius:  6px;
    
    text-decoration: none;
    
    width:  auto;
    
}
.content-block--hero_block, 
.content-block--banner  {
    
    position:  relative;
    
    left:  50%;
    
    right:  50%;
    
    margin-left:  -50vw;
    
    margin-right:  -50vw;
    
    width:  100vw;
    
    max-width:  100vw;
    
    overflow:  hidden;
    
}
/* Ensure full-bleed sections are not constrained by the generic container child rule */
.site-main .container > .content-block--hero_block, 
.site-main .container > .content-block--banner  {
     width:  100vw;
 }


/* Page content blocks */
.content-block  {
     margin:  0;
 }

.content-block .rte  {
     line-height: 1.6;
 }

.banner-image img  {
     width: 100%;
     height: auto;
     display: block;
 }


/* Footer */
.site-footer  {
     background:  var(--color-footer);
     padding:  20px 0;
     margin-top:  0;
 }

.footer-nav .footer-menu  {
     list-style: none;
     margin: 0;
     padding: 0;
     display: flex;
     gap: 16px;
 }

.footer-nav .footer-menu a  {
     color:  var(--color-text);
     text-decoration: none;
 }

.site-header a,  .site-footer a  {
     color:  var(--color-text);
 }

.footer-nav .primary-menu  {
     display: flex;
     gap: 16px;
 }

.footer-nav .primary-menu a  {
     color:  var(--color-text);
     text-decoration: none;
 }

.footer-disclaimer  {
     margin-top:  12px;
     color:  var(--color-text);
     opacity:  .8;
 }

/* Footer layout: logo left,  menu to the right,  info pushes to far right */
.site-footer .site-footer-inner  {
     display: flex;
     align-items: center;
     gap: 16px;
     justify-content:  space-between;
}

.site-footer .footer-branding  {
     flex: 0 0 auto;
 }

.site-footer .site-info  {
     margin-left: auto;
 }

.footer-socials  {
     display: flex;
     gap: 12px;
     margin:  12px 0 0;
     padding: 0;
     list-style: none;
 }

.footer-socials a  {
     color:  var(--color-text);
     opacity: .9;
     text-decoration: none;
     display: flex;
     align-items: center;
     gap: 8px;
 }

.footer-socials .social-icon  {
     width:  20px;
     height:  20px;
     object-fit:  contain;
     display: block;
 }


/* small responsive */
@media (max-width:768px)  {
    
    .menu-toggle  {
     display: block;
 }

    .site-header .header-inner  {
     gap:  12px;
 }

    .site-nav  {
     position:  absolute;
     top:  100%;
     left:  0;
     right:  0;
     background: var(--color-header);
     border-bottom:  1px solid var(--color-border);
     box-shadow:  0 6px 20px rgba(0, 0, 0, 0.08);
     display: none;
     flex-direction:  column;
     align-items:  stretch;
 }

    .menu-open .site-nav  {
     display: block;
 }

    .primary-menu  {
     flex-direction:  column;
     gap: 8px;
     padding:  12px 20px;
 }

    .primary-menu li  {
     display: block;
		background: var(--color-header);
 }

    .primary-menu a  {
     display: block;
     padding: 10px 6px;
		background: var(--color-header);
 }
	.footer-nav .primary-menu li{
	background: none;
	}
	.footer-nav .primary-menu li a {
		background: none;
	}
    .site-nav .header-actions  {
     padding:  16px 20px 20px;
     border-top:  1px solid var(--color-border);
     display:  grid;
     gap:  14px;
 }

    .header-actions .account-link  {
     width:  100%;
     text-align:  center;
     padding:  12px 14px;
     border-radius:  8px;
     font-size:  1rem;
 }

    .site-nav .lang-switcher  {
     width:  100%;
 }

    .site-nav .lang-switcher .lang-toggle  {
     width:  100%;
     text-align:  left;
     padding:  10px 12px;
 }

    .menu-open body  {
     overflow:  hidden;
 }

}
/* ============================= */
/* ACF Content Blocks Styles     */
/* ============================= */

.content-block  {
    
    margin-bottom:  60px;
    
}

/* ----------------------------- */
/* HERO BLOCK                    */
/* ----------------------------- */
.hero-block  {
    
    position:  relative;
    
    padding:  60px 24px;
    
    overflow:  hidden;
    
    min-height:  360px;
    
    display:  block;
    
    background:  linear-gradient(180deg,  #f7f9fc 0%,  #ffffff 100%);
    
	color:  var(--color-text);
    
}

.hero-block .hero-bg  {
    
    position:  absolute;
    
    inset:  0;
    
    width:  100%;
    
    height:  100%;
    
    display:  block;
    
    object-fit:  cover;
    
    z-index:  1;
    
}

.hero-block .hero-content  {
    
    position:  relative;
    
    z-index:  2;
    
    max-width:  1200px;
     /* align with site container */
    margin:  0 auto;
     /* center container itself like .container */
    padding:  0 20px;
     /* same side padding as .container */
    text-align:  left;
    
}
.hero-block .hero-content.two-col  {
     display: grid;
     grid-template-columns:  1.1fr 0.9fr;
     gap:  24px;
     align-items:  center;
 }

.hero-left  {
     display: grid;
     row-gap:  12px;
 }

.hero-right  {
     display: flex;
     align-items: center;
     justify-content: center;
 }

.hero-side-image  {
     width:  100%;
     height:  auto;
     max-width:  520px;
     object-fit:  contain;
     filter:  drop-shadow(0 8px 30px rgba(0, 0, 0, 0.08));
 }

.hero-block .hero-content > *  {
     max-width:  720px;
     margin-left:  0;
 }


.hero-block .hero-title  {
    
    font-size:  2.4rem;
    
    margin-bottom:  20px;
    
}

.hero-block .hero-text  {
    
    font-size:  1.1rem;
    
    margin-bottom:  30px;
    
}

.hero-block .hero-btn  {
    
    background-color:  var(--color-btn);
    
    color:  var(--color-btn-text);
    
    width:  auto;
    
    max-width:  max-content;
    
}

/* Hero badges */
.hero-badges  {
     display: grid;
     gap: 6px;
     margin:  8px 0 12px;
     padding: 0;
     list-style: none;
 }

.hero-badge  {
     position: relative;
     padding-left: 26px;
     color:  var(--color-text);
 }

.hero-badge::before  {
     content: "";
     position: absolute;
     left: 0;
     top: 4px;
     width: 16px;
     height: 16px;
     border-radius: 50%;
     background: #3366ff;
     display: block;
 }

.hero-badge::after  {
     content: "";
     position: absolute;
     left: 4px;
     top: 8px;
     width: 8px;
     height: 4px;
     border-left: 2px solid #fff;
     border-bottom: 2px solid #fff;
     transform:  rotate(-45deg);
 }


/* Subtle dark overlay for readability on images */
.
/* remove dark overlays for clean light hero */
.hero-block::after  {
     content:  none;
 }

.hero-block::before  {
     content:  none;
 }


/* Two-column utility for sections (use inside Custom HTML or Text blocks) */
.grid-2  {
    
    display:  grid;
    
    grid-template-columns:  1.25fr 0.75fr;
    
    gap:  24px;
    
    align-items:  start;
    
}

.card  {
    
    border:  1px solid var(--color-border);
    
    border-radius:  10px;
    
    padding:  16px;
    
    background:  #fff;
    
}

.links-list  {
     list-style:  none;
     margin:  0;
     padding:  0;
     display:  grid;
     gap:  10px;
 }

.links-list li  {
     border:  1px solid #e8e8e8;
     border-radius:  8px;
     padding:  10px 12px;
     background:  #fff;
 }

.links-list a  {
     color:  var(--color-text);
     text-decoration:  none;
     word-break:  break-all;
 }


/* ----------------------------- */
/* AUTHOR BLOCK                  */
/* ----------------------------- */
.author-block  {
    
    display:  grid;
    
    grid-template-columns:  96px 1fr;
    
    align-items:  center;
    
    gap:  16px;
    
    padding:  24px;
    
    border:  1px solid var(--color-border);
    
    border-radius:  12px;
    
    background:  var(--color-bg);
    
}
.author-block .author-name,  .author-block .author-bio  {
     grid-column:  2 / -1;
 }


.author-block .author-avatar  {
     border-radius:  50%;
     width:  96px;
     height:  96px;
     object-fit:  cover;
     display: block;
 }


.author-block .author-name  {
     font-size:  1.25rem;
     margin:  0 0 6px;
     line-height:  1.2;
 }


.author-block .author-bio  {
     font-size:  1rem;
     margin:  0;
 }


/* ----------------------------- */
/* MINI LEAD BLOCK               */
/* ----------------------------- */
.mini-lead-block  {
    
    padding:  30px 20px;
    
    text-align:  center;
    
    border-left:  4px solid var(--color-secondary);
    
}

.mini-lead-block .mini-lead-subtitle  {
    
    font-size:  1.6rem;
    
    margin-bottom:  15px;
    
}

.mini-lead-block .mini-lead-desc  {
    
    font-size:  1rem;
    
    margin-bottom:  20px;
    
}

.mini-lead-block .mini-lead-btn  {
    
    background-color:  var(--color-btn);
    
    color:  var(--color-btn-text);
    
}

/* ----------------------------- */
/* BANNER BLOCK                  */
/* ----------------------------- */
.banner-block  {
    
    position:  relative;
    
    text-align:  center;
    
    min-height:  360px;
    
    padding:  80px 24px;
    
    display:  flex;
    
    align-items:  center;
    
}

.banner-block .banner-img  {
    
    position:  absolute;
    
    inset:  0;
    
    width:  100%;
    
    height:  100%;
    
    object-fit:  cover;
    
    display:  block;
    
    z-index:  1;
    
}

.banner-block .banner-content  {
    
    position:  relative;
    
    z-index:  3;
    
    max-width:  1200px;
    
    margin:  0 auto;
    
    padding:  0 20px;
    
    text-align:  left;
    
    display:  grid;
    
    row-gap:  16px;
    
}

/* Darken and gradient overlays for banner,  matching hero */
.banner-block: :before  {
    
    content:  "";
    
    position:  absolute;
    
    inset:  0;
    
    background:  rgba(0, 0, 0, 0.4);
    
    z-index:  2;
    
    pointer-events:  none;
    
}
.banner-block: :after  {
    
    content:  "";
    
    position:  absolute;
    
    inset:  0;
    
    background:  linear-gradient(90deg,  rgba(0, 0, 0, 0.35) 0%,  rgba(0, 0, 0, 0.15) 40%,  rgba(0, 0, 0, 0) 70%);
    
    pointer-events:  none;
    
}

.banner-block .banner-btn  {
    
    position:  absolute;
    
    bottom:  20px;
    
    left:  50%;
    
    transform:  translateX(-50%);
    
    background-color:  var(--color-btn);
    
    color:  var(--color-btn-text);
    
    z-index:  4;
    
}

/* ----------------------------- */
/* VIDEO + TEXT BLOCK            */
/* ----------------------------- */
.video-text-block  {
    
    display:  flex;
    
    align-items:  flex-start;
    
    gap:  30px;
    
    flex-wrap:  wrap;
    
}

.video-text-block .video-wrap  {
    
    flex:  1 1 500px;
    
}

.video-text-block .video-text  {
    
    flex:  1 1 400px;
    
}

/* ----------------------------- */
/* BONUSES BLOCK                 */
/* ----------------------------- */
.bonuses-block  {
     margin:  0 auto;
     max-width:  100%;
 }

.bonuses-grid  {
    
    display:  grid !important;
    
    grid-template-columns:  repeat(4,  minmax(0,  1fr));
    
    gap:  16px;
    
}
.bonuses-grid > *  {
     width:  auto;
     max-width:  100%;
 }

.bonus-card  {
    
    display:  grid;
    
    align-content:  start;
    
    gap:  10px;
    
    padding:  16px;
    
    text-decoration:  none;
    
    color:  var(--color-text);
    
    border:  1px solid var(--color-border);
    
    border-radius:  10px;
    
    background:  var(--color-bg);
    
}
.bonus-card: hover  {
     box-shadow:  0 6px 18px rgba(0, 0, 0, 0.06);
 }

.bonus-logo  {
     width:  100%;
     height:  80px;
     object-fit:  contain;
     display:  block;
 }

.bonus-title  {
     margin:  0;
     font-size:  1rem;
     line-height:  1.3;
     color:  var(--color-text);
 }


/* ----------------------------- */
/* FAQ BLOCK                     */
/* ----------------------------- */
.faq-block  {
     max-width:  100%;
     margin:  0 auto;
 }


.faq-block .faq-item  {
    
    margin-bottom:  20px;
    
}

.faq-block .faq-question  {
    
    font-weight:  600;
    
    cursor:  pointer;
    
}

.faq-block .faq-answer  {
    
    margin-top:  8px;
    
    padding-left:  10px;
    
    line-height:  1.5;
    
}

/* ----------------------------- */
/* REVIEWS BLOCK                 */
/* ----------------------------- */
.reviews-block  {
    
    display:  flex;
    
    flex-direction:  column;
    
    gap:  20px;
    
}

.reviews-block .review-item  {
    
    padding:  20px;
    
    border:  1px solid var(--color-border);
    
    border-radius:  8px;
    
}

.reviews-block .review-author  {
    
    display:  block;
    
    margin-bottom:  8px;
    
    font-weight:  600;
    
}

.reviews-block .review-text  {
    
    line-height:  1.6;
    
}

/* ----------------------------- */
/* TRADINGVIEW BLOCK             */
/* ----------------------------- */
.tradingview-block  {
     margin:  40px 0;
 }

.tradingview-block .section-title  {
     margin-bottom:  16px;
	    color: var(--section-text);
 }


/* ----------------------------- */
/* HOW TO START                  */
/* ----------------------------- */
.howto-block  {
     margin:  40px 0;
 }

.howto-block .section-title  {
     margin-bottom:  16px;
 }

.howto-steps  {
     counter-reset:  step;
     display: grid;
     gap: 16px;
 }

.howto-step  {
     border: 1px solid var(--color-border);
     border-radius: 10px;
     padding: 16px;
     background:  var(--color-bg);
 }

.howto-step-title  {
     position: relative;
     padding-left: 40px;
     margin: 0 0 8px;
 }

.howto-step-title::before  {
     counter-increment:  step;
     content:  counter(step);
     position: absolute;
     left: 0;
     top: 0;
     width: 28px;
     height: 28px;
     border-radius: 50%;
     background:  var(--color-secondary);
     color: #fff;
     display: grid;
     place-items: center;
     font-weight: 700;
 }


/* ----------------------------- */
/* ADVANTAGES BLOCK              */
/* ----------------------------- */
.advantages-block  {
     margin:  0;
 }

.advantages-block .section-title  {
     text-align:  center;
 }

.advantages-grid  {
     display: grid;
     grid-template-columns:  repeat(3,  minmax(0, 1fr));
     gap: 16px;
 }

.adv-card  {
     border: 1px solid var(--color-border);
     border-radius: 10px;
     padding: 16px;
     background:  var(--color-bg);
     display: grid;
     gap: 8px;
     align-content: start;
 }

.adv-img  {
     width: 100%;
     height: 120px;
     object-fit: contain;
 }

.adv-title  {
     margin:  4px 0;
     font-size: 1.1rem;
 }

.adv-text  {
     color:  var(--color-text);
     opacity: .9;
 }

.advantages-cta  {
     margin-top:  16px;
     text-align: center;
 }


/* ----------------------------- */
/* FACTS BLOCK                   */
/* ----------------------------- */
.facts-block  {
     margin:  40px 0;
 }

.facts-grid  {
     display: grid;
     grid-template-columns:  repeat(4,  minmax(0, 1fr));
     gap: 16px;
 }

.fact  {
     border: 1px solid var(--color-border);
     border-radius: 10px;
     padding: 16px;
     background:  var(--color-bg);
     text-align: center;
 }

.fact-num  {
     font-size:  2rem;
     font-weight:  700;
 }

.fact-desc  {
     opacity:  .85;
 }


/* ----------------------------- */
/* SEO TEXT BLOCK                */
/* ----------------------------- */
.seo-text-block  {
     margin:  40px 0;
 }

.seo-text-block .section-title  {
     margin-bottom:  12px;
 }

.seo-text  {
     transition:  max-height .25s ease;
 }

.seo-toggle  {
     margin-top:  10px;
 }


/* ============================= */
/* RESPONSIVE                    */
/* ============================= */
@media (max-width: 768px)  {
    

.hero-block .hero-title  {
     font-size:  1.8rem;
     margin-bottom:  6px;
 }


    .hero-block .hero-text  {
     font-size:  1rem;
 }


    .video-text-block  {
    
        flex-direction:  column;
    
}


    .video-text-block .video-wrap, 
    .video-text-block .video-text  {
    
        flex:  1 1 100%;
    
}


    .author-block  {
     grid-template-columns:  1fr;
     text-align:  center;
 }

    .author-block .author-name,  .author-block .author-bio  {
     grid-column:  1 / -1;
 }

    .author-block .author-avatar  {
     margin:  0 auto 15px;
 }

    .grid-2  {
     grid-template-columns:  1fr;
 }


    .advantages-grid  {
     grid-template-columns:  repeat(2, 1fr);
 }

    .facts-grid  {
     grid-template-columns:  repeat(2, 1fr);
 }

    .hero-block .hero-content.two-col  {
     grid-template-columns:  1fr;
 }

    .hero-right  {
     order:  -1;
 }

}
.bonuses-archive .archive-title  {
    
    font-size:  2.4rem;
    
    margin-bottom:  20px;
    
    text-align:  center;
    
}

.bonus-categories  {
    
    display:  flex;
    
    justify-content:  center;
    
    flex-wrap:  wrap;
    
    gap:  10px;
    
    margin-bottom:  40px;
    
}

.bonus-categories .category-link  {
    
    padding:  6px 14px;
    
    border-radius:  6px;
    
    text-decoration:  none;
    
    background-color:  var(--color-secondary);
    
    color:  var(--color-bg);
    
    font-weight:  500;
    
}

/* Legacy archive bonus grid replaced by unified .bonuses-grid + .bonus-card */

/* Адаптивність */
@media (max-width:  1024px)  {
     .bonuses-grid  {
     grid-template-columns:  repeat(2,  1fr);
 }
 }
@media (max-width: 768px)  {
     .bonuses-grid  {
     grid-template-columns:  repeat(2,  1fr);
 }
 }
.site-footer .footer-branding  {
     flex: 0 0 auto;
     max-width:  300px;
}

.site-footer .footer-branding img  {
     width:  100%;
     object-fit:  contain;
}

@media (max-width:768px)  {
    
    .site-footer .site-footer-inner  {
     flex-direction:  column;
     align-items:  flex-start;
     gap:  16px;
 }

    .footer-nav .footer-menu  {
     flex-direction:  column;
     gap:  8px;
 }

    .footer-nav .primary-menu  {
     flex-direction:  column;
     gap:  8px;
 }

}
.account-links {
    
    display:  none;
    
}
ns-serif;
    color: #333;
}
.woot {
    font-weight: bold;
}