/* ═══════════════════════════════════════════════════════
   HOMEPAGE STYLES
   File: assets/css/homepage.css
═══════════════════════════════════════════════════════ */

/* ── Hero Banner ── */
.pm-hero {
    background: linear-gradient(135deg, #1a1a2e 0%, #2d2b55 50%, #1a1a2e 100%);
    padding: 64px 0;
    position: relative;
    overflow: hidden;
}
.pm-hero::before {
    content: '';
    position: absolute;
    width: 500px; height: 500px;
    border-radius: 50%;
    background: rgba(79,70,229,0.12);
    top: -150px; right: -100px;
    pointer-events: none;
}
.pm-hero::after {
    content: '';
    position: absolute;
    width: 300px; height: 300px;
    border-radius: 50%;
    background: rgba(124,58,237,0.1);
    bottom: -80px; left: -60px;
    pointer-events: none;
}
.pm-hero-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 48px;
    position: relative; z-index: 1;
}
.pm-hero-content { color: #fff; }
.pm-hero-eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    background: rgba(79,70,229,0.3); border: 1px solid rgba(129,140,248,0.4);
    color: #a5b4fc; font-size: 0.78rem; font-weight: 700;
    padding: 5px 14px; border-radius: 99px; margin-bottom: 20px;
    text-transform: uppercase; letter-spacing: 0.08em;
}
.pm-hero-content h1 {
    font-family: var(--pm-font-display) !important;
    font-size: 2.8rem; font-weight: 800; line-height: 1.15;
    color: #fff; margin-bottom: 18px;
}
.pm-hero-content h1 span { color: #a5b4fc; }
.pm-hero-content p { font-size: 1.05rem; color: rgba(255,255,255,0.72); margin-bottom: 32px; line-height: 1.7; }
.pm-hero-btns { display: flex; gap: 14px; flex-wrap: wrap; }
.pm-btn-primary {
    background: linear-gradient(135deg, var(--pm-primary), var(--pm-accent));
    color: #fff; padding: 13px 28px; border-radius: var(--pm-radius-sm);
    font-weight: 700; font-size: 0.92rem; font-family: var(--pm-font);
    display: inline-flex; align-items: center; gap: 8px;
    transition: all 0.2s; box-shadow: 0 4px 16px rgba(79,70,229,0.35);
    text-decoration: none;
}
.pm-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(79,70,229,0.45); color: #fff; }
.pm-btn-outline {
    background: transparent; color: #fff;
    border: 2px solid rgba(255,255,255,0.3);
    padding: 11px 26px; border-radius: var(--pm-radius-sm);
    font-weight: 600; font-size: 0.92rem; font-family: var(--pm-font);
    display: inline-flex; align-items: center; gap: 8px;
    transition: all 0.2s; text-decoration: none;
}
.pm-btn-outline:hover { border-color: #fff; background: rgba(255,255,255,0.08); color: #fff; }

.pm-hero-stats {
    display: flex; gap: 28px; margin-top: 36px; padding-top: 28px;
    border-top: 1px solid rgba(255,255,255,0.12);
}
.pm-hero-stat-num { font-family: var(--pm-font-display); font-size: 1.6rem; font-weight: 800; color: #fff; line-height: 1; }
.pm-hero-stat-label { font-size: 0.78rem; color: rgba(255,255,255,0.55); margin-top: 3px; }

.pm-hero-image { position: relative; }
.pm-hero-image img { width: 100%; border-radius: var(--pm-radius-lg); box-shadow: 0 24px 60px rgba(0,0,0,0.4); }
.pm-hero-badge {
    position: absolute; bottom: -16px; left: -16px;
    background: #fff; border-radius: var(--pm-radius-md);
    padding: 14px 18px; box-shadow: var(--pm-shadow-lg);
    display: flex; align-items: center; gap: 10px;
}
.pm-hero-badge-icon { font-size: 24px; }
.pm-hero-badge-text { font-size: 0.8rem; font-weight: 700; color: var(--pm-text-dark); }
.pm-hero-badge-sub  { font-size: 0.72rem; color: var(--pm-text-light); }

@media (max-width: 768px) {
    .pm-hero-inner { grid-template-columns: 1fr; }
    .pm-hero-content h1 { font-size: 1.9rem; }
    .pm-hero-image { display: none; }
    .pm-hero { padding: 40px 0; }
}

/* ── Category Strips ── */
.pm-categories-strip { padding: 32px 0; background: #fff; border-bottom: 1px solid var(--pm-border-light); }
.pm-categories-grid {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 14px;
}
@media (max-width: 900px) { .pm-categories-grid { grid-template-columns: repeat(4,1fr); } }
@media (max-width: 500px) { .pm-categories-grid { grid-template-columns: repeat(3,1fr); gap:10px; } }

.pm-category-chip {
    display: flex; flex-direction: column; align-items: center; gap: 8px;
    padding: 16px 10px; border-radius: var(--pm-radius-md);
    border: 1.5px solid var(--pm-border); background: #fff;
    text-decoration: none; transition: all 0.2s; text-align: center;
}
.pm-category-chip:hover { border-color: var(--pm-primary); background: var(--pm-primary-light); transform: translateY(-2px); box-shadow: var(--pm-shadow-sm); }
.pm-category-chip .pm-cat-icon { font-size: 26px; line-height: 1; }
.pm-category-chip .pm-cat-name { font-size: 0.75rem; font-weight: 700; color: var(--pm-text-dark); line-height: 1.2; }
.pm-category-chip:hover .pm-cat-name { color: var(--pm-primary); }

/* ── Deal Timer Banner ── */
.pm-deals-banner {
    background: linear-gradient(135deg, #1a1a2e 0%, #312e81 100%);
    border-radius: var(--pm-radius-md);
    padding: 22px 28px;
    display: flex; align-items: center; justify-content: space-between;
    gap: 20px; margin-bottom: 28px;
    position: relative; overflow: hidden;
}
.pm-deals-banner::before {
    content: '🔥'; position: absolute; right: 20px; top: 50%;
    transform: translateY(-50%); font-size: 80px; opacity: 0.08;
}
.pm-deals-banner-left h3 { font-family: var(--pm-font-display); font-size: 1.2rem; font-weight: 800; color: #fff; margin-bottom: 3px; }
.pm-deals-banner-left p  { font-size: 0.82rem; color: rgba(255,255,255,0.65); }
.pm-countdown {
    display: flex; gap: 10px; align-items: center;
}
.pm-countdown-block {
    background: rgba(255,255,255,0.12); border-radius: 8px;
    padding: 8px 14px; text-align: center; min-width: 52px;
}
.pm-countdown-num { font-family: var(--pm-font-display); font-size: 1.4rem; font-weight: 800; color: #fff; line-height: 1; }
.pm-countdown-label { font-size: 10px; color: rgba(255,255,255,0.55); text-transform: uppercase; letter-spacing: 0.05em; margin-top: 2px; }
.pm-countdown-sep { font-size: 1.4rem; font-weight: 800; color: rgba(255,255,255,0.4); line-height: 1; }
@media (max-width: 600px) {
    .pm-deals-banner { flex-direction: column; align-items: flex-start; padding: 18px; }
    .pm-countdown-block { min-width: 44px; padding: 6px 10px; }
    .pm-countdown-num { font-size: 1.1rem; }
}

/* ── Feature Highlights ── */
.pm-features-bar { background: #fff; border-top: 1px solid var(--pm-border-light); border-bottom: 1px solid var(--pm-border-light); }
.pm-features-grid {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: 0;
}
@media (max-width: 700px) { .pm-features-grid { grid-template-columns: repeat(2,1fr); } }
.pm-feature-item {
    display: flex; align-items: center; gap: 14px;
    padding: 20px 24px; border-right: 1px solid var(--pm-border-light);
}
.pm-feature-item:last-child { border-right: none; }
.pm-feature-icon {
    width: 44px; height: 44px; border-radius: 10px; flex-shrink: 0;
    background: var(--pm-primary-light); color: var(--pm-primary);
    display: flex; align-items: center; justify-content: center; font-size: 20px;
}
.pm-feature-title { font-size: 0.88rem; font-weight: 700; color: var(--pm-text-dark); margin-bottom: 2px; }
.pm-feature-desc  { font-size: 0.76rem; color: var(--pm-text-light); }

/* ═══════════════════════════════════════════════════════
   SHOP PAGE
═══════════════════════════════════════════════════════ */
.woocommerce-shop-page .woocommerce,
.woocommerce-page.archive .woocommerce {
    max-width: var(--pm-max-width); margin: 0 auto; padding: 28px 24px;
}

/* Shop layout — sidebar + products */
.woocommerce-page.archive .page-area,
.woocommerce-shop .page-area { display: flex; gap: 28px; align-items: flex-start; }

/* Shop sidebar */
.woocommerce-page.archive aside.widget-area,
.woocommerce-shop aside.widget-area {
    width: 240px; min-width: 240px; flex-shrink: 0;
    position: sticky; top: 90px;
}
.woocommerce-page.archive aside .widget,
.woocommerce-shop aside .widget {
    background: #fff; border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-md); padding: 18px; margin-bottom: 16px;
}
.woocommerce-page.archive aside .widget-title h3,
.woocommerce-shop aside .widget-title h3 {
    font-family: var(--pm-font) !important;
    font-size: 0.88rem !important; font-weight: 700 !important;
    color: var(--pm-text-dark) !important; padding-bottom: 10px !important;
    margin-bottom: 12px !important; border-bottom: 1px solid var(--pm-border) !important;
    text-transform: uppercase !important; letter-spacing: 0.05em !important;
}
/* Filter checkboxes */
.wc-layered-nav-term a { font-size: 0.85rem !important; color: var(--pm-text-mid) !important; }
.wc-layered-nav-term a:hover { color: var(--pm-primary) !important; }

/* Shop toolbar */
.woocommerce-ordering select,
.woocommerce-result-count {
    font-family: var(--pm-font) !important; font-size: 0.85rem !important;
    color: var(--pm-text-mid) !important;
}
.woocommerce-ordering select {
    border: 1.5px solid var(--pm-border) !important;
    border-radius: var(--pm-radius-sm) !important; padding: 8px 12px !important;
    background: #fff !important; cursor: pointer !important; outline: none !important;
}
.woocommerce-ordering select:focus { border-color: var(--pm-primary) !important; }

/* ═══════════════════════════════════════════════════════
   SINGLE PRODUCT PAGE
═══════════════════════════════════════════════════════ */
.single-product div.product {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 48px !important;
    align-items: start !important;
    max-width: var(--pm-max-width) !important;
    margin: 0 auto !important; padding: 32px 24px !important;
}
@media (max-width: 768px) { .single-product div.product { grid-template-columns: 1fr !important; gap: 24px !important; } }

/* Product images */
.single-product div.product .woocommerce-product-gallery {
    grid-column: 1 !important;
}
.single-product .woocommerce-product-gallery__wrapper img {
    border-radius: var(--pm-radius-md) !important;
    border: 1px solid var(--pm-border) !important;
}
.single-product .flex-control-thumbs li img {
    border-radius: 6px !important;
    border: 2px solid transparent !important;
    transition: border-color 0.2s !important;
}
.single-product .flex-control-thumbs li img.flex-active,
.single-product .flex-control-thumbs li img:hover { border-color: var(--pm-primary) !important; }

/* Product summary */
.single-product div.product .summary {
    grid-column: 2 !important;
    position: sticky !important; top: 90px !important;
}
.single-product .product_title {
    font-family: var(--pm-font-display) !important;
    font-size: 1.6rem !important; font-weight: 700 !important;
    color: var(--pm-text-dark) !important; line-height: 1.3 !important; margin-bottom: 12px !important;
}
.single-product .woocommerce-product-rating { margin-bottom: 14px !important; }
.single-product .woocommerce-review-link { font-size: 0.85rem !important; color: var(--pm-text-light) !important; }
.single-product .price {
    font-size: 1.8rem !important; font-weight: 900 !important;
    color: var(--pm-primary) !important; margin-bottom: 18px !important; display: flex !important; align-items: center !important; gap: 12px !important;
}
.single-product .price del { font-size: 1.1rem !important; color: var(--pm-text-light) !important; font-weight: 400 !important; }
.single-product .price ins { text-decoration: none !important; }
.single-product .woocommerce-product-details__short-description {
    font-size: 0.9rem !important; color: var(--pm-text-mid) !important;
    line-height: 1.7 !important; margin-bottom: 22px !important;
    padding-bottom: 22px !important; border-bottom: 1px solid var(--pm-border) !important;
}

/* Add to cart section */
.single-product form.cart { display: flex !important; gap: 12px !important; align-items: center !important; margin-bottom: 20px !important; flex-wrap: wrap !important; }
.single-product .qty {
    width: 80px !important; height: 48px !important; text-align: center !important;
    border: 1.5px solid var(--pm-border) !important; border-radius: var(--pm-radius-sm) !important;
    font-size: 1rem !important; font-weight: 700 !important; font-family: var(--pm-font) !important;
}
.single-product .single_add_to_cart_button {
    flex: 1 !important; height: 48px !important;
    background: linear-gradient(135deg, var(--pm-primary), var(--pm-accent)) !important;
    font-size: 0.95rem !important; font-weight: 700 !important;
    border-radius: var(--pm-radius-sm) !important;
    box-shadow: 0 4px 16px rgba(79,70,229,0.28) !important;
}
.single-product .single_add_to_cart_button:hover { transform: translateY(-2px) !important; box-shadow: 0 8px 24px rgba(79,70,229,0.38) !important; }

/* Meta info */
.single-product .product_meta { font-size: 0.85rem !important; color: var(--pm-text-light) !important; padding-top: 16px !important; border-top: 1px solid var(--pm-border-light) !important; }
.single-product .product_meta span { display: block !important; margin-bottom: 5px !important; }
.single-product .product_meta a { color: var(--pm-primary) !important; font-weight: 600 !important; }

/* Tabs */
.single-product .woocommerce-tabs { grid-column: 1 / -1 !important; margin-top: 0 !important; }
.single-product .woocommerce-tabs ul.tabs {
    display: flex !important; gap: 0 !important; padding: 0 !important;
    border-bottom: 2px solid var(--pm-border) !important; margin-bottom: 24px !important; list-style: none !important;
}
.single-product .woocommerce-tabs ul.tabs li {
    background: none !important; border: none !important; border-radius: 0 !important; padding: 0 !important;
}
.single-product .woocommerce-tabs ul.tabs li a {
    padding: 12px 22px !important; font-family: var(--pm-font) !important;
    font-size: 0.9rem !important; font-weight: 600 !important;
    color: var(--pm-text-mid) !important; display: block !important;
    border-bottom: 2px solid transparent !important; margin-bottom: -2px !important; transition: all 0.2s !important;
}
.single-product .woocommerce-tabs ul.tabs li.active a { color: var(--pm-primary) !important; border-bottom-color: var(--pm-primary) !important; }
.single-product .woocommerce-tabs ul.tabs li a:hover { color: var(--pm-primary) !important; }
.single-product .woocommerce-tabs .panel { padding: 24px !important; background: #fff !important; border-radius: 0 0 var(--pm-radius-md) var(--pm-radius-md) !important; border: 1px solid var(--pm-border) !important; border-top: none !important; }

/* Related products */
.related.products { padding: 40px 0 !important; }
.related.products h2 {
    font-family: var(--pm-font-display) !important;
    font-size: 1.2rem !important; font-weight: 700 !important;
    color: var(--pm-text-dark) !important; margin-bottom: 22px !important;
}

/* ═══════════════════════════════════════════════════════
   CART PAGE
═══════════════════════════════════════════════════════ */
.woocommerce-cart .woocommerce {
    max-width: var(--pm-max-width) !important;
    margin: 32px auto !important; padding: 0 24px !important;
}
.woocommerce-cart .woocommerce-cart-form { grid-column: 1 !important; }

/* Cart layout */
.woocommerce-cart .woocommerce > * { display: block !important; }

/* Cart table */
.woocommerce-cart table.cart {
    width: 100% !important; border-collapse: collapse !important;
    background: #fff !important; border-radius: var(--pm-radius-md) !important;
    overflow: hidden !important; border: 1px solid var(--pm-border) !important;
    box-shadow: var(--pm-shadow-sm) !important; font-family: var(--pm-font) !important;
    margin-bottom: 24px !important;
}
.woocommerce-cart table.cart th {
    background: #f9fafb !important; padding: 14px 18px !important;
    font-size: 0.75rem !important; font-weight: 700 !important;
    text-transform: uppercase !important; letter-spacing: 0.06em !important;
    color: var(--pm-text-light) !important; border-bottom: 1px solid var(--pm-border) !important;
    font-family: var(--pm-font) !important;
}
.woocommerce-cart table.cart td {
    padding: 16px 18px !important; border-bottom: 1px solid var(--pm-border-light) !important;
    vertical-align: middle !important; font-family: var(--pm-font) !important;
}
.woocommerce-cart table.cart tr:last-child td { border-bottom: none !important; }
.woocommerce-cart table.cart tr:hover td { background: #fafafa !important; }
.woocommerce-cart table.cart .product-name a { font-weight: 600 !important; font-size: 0.92rem !important; color: var(--pm-text-dark) !important; }
.woocommerce-cart table.cart .product-name a:hover { color: var(--pm-primary) !important; }
.woocommerce-cart table.cart .product-price,
.woocommerce-cart table.cart .product-subtotal { font-weight: 700 !important; color: var(--pm-primary) !important; }
.woocommerce-cart table.cart .remove {
    color: var(--pm-danger) !important; font-size: 20px !important;
    width: 28px !important; height: 28px !important; display: flex !important;
    align-items: center !important; justify-content: center !important;
    border-radius: 6px !important; transition: background 0.2s !important;
}
.woocommerce-cart table.cart .remove:hover { background: var(--pm-danger-bg) !important; }

/* Cart totals */
.woocommerce-cart .cart-collaterals {
    background: #fff !important; border: 1px solid var(--pm-border) !important;
    border-radius: var(--pm-radius-md) !important; padding: 24px !important;
    box-shadow: var(--pm-shadow-sm) !important;
}
.woocommerce-cart .cart_totals h2 {
    font-family: var(--pm-font-display) !important; font-size: 1.05rem !important;
    font-weight: 700 !important; color: var(--pm-text-dark) !important;
    margin-bottom: 18px !important; padding-bottom: 12px !important;
    border-bottom: 1px solid var(--pm-border) !important;
}
.woocommerce-cart .cart_totals table { width: 100% !important; font-family: var(--pm-font) !important; }
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td { padding: 10px 0 !important; border-bottom: 1px solid var(--pm-border-light) !important; font-size: 0.9rem !important; }
.woocommerce-cart .cart_totals table th { color: var(--pm-text-mid) !important; font-weight: 600 !important; }
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td { font-size: 1.1rem !important; font-weight: 800 !important; color: var(--pm-text-dark) !important; border-bottom: none !important; padding-top: 14px !important; }
.woocommerce-cart .cart_totals .order-total td { color: var(--pm-primary) !important; }
.woocommerce-proceed-to-checkout { margin-top: 20px !important; }
.woocommerce-proceed-to-checkout a.checkout-button {
    width: 100% !important; text-align: center !important; justify-content: center !important;
    background: linear-gradient(135deg, var(--pm-primary), var(--pm-accent)) !important;
    font-size: 1rem !important; padding: 14px !important;
    box-shadow: 0 4px 16px rgba(79,70,229,0.28) !important;
}

/* ═══════════════════════════════════════════════════════
   CHECKOUT PAGE
═══════════════════════════════════════════════════════ */
.woocommerce-checkout .woocommerce {
    max-width: var(--pm-max-width) !important; margin: 32px auto !important; padding: 0 24px !important;
}
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review_heading { }
.woocommerce-checkout .col2-set {
    display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 32px !important; float: none !important; width: 100% !important;
}
@media (max-width: 768px) { .woocommerce-checkout .col2-set { grid-template-columns: 1fr !important; } }
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 { float: none !important; width: 100% !important; }
.woocommerce-checkout h3 {
    font-family: var(--pm-font-display) !important; font-size: 1.05rem !important;
    font-weight: 700 !important; color: var(--pm-text-dark) !important;
    margin-bottom: 20px !important; padding-bottom: 12px !important;
    border-bottom: 1px solid var(--pm-border) !important;
}

/* Checkout form sections */
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review {
    background: #fff !important; border: 1px solid var(--pm-border) !important;
    border-radius: var(--pm-radius-md) !important; padding: 28px !important;
    box-shadow: var(--pm-shadow-sm) !important;
}
.woocommerce-checkout #order_review { margin-top: 32px !important; }

/* Order table in checkout */
.woocommerce-checkout table.shop_table {
    width: 100% !important; border-collapse: collapse !important; font-family: var(--pm-font) !important;
}
.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td { padding: 10px 0 !important; border-bottom: 1px solid var(--pm-border-light) !important; font-size: 0.88rem !important; }
.woocommerce-checkout table.shop_table tfoot tr:last-child td,
.woocommerce-checkout table.shop_table tfoot tr:last-child th { font-size: 1rem !important; font-weight: 800 !important; color: var(--pm-primary) !important; border-bottom: none !important; }

/* Payment box */
.woocommerce-checkout #payment {
    background: #f9fafb !important; border-radius: var(--pm-radius-md) !important;
    padding: 20px !important; margin-top: 20px !important;
    border: 1px solid var(--pm-border) !important;
}
.woocommerce-checkout #payment ul.payment_methods { list-style: none !important; padding: 0 !important; margin-bottom: 16px !important; }
.woocommerce-checkout #payment ul.payment_methods li { padding: 10px 0 !important; border-bottom: 1px solid var(--pm-border-light) !important; }
.woocommerce-checkout #payment #place_order {
    width: 100% !important; text-align: center !important; justify-content: center !important;
    background: linear-gradient(135deg, var(--pm-success), #15803d) !important;
    font-size: 1rem !important; padding: 14px !important;
    box-shadow: 0 4px 16px rgba(22,163,74,0.28) !important;
}
.woocommerce-checkout #payment #place_order:hover { background: linear-gradient(135deg, #15803d, #166534) !important; }

/* ═══════════════════════════════════════════════════════
   CONTACT PAGE
═══════════════════════════════════════════════════════ */
.pm-contact-wrap {
    max-width: var(--pm-max-width); margin: 48px auto; padding: 0 24px;
    display: grid; grid-template-columns: 1fr 1.6fr; gap: 48px; align-items: start;
}
@media (max-width: 768px) { .pm-contact-wrap { grid-template-columns: 1fr; gap: 32px; } }

.pm-contact-info { }
.pm-contact-info h2 {
    font-family: var(--pm-font-display) !important;
    font-size: 1.6rem; font-weight: 800; color: var(--pm-text-dark); margin-bottom: 14px;
}
.pm-contact-info p { font-size: 0.92rem; color: var(--pm-text-mid); line-height: 1.7; margin-bottom: 28px; }
.pm-contact-card {
    display: flex; align-items: flex-start; gap: 14px;
    padding: 16px; background: #fff; border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-md); margin-bottom: 14px;
    transition: box-shadow 0.2s;
}
.pm-contact-card:hover { box-shadow: var(--pm-shadow-sm); }
.pm-contact-card-icon {
    width: 44px; height: 44px; border-radius: 10px; flex-shrink: 0;
    background: var(--pm-primary-light); color: var(--pm-primary);
    display: flex; align-items: center; justify-content: center; font-size: 20px;
}
.pm-contact-card-title { font-size: 0.82rem; font-weight: 700; color: var(--pm-text-dark); margin-bottom: 2px; }
.pm-contact-card-detail { font-size: 0.88rem; color: var(--pm-text-mid); }

.pm-contact-form-wrap {
    background: #fff; border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-lg); padding: 36px;
    box-shadow: var(--pm-shadow-md);
}
.pm-contact-form-wrap h3 {
    font-family: var(--pm-font-display) !important;
    font-size: 1.2rem; font-weight: 700; color: var(--pm-text-dark); margin-bottom: 24px;
}
.pm-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 500px) { .pm-form-row { grid-template-columns: 1fr; } }
.pm-form-group { margin-bottom: 18px; }
.pm-form-group label { display: block; font-size: 0.84rem; font-weight: 600; color: var(--pm-text-dark); margin-bottom: 6px; }
.pm-form-group input,
.pm-form-group select,
.pm-form-group textarea {
    width: 100%; padding: 10px 14px;
    border: 1.5px solid var(--pm-border); border-radius: var(--pm-radius-sm);
    font-family: var(--pm-font); font-size: 0.9rem; color: var(--pm-text-dark);
    background: #f9fafb; outline: none; transition: border-color 0.2s, box-shadow 0.2s;
}
.pm-form-group input:focus,
.pm-form-group select:focus,
.pm-form-group textarea:focus { border-color: var(--pm-primary); box-shadow: 0 0 0 3px rgba(79,70,229,0.1); background: #fff; }
.pm-form-group textarea { min-height: 120px; resize: vertical; }
.pm-submit-btn {
    width: 100%; height: 48px;
    background: linear-gradient(135deg, var(--pm-primary), var(--pm-accent));
    color: #fff; border: none; border-radius: var(--pm-radius-sm);
    font-family: var(--pm-font); font-size: 0.95rem; font-weight: 700;
    cursor: pointer; transition: all 0.2s;
    box-shadow: 0 4px 16px rgba(79,70,229,0.25);
}
.pm-submit-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(79,70,229,0.35); }

/* ═══════════════════════════════════════════════════════
   ABOUT PAGE
═══════════════════════════════════════════════════════ */
.pm-about-hero {
    background: linear-gradient(135deg, #1a1a2e, #312e81);
    padding: 72px 0; text-align: center; position: relative; overflow: hidden;
}
.pm-about-hero h1 {
    font-family: var(--pm-font-display) !important;
    font-size: 2.6rem; font-weight: 800; color: #fff; margin-bottom: 16px;
}
.pm-about-hero p { font-size: 1.05rem; color: rgba(255,255,255,0.72); max-width: 560px; margin: 0 auto; }

.pm-about-stats {
    display: grid; grid-template-columns: repeat(4,1fr);
    gap: 24px; padding: 48px 0;
}
@media (max-width: 700px) { .pm-about-stats { grid-template-columns: repeat(2,1fr); } }
.pm-about-stat {
    text-align: center; padding: 28px; background: #fff;
    border: 1px solid var(--pm-border); border-radius: var(--pm-radius-md);
    transition: box-shadow 0.2s;
}
.pm-about-stat:hover { box-shadow: var(--pm-shadow-md); }
.pm-about-stat-num { font-family: var(--pm-font-display); font-size: 2.2rem; font-weight: 900; color: var(--pm-primary); line-height: 1; }
.pm-about-stat-label { font-size: 0.85rem; color: var(--pm-text-mid); margin-top: 6px; font-weight: 500; }

.pm-about-story {
    display: grid; grid-template-columns: 1fr 1fr; gap: 56px;
    align-items: center; padding: 48px 0;
}
@media (max-width: 768px) { .pm-about-story { grid-template-columns: 1fr; } }
.pm-about-story img { border-radius: var(--pm-radius-lg); box-shadow: var(--pm-shadow-lg); }
.pm-about-story-text h2 {
    font-family: var(--pm-font-display) !important;
    font-size: 1.8rem; font-weight: 800; color: var(--pm-text-dark); margin-bottom: 16px;
}
.pm-about-story-text p { color: var(--pm-text-mid); line-height: 1.8; margin-bottom: 14px; font-size: 0.95rem; }

.pm-team-grid {
    display: grid; grid-template-columns: repeat(4,1fr); gap: 22px; padding: 24px 0 48px;
}
@media (max-width: 768px) { .pm-team-grid { grid-template-columns: repeat(2,1fr); } }
.pm-team-card {
    background: #fff; border: 1px solid var(--pm-border);
    border-radius: var(--pm-radius-md); overflow: hidden;
    text-align: center; transition: box-shadow 0.2s;
}
.pm-team-card:hover { box-shadow: var(--pm-shadow-md); }
.pm-team-card img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.pm-team-card-body { padding: 16px; }
.pm-team-name { font-weight: 700; font-size: 0.95rem; color: var(--pm-text-dark); margin-bottom: 3px; }
.pm-team-role { font-size: 0.8rem; color: var(--pm-primary); font-weight: 600; }
