/* =========================================================
   INFINITY RESEARCH — COMPLETE SITE CSS
   Header, page titles, shop, checkout, footer and logo shine
   ========================================================= */


/* =========================================================
   1. MOBILE AND TABLET HEADER
   ========================================================= */

@media (max-width:1024px){

  .site-header-wrap{
    position:fixed !important;
    top:0;
    left:0;
    width:100%;
    z-index:99999;
    background:#05070d !important;
    border-bottom:1px solid rgba(255,255,255,.06) !important;
  }

  .site-header-row-container-inner{
    min-height:72px !important;
    padding:0 18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
  }

  .site-branding{
    margin:0 !important;
  }

  .custom-logo{
    max-height:46px !important;
    width:auto !important;
  }

  .menu-toggle-open{
    margin-left:auto !important;
  }

  .drawer-inner{
    width:100vw !important;
    max-width:100vw !important;
    padding-top:85px !important;
    background:#05070d !important;
  }

  .mobile-navigation ul{
    width:100% !important;
    margin:0 !important;
    padding:0 24px !important;
    box-sizing:border-box !important;
  }

  .mobile-navigation li{
    width:100% !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;
  }

  .mobile-navigation a{
    display:block !important;
    width:100% !important;
    padding:18px 0 !important;
    color:#ffffff !important;
    font-size:20px !important;
    font-weight:500 !important;
  }

  .site-main,
  .content-area{
    padding-top:80px !important;
  }
}


/* =========================================================
   2. SITE LOGO
   ========================================================= */

.site-header img.custom-logo,
header .site-branding img,
.site-logo img,
.custom-logo{
  content:url("https://infinityresearch.club/wp-content/uploads/2026/06/ChatGPT-Image-Jun-9-2026-08_04_13-PM.png") !important;
  max-height:70px !important;
  width:auto !important;
  background:transparent !important;
}


/* =========================================================
   3. COMPACT INNER-PAGE TITLE AREA
   About, Shop, Checkout, Cart, Contact and other pages
   ========================================================= */

body:not(.home) .entry-hero,
body:not(.home) .page-header,
body:not(.home) .woocommerce-products-header,
body:not(.home) .page-title-wrap,
body:not(.home) .kadence-page-header{
  width:calc(100% - 40px) !important;
  max-width:1180px !important;
  min-height:125px !important;
  margin:22px auto 42px !important;
  padding:30px 24px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  position:relative !important;
  overflow:hidden !important;

  background:
    radial-gradient(
      circle at 50% 0%,
      rgba(255,255,255,.055),
      transparent 52%
    ),
    linear-gradient(
      145deg,
      #111117 0%,
      #09090d 55%,
      #060608 100%
    ) !important;

  border:1px solid rgba(255,255,255,.09) !important;
  border-radius:16px !important;

  box-shadow:
    0 18px 45px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.035) !important;

  text-align:center !important;
}

body:not(.home) .entry-hero::before,
body:not(.home) .page-header::before,
body:not(.home) .woocommerce-products-header::before,
body:not(.home) .page-title-wrap::before,
body:not(.home) .kadence-page-header::before{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  left:50% !important;
  width:115px !important;
  height:2px !important;
  transform:translateX(-50%) !important;

  background:linear-gradient(
    90deg,
    transparent,
    #3ecb61,
    transparent
  ) !important;

  box-shadow:0 0 14px rgba(62,203,97,.5) !important;
}

body:not(.home) .entry-hero::after,
body:not(.home) .page-header::after,
body:not(.home) .woocommerce-products-header::after,
body:not(.home) .page-title-wrap::after,
body:not(.home) .kadence-page-header::after{
  content:"" !important;
  position:absolute !important;
  left:18% !important;
  right:18% !important;
  bottom:-45px !important;
  height:80px !important;
  background:rgba(62,203,97,.045) !important;
  filter:blur(30px) !important;
  pointer-events:none !important;
}

body:not(.home) .entry-hero h1,
body:not(.home) .page-header h1,
body:not(.home) .woocommerce-products-header__title,
body:not(.home) .page-title-wrap h1,
body:not(.home) .kadence-page-header h1,
body:not(.home) h1.page-title{
  position:relative !important;
  z-index:2 !important;

  margin:0 !important;
  padding:0 !important;

  color:#f1f1f1 !important;
  font-family:"Segoe UI",Arial,sans-serif !important;
  font-size:clamp(24px,3vw,34px) !important;
  font-weight:650 !important;
  line-height:1.2 !important;
  letter-spacing:4px !important;
  text-transform:uppercase !important;

  text-shadow:0 0 16px rgba(255,255,255,.07) !important;
}


