﻿:root {
  --font-inter: "Inter", sans-serif;
  --font-spaceGrotesk: "Space Grotesk", sans-serif;
  --font-funnel-display: "Funnel Display", sans-serif;
  /* Colors --------------- */
  --white-color: #ffffff;
  --white-color-opc: 255, 255, 255;
  --dark-white-color: #ffffff;
  --dark-black-color: #1e1e1e;
  --black-color: #1e1e1e;
  --black-color-opc: 30, 30, 30;
  --dark-title-color: #1e1e1e;
  --title-color: #1e1e1e;
  --title-color-opc: 30, 30, 30;
  --dark-text-color: #c8c8c8;
  --text-color: #525252;
  --global-text-color: #525252;
  --text-color-opc: 82, 82, 82;
  /* Theme Color */
  --primary-color1: #c8f8a9;
  --primary-color1-opc: 200, 248, 169;
  --primary-color2: #0f3d3a;
  --primary-color2-opc: 15, 61, 58;
  --borders-color: #eeeeee;
  --borders-color-opc: 238, 238, 238;
}

body.dark {
  --dark-white-color: #1e1e1e;
  --black-color: #ffffff;
  --black-color-opc: 255, 255, 255;
  --title-color: #ffffff;
  --title-color-opc: 255, 255, 255;
  --text-color: #c8c8c8;
  --borders-color: #353535;
  --borders-color-opc: 53, 53, 53;
  background-color: #161616;
}


.logged-in header.inner-header {
  top: 32px;
}

.site-title h3 {
  margin: 10px 0;
}

.set-menu h4 {
  margin: 10px 0;
  font-size: 18px;
}

.set-menu h4 a,
.site-title h3 a {
  color: #161616;
}

