/**
 * GoldStar GPS  Product Pages Styles
 *
 * Prefix   : .gs-pp- (goldstar product page)
 * Branding : var(--solera-jacarta) #32245e / var(--solera-sun) #feb032
 *
 * Shared header/footer styles come from base-parts/ via inc/enqueue.php.
 */

/* ----------------------------------------------------------
   Page shell
   ---------------------------------------------------------- */
.gs-pp-page {
display: flex;
flex-direction: column;
width: 100%;
margin: 0 auto;
background: var(--solera-white);
}

/* Force full-width layout on this page only */
.site-content > .ast-container {
max-width: 100% !important;
padding: 0 !important;
}

/* ----------------------------------------------------------
   1. HERO
   White background; image carousel left, info card right.
   ---------------------------------------------------------- */
.gs-pp-hero {
padding: 3rem 0;
}

.gs-pp-hero .ast-container {
position: relative;
display: flex !important;
flex-direction: column;
}

.gs-pp-hero__top {
display: flex !important;
align-items: center;
gap: 3rem;
}

/* Left: product image */
.gs-pp-hero__image {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
position: relative;
}

/* Right: info card */
.gs-pp-hero__card {
flex: 1.4;
background: var(--solera-white);
border: 1px solid #d0d5dd;
padding: 2rem 2.5rem;
display: flex;
flex-direction: column;
gap: 0.8rem;
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
}

.gs-pp-hero__title {
font-size: 2rem !important;
font-weight: 700 !important;
color: var(--solera-jacarta) !important;
line-height: 1.2 !important;
margin: 0 !important;
}

.gs-pp-hero__subtitle {
font-size: 1rem;
font-weight: 400;
margin: 0;
}

/* Price row */
.gs-pp-hero__pricing {
display: flex;
align-items: baseline;
flex-wrap: wrap;
gap: 0.35rem;
margin-top: 0.25rem;
}

.gs-pp-hero__price-was {
font-size: 1rem;
color: #aaa;
text-decoration: line-through;
}

.gs-pp-hero__price-was .woocommerce-Price-amount {
color: inherit;
font-size: inherit;
}

.gs-pp-hero__price-now {
font-size: 2.1rem;
font-weight: 700;
color: var(--solera-jacarta);
line-height: 1;
}

.gs-pp-hero__price-now .woocommerce-Price-amount {
font-size: inherit;
color: inherit;
}

/* BUY NOW button -- overrides WC/Astra resets */
.gs-pp-atc,
.gs-pp-atc:focus,
.gs-pp-atc:active,
.gs-pp-atc[disabled] {
background-color: var(--solera-sun) !important;
color: var(--solera-jacarta) !important;
border: none !important;
font-weight: 700 !important;
font-size: 0.95rem !important;
letter-spacing: 0.06em !important;
text-decoration: none !important;
box-shadow: none !important;
filter: none !important;
transition: background-color 0.2s ease !important;
width: 100% !important;
text-align: center !important;
}

.gs-pp-atc:hover {
background-color: #e09820 !important;
}

.gs-pp-atc:focus-visible {
outline: 3px solid var(--solera-jacarta) !important;
outline-offset: 2px !important;
box-shadow: 0 0 0 5px rgba(50, 36, 94, 0.25) !important;
}

/* ----------------------------------------------------------
   2. PRODUCT DETAILS (two-column)
   Left  : headline + description
   Right : "What's Included" checklist
   ---------------------------------------------------------- */
.gs-pp-details {
background: var(--solera-white);
padding: 3rem 0;
}

.gs-pp-details__inner {
display: flex !important;
gap: 4rem;
align-items: flex-start;
}

/* Left column */
.gs-pp-details__desc {
flex: 1.1;
display: flex;
flex-direction: column;
gap: 1rem;
}

.gs-pp-details__headline {
font-size: 1.3rem !important;
font-weight: 400 !important;
color: var(--solera-shark) !important;
line-height: 1.3 !important;
margin: 0 !important;
}

/* Right column */
.gs-pp-details__features {
flex: 0.9;
display: flex;
flex-direction: column;
gap: 1rem;
}

.gs-pp-features__title {
font-size: 1.05rem !important;
font-weight: 700 !important;
color: var(--solera-shark) !important;
margin: 0 !important;
}

/* Checklist with amber checkmarks */
.gs-pp-features__list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 0.6rem;
}

.gs-pp-features__list li {
position: relative;
padding-left: 1.6rem;
font-size: 0.95rem;
color: #333;
line-height: 1.55;
}

.gs-pp-features__list li::before {
content: '\2714';
position: absolute;
left: 0;
top: 0;
color: var(--solera-sun);
font-weight: 700;
font-size: 1rem;
}

/* ----------------------------------------------------------
   Sale badge (inside .gs-pp-hero__image)
   ---------------------------------------------------------- */
.gs-pp-carousel__badge {
position: absolute;
top: 12px;
left: 12px;
z-index: 3;
background: var(--solera-white);
color: var(--solera-shark);
font-size: 0.8rem;
font-weight: 600;
padding: 4px 12px;
border-radius: 999px;
pointer-events: none;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
}

/* ----------------------------------------------------------
   RESPONSIVE — stack columns on small screens
   ---------------------------------------------------------- */
@media (max-width: 768px) {
.gs-pp-hero__top {
flex-direction: column;
gap: 1.5rem;
}

.gs-pp-hero__image,
.gs-pp-hero__card {
flex: unset;
width: 100%;
}

.gs-pp-details__inner {
flex-direction: column !important;
gap: 2rem;
}

.gs-pp-details__desc,
.gs-pp-details__features {
flex: unset;
width: 100%;
}
}