/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Template: generatepress
Author: Tom Usborne
Author URI: https://generatepress.com/about
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
Tags: two-columns,three-columns,one-column,right-sidebar,left-sidebar,footer-widgets,blog,e-commerce,flexible-header,full-width-template,buddypress,custom-header,custom-background,custom-menu,custom-colors,sticky-post,threaded-comments,translation-ready,rtl-language-support,featured-images,theme-options
Version: 3.6.1.1771997092
Updated: 2026-02-25 05:24:52

*/


/* ==========================================================================
1. Base Typography & Font Family
========================================================================== */

html,
body {
	font-family: 'Poppins', -apple-system, BlinkMacOSystemFont, 'Segoe UI', Roboto,
		Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif !important;
	/* font-weight: 400; */
	/* line-height: 1.6; */
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'Poppins', sans-serif !important;
	/* font-weight: 600; */
}

input,
textarea,
select,
button,
a,
p,
li,
div,
span,
label {
	font-family: 'Poppins', sans-serif !important;
}

/* ==========================================================================
2. Form Elements – Inputs, Textareas, Selects
========================================================================== */

/* ── Common input styles ── */
input[type='text'],
input[type='email'],
input[type='tel'],
input[type='url'],
input[type='password'],
input[type='number'],
input[type='search'],
input[type='date'],
input[type='datetime-local'],
select,
.woocommerce-input-wrapper input,
.woocommerce-input-wrapper select,
.select2-container--default .select2-selection--single {
	height: 38px !important;
	min-height: 38px !important;
	line-height: 1.4 !important;
	padding: 0 14px !important;
	border: 1px solid #ff4d23 !important;
	border-radius: 6px !important;
	background-color: #ffffff !important;
	color: #000000 !important;
	font-size: 15px !important;
	box-sizing: border-box !important;
	transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

/* ── Textarea specific ── */
textarea,
.woocommerce-input-wrapper textarea {
	/* height & min-height removed intentionally */
	line-height: 1.5 !important;
	padding: 10px 14px !important;
	border: 1px solid #ff4d23 !important;
	border-radius: 6px !important;
	background-color: #ffffff !important;
	color: #000000 !important;
	font-size: 15px !important;
	box-sizing: border-box !important;
	transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

/* ── Focus state ── */
input[type='text']:focus,
input[type='email']:focus,
input[type='tel']:focus,
input[type='url']:focus,
input[type='password']:focus,
input[type='number']:focus,
input[type='search']:focus,
input[type='date']:focus,
input[type='datetime-local']:focus,
textarea:focus,
select:focus,
.woocommerce-input-wrapper input:focus,
.woocommerce-input-wrapper textarea:focus,
.woocommerce-input-wrapper select:focus,
.select2-container--default.select2-container--focus .select2-selection--single {
	border-color: #ff4d23 !important;
	box-shadow: 0 0 0 3px rgba(255, 77, 35, 0.2) !important;
	outline: none !important;
}

.e-woo-select2-wrapper .select2-results__option:focus{
	color:white !important;
	background-color:#ff4d23 !important
}
.e-woo-select2-wrapper .select2-results__option:hover{
	color:white !important;
	background-color:#ff4d23 !important
}

/* ── Hover state (non-focus) ── */
input:hover:not(:focus),
textarea:hover:not(:focus),
select:hover:not(:focus),
.woocommerce-input-wrapper input:hover:not(:focus),
.woocommerce-input-wrapper textarea:hover:not(:focus),
.woocommerce-input-wrapper select:hover:not(:focus) {
	border-color: #ff6b44 !important;
}

/* ── Custom select arrow ── */
select {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	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='%23FF4D23' d='M6 9l4-4H2z'/%3E%3C/svg%3E")
		!important;
	background-repeat: no-repeat !important;
	background-position: right 12px center !important;
	background-size: 12px !important;
	padding-right: 32px !important;
}

select::-ms-expand {
	display: none !important;
}

/* ── Select2 overrides ── */
.select2-container--default .select2-selection--single {
	height: 38px !important;
	border: 1px solid #ff4d23 !important;
	border-radius: 6px !important;
	background-color: #ffffff !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: unset !important;
	padding-left: 14px !important;
	color: #000000 !important;
	font-size: 15px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 38px !important;
	width: 30px !important;
}

.select2-container--default
.select2-selection--single
.select2-selection__arrow
b {
	border-color: #ff4d23 transparent transparent transparent !important;
}

/* ── Placeholder color ── */
::-webkit-input-placeholder {
	color: #999999 !important;
	opacity: 1 !important;
}
::-moz-placeholder {
	color: #999999 !important;
	opacity: 1 !important;
}
:-ms-input-placeholder {
	color: #999999 !important;
	opacity: 1 !important;
}
::-ms-input-placeholder {
	color: #999999 !important;
	opacity: 1 !important;
}
::placeholder {
	color: #999999 !important;
	opacity: 1 !important;
}

/* ==========================================================================
3. Headings with Decorative Background
========================================================================== */

.custom-head h1,
.custom-head h2 {
    position: relative;
}

/* first letter */
.custom-head .first-letter {
    position: relative;
    display: inline-block;
    z-index: 1;
}

/* circle */
.custom-head .first-letter::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    
    width: 1.1em;
    height: 1.1em;
    
    background: #ff4d23;
    border-radius: 50%;
    
    z-index: -1;
}

/* IMPORTANT: next letter always above */
.custom-head .next-letter {
    position: relative;
    z-index: 2;
}

/* ==========================================================================
4. Buttons
========================================================================== */

/* Primary Sponge Button */
.primaray-btn-sponge a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
/* 	background: linear-gradient(135deg, #ff4d23, #ff7a59); */
	background-color:#FF4D23;
	color: #fff;
	padding: 14px 24px;
	border-radius: 50px;
	font-weight: 600;
	text-decoration: none;
	position: relative;
	overflow: hidden;
	transition: all 0.4s ease;
}