.breadcrumb-item+.breadcrumb-item::before {
  display: none;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
.screen-reader-text {
  position: absolute !important;
  padding: 0;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  border-radius: 3px;
  background-color: #f1f1f1;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  -webkit-clip-path: none;
  clip-path: none;
  color: var(--primary-color1);
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

#content[tabindex="-1"]:focus {
  outline: 0;
}

.bypostauthor {
  display: block;
}

.gallery-caption {
  display: block;
}

.wp-caption {
  max-width: 100%;
}

.wp-caption-text {
  margin: 0.8075em 0;
}

.wp-block-button {
  margin-bottom: 20px;
}

.alignfull,
.alignwide {
  margin-bottom: 20px;
}

.alignleft {
  float: left;
  margin-right: 2em;
  clear: both;
}

.alignright {
  float: right;
  margin-left: 2em;
  margin-bottom: 20px;
  clear: both;
}

.aligncenter {
  clear: both;
  display: block;
  margin: 0 auto 20px;
}

.wp-block-cover p.has-large-font-size {
  color: #fff !important;
}

p.wp-block-cover-text {
  color: #ffffff !important;
}

.wp-block-file {
  margin-top: 20px;
  margin-bottom: 10px;
}

.wp-block-file a {
  color: var(--title-color);
}

.wp-block-button__link {
  font-size: 16px;
  font-weight: 500;
  color: var(--white-color);
  background-color: var(--black-color);
  transition: 0.35s;
}

.wp-block-button__link:hover {
  color: #fff;
  background: #2e2d31;
}

.wp-block-file__button {
  color: #fff !important;
  padding: 10px 20px;
  text-decoration: none;
  background-color: #32373c;
  transition: 0.35s;
}

.wp-block-file__button:hover {
  color: var(--primary-color1);
}

.blocks-gallery-grid:not(.has-nested-images),
.wp-block-gallery:not(.has-nested-images) {
  margin-right: 10px;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.page-content-wrapper::after,
.details-contnt-wrap:after,
.wp-block-image:after {
  content: "";
  clear: both;
  display: table;
}

/* Formatting */
code {
  margin: 20px 0;
  padding: 5px 15px;
  display: inline-block;
  color: var(--white-color) !important;
  background-color: #000000;
}

pre.wp-block-code {
  border: none;
  background: var(--primary-color1);
}

.wp-block-code code {
  color: #2a2d33;
}

pre.wp-block-preformatted {
  margin-top: 10px;
}

pre {
  margin-top: 15px;
  color: #212529;
  border: 1px solid var(--primary-color1);
  background-size: 38px 38px;
  background-color: var(--primary-color1);
  background-image: linear-gradient(#f8f8f8 50%, rgb(67 143 249 / 10%) 50%);
  display: block;
  margin-bottom: 20px;
  overflow: visible;
  overflow-y: hidden;
  padding: 0 0 0 4px;
  word-break: break-word;
  white-space: break-spaces;
}

embed,
iframe,
object {
  width: 100%;
  max-width: 100%;
  min-height: 500px;
}

/* sticky icon  */
.blog-card2 {
  position: relative;
}

.sticky-post-icon {
  position: absolute;
  right: 1rem;
  top: 30px;
  content: "\e6de";
  font-family: "themify";
  display: block;
  font-size: 30px;
  color: #000000;
  left: auto;
  padding-top: 14px;
  line-height: 1;
  text-align: center;
  border-radius: 50%;
}

/*--------------------------------------------------------------
# End Accessibility
--------------------------------------------------------------*/

/* global sidebar ul,ol style  */
.news-article-sidebar-area .single-widget ul,
.news-article-sidebar-area .single-widget ol {
  padding: 0;
  margin: 0;
  list-style: none;
}

.news-article-sidebar-area .single-widget ul li,
.news-article-sidebar-area .single-widget ol li {
  margin-bottom: 15px;
  transition: 0.5s;
}

.news-article-sidebar-area .single-widget ul li:last-child,
.news-article-sidebar-area .single-widget ol li:last-child {
  margin-bottom: 0;
}

.news-article-sidebar-area .single-widget ul li a,
.news-article-sidebar-area .single-widget ol li a {
  color: var(--text-color);
  font-family: var(--font-inter);
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.3px;
  transition: 0.5s;
}

.news-article-sidebar-area .single-widget ul li a:hover,
.news-article-sidebar-area .single-widget ol li a:hover {
  color: var(--title-color);
}

.news-article-sidebar-area .single-widget ul li ul,
.news-article-sidebar-area .single-widget ol li ol {
  margin-top: 15px;
  padding-left: 10px;
}

/* global details content ul,ol style  */
.page-content-wrapper ul,
.page-content-wrapper ol,
.details-contnt-wrap ul,
.details-contnt-wrap ol {
  padding: 0;
  margin: 0;
  padding-left: 20px;
}

.page-content-wrapper ul li,
.page-content-wrapper ol li,
.details-contnt-wrap ul li,
.details-contnt-wrap ol li {
  position: relative;
  margin-bottom: 15px;
}

.page-content-wrapper ul li ul,
.page-content-wrapper ol li ol,
.details-contnt-wrap ul li ul,
.details-contnt-wrap ol li ol {
  margin-top: 15px;
  padding-left: 15px;
}

.page-content-wrapper ul li a,
.page-content-wrapper ol li a,
.details-contnt-wrap ul li a,
.details-contnt-wrap ol li a {
  color: var(--text-color);
  font-weight: 400;
  font-size: 18px;
  line-height: 26px;
}

/* sidebar widget title */
.news-article-sidebar-area .widget-title,
.news-article-sidebar-area .widget-title a,
.news-article-sidebar-area .single-widget label,
.news-article-sidebar-area .single-widget h2.wp-block-heading {
  color: var(--title-color);
  font-family: var(--font-inter);
  font-size: 24px;
  font-weight: 500;
  line-height: 0.9;
  letter-spacing: 0.6px;
  text-transform: capitalize;
  margin-bottom: 25px;
}

/* sidebar select  */

.news-article-sidebar-area .single-widget .nice-select {
  float: none;
}

.news-article-sidebar-area .single-widget .nice-select ul.list {
  overflow-y: auto;
  max-height: 400px;
  scrollbar-width: thin;
}

.news-article-sidebar-area .single-widget .nice-select .list .option {
  white-space: normal;
}

/* sidebar search deafult */
.news-article-sidebar-area .single-widget.widget_search {
  padding: 0;
  border: none;
}

.wp-block-search__inside-wrapper {
  display: flex;
  flex: auto;
  flex-wrap: nowrap;
  max-width: 100%;
  align-items: center;
}

.wp-block-search__inside-wrapper input {
  width: 100%;
  padding: 8px 20px;
  color: #9b9b9b;
  font-family: var(--font-inter);
  font-size: 14px;
  height: 52px;
  border: 1px solid var(--borders-color);
  border-right: unset;
  border-radius: 10px 0 0 10px;
}

.wp-block-search__inside-wrapper button {
  color: var(--white-color);
  transition: 0.5s;
  background-color: var(--title-color);
  min-width: 56px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
  z-index: 1;
  border-radius: 0 10px 10px 0;
  margin-left: 0;
}

/* sidebar & details tags cloud */
.article-details-page .details-contnt-wrap .wp-block-tag-cloud,
.news-article-sidebar-area .single-widget .tagcloud {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  align-items: center;
  gap: 10px;
  row-gap: 20px;
  flex-wrap: wrap;
}

.article-details-page .details-contnt-wrap .wp-block-tag-cloud a,
.news-article-sidebar-area .single-widget .tagcloud a {
  color: var(--title-color);
  font-family: var(--font-inter);
  font-size: 14px !important;
  font-weight: 400;
  display: block;
  line-height: 1;
  padding: 9px 12px;
  border-radius: 6px;
  text-transform: capitalize;
  background: #f3ffef;
  border: 1px solid var(--borders-color);
  transition: 0.5s;
}

.article-details-page .details-contnt-wrap .wp-block-tag-cloud a:hover,
.news-article-sidebar-area .single-widget .tagcloud a:hover {
  color: var(--dark-black-color);
  background-color: var(--primary-color1);
}

/* blockquote  */
blockquote {
  position: relative;
  width: 100%;
  z-index: 1;
  border: none !important;
  margin-bottom: 0;
  padding-left: 70px !important;
  min-height: 140px;
}

.article-details-page .details-contnt-wrap blockquote p {
  color: var(--title-color);
  font-family: var(--font-spaceGrotesk);
  font-weight: 500;
  font-size: 28px;
  line-height: 1.3;
  margin-bottom: 20px;
}

blockquote::before {
  position: absolute;
  content: url('data:image/svg+xml,<svg width="28" height="127" viewBox="0 0 28 127" xmlns="http://www.w3.org/2000/svg"><path d="M23 10L27.7735 0H16.2265L21 10H23ZM22 52L22.725 52.6888L23 52.3993V52H22ZM3 72L2.275 71.3112L0.670689 73H3V72ZM22 72H23V71H22V72ZM21 117L16.2265 127H27.7735L23 117H21ZM21 9V52H23V9H21ZM21.275 51.3112L2.275 71.3112L3.725 72.6888L22.725 52.6888L21.275 51.3112ZM3 73H22V71H3V73ZM21 72V118H23V72H21Z"></path></svg>');
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

blockquote::after {
  position: absolute;
  content: url('data:image/svg+xml,<svg class="quote" width="100" height="74" viewBox="0 0 100 74" xmlns="http://www.w3.org/2000/svg"><path d="M76.0844 0.333984C62.1979 0.333984 52.1722 11.7089 52.1722 28.5534C52.2591 53.0243 70.802 70.326 97.5533 73.6474C100.031 73.958 100.988 70.5417 98.7054 69.5366C88.4449 65.0074 83.2581 59.2617 82.5886 53.5764C82.0886 49.3275 84.4146 45.6049 87.3406 44.9061C94.9186 43.0987 99.9967 33.734 99.9967 24.0586C99.9967 17.7665 97.4774 11.732 92.993 7.28277C88.5086 2.83354 82.4264 0.333984 76.0844 0.333984ZM23.9123 0.333984C10.0258 0.333984 0 11.7089 0 28.5534C0.0869522 53.0243 18.6298 70.326 45.3811 73.6474C47.8593 73.958 48.8158 70.5417 46.5333 69.5366C36.2727 65.0074 31.0859 59.2617 30.4164 53.5764C29.9164 49.3275 32.2424 45.6049 35.1684 44.9061C42.7464 43.0987 47.8245 33.734 47.8245 24.0586C47.8245 17.7665 45.3052 11.732 40.8208 7.28277C36.3364 2.83354 30.2542 0.333984 23.9123 0.333984Z"></path></svg>');
  top: 50%;
  left: 70px;
  opacity: 0.1;
  transform: translateY(-50%);
}

.details-contnt-wrap blockquote {
  margin: 20px 0;
}

/* password protected post  */
form.post-password-form input {
  background: transparent;
  color: var(--title-color);
  font-size: 16px;
  font-weight: 400;
  padding: 10px 20px;
  height: 56px;
  border: 1px solid var(--borders-color);
  border-radius: 5px;
}

form.post-password-form input[type="submit"] {
  font-weight: 500;
  font-size: 16px;
  color: var(--white-color);
  letter-spacing: 0.48px;
  line-height: 1;
  padding: 10px 20px;
  border-radius: 5px;
  white-space: nowrap;
  background-color: var(--black-color);
}

/* sidebar table */
.news-article-sidebar-area .single-widget table {
  caption-side: bottom;
  width: 100%;
  margin: 10px 0;
  border-collapse: collapse;
}

.news-article-sidebar-area .single-widget table th,
.news-article-sidebar-area .single-widget table tr,
.news-article-sidebar-area .single-widget table td {
  padding: 10px;
  border: 1px solid var(--borders-color);
}

.news-article-sidebar-area .single-widget table td#today a {
  font-weight: 600;
  color: var(--title-color);
}

.news-article-sidebar-area .single-widget .calendar_wrap span.wp-calendar-nav-prev a,
.news-article-sidebar-area .single-widget .calendar_wrap span.wp-calendar-nav-next a {
  font-weight: 600;
  color: var(--title-color1);
}

/* details & inside comment table  */

.details-contnt-wrap .wp-block-calendar,
.single-comment-area .wp-block-calendar {
  margin: 30px 0;
}

.page-content-wrapper table,
.details-contnt-wrap table,
.single-comment-area table {
  width: 100%;
  margin: 10px 0;
  border-collapse: collapse;
}

.page-content-wrapper table th,
.page-content-wrapper table tr,
.page-content-wrapper table td,
.details-contnt-wrap table th,
.details-contnt-wrap table tr,
.details-contnt-wrap table td,
.single-comment-area table th,
.single-comment-area table tr,
.single-comment-area table td {
  padding: 10px;
  border: 1px solid var(--borders-color);
}

.page-content-wrapper table th a,
.page-content-wrapper table tr a,
.page-content-wrapper table td a,
.details-contnt-wrap table th a,
.details-contnt-wrap table tr a,
.details-contnt-wrap table td a,
.single-comment-area table th a,
.single-comment-area table tr a,
.single-comment-area table td a {
  font-weight: 500;
  color: var(--title-color);
}

.details-contnt-wrap .wp-block-calendar span.wp-calendar-nav-prev a,
.details-contnt-wrap .wp-block-calendar span.wp-calendar-nav-next a {
  font-weight: 600;
  color: var(--title-color1);
}

/* page pagination  */
.article-details-page .details-contnt-wrap .page-paginations {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  align-items: center;
  gap: 20px;
}

.article-details-page .details-contnt-wrap .page-paginations li {
  position: inherit;
  margin: 0;
  padding: 0;
}

.article-details-page .details-contnt-wrap .page-paginations li a,
.article-details-page .details-contnt-wrap .page-paginations li span {
  color: var(--text-color);
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid var(--borders-color);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.5s;
}

.article-details-page .details-contnt-wrap .page-paginations li span.current {
  color: var(--dark-white-color);
  background-color: var(--black-color);
}

/* query-pagination */
nav.wp-block-query-pagination {
  margin: 20px 0;
}

.wp-block-query-pagination-numbers a,
.wp-block-query-pagination-numbers span.current {
  color: var(--text-color);
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid var(--borders-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: 0.5s;
}

.wp-block-query-pagination-numbers span.current {
  color: var(--dark-white-color);
  background-color: var(--black-color);
}

/* Global Comment Form & list CSS  */
.comment-respond h3.comment-reply-title {
  font-family: var(--font-inter);
  font-weight: 500;
  font-size: 24px;
  line-height: 1;
  text-transform: capitalize;
  color: var(--title-color);
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}

.comment-respond h3.comment-reply-title small {
  font-size: 14px;
}

.comment-respond h3.comment-reply-title a {
  color: var(--title-color);
  text-decoration: underline;
}

.comment-respond h3.comment-title {
  font-family: var(--font-inter);
  font-weight: 500;
  font-size: 24px;
  line-height: 1;
  text-transform: capitalize;
  color: var(--title-color);
  margin-bottom: 15px;
}

.comment-respond form p.comment-notes {
  font-family: var(--font-inter);
  font-weight: 400;
  font-size: 16px;
  line-height: 1;
  color: var(--text-color);
  margin-bottom: 30px;
}

.comment-respond form p.logged-in-as {
  font-family: var(--font-inter);
  font-weight: 400;
  font-size: 16px;
  line-height: 1;
  color: var(--text-color);
  margin-bottom: 30px;
}

.comment-respond form p.logged-in-as a {
  color: var(--text-color);
  text-decoration: underline;
}

.comment-respond form p.logged-in-as {
  font-family: var(--font-inter);
  font-weight: 400;
  font-size: 16px;
  line-height: 1;
  color: var(--text-color);
  margin-bottom: 30px;
}

.comment-respond form p.comment-notes span {
  font-family: var(--font-inter);
  font-weight: 400;
  font-size: 16px;
  line-height: 1;
  color: var(--text-color);
}

.comment-respond form .form-inner label {
  color: var(--title-color);
  font-family: var(--font-inter);
  font-size: 16px;
  font-weight: 500;
  display: inline-block;
  line-height: 1;
  margin-bottom: 12px;
}

.comment-respond form .form-inner input,
.comment-respond form .form-inner textarea {
  color: #666;
  font-family: var(--font-inter);
  font-size: 16px;
  font-weight: 400;
  display: inline-block;
  line-height: 1.4;
  border: 1px solid var(--borders-color);
  padding: 15px;
}

.comment-respond form .form-inner input::placeholder,
.comment-respond form .form-inner textarea::placeholder {
  color: #666;
  font-family: var(--font-inter);
  font-size: 16px;
  font-weight: 400;
}

.comment-respond form button.primary-btn1 {
  margin-top: 25px;
}

.comment-respond form p.comment-form-cookies-consent input {
  margin-right: 7px;
}

.single-comment-area .comment-content .author-name-deg h6 {
  margin-bottom: 0;
}

.comment .children .single-comment-area {
  margin-bottom: 30px;
}

.comment-respond p.form-submit input {
  margin-top: 25px;
  background-color: var(--primary-color1);
  font-family: var(--font-inter);
  font-weight: 500;
  font-size: 16px;
  color: var(--dark-title-color);
  letter-spacing: 0.48px;
  line-height: 1;
  padding: 15px 20px;
  border-radius: 10px;
  position: relative;
  align-items: center;
  display: inline-flex;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  overflow: hidden;
  z-index: 1;
  white-space: nowrap;
}

/* other's css  */
.details-contnt-wrap .wp-block-post-template,
.wp-block-navigation__container:only-child,
.wp-block-page-list:only-child {
  padding: 0;
}

/* page content css  */
.page-content-wrapper .inquiry-form {
  clear: both;
}

/* error page css  */
.error-wrapper {
  margin-top: 100px;
  text-align: center;
}

.error-wrapper h2 {
  margin-top: 30px;
  font-family: var(--font-spaceGrotesk);
  font-weight: 500;
  font-size: 60px;
  line-height: 1.2;
  text-align: center;
  color: var(--title-color);
  margin-bottom: 15px;
}

.error-wrapper p {
  font-family: var(--font-inter);
  font-weight: 400;
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
  color: var(--text-color);
  padding-bottom: 50px;
}

body.dark .wp-block-heading {
  color: #fff !important;
}

/* Elementor dark colors  */
body.dark .elementor-heading-title {
  color: #fff !important;
}

body.dark .case-result-area .elementor-heading-title {
  color: #1e1e1e !important;
}

body.dark .elementor-element,
body.dark .elementor-icon-list-text {
  color: #c8c8c8 !important;
}

/* ============================================================
   WOOCOMMERCE MY ACCOUNT PAGE
   ============================================================ */

/* --- Main Container --- */
.woocommerce-MyAccount-content,
.woocommerce-MyAccount-navigation {
  font-family: var(--font-inter);
}

.woocommerce .woocommerce-MyAccount-content p {
  font-size: 16px;
  line-height: 1.7;
  color: var(--text-color);
  margin-bottom: 16px;
}

.woocommerce .woocommerce-MyAccount-content p strong {
  color: var(--title-color);
  font-weight: 600;
}

.woocommerce .woocommerce-MyAccount-content p a {
  color: var(--primary-color2);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
}

.woocommerce .woocommerce-MyAccount-content p a:hover {
  color: var(--primary-color1);
  text-decoration: underline;
}

/* --- Navigation Card --- */
.woocommerce-MyAccount-navigation {
  margin-bottom: 40px;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 8px;
  background: #fff;
  border-radius: 16px;
  padding: 10px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  border: 1px solid #f0f0f0;
}

.woocommerce-MyAccount-navigation ul li {
  flex: 1;
  min-width: 120px;
  margin: 0;
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.woocommerce-MyAccount-navigation ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 20px;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-color);
  text-decoration: none;
  text-align: center;
  border-radius: 12px;
  transition: all 0.3s ease;
  position: relative;
  white-space: nowrap;
}

.woocommerce-MyAccount-navigation ul li a:hover {
  color: var(--primary-color2);
  background: #f8f9fa;
  transform: translateY(-2px);
}

.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a {
  background: var(--primary-color2);
  color: #fff;
  box-shadow: 0 4px 15px rgba(15, 61, 58, 0.3);
}

.woocommerce-MyAccount-navigation ul li.is-active a:hover {
  background: var(--primary-color2);
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(15, 61, 58, 0.4);
}

/* Navigation Icons */
.woocommerce-MyAccount-navigation ul li a::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: 14px;
  flex-shrink: 0;
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard a::before {
  content: '\f0e4';
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--orders a::before {
  content: '\f54e';
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--downloads a::before {
  content: '\0176';
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-address a::before {
  content: '\f3c5';
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-account a::before {
  content: '\f007';
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a::before {
  content: '\f2f5';
}

/* --- Content Card --- */
.woocommerce-MyAccount-content {
  background: #fff;
  border-radius: 16px;
  padding: 40px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  border: 1px solid #f0f0f0;
}

.woocommerce-MyAccount-content h2 {
  font-family: var(--font-inter);
  font-size: 24px;
  font-weight: 700;
  color: var(--title-color);
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 2px solid #f0f0f0;
}

/* --- Notices --- */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error {
  padding: 16px 20px;
  border-radius: 12px;
  margin-bottom: 24px;
  font-size: 14px;
  font-weight: 500;
  border: none;
}

.woocommerce-notices-wrapper .woocommerce-message {
  background: #e8f5e9;
  color: #2e7d32;
}

.woocommerce-notices-wrapper .woocommerce-info {
  background: #e3f2fd;
  color: #1565c0;
}

.woocommerce-notices-wrapper .woocommerce-error {
  background: #ffebee;
  color: #c62828;
  list-style: none;
  padding: 16px 20px;
}

.woocommerce-notices-wrapper .woocommerce-error li {
  padding: 0;
  margin: 0;
}

/* --- Forms (Login, Register, Edit) --- */
.woocommerce form .form-row {
  margin-bottom: 20px;
}

.woocommerce form .form-row label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--title-color);
  margin-bottom: 8px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row input[type="text"],
.woocommerce form .form-row input[type="email"],
.woocommerce form .form-row input[type="password"],
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
  width: 100%;
  padding: 14px 16px;
  font-size: 15px;
  font-family: var(--font-inter);
  color: var(--title-color);
  background: #f8f9fa;
  border: 2px solid #e8e8e8;
  border-radius: 12px;
  transition: all 0.3s ease;
  box-sizing: border-box;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row input[type="text"]:focus,
.woocommerce form .form-row input[type="email"]:focus,
.woocommerce form .form-row input[type="password"]:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus {
  border-color: var(--primary-color2);
  background: #fff;
  box-shadow: 0 0 0 4px rgba(15, 61, 58, 0.1);
  outline: none;
}

.woocommerce form .form-row textarea {
  min-height: 120px;
  resize: vertical;
}

.woocommerce form .form-row select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 40px;
}

/* --- Buttons --- */
.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce #content input.button,
.woocommerce form .form-row input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 28px;
  font-size: 14px;
  font-weight: 700;
  font-family: var(--font-inter);
  color: #fff;
  background: var(--primary-color2);
  border: 2px solid var(--primary-color2);
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  text-decoration: none;
  line-height: 1;
  letter-spacing: 0.3px;
}

.woocommerce .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce #content input.button:hover,
.woocommerce form .form-row input[type="submit"]:hover {
  background: #0a2e2c;
  border-color: #0a2e2c;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(15, 61, 58, 0.3);
}

.woocommerce .button.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce #respond input#submit.alt {
  background: var(--primary-color1);
  color: var(--primary-color2);
  border: 2px solid var(--primary-color1);
}

.woocommerce .button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce #respond input#submit.alt:hover {
  background: #b5e596;
  border-color: #b5e596;
  color: var(--primary-color2);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(200, 248, 169, 0.4);
}

/* --- Tables (Orders, Addresses) --- */
.woocommerce table.shop_table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #f0f0f0;
  margin-bottom: 24px;
}

.woocommerce table.shop_table thead th {
  background: var(--primary-color2);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 14px 16px;
  text-align: left;
  border: none;
}

.woocommerce table.shop_table tbody td {
  padding: 14px 16px;
  font-size: 14px;
  color: var(--text-color);
  border-bottom: 1px solid #f0f0f0;
  vertical-align: middle;
}

.woocommerce table.shop_table tbody tr:last-child td {
  border-bottom: none;
}

.woocommerce table.shop_table tbody tr:hover {
  background: #f8f9fa;
}

.woocommerce table.shop_table a {
  color: var(--primary-color2);
  text-decoration: none;
  font-weight: 600;
  transition: color 0.3s ease;
}

.woocommerce table.shop_table a:hover {
  color: var(--primary-color1);
  text-decoration: underline;
}

/* --- Status Badges (Order Status) --- */
.woocommerce .order-status,
.woocommerce table.shop_table .order-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  text-transform: capitalize;
}

.woocommerce .order-status.status-completed,
.woocommerce table.shop_table .status-completed {
  background: #e8f5e9;
  color: #2e7d32;
}

.woocommerce .order-status.status-processing,
.woocommerce table.shop_table .status-processing {
  background: #fff3e0;
  color: #e65100;
}

.woocommerce .order-status.status-on-hold,
.woocommerce table.shop_table .status-on-hold {
  background: #fff8e1;
  color: #f57f17;
}

.woocommerce .order-status.status-cancelled,
.woocommerce table.shop_table .status-cancelled {
  background: #ffebee;
  color: #c62828;
}

.woocommerce .order-status.status-refunded,
.woocommerce table.shop_table .status-refunded {
  background: #f3e5f5;
  color: #7b1fa2;
}

.woocommerce .order-status.status-failed,
.woocommerce table.shop_table .status-failed {
  background: #ffebee;
  color: #c62828;
}

/* --- Pagination --- */
.woocommerce .woocommerce-pagination {
  margin-top: 30px;
}

.woocommerce .woocommerce-pagination ul {
  display: flex;
  align-items: center;
  gap: 8px;
  border: none;
  padding: 0;
  margin: 0;
}

.woocommerce .woocommerce-pagination ul li {
  border: none;
  margin: 0;
  padding: 0;
}

.woocommerce .woocommerce-pagination ul li a,
.woocommerce .woocommerce-pagination ul li span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 12px;
  font-size: 14px;
  font-weight: 600;
  color: var(--text-color);
  background: #fff;
  border: 2px solid #e8e8e8;
  border-radius: 10px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.woocommerce .woocommerce-pagination ul li a:hover {
  border-color: var(--primary-color2);
  color: var(--primary-color2);
  transform: translateY(-2px);
}

.woocommerce .woocommerce-pagination ul li span.current {
  background: var(--primary-color2);
  color: #fff;
  border-color: var(--primary-color2);
}

/* --- Dashboard Boxes --- */
.woocommerce .woocommerce-account .woocommerce-MyAccount-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce .woocommerce-account .woocommerce-MyAccount-content ul li {
  padding: 12px 0;
  border-bottom: 1px solid #f0f0f0;
}

.woocommerce .woocommerce-account .woocommerce-MyAccount-content ul li:last-child {
  border-bottom: none;
}

/* --- Address Boxes --- */
.woocommerce .woocommerce-MyAccount-content address {
  font-style: normal;
  font-size: 15px;
  line-height: 1.8;
  color: var(--text-color);
  background: #f8f9fa;
  padding: 20px;
  border-radius: 12px;
  border: 1px solid #f0f0f0;
}

/* --- Responsive --- */
@media (max-width: 1024px) {
  .woocommerce-MyAccount-navigation ul {
    gap: 6px;
    padding: 8px;
  }

  .woocommerce-MyAccount-navigation ul li a {
    padding: 12px 16px;
    font-size: 13px;
  }

  .woocommerce-MyAccount-content {
    padding: 30px;
  }
}

@media (max-width: 768px) {
  .woocommerce-MyAccount-navigation ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
    padding: 8px;
  }

  .woocommerce-MyAccount-navigation ul li {
    flex: none;
    min-width: 100%;
  }

  .woocommerce-MyAccount-navigation ul li a {
    justify-content: flex-start;
    padding: 14px 20px;
    font-size: 14px;
  }

  .woocommerce-MyAccount-content {
    padding: 24px;
    border-radius: 12px;
  }

  .woocommerce-MyAccount-content h2 {
    font-size: 20px;
  }

  .woocommerce table.shop_table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }

  .woocommerce table.shop_table thead {
    display: none;
  }

  .woocommerce table.shop_table tbody td {
    display: block;
    text-align: left;
    white-space: normal;
    padding: 10px 16px;
    border-bottom: 1px solid #f0f0f0;
  }

  .woocommerce table.shop_table tbody td::before {
    content: attr(data-title);
    display: block;
    font-size: 12px;
    font-weight: 700;
    color: var(--text-color);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
  }

  .woocommerce .woocommerce-pagination ul {
    justify-content: center;
  }
}