/* =========================================================
   4. GENERAL INNER-PAGE BACKGROUND
   ========================================================= */

body:not(.home),
body:not(.home) .site,
body:not(.home) .site-main,
body:not(.home) .content-area{
  background:#080808 !important;
}

body:not(.home) .site-main,
body:not(.home) .content-area{
  padding-bottom:55px !important;
}


/* =========================================================
   5. SHOP PAGE
   ========================================================= */

.woocommerce .woocommerce-result-count{
  color:#b4b4b4 !important;
  font-size:14px !important;
}

.woocommerce .woocommerce-ordering{
  margin-bottom:26px !important;
}

.woocommerce .woocommerce-ordering select{
  min-height:44px !important;
  padding:8px 38px 8px 14px !important;
  border:1px solid #303030 !important;
  border-radius:8px !important;
  background:#101010 !important;
  color:#e4e4e4 !important;
}

.woocommerce ul.products{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:0 20px !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after{
  display:none !important;
}

.woocommerce ul.products li.product{
  width:100% !important;
  margin:0 !important;
  overflow:hidden !important;
  padding:14px !important;

  border:1px solid #202020 !important;
  border-radius:14px !important;
  background:#0e0e0e !important;

  box-shadow:0 12px 30px rgba(0,0,0,.28) !important;

  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease !important;
}

.woocommerce ul.products li.product:hover{
  transform:translateY(-4px) !important;
  border-color:rgba(62,203,97,.42) !important;
  box-shadow:0 18px 40px rgba(0,0,0,.42) !important;
}

.woocommerce ul.products li.product img{
  width:100% !important;
  border-radius:10px !important;
}

.woocommerce-loop-product__title,
h2.woocommerce-loop-product__title{
  color:#e8e8e8 !important;
  font-size:17px !important;
  line-height:1.4 !important;
}

.woocommerce ul.products li.product .price{
  color:#3ecb61 !important;
  font-weight:700 !important;
}

.woocommerce ul.products li.product .button{
  width:100% !important;
  margin-top:12px !important;
  padding:13px 18px !important;
  border:1px solid rgba(62,203,97,.35) !important;
  border-radius:8px !important;
  background:rgba(62,203,97,.1) !important;
  color:#3ecb61 !important;
  text-align:center !important;
}

.woocommerce ul.products li.product .button:hover{
  background:rgba(62,203,97,.2) !important;
  border-color:#3ecb61 !important;
  color:#ffffff !important;
}


/* =========================================================
   6. SINGLE PRODUCT PAGE
   ========================================================= */

.single-product .product_title,
.woocommerce div.product h1.product_title{
  color:#f0f0f0 !important;
}

.single-product .product_title + .price + hr + h2,
.single-product .summary h2,
.single-product
.woocommerce-product-details__short-description
h2:first-child{
  display:none !important;
}


/* =========================================================
   7. CHECKOUT PAGE
   ========================================================= */

.wc-block-checkout,
.woocommerce-checkout form.checkout{
  width:calc(100% - 32px) !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:28px !important;

  border:1px solid #202020 !important;
  border-radius:18px !important;
  background:#0d0d0d !important;

  box-shadow:0 20px 50px rgba(0,0,0,.34) !important;
}

.wc-block-components-sidebar-layout{
  gap:28px !important;
}

.wc-block-components-main,
.wc-block-components-sidebar{
  background:transparent !important;
}

.wc-block-checkout__contact-fields,
.wc-block-checkout__shipping-fields,
.wc-block-checkout__billing-fields,
.wc-block-checkout__payment-method,
.wc-block-checkout__order-notes,
.wc-block-components-order-summary{
  margin-bottom:20px !important;
  padding:22px !important;

  border:1px solid #242424 !important;
  border-radius:14px !important;
  background:#101010 !important;
}

.wc-block-components-title,
.wc-block-components-checkout-step__heading,
.wc-block-components-order-summary__button-text,
.woocommerce-checkout h3{
  color:#f0f0f0 !important;
  font-weight:650 !important;
}

.wc-block-components-checkout-step__description,
.wc-block-components-checkbox__label,
.wc-block-components-address-form__address_2-toggle{
  color:#a9a9a9 !important;
}

.wc-block-components-text-input label,
.wc-block-components-combobox-control label{
  color:#565656 !important;
}

.wc-block-components-text-input input,
.wc-block-components-combobox-control input,
.wc-block-components-address-form input,
.wc-block-components-address-form select,
.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea{
  min-height:50px !important;
  border:1px solid #d1d1d1 !important;
  border-radius:9px !important;
  background:#f6f6f6 !important;
  color:#111111 !important;
  box-shadow:none !important;
}

.wc-block-components-text-input input:focus,
.wc-block-components-combobox-control input:focus,
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout textarea:focus{
  border-color:#3ecb61 !important;
  box-shadow:0 0 0 2px rgba(62,203,97,.16) !important;
}

.wc-block-components-order-summary{
  position:sticky !important;
  top:20px !important;
}

.wc-block-components-order-summary-item{
  padding:16px 0 !important;
  border-bottom:1px solid #242424 !important;
}

.wc-block-components-order-summary-item__description,
.wc-block-components-product-name,
.wc-block-components-product-price{
  color:#dedede !important;
}

.wc-block-components-checkout-place-order-button,
.woocommerce-checkout #place_order{
  min-height:56px !important;

  border:1px solid #3ecb61 !important;
  border-radius:10px !important;

  background:linear-gradient(
    135deg,
    #1d713c,
    #238847
  ) !important;

  color:#ffffff !important;
  font-weight:750 !important;
  letter-spacing:.6px !important;

  box-shadow:0 8px 22px rgba(35,136,71,.22) !important;

  transition:
    transform .2s ease,
    background .2s ease !important;
}

.wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout #place_order:hover{
  background:linear-gradient(
    135deg,
    #238847,
    #2b9d54
  ) !important;

  transform:translateY(-1px) !important;
}


/* =========================================================
   8. CART PAGE
   ========================================================= */

.wc-block-cart,
.woocommerce-cart-form,
.cart_totals{
  border:1px solid #222 !important;
  border-radius:16px !important;
  background:#0e0e0e !important;
}

.wc-block-cart{
  width:calc(100% - 32px) !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:25px !important;
}

.wc-block-cart-item__wrap,
.wc-block-cart-items td,
.cart_totals{
  color:#dedede !important;
}

.wc-block-components-product-name{
  color:#f0f0f0 !important;
}


/* =========================================================
   9. FOOTER FULL-WIDTH FIX
   ========================================================= */

.elementor-template-canvas .ir-footer,
.elementor-template-canvas footer.site-footer,
body.elementor-template-canvas footer{
  display:block !important;
}

.site-footer .footer-widget-area,
.site-footer .widget-area,
.footer-widget-1{
  width:100% !important;
  max-width:100% !important;
  padding:0 !important;
}

.site-footer .footer-widgets{
  display:block !important;
  width:100% !important;
}

.site-footer .ir-footer{
  width:100% !important;
  max-width:100% !important;
}

.site-footer .site-info{
  display:none !important;
}


/* =========================================================
   10. ICON-CARD HOVER EFFECTS
   ========================================================= */

.ir-icon-card{
  transition:all .3s ease !important;
}

.ir-icon-card:hover{
  background:#0e0e0e !important;

  box-shadow:
    0 0 30px rgba(180,180,180,.06),
    0 0 60px rgba(180,180,180,.03) !important;

  border-color:rgba(180,180,180,.15) !important;
}

.ir-icon-card:hover .ir-icon-title{
  color:#ffffff !important;
  text-shadow:0 0 20px rgba(220,220,220,.3) !important;
}

.ir-icon-card:hover .ir-icon-emoji{
  filter:drop-shadow(0 0 8px rgba(200,200,200,.4)) !important;
}

.ir-icon-card:hover .ir-icon-btn{
  border-color:rgba(180,180,180,.35) !important;
  color:#dddddd !important;
  box-shadow:0 0 12px rgba(180,180,180,.08) !important;
}


/* =========================================================
   11. LIVE MOVING LOGO SHINE
   Add this class to the Elementor image widget:
   ir-logo-live-shine
   ========================================================= */

.ir-logo-live-shine{
  position:relative;
  isolation:isolate;
  animation:irLogoPulse 2.4s ease-in-out infinite;
}

.ir-logo-live-shine .elementor-widget-container{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.ir-logo-live-shine img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:auto;

  filter:
    brightness(1.05)
    contrast(1.08)
    drop-shadow(0 0 4px rgba(255,255,255,.25));
}

.ir-logo-live-shine .elementor-widget-container::before{
  content:"";
  position:absolute;
  top:-20%;
  left:-85%;
  width:45%;
  height:140%;
  z-index:3;
  pointer-events:none;

  background:linear-gradient(
    105deg,
    transparent 0%,
    rgba(255,255,255,.08) 25%,
    rgba(255,255,255,.65) 43%,
    #ffffff 50%,
    rgba(255,255,255,.85) 56%,
    rgba(255,255,255,.12) 72%,
    transparent 100%
  );

  transform:skewX(-18deg);

  filter:
    blur(.5px)
    drop-shadow(0 0 7px rgba(255,255,255,1))
    drop-shadow(0 0 16px rgba(210,225,255,.75));

  mix-blend-mode:screen;

  animation:irLogoSweep 2.2s linear infinite;
}