.primaray-btn-sponge a:hover {
	box-shadow: 0 12px 25px rgba(255, 77, 35, 0.35);
}

.primaray-btn-sponge a:active {
	transform: scale(0.98);
}

/* All submit-style buttons */
button[type='submit'],
input[type='submit'],
.woocommerce button.button.alt,
.elementor-button[type='submit'] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
/* 	background: linear-gradient(135deg, #ff4d23, #ff7a59) !important; */
	background-color:#FF4D23 !important;
	color: #fff !important;
	padding: 14px 28px !important;
	border-radius: 50px !important;
	border: none !important;
	font-weight: 600;
	font-size: 16px;
	text-decoration: none;
	transition: all 0.3s ease;
	cursor: pointer;
}

button[type='submit']:hover,
input[type='submit']:hover,
.woocommerce button.button.alt:hover,
.elementor-button[type='submit']:hover {
	box-shadow: 0 12px 25px rgba(255, 77, 35, 0.35);
	transform: translateY(-2px);
}

button[type='submit']:active,
input[type='submit']:active,
.woocommerce button.button.alt:active,
.elementor-button[type='submit']:active {
	transform: scale(0.98);
}

/* ==========================================================================
5. WooCommerce Notices & Messages
========================================================================== */

.woocommerce-notices-wrapper {
	margin: 20px 0 !important;
}

/* Success message */
.woocommerce-message {
	background: #fff !important;
	border-left: 5px solid #ff4d23 !important;
	border-radius: 12px !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #333 !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
}

.woocommerce-message::before {
	content: '✓' !important;
	color: #ff4d23 !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	margin-right: 10px !important;
}

.woocommerce-message .wc-forward {
/* 	background: linear-gradient(135deg, #ff4d23, #ff7a59) !important; */
	background-color:#FF4D23 !important;
	color: #fff !important;
	padding: 8px 18px !important;
	border-radius: 30px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	border: none !important;
	transition: all 0.3s ease !important;
}

.woocommerce-message .wc-forward:hover {
	box-shadow: 0 8px 18px rgba(255, 77, 35, 0.35) !important;
	transform: translateY(-2px) !important;
}

/* Info & empty cart */
.woocommerce-info,
.cart-empty.woocommerce-info {
	background: #fff !important;
	border-left: 5px solid #ff4d23 !important;
	border-radius: 12px !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #333 !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
}

.woocommerce-info {
	border-top-color: #ff4d23 !important;
}

/* Error message */
.woocommerce-notices-wrapper .woocommerce-error {
	list-style: none !important;
	margin: 20px 0 !important;
	padding: 16px 20px !important;
	background: #fff !important;
	border-left: 5px solid #d63638 !important;
	border-radius: 12px !important;
	color: #333 !important;
	font-weight: 500 !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
}

.woocommerce-notices-wrapper .woocommerce-error::before {
	color: #d63638 !important;
	font-weight: 700 !important;
}