@media (max-width: 576px) {
  .woocommerce-MyAccount-navigation ul {
    border-radius: 12px;
    padding: 6px;
  }

  .woocommerce-MyAccount-navigation ul li a {
    padding: 12px 16px;
    font-size: 13px;
    border-radius: 10px;
  }

  .woocommerce-MyAccount-content {
    padding: 20px;
    border-radius: 12px;
  }

  .woocommerce .button,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce #respond input#submit {
    width: 100%;
    justify-content: center;
    padding: 14px 20px;
  }
}

/*--------------------------------------------------------------
# WooCommerce Thank You / Order Received â€” Premium Design
--------------------------------------------------------------*/
.woocommerce-order {
  --ty-radius: 20px;
  max-width: 960px;
  margin: 40px auto 80px;
  padding: 0;
}

/* Success banner */
.woocommerce-order .woocommerce-notice--success.woocommerce-thankyou-order-received {
  position: relative;
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0 0 28px;
  padding: 24px 28px;
  border: none;
  border-radius: var(--ty-radius);
  background: linear-gradient(120deg, var(--primary-color2) 0%, #14524e 60%, #1a6b64 100%);
  color: #ffffff;
  font-family: var(--font-spaceGrotesk);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.45;
  letter-spacing: 0.2px;
  box-shadow: 0 18px 40px -18px rgba(var(--primary-color2-opc), 0.55);
  overflow: hidden;
  animation: tyFadeUp 0.6s ease both;
}

.woocommerce-order .woocommerce-notice--success.woocommerce-thankyou-order-received::before {
  content: "\2713";
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--primary-color1);
  color: var(--primary-color2);
  font-size: 20px;
  font-weight: 800;
  box-shadow: 0 0 0 8px rgba(var(--primary-color1-opc), 0.15);
}

