/*
Theme Name: Ascension Australia
Theme URI: https://navajowhite-wildcat-671298.hostingersite.com
Description: Custom dark theme for Ascension Australia research compounds store
Version: 1.1
Author: Ascension Australia
Text Domain: ascension-australia
*/

/* ── RESET ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'Inter', sans-serif; background: #0b0c0e; color: #fff; overflow-x: hidden; -webkit-font-smoothing: antialiased; }

/* ── TYPOGRAPHY ── */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

h1, h2, h3, h4, h5, h6 { font-family: 'Inter', sans-serif; }
a { text-decoration: none; color: inherit; }
img { max-width: 100%; display: block; }

/* ── ANNOUNCE BAR ── */
.aa-announce {
  background: #111316;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  padding: 10px 60px;
  text-align: center;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: #666;
}
.aa-announce strong { color: #fff; }

/* ── NAV ── */
nav.aa-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 60px;
  border-bottom: 1px solid rgba(255,255,255,0.07);
  background: #0b0c0e;
  position: sticky;
  top: 0;
  z-index: 200;
}
.aa-logo a { text-decoration: none; }
.aa-logo-name { font-size: 13px; font-weight: 800; letter-spacing: 0.14em; color: #fff; display: block; }
.aa-logo-sub { font-size: 8px; font-weight: 500; letter-spacing: 0.18em; color: #3E63DD; margin-top: 2px; display: block; }
.aa-nav-links { display: flex; gap: 36px; list-style: none; }
.aa-nav-links a { font-size: 12px; font-weight: 500; color: #666; text-decoration: none; transition: color 0.2s; }
.aa-nav-links a:hover { color: #fff; }
.aa-nav-right { display: flex; gap: 10px; align-items: center; }
.btn-ghost {
  font-size: 12px; font-weight: 500; color: #fff; background: transparent;
  border: 1px solid rgba(255,255,255,0.16); padding: 9px 20px; cursor: pointer;
  border-radius: 100px; transition: border-color 0.2s; text-decoration: none; display: inline-block;
}
.btn-ghost:hover { border-color: rgba(255,255,255,0.4); color: #fff; }
.btn-primary {
  font-size: 12px; font-weight: 600; color: #0b0c0e; background: #fff;
  border: none; padding: 9px 22px; cursor: pointer; border-radius: 100px;
  transition: background 0.2s; text-decoration: none; display: inline-block;
}
.btn-primary:hover { background: #d8dadd; color: #0b0c0e; }

/* ── HERO ── */
.aa-hero {
  padding: 100px 60px 80px;
  min-height: 85vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-bottom: 1px solid rgba(255,255,255,0.07);
}
.aa-hero-tag {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 10px; font-weight: 600; letter-spacing: 0.12em;
  color: #3E63DD; border: 1px solid rgba(62,99,221,0.3);
  padding: 6px 14px; border-radius: 100px; margin-bottom: 32px;
  text-transform: uppercase; align-self: flex-start; width: fit-content;
}
.aa-hero h1 {
  font-size: clamp(56px, 8vw, 96px);
  font-weight: 900;
  line-height: 0.95;
  letter-spacing: -0.04em;
  margin-bottom: 0;
}
.aa-hero-rule { height: 1px; background: rgba(255,255,255,0.1); margin: 40px 0; }
.aa-hero-bottom { display: flex; align-items: flex-start; justify-content: space-between; gap: 40px; }
.aa-hero-desc { font-size: 15px; color: #888; line-height: 1.6; max-width: 360px; }
.aa-hero-right-block { display: flex; flex-direction: column; align-items: flex-end; gap: 28px; }
.aa-hero-stats { display: flex; gap: 40px; }
.h-stat-n { font-size: 28px; font-weight: 800; letter-spacing: -0.02em; }
.h-stat-l { font-size: 10px; color: #555; letter-spacing: 0.06em; margin-top: 2px; }
.aa-hero-ctas { display: flex; gap: 10px; }
.cta-primary {
  background: #fff; color: #0b0c0e; font-size: 13px; font-weight: 700;
  padding: 14px 28px; border-radius: 100px; text-decoration: none; transition: background 0.2s;
  white-space: nowrap;
}
.cta-primary:hover { background: #d8dadd; }
.cta-ghost {
  background: transparent; color: #fff; font-size: 13px; font-weight: 600;
  padding: 14px 28px; border-radius: 100px; border: 1px solid rgba(255,255,255,0.2);
  text-decoration: none; transition: border-color 0.2s; white-space: nowrap;
}
.cta-ghost:hover { border-color: rgba(255,255,255,0.5); }

/* ── SHOP PAGE HERO ── */
.page-hero {
  padding: 56px 60px 40px;
  border-bottom: 1px solid rgba(255,255,255,0.07);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}
.page-hero h1 { font-size: 52px; font-weight: 900; letter-spacing: -0.03em; line-height: 1; }
.page-hero-meta { text-align: right; color: #555; font-size: 12px; line-height: 1.6; }

/* ── SHOP GRID ── */
.shop-section { padding: 40px 60px 80px; }
.shop-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.aa-product-card {
  background: #0e1012;
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 16px;
  overflow: hidden;
  transition: border-color 0.2s, transform 0.2s;
  cursor: pointer;
}
.aa-product-card:hover { border-color: rgba(255,255,255,0.2); transform: translateY(-2px); }
.aa-product-img {
  height: 220px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  background: #0e1012;
}
.aa-product-img img { max-height: 160px; object-fit: contain; }
.aa-product-info { padding: 16px 16px 8px; }
.aa-product-category { font-size: 9px; font-weight: 600; letter-spacing: 0.1em; color: #3E63DD; text-transform: uppercase; margin-bottom: 6px; }
.aa-product-name { font-size: 14px; font-weight: 700; color: #fff; margin-bottom: 4px; }
.aa-product-desc { font-size: 11px; color: #555; line-height: 1.5; margin-bottom: 8px; }
.aa-product-stock { font-size: 10px; color: #4ade80; font-weight: 600; }
.aa-product-foot {
  padding: 12px 16px;
  border-top: 1px solid rgba(255,255,255,0.06);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.aa-product-price { font-size: 18px; font-weight: 800; color: #fff; }
.aa-product-per { font-size: 9px; color: #444; }
.aa-product-gst { font-size: 9px; color: #444; }
.aa-product-view {
  font-size: 11px; font-weight: 600; color: #fff;
  background: transparent; border: 1px solid rgba(255,255,255,0.2);
  padding: 7px 14px; border-radius: 100px; transition: all 0.2s;
  text-decoration: none;
}
.aa-product-view:hover { background: #fff; color: #0b0c0e; }

/* WooCommerce overrides for shop grid */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.woocommerce ul.products li.product {
  background: #0e1012;
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 16px;
  overflow: hidden;
  transition: border-color 0.2s, transform 0.2s;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: auto !important;
}
.woocommerce ul.products li.product:hover { border-color: rgba(255,255,255,0.2); transform: translateY(-2px); }
.woocommerce ul.products li.product a img {
  max-height: 160px; object-fit: contain;
  padding: 32px; height: 220px; width: 100%;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: 14px !important; font-weight: 700 !important; color: #fff !important;
  padding: 16px 16px 4px !important;
}
.woocommerce ul.products li.product .price {
  color: #fff !important; font-size: 18px !important; font-weight: 800 !important;
  padding: 0 16px 12px !important; display: block;
}
.aa-loop-actions {
  display: flex; gap: 8px; padding: 0 16px 16px; align-items: center;
}
.woocommerce ul.products li.product .button {
  flex: 1; background: #fff !important; color: #000 !important;
  border: none !important; border-radius: 100px !important;
  font-size: 11px !important; font-weight: 700 !important;
  padding: 10px 14px !important; transition: all 0.2s !important;
  text-align: center; cursor: pointer;
}
.woocommerce ul.products li.product .button:hover { background: #e8e8e8 !important; }
.woocommerce ul.products li.product .button.loading { opacity: 0.6; pointer-events: none; }
.woocommerce ul.products li.product .button.added { background: #4ade80 !important; color: #000 !important; }
.aa-loop-view {
  flex-shrink: 0; background: transparent !important; color: #fff !important;
  border: 1px solid rgba(255,255,255,0.2) !important; border-radius: 100px !important;
  font-size: 11px !important; font-weight: 600 !important; padding: 10px 14px !important;
  transition: all 0.2s; text-align: center; text-decoration: none; white-space: nowrap;
}
.aa-loop-view:hover { border-color: rgba(255,255,255,0.6) !important; color: #fff !important; }

/* ── SINGLE PRODUCT ── */
.woocommerce div.product {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-bottom: 1px solid rgba(255,255,255,0.07);
}
.woocommerce div.product div.images {
  background: #0e1012;
  border-right: 1px solid rgba(255,255,255,0.07);
  padding: 60px;
  display: flex; align-items: center; justify-content: center;
}
.woocommerce div.product div.images img { max-width: 280px; max-height: 380px; object-fit: contain; }
.woocommerce div.product div.summary {
  padding: 64px 60px;
  display: flex; flex-direction: column; justify-content: center;
}
.woocommerce div.product .product_title {
  font-size: 48px !important; font-weight: 900 !important;
  letter-spacing: -0.03em !important; line-height: 1 !important;
  color: #fff !important; margin-bottom: 16px !important;
}
.woocommerce div.product p.price {
  font-size: 36px !important; font-weight: 800 !important;
  color: #fff !important; margin-bottom: 8px !important;
}
.woocommerce div.product .woocommerce-product-details__short-description {
  color: #888; font-size: 14px; line-height: 1.6; margin-bottom: 32px;
}
.woocommerce div.product .cart { margin-bottom: 24px; }
.woocommerce div.product .quantity input {
  background: #0e1012; border: 1px solid rgba(255,255,255,0.15);
  color: #fff; border-radius: 8px; padding: 12px 16px;
  font-size: 16px; font-weight: 600; width: 80px;
}
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
  background: #fff !important; color: #0b0c0e !important;
  font-weight: 700 !important; font-size: 14px !important;
  padding: 14px 32px !important; border-radius: 100px !important;
  border: none !important; cursor: pointer !important;
  transition: background 0.2s !important; font-family: 'Inter', sans-serif !important;
  white-space: nowrap !important;
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  background: #d8dadd !important; color: #0b0c0e !important;
}

/* ── CONTACT SECTION ── */
.aa-contact {
  padding: 100px 60px;
  border-top: 1px solid rgba(255,255,255,0.07);
  border-bottom: 1px solid rgba(255,255,255,0.07);
  text-align: center;
}
.aa-contact-inner { max-width: 600px; margin: 0 auto; }
.aa-contact-label {
  font-size: 10px; font-weight: 700; letter-spacing: 0.14em;
  color: #3E63DD; text-transform: uppercase; margin-bottom: 20px;
}
.aa-contact-heading {
  font-size: 40px; font-weight: 900; letter-spacing: -0.03em;
  line-height: 1.05; color: #fff; margin-bottom: 32px;
}
.aa-contact-email {
  display: inline-block; font-size: 20px; font-weight: 700;
  color: #fff; text-decoration: none;
  border-bottom: 2px solid rgba(255,255,255,0.3);
  padding-bottom: 4px; transition: border-color 0.2s;
  margin-bottom: 16px;
}
.aa-contact-email:hover { border-color: #fff; }
.aa-contact-note { font-size: 12px; color: #444; margin-top: 12px; }

/* ── FOOTER ── */
.aa-footer {
  padding: 60px 60px 32px;
  border-top: 1px solid rgba(255,255,255,0.07);
}
.aa-footer-top {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 48px;
  margin-bottom: 48px;
}
.aa-footer-brand { }
.aa-footer-logo-name { font-size: 13px; font-weight: 800; letter-spacing: 0.14em; color: #fff; }
.aa-footer-logo-sub { font-size: 8px; font-weight: 500; letter-spacing: 0.18em; color: #3E63DD; margin-top: 2px; }
.aa-footer-tagline { font-size: 12px; color: #444; margin-top: 16px; line-height: 1.6; max-width: 240px; }
.aa-footer-col-title { font-size: 10px; font-weight: 700; letter-spacing: 0.1em; color: #fff; text-transform: uppercase; margin-bottom: 16px; }
.aa-footer-links { list-style: none; display: flex; flex-direction: column; gap: 10px; }
.aa-footer-links a { font-size: 12px; color: #555; transition: color 0.2s; text-decoration: none; }
.aa-footer-links a:hover { color: #fff; }
.aa-footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.07);
  padding-top: 24px;
  display: flex; align-items: center; justify-content: space-between;
}
.aa-footer-copy { font-size: 11px; color: #333; }
.aa-footer-disc { font-size: 10px; color: #2a2a2a; max-width: 600px; text-align: right; line-height: 1.5; }

/* ── CART / CHECKOUT ── */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
  max-width: 1100px; margin: 0 auto; padding: 60px;
}
.woocommerce table.shop_table {
  background: #0e1012;
  border: 1px solid rgba(255,255,255,0.07) !important;
  border-radius: 12px;
  color: #fff;
}
.woocommerce table.shop_table th { color: #555; font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; }
.woocommerce table.shop_table td { border-top: 1px solid rgba(255,255,255,0.07) !important; color: #fff; vertical-align: middle; }
.woocommerce table.shop_table td.product-thumbnail { width: 80px; padding: 12px !important; }
.woocommerce table.shop_table td.product-thumbnail img { width: 64px !important; height: 64px !important; object-fit: contain; border-radius: 8px; background: #0e1012; }
.woocommerce .cart-collaterals { color: #fff; }
.woocommerce .cart_totals { background: #0e1012; border: 1px solid rgba(255,255,255,0.07); border-radius: 12px; padding: 24px; }
.woocommerce .cart_totals h2 { font-size: 16px; font-weight: 700; margin-bottom: 16px; }
.woocommerce-checkout #payment { background: #0e1012; border-radius: 12px; }

/* ── FORMS ── */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  background: #0e1012 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 12px 16px !important;
  font-family: 'Inter', sans-serif !important;
}
.woocommerce form label { color: #888; font-size: 12px; }

/* ── NOTICES ── */
.woocommerce-message, .woocommerce-info {
  background: #0e1012 !important;
  border-top-color: #3E63DD !important;
  color: #fff !important;
}

/* ── TRUST BADGES ── */
.shop-trust {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 40px;
}
.shop-trust-item {
  padding: 24px 20px;
  border-right: 1px solid rgba(255,255,255,0.07);
  display: flex; align-items: center; gap: 14px;
}
.shop-trust-item:last-child { border-right: none; }
.shop-trust-icon { font-size: 22px; }
.shop-trust-title { font-size: 12px; font-weight: 700; color: #fff; margin-bottom: 2px; }
.shop-trust-body { font-size: 10px; color: #555; }

/* Fix WooCommerce clearfix pseudo-elements taking up grid column */
.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none !important; }

/* ── ABOUT PAGE ── */
.aa-page-hero { padding: 80px 60px 60px; border-bottom: 1px solid rgba(255,255,255,0.07); }
.aa-about-label { font-size: 10px; font-weight: 700; letter-spacing: 0.14em; color: #3E63DD; text-transform: uppercase; margin-bottom: 20px; }
.aa-about-h1 { font-size: clamp(40px,6vw,72px); font-weight: 900; letter-spacing: -0.04em; line-height: 1; color: #fff; }
.aa-about-body { max-width: 800px; margin: 0 auto; padding: 80px 60px; }
.aa-about-section { margin-bottom: 64px; display: grid; grid-template-columns: 180px 1fr; gap: 40px; }
.aa-about-section-label { font-size: 10px; font-weight: 700; letter-spacing: 0.1em; color: #333; text-transform: uppercase; padding-top: 4px; }
.aa-about-section-content p { font-size: 15px; color: #888; line-height: 1.8; margin-bottom: 16px; }
.aa-about-section-content p:last-child { margin-bottom: 0; }

/* ── FAQ PAGE ── */
.aa-faq-hero { padding: 80px 60px 60px; border-bottom: 1px solid rgba(255,255,255,0.07); }
.aa-faq-h1 { font-size: clamp(40px,6vw,72px); font-weight: 900; letter-spacing: -0.04em; line-height: 1; color: #fff; }
.aa-faq-body { max-width: 800px; margin: 0 auto; padding: 80px 60px; }
.aa-faq-group { margin-bottom: 60px; }
.aa-faq-group-title { font-size: 10px; font-weight: 700; letter-spacing: 0.12em; color: #3E63DD; text-transform: uppercase; margin-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,0.07); padding-bottom: 16px; }
.aa-faq-item { margin-bottom: 32px; }
.aa-faq-q { font-size: 16px; font-weight: 700; color: #fff; margin-bottom: 10px; letter-spacing: -0.01em; }
.aa-faq-a { font-size: 14px; color: #666; line-height: 1.8; }

/* ── HAMBURGER MENU ── */
.aa-hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
}
.aa-hamburger span {
  display: block;
  width: 22px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  transition: background 0.2s;
}

#aa-mobile-menu {
  display: none;
  position: fixed;
  inset: 0;
  background: #0b0c0e;
  z-index: 999;
  padding: 80px 32px 40px;
  flex-direction: column;
}
#aa-mobile-menu.open { display: flex; }
#aa-mobile-menu ul { list-style: none; margin-bottom: 40px; }
#aa-mobile-menu ul li { border-bottom: 1px solid rgba(255,255,255,0.07); }
#aa-mobile-menu ul li a {
  display: block;
  padding: 20px 0;
  font-size: 28px;
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.02em;
  text-decoration: none;
}
.aa-mobile-close {
  position: absolute;
  top: 20px;
  right: 24px;
  background: none;
  border: none;
  color: #fff;
  font-size: 20px;
  cursor: pointer;
  padding: 8px;
}
#aa-mobile-menu .btn-ghost { display: block; text-align: center; }

/* ── MOBILE ── */
@media (max-width: 768px) {
  .aa-announce { padding: 9px 16px; font-size: 10px; }
  nav.aa-nav { padding: 14px 20px; }
  .aa-nav-links { display: none; }
  .aa-nav-right .btn-primary { display: none; }
  .aa-nav-right .btn-ghost { font-size: 11px; padding: 7px 14px; }
  .aa-hamburger { display: flex; }

  .aa-hero { padding: 48px 20px 40px; min-height: auto; }
  .aa-hero h1 { font-size: clamp(36px, 11vw, 56px); }
  .aa-hero-bottom { flex-direction: column; gap: 24px; }
  .aa-hero-right-block { align-items: flex-start; }
  .aa-hero-stats { gap: 24px; }
  .aa-hero-ctas { flex-direction: column; }
  .cta-primary, .cta-ghost { text-align: center; }

  .page-hero { flex-direction: column; padding: 32px 20px 24px; gap: 12px; }
  .page-hero h1 { font-size: 32px; }
  .page-hero-meta { text-align: left; }

  .shop-section { padding: 16px 16px 48px; }
  .shop-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .aa-product-view { font-size: 9px; padding: 5px 10px; }
  .woocommerce ul.products { grid-template-columns: 1fr 1fr !important; gap: 10px !important; }
  .shop-trust { grid-template-columns: 1fr 1fr; }
  .shop-trust-item { padding: 16px 14px; flex-direction: column; align-items: flex-start; gap: 8px; }

  .woocommerce div.product { grid-template-columns: 1fr; }
  .woocommerce div.product div.images { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.07); padding: 24px 20px; }
  .woocommerce div.product div.images img { max-width: 140px !important; max-height: 190px !important; }
  .woocommerce div.product div.summary { padding: 24px 20px; }
  .woocommerce div.product .product_title { font-size: 28px !important; }
  .woocommerce div.product p.price { font-size: 24px !important; }

  .aa-contact { padding: 60px 20px; }
  .aa-contact-heading { font-size: 30px; }
  .aa-contact-email { font-size: 16px; }

  .aa-footer { padding: 40px 20px 24px; }
  .aa-footer-top { grid-template-columns: 1fr 1fr; gap: 28px; }
  .aa-footer-bottom { flex-direction: column; gap: 12px; text-align: center; }
  .aa-footer-disc { text-align: center; }

  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce { padding: 16px 12px; }
  .woocommerce table.shop_table thead { display: none; }
  .woocommerce table.shop_table,
  .woocommerce table.shop_table tbody,
  .woocommerce table.shop_table tr { display: block; width: 100%; }
  .woocommerce table.shop_table tr.cart_item {
    display: grid !important;
    grid-template-columns: 64px 1fr auto;
    grid-template-rows: auto auto;
    gap: 0 12px;
    padding: 16px 12px !important;
    border-bottom: 1px solid rgba(255,255,255,0.07) !important;
    align-items: center;
  }
  .woocommerce table.shop_table td { display: block; border: none !important; padding: 0 !important; }
  .woocommerce table.shop_table td.product-remove { grid-column: 3; grid-row: 1; text-align: right; }
  .woocommerce table.shop_table td.product-thumbnail { grid-column: 1; grid-row: 1 / 3; padding: 0 !important; }
  .woocommerce table.shop_table td.product-thumbnail img { width: 56px !important; height: 56px !important; }
  .woocommerce table.shop_table td.product-name { grid-column: 2; grid-row: 1; font-size: 13px; font-weight: 600; padding-right: 8px !important; }
  .woocommerce table.shop_table td.product-name dl { margin: 4px 0 0; font-size: 11px; color: #666; }
  .woocommerce table.shop_table td.product-price { display: none !important; }
  .woocommerce table.shop_table td.product-quantity { grid-column: 2; grid-row: 2; padding-top: 8px !important; }
  .woocommerce table.shop_table td.product-quantity input { width: 56px !important; padding: 6px 10px !important; font-size: 13px !important; }
  .woocommerce table.shop_table td.product-subtotal { grid-column: 3; grid-row: 2; font-size: 14px; font-weight: 700; text-align: right; padding-top: 8px !important; }
  .woocommerce td.actions { display: flex !important; flex-direction: column; gap: 12px; padding: 16px 12px !important; }
  .woocommerce .coupon { display: flex; flex-direction: column; gap: 8px; width: 100%; }
  .woocommerce .coupon label { display: none; }
  .woocommerce .coupon input#coupon_code { width: 100% !important; box-sizing: border-box; }
  .woocommerce .coupon .button, .woocommerce td.actions .button[name="update_cart"] { width: 100%; }
  .woocommerce .cart-collaterals { margin-top: 16px; }
  .woocommerce .cart_totals { padding: 16px; }

  .aa-page-hero { padding: 48px 20px 36px; }
  .aa-about-body { padding: 40px 20px; }
  .aa-about-section { grid-template-columns: 1fr; gap: 8px; }
  .aa-about-section-label { color: #3E63DD; }

  .aa-faq-hero { padding: 48px 20px 36px; }
  .aa-faq-body { padding: 40px 20px; }
}