/*
 Theme Name:   Our Perfect Bodies
 Description:  Divi child theme for Our Perfect Bodies
 Author:       Carla Turner
 Author URI:   https://carlaturner.co.uk
 Template:     Divi
 Version:      1.0.0
 Text Domain:  our-perfect-bodies
*/

/* :root {
	--opb-maroon: #6e2023;
	--opb-terracotta: #c87a5e;
	--opb-blush: #b8706a;
	--opb-cream: #eed6c4;
}
*/

/* Custom styles below */

h1 span {
	color: #6D2121; 
}


/* Custom search icon – Theme Builder Menu module + default Divi header */
.et_pb_menu .et_pb_menu__search-button:after,
#et_search_icon:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%236D2121' d='M22.4898 19.2599L17.5851 15.1926C18.614 13.6853 19.236 11.867 19.236 9.90511C19.236 4.76116 15.0491 0.574219 9.9051 0.574219C4.76115 0.574219 0.574219 4.76116 0.574219 9.90511C0.574219 15.0491 4.76115 19.236 9.9051 19.236C11.8669 19.236 13.6853 18.614 15.1926 17.5851L19.2599 22.4898C19.3556 22.5855 19.4514 22.7052 19.571 22.8009C20.5519 23.6144 21.9874 23.4708 22.8009 22.4898C23.6143 21.5089 23.4708 20.0734 22.4898 19.2599ZM3.03851 9.92903C3.03851 6.1249 6.12488 3.03853 9.92901 3.03853C13.7331 3.03853 16.8195 6.1249 16.8195 9.92903C16.8195 13.7332 13.7092 16.7956 9.92901 16.7956C6.12488 16.7956 3.03851 13.7092 3.03851 9.92903Z'/%3E%3C/svg%3E") no-repeat center / contain;
}
.nav li ul {
    width: 280px;
}
#top-menu li li a {
    padding: 4px 16px;
    width: 100%;
    font-size: 18px;
}
#top-menu li a {
    font-size: 20px;
    font-weight: 600 !important;
}
.et_mobile_menu li a:hover, .nav ul li a:hover {
    background-color: transparent;
    opacity: 1;
	color: #6D2121 !important;  
}
#top-menu-nav>ul>li>a:hover {
    opacity: 1 !important;
    color: #6D2121 !important; 
}
#top-menu li {
    padding-right: 32px;
}

/* Shop button */
.nav-shop-btn > a {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    padding: 16px 40px 16px 24px !important;
    border-radius: 30px;
    background: #c97c5d;
    color: #fff !important;
    opacity: 1 !important;
    transition: background .3s, color .3s;
    transform: translateY(4px);
}
#et_top_search {
    float: right;
    margin: 12px 0 0 22px;
    position: relative;
    display: block;
    width: 18px;
}
.nav-shop-btn > a:hover {
  background: #c97c5d;
	color: #fff !important;
}
#top-menu .nav-shop-btn > a:hover,
.et-fixed-header #top-menu .nav-shop-btn > a:hover {
  background: #6D2121 !important;
  color: #fff !important;
}
#top-menu .nav-shop-btn.current-menu-item > a,
#top-menu .nav-shop-btn > a {
  color: #fff !important;
}
    .et_header_style_left #et-top-navigation, .et_header_style_split #et-top-navigation {
        padding: 32px 0 0 0 !important; 
    }
/* Shop text stays white in the fixed header */
#top-menu .nav-shop-btn > a,
.et-fixed-header #top-menu .nav-shop-btn > a {
  color: #fff !important;
}

/* Search icon alignment */
#et_top_search {
  transform: translateY(14px);
}

/* Search icon colour in the fixed header */
.et-fixed-header #et_search_icon:before {
  color: #5c1f1f !important;
}
/* Keep Shop text white, including in the sticky header */
.et_pb_menu .nav-shop-btn > a,
.et_pb_sticky .et_pb_menu .nav-shop-btn > a,
.et_pb_menu .nav-shop-btn > a:hover {
  color: #fff !important;
}

/* Search icon: stronger selector and a bigger nudge */
.et_pb_menu .et_pb_menu__icon.et_pb_menu__search-button {
  transform: translateY(24px) !important;
  margin-left: 8px;
}
/* Panty icon */
.nav-shop-btn > a::before {
  content: "";
  width: 28px;
  height: 28px;
  background: url('https://ourperfectbodies.co.za/wp-content/uploads/2026/10/Super-Power-Period-Packs.svg') no-repeat center / contain;
}

/* Search icon alignment */
.et_pb_menu__search-button {
  transform: translateY(10px);
  margin-left: 6px;
}
/* Line the Shop button up with the menu text */
.nav-shop-btn > a {
  transform: translateY(4px);
}

/* Line the search icon up with the button */
.et_pb_menu__search-button {
  transform: translateY(10px);
  margin-left: 6px;
}
.mobile_menu_bar:before, .mobile_menu_bar:after, #top-menu li.current-menu-ancestor>a, #top-menu li.current-menu-item>a {
    color: #6D2121;
    font-weight: 800!important;
}
.btn-pair .et_pb_button_module_wrapper {
  display: inline-block;
  margin: 0 16px 16px 0;
}
.btn-pair .et_pb_button_module_wrapper:last-of-type {
  margin-right: 0;
}

.speech-bubble {
  position: relative;
  overflow: visible !important;
}
.speech-bubble::after {
  content: "";
  position: absolute;
  left: 60px;
  bottom: -22px;
  width: 40px;
  height: 24px;
  background: url("https://ourperfectbodies.co.za/wp-content/uploads/2026/10/speech-bubble.png") no-repeat center / contain;
}

#main-footer {
    background-image: url(https://ourperfectbodies.co.za/wp-content/uploads/2026/10/footer-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
}

.cart-empty .et-cart-info {
  display: none;
}
#footer-widgets .footer-widget a:hover {
    color: #c97c5d;
}
#footer-bottom {
    padding-top: 24px;
    padding-bottom: 16px;
}
#footer-info a {
    color: #000000;
    font-weight: 500;
    text-decoration: underline;
}
#footer-info a:hover {
	color: #6D2121;
}
#footer-widgets .footer-widget li:before {
	display: none; 
}
#footer-widgets .footer-widget li {
    padding-left: 0;
    margin-bottom: 4px;
}
#footer-widgets .footer-widget li a:hover {
	color: #c97c5d;
}
.et_animated:not(.et_had_animation) { opacity: 0; }
#main-footer .footer-widget h4, #main-footer .widget_block h1, #main-footer .widget_block h2, #main-footer .widget_block h3, #main-footer .widget_block h4, #main-footer .widget_block h5, #main-footer .widget_block h6 {
        margin-bottom: 16px;
}
.textwidget a {
	text-decoration: underline; 
}
.opb-social {
  display: flex;
  gap: 8px;
}
.opb-social a {
  display: block;
  line-height: 0;
  transition: opacity .2s;
}
.opb-social a:hover { opacity: .8; }
.opb-social img { width: 64px; height: 64px; }

#footer-info {
  float: none;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px 24px;
}
@media (max-width: 980px) {
  #footer-info { justify-content: center; text-align: center; }
}

@media (min-width: 981px) {
  #footer-widgets .footer-widget:nth-child(1) { width: 45%; }
  #footer-widgets .footer-widget:nth-child(2),
  #footer-widgets .footer-widget:nth-child(3) { width: 22%; }
}