.woocommerce-order .woocommerce-notice--success.woocommerce-thankyou-order-received::after {
  content: "";
  position: absolute;
  top: -60%;
  right: -40px;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: rgba(var(--primary-color1-opc), 0.12);
  pointer-events: none;
}

/* Order overview cards */
.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 14px;
  margin: 0 0 32px;
  padding: 0;
  border: none;
  counter-reset: none;
}

.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li {
  list-style: none;
  margin: 0;
  padding: 18px 20px;
  border: 1px solid var(--borders-color);
  border-radius: 14px;
  background: var(--dark-white-color);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  animation: tyFadeUp 0.6s ease both;
}

.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li:nth-child(1) { animation-delay: 0.05s; }
.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li:nth-child(2) { animation-delay: 0.1s; }
.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li:nth-child(3) { animation-delay: 0.15s; }
.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li:nth-child(4) { animation-delay: 0.2s; }
.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li:nth-child(5) { animation-delay: 0.25s; }

.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li:hover {
  transform: translateY(-4px);
  border-color: rgba(var(--primary-color1-opc), 0.9);
  box-shadow: 0 16px 30px -16px rgba(var(--black-color-opc), 0.18);
}

.woocommerce ul.order_details::before,
.woocommerce ul.order_details::after {
    content: none !important;
}