.woocommerce-notices-wrapper .woocommerce-error li {
	margin: 0 !important;
	padding: 0 !important;
}
.wc_payment_methods.payment_methods.methods li .woocommerce-info {
	box-shadow:none !important;
	border:none !important;
}
.woocommerce-message {
	border-top-color: #ff4d23 !important;
}
/* Mobile adjustments for notices */
@media (max-width: 768px) {
	.woocommerce-message {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	.woocommerce-message .wc-forward {
		margin-top: 10px !important;
	}
}

/* Focus states for notices */
.woocommerce-message:focus,
.woocommerce-message:focus-visible,
.woocommerce-message .wc-forward:focus,
.woocommerce-message .wc-forward:focus-visible,
.woocommerce-notices-wrapper .woocommerce-error:focus,
.woocommerce-notices-wrapper .woocommerce-error:focus-visible {
	outline: 2px solid #ff4d23 !important;
}

/* ==========================================================================
6. WooCommerce Links & Misc
========================================================================== */

.woocommerce a.restore-item,
.woocommerce a.restore-item:visited {
	color: #ff4d23 !important;
}

.woocommerce a.restore-item:hover {
	color: #e6451f !important;
}

/* .woocommerce-cart a:hover,
.woocommerce-cart a:focus,
.woocommerce-cart a:focus-visible,
.woocommerce-checkout a:hover,
.woocommerce-checkout a:focus,
.woocommerce-checkout a:focus-visible {
color: #ff4d23 !important;
} */

.woocommerce-checkout a.e-show-coupon-form:hover,
.woocommerce-checkout a.woocommerce-privacy-policy-link:hover {
	color: #ff4d23 !important;
}

/* Tiny superscript badge style */
.custom-tm {
	font-size: 0.25em;
    vertical-align: super;
    border: 1px solid;
    border-radius: 50px;
    padding: 1.5px;
    margin-left: 1.5px;
}

/* others css homepage boxes and also about us boxes */
.icon-box-cus h3 {
    height: 38px;
}
@media (max-width:767px){
.icon-box-cus h3 {
    height: auto;
}
}


/* ======================================
   THANK YOU / ORDER DETAILS PAGE ONLY
   Scope: .woocommerce-order
   ====================================== */
.woocommerce-order {
    color: black;
}
/* Success message */
.woocommerce-order .woocommerce-notice--success {
    background: #fff !important;
    border-left: 5px solid #FF4D23 !important;
    padding: 16px 20px !important;
    border-radius: 12px !important;
    font-weight: 600 !important;
    color: #000 !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
}

/* Order overview box */
.woocommerce-order .woocommerce-order-overview {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
    gap: 16px !important;

    background: #fff !important;
    padding: 20px !important;
    border-radius: 16px !important;
    margin: 25px 0 !important;
    list-style: none !important;

    box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
}

.woocommerce-order .woocommerce-order-overview li {
    margin: 0 !important;
    font-size: 14px !important;
    color: #000 !important;
}

.woocommerce-order .woocommerce-order-overview strong {
    display: block !important;
    margin-top: 4px !important;
    font-size: 16px !important;
    color: #111 !important;
}

/* Section titles */
.woocommerce-order h2 {
    font-size: 20px !important;
    font-weight: 700 !important;
    margin-bottom: 15px !important;
}

/* Order details table */
.woocommerce-order table.shop_table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #fff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
}

.woocommerce-order table.shop_table th,
.woocommerce-order table.shop_table td {
    padding: 14px 16px !important;
    border: none !important;
	color:#000 !important;
}

.woocommerce-order table.shop_table td {
	color:#000 !important;
}

.woocommerce-order table.shop_table thead th {
	color: #fff !important;
}

.woocommerce-order table.shop_table td,
.woocommerce-order table.shop_table tr {
	color:#000 !important;
}

.woocommerce-order table.shop_table thead th {
    background: #ff4d23 !important;
    font-weight: 600 !important;
}

.woocommerce-order table.shop_table tfoot th {
    font-weight: 600 !important;
}

.woocommerce-order table.shop_table tfoot tr:last-child th,
.woocommerce-order table.shop_table tfoot tr:last-child td {
    font-size: 16px !important;
    font-weight: 700 !important;
}

/* Product link */
.woocommerce-order .product-name a {
    color: #FF4D23 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

/* Customer details boxes */
.woocommerce-order .woocommerce-columns--addresses {
/*     display: flex !important;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
    gap: 20px !important; */
}

.woocommerce-order .woocommerce-column {
    background: #fff !important;
    padding: 20px !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
	color:black;
}

.woocommerce-order address {
    font-style: normal !important;
    line-height: 1.6 !important;
    color: #000 !important;
}
.woocommerce ul.order_details::after, .woocommerce ul.order_details::before {
	display:none;
}
/* Mobile spacing */
@media (max-width: 767px) {
    .woocommerce-order .woocommerce-order-overview {
        padding: 16px !important;
    }
}