/*
Theme Name:   CUVANA
Theme URI:    https://cuvanaecigar.com
Description:  Kadence child theme for CUVANA. A faithful recreation of the Shopify "Venue" look (charcoal, cream, gold, Poppins). Colours and fonts are Kadence defaults and can be changed in Appearance → Customize. Setup: Appearance → CUVANA Setup.
Author:       Ewing Ventures LLC
Template:     kadence
Version:      1.2.5
Text Domain:  cuvana-kadence
*/

/* Shared colour tokens (also used by the CUVANA Commerce plugin's picker, forms + ZIP checker). */
:root {
	--cuvana-gold: #d6a849;
	--cuvana-gold-2: #f1ab3c;
	--cuvana-text: #f5f0e8;
	--cuvana-muted: #8b8b8b;
	--cuvana-bg: #444444;
	--cuvana-card: #3a3a3a;
	--cuvana-line: #5a5a5a;
	--cuvana-black: #212121;
	--cuvana-radius: 8px;
}

/* ---------- Top bar (nicotine warning always visible) ---------- */
.cuvana-topbar {
	display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 28px;
	background: var(--cuvana-black); color: #f2f2f2;
	font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
	padding: 7px 16px; text-align: center;
}
.cuvana-topbar__warning { color: #fff; }
.cuvana-topbar__promo a { color: var(--cuvana-gold); text-decoration: underline; }
@media (max-width: 767px) { .cuvana-topbar__promo { display: none; } }

/* ---------- Header: menu left, logo centre, account + cart right; no gold line ---------- */
.main-navigation .primary-menu-container > ul > li > a,
.header-navigation .header-menu-container > ul > li > a {
	font-weight: 600; text-transform: uppercase; letter-spacing: 1px; font-size: 13px;
}
/* Header that slides back in on scroll-up: page colour, not white. */
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start) > .site-header-row-container-inner,
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start):not(.site-header-row-container) { background: var(--cuvana-bg); }
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start) { box-shadow: 0 2px 10px rgba(0, 0, 0, .35); }
.cuvana-account-link, .header-html .cuvana-account-link { text-decoration: none; }
.cuvana-account-link { display: inline-flex; align-items: center; gap: 6px; color: var(--cuvana-text); font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; }
.cuvana-account-link:hover { color: var(--cuvana-gold); }
.header-html .header-html-inner p { margin: 0; }