.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details li::before {
  content: "";
  display: block;
  width: 26px;
  height: 3px;
  margin-bottom: 12px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--primary-color1), var(--primary-color2));
}

.woocommerce-order .woocommerce-order-overview.woocommerce-thankyou-order-details strong {
  display: block;
  margin-top: 4px;
  font-family: var(--font-funnel-display);
  font-size: 17px;
  font-weight: 700;
  color: var(--title-color);
  word-break: break-word;
}

/* Payment note */
.woocommerce div.woocommerce-order > p {
  margin: 0 0 32px;
}

.woocommerce-order p:has(+ .woocommerce-order-details) {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 20px;
  border-radius: 99px;
  background: rgba(var(--primary-color1-opc), 0.35);
  border: 1px dashed rgba(var(--primary-color2-opc), 0.4);
  color: var(--primary-color2);
  font-weight: 600;
  font-size: 14px;
}

body.dark .woocommerce-order p:has(+ .woocommerce-order-details) {
  color: var(--primary-color1);
  background: rgba(var(--primary-color1-opc), 0.08);
}

/* Section titles */
.woocommerce-order .woocommerce-order-details__title,
.woocommerce-order .woocommerce-column__title {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 20px;
  padding-bottom: 14px;
  font-family: var(--font-spaceGrotesk);
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.2px;
  color: var(--title-color);
}

.woocommerce-order .woocommerce-order-details__title::after,
.woocommerce-order .woocommerce-column__title::after {
  content: "";
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, var(--borders-color), transparent);
}

.woocommerce-order .woocommerce-order-details__title::before,
.woocommerce-order .woocommerce-column__title::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 3px;
  background: var(--primary-color1);
  box-shadow: 0 0 0 4px rgba(var(--primary-color1-opc), 0.25);
  flex: 0 0 auto;
}

/* Order details card */
.woocommerce-order .woocommerce-order-details {
  margin: 0 0 36px;
  padding: 28px;
  border: 1px solid var(--borders-color);
  border-radius: var(--ty-radius);
  background: var(--dark-white-color);
  box-shadow: 0 24px 50px -30px rgba(var(--black-color-opc), 0.15);
  animation: tyFadeUp 0.6s ease both;
  animation-delay: 0.3s;
}

.woocommerce-order table.woocommerce-table--order-details {
  width: 100%;
  margin: 0;
  border: none;
  border-collapse: separate;
  border-spacing: 0;
  background: transparent;
}