.ir-logo-live-shine .elementor-widget-container::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;

  background:radial-gradient(
    circle at 10% 45%,
    rgba(255,255,255,1) 0,
    rgba(255,255,255,.75) 2%,
    rgba(255,255,255,.22) 5%,
    transparent 9%
  );

  background-size:260% 260%;
  background-repeat:no-repeat;

  mix-blend-mode:screen;

  animation:irLogoSpark 3.4s linear infinite;
}

@keyframes irLogoSweep{
  0%{
    left:-85%;
    opacity:0;
  }

  8%{
    opacity:1;
  }

  88%{
    opacity:1;
  }

  100%{
    left:145%;
    opacity:0;
  }
}

@keyframes irLogoSpark{
  0%{
    background-position:0% 35%;
    opacity:.3;
  }

  20%{
    background-position:25% 15%;
    opacity:1;
  }

  40%{
    background-position:55% 42%;
    opacity:.8;
  }

  60%{
    background-position:82% 20%;
    opacity:1;
  }

  80%{
    background-position:60% 78%;
    opacity:.75;
  }

  100%{
    background-position:0% 35%;
    opacity:.3;
  }
}

@keyframes irLogoPulse{
  0%,
  100%{
    filter:
      drop-shadow(0 0 3px rgba(255,255,255,.18))
      drop-shadow(0 0 8px rgba(160,200,255,.08));

    transform:scale(1);
  }

  50%{
    filter:
      drop-shadow(0 0 7px rgba(255,255,255,.55))
      drop-shadow(0 0 18px rgba(180,215,255,.25));

    transform:scale(1.015);
  }
}


/* =========================================================
   12. TABLET
   ========================================================= */

@media (max-width:900px){

  .woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}


/* =========================================================
   13. MOBILE
   ========================================================= */

@media (max-width:768px){

  body:not(.home) .entry-hero,
  body:not(.home) .page-header,
  body:not(.home) .woocommerce-products-header,
  body:not(.home) .page-title-wrap,
  body:not(.home) .kadence-page-header{
    width:calc(100% - 24px) !important;
    min-height:92px !important;
    margin:14px auto 30px !important;
    padding:22px 14px !important;
    border-radius:13px !important;
  }

  body:not(.home) .entry-hero h1,
  body:not(.home) .page-header h1,
  body:not(.home) .woocommerce-products-header__title,
  body:not(.home) .page-title-wrap h1,
  body:not(.home) .kadence-page-header h1,
  body:not(.home) h1.page-title{
    font-size:22px !important;
    letter-spacing:2.5px !important;
  }

  .woocommerce ul.products{
    grid-template-columns:1fr !important;
    gap:18px !important;
    padding:0 12px !important;
  }

  .wc-block-checkout,
  .woocommerce-checkout form.checkout{
    width:calc(100% - 20px) !important;
    margin:0 auto !important;
    padding:12px !important;
    border-radius:14px !important;
  }

  .wc-block-checkout__contact-fields,
  .wc-block-checkout__shipping-fields,
  .wc-block-checkout__billing-fields,
  .wc-block-checkout__payment-method,
  .wc-block-checkout__order-notes,
  .wc-block-components-order-summary{
    padding:15px !important;
    border-radius:12px !important;
  }

  .wc-block-components-sidebar-layout{
    gap:18px !important;
  }

  .wc-block-components-order-summary{
    position:static !important;
  }

  .wc-block-cart{
    width:calc(100% - 20px) !important;
    padding:14px !important;
  }
}


/* =========================================================
   14. SMALL MOBILE
   ========================================================= */

@media (max-width:480px){

  .mobile-navigation a{
    font-size:18px !important;
  }

  body:not(.home) .entry-hero,
  body:not(.home) .page-header,
  body:not(.home) .woocommerce-products-header,
  body:not(.home) .page-title-wrap,
  body:not(.home) .kadence-page-header{
    min-height:82px !important;
    margin-bottom:26px !important;
  }

  body:not(.home) .entry-hero h1,
  body:not(.home) .page-header h1,
  body:not(.home) .woocommerce-products-header__title,
  body:not(.home) .page-title-wrap h1,
  body:not(.home) .kadence-page-header h1,
  body:not(.home) h1.page-title{
    font-size:20px !important;
    letter-spacing:2px !important;
  }
}


/* =========================================================
   15. WORDPRESS ADMIN BAR OFFSET
   ========================================================= */

@media (max-width:782px){

  body.admin-bar .site-header-wrap{
    top:46px !important;
  }

  body.admin-bar .site-main,
  body.admin-bar .content-area{
    padding-top:126px !important;
  }
}