/* ---------- General on dark ---------- */
body { -webkit-font-smoothing: antialiased; }
a { color: var(--cuvana-gold); }
a:hover { color: var(--cuvana-gold-2); }
.entry-content-wrap { background: transparent; }
.content-bg, .entry.single-entry, .entry.loop-entry { background: transparent; box-shadow: none; }
/* background-color (not the "background" shorthand) so dropdowns keep their arrow. */
input[type=text], input[type=email], input[type=tel], input[type=number], input[type=search], input[type=password], select, textarea {
	background-color: #2f2f2f; color: var(--cuvana-text); border-color: var(--cuvana-line); border-radius: 6px;
}
::placeholder { color: #9a958d; }

/* Buttons: gold, near-black text, rounded (also covers WooCommerce buttons). */
.button, .wp-element-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .wc-block-components-button:not(.is-link) {
	border-radius: var(--cuvana-radius);
}

/* ---------- Page titles: on the page background, centred, short gold underline ---------- */
.entry-header .entry-title, .woocommerce-products-header__title, .archive-title { text-align: center; }
.entry-header .entry-title::after, .woocommerce-products-header__title::after, .archive-title::after {
	content: ''; display: block; width: 60px; height: 2px; margin: 14px auto 0; background: var(--cuvana-gold);
}
.single-product .entry-header .entry-title::after, .product_title::after { display: none; }
.entry-content { line-height: 1.7; }

/* ---------- Homepage ---------- */
/* Photos are greyed toward the page colour, like Shopify's "semi" overlay (works on pages already built). */
.wp-block-cover.cuvana-hero > span.wp-block-cover__background.has-background-dim { opacity: .6; }
/* Hero and panel text sit in a darker rounded bubble (like Shopify): box centred, text left. */
.cuvana-bubble {
	background: rgba(40, 40, 40, .92); border-radius: 14px; padding: 28px 32px; max-width: 520px; margin: 0 auto;
	text-align: left;
}
.cuvana-bubble .has-text-align-center { text-align: left; }
.cuvana-bubble h1, .cuvana-bubble h2 { color: var(--cuvana-text); margin-bottom: 0; font-size: 28px; line-height: 1.3; }
.cuvana-bubble h1::after, .cuvana-bubble h2::after {
	content: ''; display: block; width: 60px; height: 2px; margin: 14px 0 16px; background: var(--cuvana-gold);
}
.cuvana-bubble--left { margin: 0; }
.cuvana-bubble .wp-block-buttons { justify-content: flex-start; }
.cuvana-hero .wp-block-cover__inner-container { max-width: 1100px; }

/* Four highlights: 2 × 2 grid with gold icons. (Kadence wraps group contents in an inner container.) */
.cuvana-highlights { max-width: 980px; margin: 56px auto; padding: 0 16px; }
.cuvana-highlights > .wp-block-group__inner-container { display: grid; grid-template-columns: 1fr 1fr; gap: 28px 40px; }
.cuvana-highlight { text-align: center; }
.cuvana-highlight h3 { font-size: 20px; margin: 10px 0 6px; }
.cuvana-highlight p { margin: 0 0 4px; }
.cuvana-icon { display: inline-block; color: var(--cuvana-gold); line-height: 0; }
.cuvana-icon svg { width: 44px; height: 44px; }
@media (max-width: 600px) { .cuvana-highlights > .wp-block-group__inner-container { grid-template-columns: 1fr; } }

/* Auto carousel (assets/js/cuvana.js): slides stack and fade. */
.cuvana-carousel { position: relative; }
.cuvana-carousel__track.is-ready { display: grid; }
.cuvana-carousel__track.is-ready > :not(.cuvana-carousel__dots) { grid-area: 1 / 1; opacity: 0; visibility: hidden; transition: opacity .8s ease, visibility .8s; margin-top: 0; margin-bottom: 0; }
.cuvana-carousel__track.is-ready > .is-active { opacity: 1; visibility: visible; }
.cuvana-carousel__dots { position: absolute; bottom: 14px; left: 0; right: 0; display: flex; justify-content: center; gap: 8px; z-index: 3; }
.cuvana-carousel__dots button { width: 10px; height: 10px; min-height: 0; padding: 0; border-radius: 50%; border: 1px solid var(--cuvana-text); background: transparent; cursor: pointer; }
.cuvana-carousel__dots button[aria-current="true"] { background: var(--cuvana-gold); border-color: var(--cuvana-gold); }

/* Outline buttons in the photo-panel blurbs. */
.wp-block-button.is-style-outline > .wp-block-button__link,
.entry-content .wp-block-button.is-style-outline > .wp-block-button__link.wp-element-button {
	border: 2px solid var(--cuvana-gold); color: var(--cuvana-gold); background: transparent; border-radius: var(--cuvana-radius);
}
.entry-content .wp-block-button.is-style-outline > .wp-block-button__link.wp-element-button:hover { background: var(--cuvana-gold); color: var(--cuvana-black); }

/* ---------- Shop / product ---------- */
.woocommerce div.product .product_title { font-size: 2rem; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--cuvana-text); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: var(--cuvana-text); }
.woocommerce div.product form.cart { flex-wrap: wrap; }
.woocommerce .woocommerce-tabs ul.tabs li a { color: var(--cuvana-text); }
.woocommerce-message, .woocommerce-info { background: var(--cuvana-card); color: var(--cuvana-text); }

/* ---------- Block cart & checkout on dark ---------- */
.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-components-form .wc-block-components-text-input input,
.wc-blocks-components-select .wc-blocks-components-select__select {
	background-color: #2f2f2f !important; color: var(--cuvana-text) !important; border-color: var(--cuvana-line) !important;
}
.wc-block-components-text-input label, .wc-blocks-components-select__label { color: #c9c3b8 !important; }
.wc-block-components-sidebar-layout .wc-block-components-main,
.wp-block-woocommerce-checkout-order-summary-block, .wc-block-components-totals-wrapper { color: var(--cuvana-text); }
.wc-block-components-button:not(.is-link) { background: var(--cuvana-gold); color: var(--cuvana-black); }
.wc-block-components-notice-banner.is-warning { color: #1e1e1e; }

/* ---------- Footer: four columns, then payment icons + copyright ---------- */
.site-footer { color: var(--cuvana-text); }
.site-footer .widget a, .site-footer .footer-navigation a { color: var(--cuvana-text); }
.site-footer .widget a:hover { color: var(--cuvana-gold); }
.site-footer .widget-title, .site-footer .widget h4 { font-size: 15px; text-transform: uppercase; letter-spacing: 1px; color: var(--cuvana-text); margin-bottom: 12px; }
.site-footer .widget ul { list-style: none; margin: 0; padding: 0; }
.site-footer .widget li { margin: 0 0 8px; }
.site-middle-footer-wrap { border-top: 1px solid var(--cuvana-line); }
.site-bottom-footer-wrap { font-size: 13px; color: #bdb7ad; }
.cuvana-payment-icons { display: inline-flex; flex-wrap: wrap; gap: 8px; margin-bottom: 6px; }
.cuvana-payment-icons img { height: 24px; width: 38px; }
.footer-social-wrap { margin-top: 12px; }

/* ---------- Admin-only copy review banner ---------- */
.cuvana-copy-review { background: #fff4d6; color: #3b2f00; border-left: 4px solid var(--cuvana-gold-2); padding: 10px 14px; margin: 16px auto; max-width: 1100px; font-size: 14px; }
@media (max-width: 600px) {
	.cuvana-bubble { padding: 20px 18px; }
	.cuvana-bubble h1 { font-size: 26px; }
	.cuvana-bubble h2 { font-size: 22px; }
}