.woocommerce-order table.woocommerce-table--order-details thead th {
  padding: 14px 18px;
  background: var(--primary-color2);
  color: #ffffff;
  font-family: var(--font-spaceGrotesk);
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.woocommerce-order table.woocommerce-table--order-details thead th:first-child {
  border-radius: 12px 0 0 12px;
}

.woocommerce-order table.woocommerce-table--order-details thead th:last-child {
  border-radius: 0 12px 12px 0;
  text-align: right;
}

.woocommerce-order table.woocommerce-table--order-details tbody td,
.woocommerce-order table.woocommerce-table--order-details tfoot th,
.woocommerce-order table.woocommerce-table--order-details tfoot td {
  padding: 16px 18px;
  border: none;
  border-bottom: 1px solid var(--borders-color);
  vertical-align: top;
}

.woocommerce-order table.woocommerce-table--order-details tbody tr:last-child td {
  border-bottom: none;
}

.woocommerce-order table.woocommerce-table--order-details tbody tr {
  transition: background-color 0.2s ease;
}

.woocommerce-order table.woocommerce-table--order-details tbody tr:hover {
  background: rgba(var(--primary-color1-opc), 0.14);
}

.woocommerce-order table.woocommerce-table--order-details td.product-name a {
  color: var(--title-color);
  font-weight: 600;
  text-decoration: none;
  transition: color 0.2s ease;
}

.woocommerce-order table.woocommerce-table--order-details td.product-name a:hover {
  color: var(--primary-color2);
}

.woocommerce-order table.woocommerce-table--order-details .product-quantity {
  color: var(--text-color);
  font-weight: 500;
}

.woocommerce-order table.woocommerce-table--order-details td.product-total,
.woocommerce-order table.woocommerce-table--order-details tfoot td {
  text-align: right;
  white-space: nowrap;
}

.woocommerce-order table.woocommerce-table--order-details tfoot th {
  font-family: var(--font-spaceGrotesk);
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--text-color);
}

.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-order table.woocommerce-table--order-details tfoot tr:last-child td {
  border-bottom: none;
  padding-top: 20px;
}

.woocommerce-order table.woocommerce-table--order-details tfoot .woocommerce-Price-amount {
  font-family: var(--font-funnel-display);
  font-size: 18px;
  font-weight: 800;
  color: var(--primary-color2);
}

body.dark .woocommerce-order table.woocommerce-table--order-details tfoot .woocommerce-Price-amount {
  color: var(--primary-color1);
}

/* Pre-order info inside product cell */
.woocommerce-order table.woocommerce-table--order-details td.product-name .ywpo_release_date,
.woocommerce-order table.woocommerce-table--order-details td.product-name .preorder-my-account {
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.6;
  color: var(--text-color);
}

.woocommerce-order table.woocommerce-table--order-details td.product-name .preorder-date,
.woocommerce-order table.woocommerce-table--order-details td.product-name .preorder-time {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 99px;
  background: rgba(var(--primary-color1-opc), 0.35);
  color: var(--primary-color2);
  font-weight: 600;
  font-size: 12px;
}

body.dark .woocommerce-order table.woocommerce-table--order-details td.product-name .preorder-date,
body.dark .woocommerce-order table.woocommerce-table--order-details td.product-name .preorder-time {
  background: rgba(var(--primary-color1-opc), 0.1);
  color: var(--primary-color1);
}

/* Customer details */
.woocommerce-order .woocommerce-customer-details {
  animation: tyFadeUp 0.6s ease both;
  animation-delay: 0.4s;
}

/* Flex layout â€” NOT a grid. Billing wider than shipping. */
.woocommerce-order .woocommerce-customer-details .woocommerce-columns--addresses {
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
  max-width: none;
}

/* Address cards */
.woocommerce-order .woocommerce-customer-details .woocommerce-column {
  position: relative;
  flex: 1 1 0;
  min-width: 300px;
  padding: 30px 28px 28px;
  border: 1px solid var(--borders-color);
  border-radius: var(--ty-radius);
  background: var(--dark-white-color);
  box-shadow:
    0 24px 50px -30px rgba(var(--black-color-opc), 0.18),
    inset 0 1px 0 rgba(var(--white-color-opc), 0.6);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
  overflow: hidden;
}

body.dark .woocommerce-order .woocommerce-customer-details .woocommerce-column {
  box-shadow:
    0 24px 50px -30px rgba(0, 0, 0, 0.6),
    inset 0 1px 0 rgba(var(--white-color-opc), 0.06);
}

/* Billing card slightly wider */
.woocommerce-order .woocommerce-customer-details .woocommerce-column--billing-address {
  flex-grow: 1.15;
}

/* Gradient accent bar on top of each card */
.woocommerce-order .woocommerce-customer-details .woocommerce-column::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
}

.woocommerce-order .woocommerce-customer-details .woocommerce-column--billing-address::before {
  background: linear-gradient(90deg, var(--primary-color2), var(--primary-color1));
}

.woocommerce-order .woocommerce-customer-details .woocommerce-column--shipping-address::before {
  background: linear-gradient(90deg, var(--primary-color1), #8fd973);
}

/* Large watermark icon in the corner */
.woocommerce-order .woocommerce-customer-details .woocommerce-column::after {
  content: "\f007";
  position: absolute;
  bottom: -22px;
  right: -14px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 130px;
  line-height: 1;
  color: rgba(var(--black-color-opc), 0.04);
  transform: rotate(-12deg);
  pointer-events: none;
}

.woocommerce-order .woocommerce-customer-details .woocommerce-column--shipping-address::after {
  content: "\f0d1";
}

body.dark .woocommerce-order .woocommerce-customer-details .woocommerce-column::after {
  color: rgba(var(--white-color-opc), 0.05);
}

.woocommerce-order .woocommerce-customer-details .woocommerce-column:hover {
  transform: translateY(-5px);
  border-color: rgba(var(--primary-color1-opc), 0.9);
  box-shadow:
    0 32px 60px -28px rgba(var(--black-color-opc), 0.25),
    inset 0 1px 0 rgba(var(--white-color-opc), 0.6);
}

/* Card titles with icon badges */
.woocommerce-order .woocommerce-customer-details .woocommerce-column__title {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--borders-color);
  font-family: var(--font-spaceGrotesk);
  font-size: 19px;
  font-weight: 700;
  letter-spacing: 0.2px;
  color: var(--title-color);
}

/* Remove the generic fading line â€” border-bottom is used instead */
.woocommerce-order .woocommerce-customer-details .woocommerce-column__title::after {
  display: none;
}

.woocommerce-order .woocommerce-customer-details .woocommerce-column__title::before {
  content: "\f007";
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border-radius: 13px;
  background: linear-gradient(135deg, var(--primary-color2), #1a6b64);
  color: var(--primary-color1);
  font-family: "Font Awesome 5 Free";
  font-size: 16px;
  font-weight: 900;
  box-shadow: 0 8px 18px -8px rgba(var(--primary-color2-opc), 0.7);
}

.woocommerce-order .woocommerce-customer-details .woocommerce-column--shipping-address .woocommerce-column__title::before {
  content: "\f0d1";
  background: linear-gradient(135deg, var(--primary-color1), #8fd973);
  color: var(--primary-color2);
  box-shadow: 0 8px 18px -8px rgba(var(--primary-color1-opc), 0.9);
}

/* Address text */
.woocommerce-order .woocommerce-customer-details address {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 18px 20px;
  border-left: 3px solid var(--primary-color1);
  border-radius: 12px;
  background: rgba(var(--primary-color1-opc), 0.08);
  font-style: normal;
  font-size: 15px;
  line-height: 2.1;
  color: var(--text-color);
}

/* First line = customer name */
.woocommerce-order .woocommerce-customer-details address::first-line {
  font-weight: 700;
  color: var(--title-color);
}

/* Email chip */
.woocommerce-order .woocommerce-customer-details .woocommerce-customer-details--email {
  position: relative;
  z-index: 1;
  display: flex;
  width: fit-content;
  align-items: center;
  margin: 16px 0 0;
  padding: 10px 18px;
  border-radius: 99px;
  background: linear-gradient(120deg, var(--primary-color2), #1a6b64);
  color: #ffffff;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.2px;
  box-shadow: 0 10px 22px -12px rgba(var(--primary-color2-opc), 0.7);
  word-break: break-all;
}

body.dark .woocommerce-order .woocommerce-customer-details .woocommerce-customer-details--email {
  background: linear-gradient(120deg, var(--primary-color1), #a5e88a);
  color: var(--primary-color2);
}

/* Animation */
@keyframes tyFadeUp {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .woocommerce-order * {
    animation: none !important;
    transition: none !important;
  }
}

/* Responsive */
@media (max-width: 767px) {
  .woocommerce-order {
    margin: 24px auto 56px;
  }

  .woocommerce-order .woocommerce-notice--success.woocommerce-thankyou-order-received {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding: 20px;
    font-size: 16px;
  }

  .woocommerce-order .woocommerce-order-details {
    padding: 18px;
  }

  .woocommerce-order .woocommerce-customer-details .woocommerce-column {
    padding: 20px;
  }

  .woocommerce-order table.woocommerce-table--order-details thead th:first-child {
    border-radius: 12px 12px 0 0;
  }

  .woocommerce-order table.woocommerce-table--order-details thead th:last-child {
    border-radius: 0 0 12px 12px;
  }

  .woocommerce-order table.woocommerce-table--order-details thead th {
    display: block;
  }

  .woocommerce-order table.woocommerce-table--order-details thead {
    display: block;
    margin-bottom: 12px;
  }

  .woocommerce-order table.woocommerce-table--order-details thead tr {
    display: block;
  }
}

/*--------------------------------------------------------------
# WooCommerce Product Reviews â€” Premium Design
--------------------------------------------------------------*/
#reviews.woocommerce-Reviews {
  --rv-radius: 18px;
}

/* Section title */
#reviews .woocommerce-Reviews-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--borders-color);
  font-family: var(--font-spaceGrotesk);
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.2px;
  color: var(--title-color);
}

#reviews .woocommerce-Reviews-title::before {
  content: "";
  width: 10px;
  height: 10px;
  flex: 0 0 auto;
  border-radius: 3px;
  background: var(--primary-color1);
  box-shadow: 0 0 0 4px rgba(var(--primary-color1-opc), 0.25);
}

#reviews .woocommerce-Reviews-title span {
  color: var(--primary-color2);
}

body.dark #reviews .woocommerce-Reviews-title span {
  color: var(--primary-color1);
}

/* Reviews list */
#reviews ol.commentlist {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 0 0 32px;
  padding: 0;
  list-style: none;
}

/* Single review card */
#reviews .commentlist li.review {
  position: relative;
  margin: 0;
  padding: 24px;
  border: 1px solid var(--borders-color);
  border-radius: var(--rv-radius);
  background: var(--dark-white-color);
  box-shadow: 0 20px 44px -30px rgba(var(--black-color-opc), 0.16);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

#reviews .commentlist li.review:hover {
  transform: translateY(-3px);
  border-color: rgba(var(--primary-color1-opc), 0.9);
  box-shadow: 0 26px 50px -28px rgba(var(--black-color-opc), 0.22);
}

#reviews .commentlist li.review .comment_container {
  display: flex;
  gap: 18px;
  align-items: flex-start;
}

/* Avatar with gradient ring */
#reviews .commentlist li.review img.avatar {
  width: 56px !important;
  height: 56px !important;
  flex: 0 0 auto;
  border-radius: 50% !important;
  border: 3px solid rgba(var(--primary-color1-opc), 0.5) !important;
  box-shadow: 0 8px 18px -8px rgba(var(--black-color-opc), 0.35);
  background: #fff;
}

/* Comment text */
#reviews .commentlist li.review .comment-text {
  flex: 1;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
}

/* Star rating (display) */
#reviews .star-rating {
  position: relative;
  display: inline-block;
  width: calc(5 * 1.25em);
  height: 1.25em;
  font-size: 15px;
  line-height: 1.25;
  overflow: hidden;
  margin-bottom: 8px;
}

#reviews .star-rating::before,
#reviews .star-rating span::before {
  content: "â˜…â˜…â˜…â˜…â˜…";
  letter-spacing: 0.12em;
  white-space: nowrap;
}

#reviews .star-rating::before {
  color: rgba(var(--black-color-opc), 0.15);
}

body.dark #reviews .star-rating::before {
  color: rgba(var(--white-color-opc), 0.2);
}

#reviews .star-rating span {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  overflow: hidden;
  white-space: nowrap;
  font-size: 0;
}

#reviews .star-rating span::before {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 15px;
  color: #f5a623;
}

/* Meta row */
#reviews .commentlist li.review .comment-text p.meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
  font-size: 14px;
  color: var(--text-color);
}

#reviews .commentlist li.review .woocommerce-review__author {
  font-family: var(--font-spaceGrotesk);
  font-size: 15px;
  font-weight: 700;
  color: var(--title-color);
}

#reviews .commentlist li.review .woocommerce-review__dash {
  display: none;
}

#reviews .commentlist li.review time.woocommerce-review__published-date {
  position: relative;
  padding-left: 14px;
  font-size: 13px;
  color: var(--text-color);
}

#reviews .commentlist li.review time.woocommerce-review__published-date::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--primary-color1);
}

/* Review description */
#reviews .commentlist li.review .description {
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: var(--text-color);
}

#reviews .commentlist li.review .description p:last-child {
  margin-bottom: 0;
}

/* No reviews notice */
#reviews .woocommerce-noreviews {
  margin: 0 0 28px;
  padding: 16px 20px;
  border-radius: 12px;
  background: rgba(var(--primary-color1-opc), 0.14);
  color: var(--text-color);
  font-weight: 500;
}

/* ============================================================
   Review form
   ============================================================ */
#reviews #review_form_wrapper {
  margin-top: 8px;
}

#reviews #review_form {
  padding: 28px;
  border: 1px solid var(--borders-color);
  border-radius: var(--rv-radius);
  background: var(--dark-white-color);
  box-shadow: 0 24px 50px -30px rgba(var(--black-color-opc), 0.16);
}

#reviews #respond .comment-reply-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--borders-color);
  font-family: var(--font-spaceGrotesk);
  font-size: 19px;
  font-weight: 700;
  color: var(--title-color);
}

#reviews #respond .comment-reply-title::before {
  content: "\f005";
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex: 0 0 auto;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--primary-color2), #1a6b64);
  color: var(--primary-color1);
  font-family: "Font Awesome 5 Free";
  font-size: 15px;
  font-weight: 900;
  box-shadow: 0 8px 18px -8px rgba(var(--primary-color2-opc), 0.7);
}

body.dark #reviews #respond .comment-reply-title::before {
  background: linear-gradient(135deg, var(--primary-color1), #a5e88a);
  color: var(--primary-color2);
}

#reviews #respond .comment-notes {
  margin: 0 0 18px;
  font-size: 13px;
  color: var(--text-color);
}

/* Two-column field layout */
#reviews #commentform .row.g-4 {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin: 0;
}

#reviews #commentform > .row.g-4 + .form-submit,
#reviews #commentform .form-submit {
  margin: 18px 0 0;
}

#reviews #commentform .comment-form-author,
#reviews #commentform .comment-form-email {
  margin: 0;
}

#reviews #commentform .comment-form-rating,
#reviews #commentform .comment-form-comment,
#reviews #commentform .comment-form-cookies-consent {
  grid-column: 1 / -1;
  margin: 0;
}

/* Labels */
#reviews #commentform label {
  display: block;
  margin: 0 0 8px;
  font-family: var(--font-spaceGrotesk);
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--title-color);
}

#reviews #commentform label .required {
  color: #e05252;
}

/* Inputs */
#reviews #commentform input[type="text"],
#reviews #commentform input[type="email"],
#reviews #commentform textarea {
  width: 100%;
  padding: 13px 16px;
  border: 1px solid var(--borders-color);
  border-radius: 12px;
  background: rgba(var(--primary-color1-opc), 0.06);
  font-size: 14px;
  color: var(--title-color);
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

#reviews #commentform input[type="text"]:focus,
#reviews #commentform input[type="email"]:focus,
#reviews #commentform textarea:focus {
  border-color: var(--primary-color1);
  background: var(--dark-white-color);
  box-shadow: 0 0 0 4px rgba(var(--primary-color1-opc), 0.25);
}

#reviews #commentform textarea {
  min-height: 130px;
  resize: vertical;
}

/* Rating stars (form) */
#reviews .comment-form-rating .stars,
#reviews .comment-form-rating .stars > span {
  display: inline-flex;
  gap: 6px;
  margin: 0;
  font-size: 22px;
  line-height: 1;
}

#reviews .comment-form-rating .stars a {
  position: relative;
  display: block;
  width: 30px;
  height: 30px;
  overflow: hidden;
  text-indent: -9999px;
  transition: transform 0.15s ease;
}

#reviews .comment-form-rating .stars a::before {
  content: "â˜…";
  position: absolute;
  inset: 0;
  text-indent: 0;
  text-align: center;
  line-height: 30px;
  color: rgba(var(--black-color-opc), 0.18);
  transition: color 0.15s ease;
}

body.dark #reviews .comment-form-rating .stars a::before {
  color: rgba(var(--white-color-opc), 0.25);
}

#reviews .comment-form-rating .stars a:hover,
#reviews .comment-form-rating .stars a.active {
  transform: scale(1.12);
}

#reviews .comment-form-rating .stars a:hover::before,
#reviews .comment-form-rating .stars a.active::before {
  color: #f5a623;
}

/* Stars after the selected one stay gray */
#reviews .comment-form-rating .stars a.active ~ a::before {
  color: rgba(var(--black-color-opc), 0.18);
}

body.dark #reviews .comment-form-rating .stars a.active ~ a::before {
  color: rgba(var(--white-color-opc), 0.25);
}

/* Cookies consent */
#reviews #commentform .comment-form-cookies-consent {
  display: flex;
  align-items: center;
  gap: 10px;
}

#reviews #commentform .comment-form-cookies-consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  accent-color: var(--primary-color2);
}

#reviews #commentform .comment-form-cookies-consent label {
  margin: 0;
  font-family: var(--font-inter);
  font-size: 13px;
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0;
  color: var(--text-color);
}

/* Submit button */
#reviews #commentform .form-submit input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 34px;
  border: none;
  border-radius: 99px;
  background: linear-gradient(120deg, var(--primary-color2), #1a6b64);
  color: #ffffff;
  font-family: var(--font-spaceGrotesk);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.3px;
  cursor: pointer;
  box-shadow: 0 14px 28px -12px rgba(var(--primary-color2-opc), 0.7);
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

#reviews #commentform .form-submit input[type="submit"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 34px -12px rgba(var(--primary-color2-opc), 0.85);
  opacity: 0.95;
}

body.dark #reviews #commentform .form-submit input[type="submit"] {
  background: linear-gradient(120deg, var(--primary-color1), #a5e88a);
  color: var(--primary-color2);
}

/* Dark mode cards */
body.dark #reviews .commentlist li.review,
body.dark #reviews #review_form {
  box-shadow: 0 24px 50px -30px rgba(0, 0, 0, 0.6);
}

/* Responsive */
@media (max-width: 767px) {
  #reviews .commentlist li.review {
    padding: 18px;
  }

  #reviews .commentlist li.review .comment_container {
    gap: 14px;
  }

  #reviews .commentlist li.review img.avatar {
    width: 44px !important;
    height: 44px !important;
    border-width: 2px !important;
  }

  #reviews #review_form {
    padding: 20px;
  }

  #reviews #commentform .row.g-4 {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  #reviews .comment-form-rating .stars {
    font-size: 26px;
  }

  #reviews .comment-form-rating .stars a {
    width: 36px;
    height: 36px;
  }

  #reviews .comment-form-rating .stars a::before {
    line-height: 36px;
  }

  #reviews #commentform .form-submit input[type="submit"] {
    width: 100%;
  }
}

/*--------------------------------------------------------------
# Product Details â€” Premium Buy Now Button
--------------------------------------------------------------*/
.single-product .btn-buy-now {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 52px;
  margin-top: 14px;
  border-radius: 99px;
  overflow: hidden;
  background: linear-gradient(120deg, var(--primary-color2) 0%, #14524e 55%, #1a6b64 100%);
  color: #ffffff;
  font-family: var(--font-spaceGrotesk);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  text-decoration: none;
  box-shadow:
    0 16px 32px -14px rgba(var(--primary-color2-opc), 0.75),
    inset 0 1px 0 rgba(var(--white-color-opc), 0.18);
  transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease;
}

/* Bolt icon */
.single-product .btn-buy-now::before {
  content: "\f0e7";
  font-family: "Font Awesome 5 Free";
  font-size: 15px;
  font-weight: 900;
  color: var(--primary-color1);
}

/* Shine sweep */
.single-product .btn-buy-now::after {
  content: "";
  position: absolute;
  top: -20%;
  left: -80%;
  width: 45%;
  height: 140%;
  transform: skewX(-22deg);
  background: linear-gradient(90deg, transparent, rgba(var(--white-color-opc), 0.35), transparent);
  transition: left 0.55s ease;
}

.single-product .btn-buy-now:hover {
  transform: translateY(-3px);
  filter: saturate(1.1);
  color: #ffffff;
  box-shadow:
    0 22px 40px -14px rgba(var(--primary-color2-opc), 0.9),
    inset 0 1px 0 rgba(var(--white-color-opc), 0.18);
}

.single-product .btn-buy-now:hover::after {
  left: 130%;
}

.single-product .btn-buy-now:active {
  transform: translateY(-1px) scale(0.99);
}

/* Dark mode */
body.dark .single-product .btn-buy-now {
  background: linear-gradient(120deg, var(--primary-color1) 0%, #a5e88a 60%, #8fd973 100%);
  color: var(--primary-color2);
  box-shadow:
    0 16px 32px -14px rgba(var(--primary-color1-opc), 0.8),
    inset 0 1px 0 rgba(var(--white-color-opc), 0.35);
}

body.dark .single-product .btn-buy-now::before {
  color: var(--primary-color2);
}

body.dark .single-product .btn-buy-now:hover {
  box-shadow:
    0 22px 42px -14px rgba(var(--primary-color1-opc), 0.95),
    inset 0 1px 0 rgba(var(--white-color-opc), 0.35);
}

/* Keep premium shape on mobile (theme uses !important here) */
@media (max-width: 768px) {
  .single-product .btn-buy-now {
    height: 50px !important;
    padding: 0 20px !important;
    font-size: 14px !important;
    border-radius: 99px !important;
    margin-top: 12px !important;
  }
}
