/*
Theme Name: QonaShop Astra
Theme URI: https://qonashop.com/
Description: Mobile-first Bengali WooCommerce storefront for QonaShop.
Author: QonaShop
Template: astra
Version: 1.0.0
Text Domain: qonashop
*/
:root {
  --qona-orange: #f4511e;
  --qona-orange-dark: #d83a0c;
  --qona-orange-soft: #fff0e9;
  --qona-ink: #15211b;
  --qona-muted: #627068;
  --qona-cream: #fffaf3;
  --qona-white: #ffffff;
  --qona-green: #087a55;
  --qona-green-soft: #e9f8f1;
  --qona-yellow: #ffd463;
  --qona-border: #e7e2d9;
  --qona-shadow: 0 18px 55px rgba(32, 42, 36, 0.11);
  --qona-shadow-sm: 0 8px 24px rgba(32, 42, 36, 0.08);
  --qona-radius: 24px;
  --qona-shell: 1180px;
}

html { scroll-behavior: smooth; }
body {
  background: var(--qona-cream);
  color: var(--qona-ink);
  font-family: "Noto Sans Bengali", "Hind Siliguri", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 17px;
  line-height: 1.65;
  overflow-x: hidden;
}
body, button, input, select, textarea, .ast-button, .button { font-family: inherit !important; }
a { color: var(--qona-orange-dark); text-decoration: none; }
a:hover { color: var(--qona-orange); }
img { height: auto; max-width: 100%; }
.qona-shell { margin-inline: auto; max-width: var(--qona-shell); padding-inline: 22px; width: 100%; }
.qona-skip-link { background: var(--qona-ink); color: #fff; left: 12px; padding: 10px 16px; position: fixed; top: -100px; z-index: 99999; }
.qona-skip-link:focus { top: 12px; }

.qona-topbar { background: var(--qona-ink); color: #fff; font-size: 13px; font-weight: 750; }
.qona-topbar .qona-shell { align-items: center; display: flex; gap: 28px; justify-content: center; min-height: 34px; }
.qona-header { backdrop-filter: blur(16px); background: rgba(255,250,243,.96); border-bottom: 1px solid rgba(231,226,217,.9); position: sticky; top: 0; z-index: 999; }
.admin-bar .qona-header { top: 32px; }
.qona-header__inner { align-items: center; display: flex; justify-content: space-between; min-height: 76px; }
.qona-brand, .qona-brand .custom-logo-link, .qona-brand__fallback { align-items: center; display: inline-flex; }
.qona-brand .custom-logo { max-height: 48px; width: auto; }
.qona-brand__fallback { color: var(--qona-ink); gap: 10px; }
.qona-brand__mark { align-items: center; background: linear-gradient(145deg,var(--qona-orange),#ff7850); border-radius: 13px; box-shadow: 0 7px 16px rgba(244,81,30,.25); color: #fff; display: inline-flex; font-size: 25px; font-weight: 900; height: 44px; justify-content: center; transform: rotate(-5deg); width: 44px; }
.qona-brand__name, .qona-footer__brand { color: var(--qona-ink); font-family: Inter,system-ui,sans-serif; font-size: 25px; font-weight: 900; letter-spacing: -1.2px; }
.qona-nav { align-items: center; display: flex; gap: 30px; }
.qona-nav > a:not(.qona-button) { color: var(--qona-ink); font-size: 15px; font-weight: 750; }
.qona-nav > a:not(.qona-button):hover { color: var(--qona-orange); }
.qona-menu-toggle { align-items: center; background: #fff; border: 1px solid var(--qona-border); border-radius: 12px; display: none; flex-direction: column; gap: 5px; height: 44px; justify-content: center; padding: 0; width: 44px; }
.qona-menu-toggle > span:not(.screen-reader-text) { background: var(--qona-ink); border-radius: 2px; height: 2px; width: 20px; }
.qona-mobile-menu { background: #fff; border-top: 1px solid var(--qona-border); padding: 8px 22px 18px; }
.qona-mobile-menu a { border-bottom: 1px solid var(--qona-border); color: var(--qona-ink); display: block; font-size: 17px; font-weight: 750; padding: 14px 4px; }
.qona-mobile-menu a:last-child { background: var(--qona-orange); border: 0; border-radius: 12px; color: #fff; margin-top: 12px; text-align: center; }

.qona-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce #payment #place_order {
  align-items: center;
  background: linear-gradient(135deg,var(--qona-orange),#ff6b3c) !important;
  border: 0 !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 22px rgba(244,81,30,.22);
  color: #fff !important;
  display: inline-flex;
  font-size: 16px !important;
  font-weight: 800 !important;
  gap: 10px;
  justify-content: center;
  line-height: 1.2 !important;
  min-height: 50px;
  padding: 15px 24px !important;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
.qona-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce #payment #place_order:hover { box-shadow: 0 13px 28px rgba(244,81,30,.3); color: #fff !important; transform: translateY(-2px); }
.qona-button--small { min-height: 44px; padding: 12px 19px !important; }
.qona-button--light { background: #fff !important; color: var(--qona-orange-dark) !important; }
.qona-button--light:hover { background: #fff4ed !important; color: var(--qona-orange-dark) !important; }
.qona-eyebrow { color: var(--qona-orange-dark); display: inline-block; font-size: 14px; font-weight: 850; letter-spacing: .02em; margin-bottom: 12px; }

.qona-hero { background: radial-gradient(circle at 10% 10%,rgba(255,212,99,.32),transparent 30%),radial-gradient(circle at 88% 15%,rgba(244,81,30,.15),transparent 26%),var(--qona-cream); overflow: hidden; padding: 70px 0 80px; position: relative; }
.qona-hero::after { background-image: radial-gradient(rgba(244,81,30,.25) 1px,transparent 1px); background-size: 19px 19px; content: ""; height: 160px; opacity: .55; position: absolute; right: -40px; top: 80px; width: 220px; }
.qona-hero__grid { align-items: center; display: grid; gap: 70px; grid-template-columns: minmax(0,1.05fr) minmax(360px,.8fr); position: relative; z-index: 1; }
.qona-hero__copy h1 { color: var(--qona-ink); font-size: clamp(42px,5.2vw,70px); font-weight: 900; letter-spacing: -.045em; line-height: 1.08; margin: 0 0 24px; }
.qona-hero__copy h1 em { color: var(--qona-orange); display: block; font-style: normal; }
.qona-hero__copy > p { color: var(--qona-muted); font-size: 20px; line-height: 1.7; margin: 0 0 30px; max-width: 620px; }
.qona-hero__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 24px; }
.qona-text-link { border-bottom: 2px solid var(--qona-orange); color: var(--qona-ink); font-weight: 800; padding: 5px 1px; }
.qona-hero__trust { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 28px; }
.qona-hero__trust span { color: var(--qona-muted); font-size: 14px; font-weight: 700; }
.qona-hero__trust b { color: var(--qona-green); margin-right: 4px; }

.qona-hero-product { background: #fff; border: 1px solid rgba(231,226,217,.8); border-radius: 34px; box-shadow: var(--qona-shadow); padding: 22px; position: relative; transform: rotate(1.5deg); }
.qona-hero-product::before { background: var(--qona-yellow); border-radius: 50%; content: ""; height: 120px; left: -38px; opacity: .7; position: absolute; top: -42px; width: 120px; z-index: -1; }
.qona-hero-product__badge { background: var(--qona-green); border-radius: 999px; color: #fff; font-size: 13px; font-weight: 800; left: 20px; padding: 8px 14px; position: absolute; top: 20px; z-index: 2; }
.qona-hero-product__image { align-items: center; background: #f5f6f4; border-radius: 24px; display: flex; justify-content: center; min-height: 360px; overflow: hidden; }
.qona-hero-product__image img { aspect-ratio: 1; object-fit: contain; width: 100%; }
.qona-hero-product__meta { padding: 20px 8px 6px; }
.qona-hero-product__meta h2 { font-size: 21px; line-height: 1.35; margin: 0 0 8px; }
.qona-hero-product__meta h2 a { color: var(--qona-ink); }

.qona-price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price { color: var(--qona-orange-dark) !important; font-size: 24px; font-weight: 900; }
.qona-price del,
.woocommerce div.product p.price del,
.woocommerce ul.products li.product .price del { color: #9aa29d !important; font-size: .7em; font-weight: 600; opacity: 1 !important; }
.qona-price ins, .woocommerce div.product p.price ins { text-decoration: none; }

.qona-trust-strip { margin-top: -30px; position: relative; z-index: 3; }
.qona-trust-strip__grid { display: grid; gap: 1px; grid-template-columns: repeat(3,1fr); }
.qona-trust-strip__grid > div { align-items: center; background: #fff; border-block: 1px solid var(--qona-border); display: flex; gap: 14px; min-height: 112px; padding: 25px 32px; }
.qona-trust-strip__grid > div:first-child { border-left: 1px solid var(--qona-border); border-radius: 20px 0 0 20px; }
.qona-trust-strip__grid > div:last-child { border-radius: 0 20px 20px 0; border-right: 1px solid var(--qona-border); }
.qona-trust-strip__grid > div > span { align-items: center; background: var(--qona-orange-soft); border-radius: 14px; color: var(--qona-orange-dark); display: flex; flex: 0 0 48px; font-size: 23px; font-weight: 900; height: 48px; justify-content: center; }
.qona-trust-strip p, .qona-trust-strip strong, .qona-trust-strip small { display: block; margin: 0; }
.qona-trust-strip strong { color: var(--qona-ink); font-size: 16px; }
.qona-trust-strip small { color: var(--qona-muted); font-size: 13px; margin-top: 3px; }

.qona-section { padding: 90px 0; }
.qona-section-heading { align-items: end; display: flex; gap: 30px; justify-content: space-between; margin-bottom: 38px; }
.qona-section-heading h2, .qona-feature h2, .qona-faq h2, .qona-final-cta h2 { color: var(--qona-ink); font-size: clamp(32px,4vw,48px); font-weight: 900; letter-spacing: -.035em; line-height: 1.2; margin: 0; }
.qona-section-heading > p { color: var(--qona-muted); margin: 0 0 4px; max-width: 440px; }
.qona-section-heading--center { display: block; text-align: center; }
.qona-section-heading--center > p { margin: 10px auto 0; }

.qona-product-grid { display: grid; gap: 26px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.qona-product-card { background: #fff; border: 1px solid var(--qona-border); border-radius: var(--qona-radius); box-shadow: var(--qona-shadow-sm); display: flex; flex-direction: column; overflow: hidden; transition: transform 180ms ease,box-shadow 180ms ease; }
.qona-product-card:hover { box-shadow: var(--qona-shadow); transform: translateY(-5px); }
.qona-product-card__image { align-items: center; background: #f4f5f3; display: flex; justify-content: center; min-height: 310px; overflow: hidden; position: relative; }
.qona-product-card__image img { aspect-ratio: 1; object-fit: contain; transition: transform 250ms ease; width: 100%; }
.qona-product-card:hover .qona-product-card__image img { transform: scale(1.035); }
.qona-sale-badge,
.woocommerce span.onsale { background: var(--qona-orange) !important; border-radius: 999px !important; color: #fff !important; font-size: 13px !important; font-weight: 800 !important; left: 16px !important; line-height: 1 !important; min-height: auto !important; min-width: auto !important; padding: 9px 14px !important; position: absolute; top: 16px !important; z-index: 2; }
.qona-product-card__body { display: flex; flex: 1; flex-direction: column; padding: 24px; }
.qona-stock { color: var(--qona-green); font-size: 13px; font-weight: 800; }
.qona-product-card h3 { font-size: 22px; font-weight: 850; line-height: 1.38; margin: 9px 0; }
.qona-product-card h3 a { color: var(--qona-ink); }
.qona-product-card__body > p { color: var(--qona-muted); font-size: 15px; margin: 0 0 20px; }
.qona-product-card__buy { align-items: center; display: flex; flex-wrap: wrap; gap: 16px; justify-content: space-between; margin-top: auto; }
.qona-product-card__buy .qona-button { min-height: 45px; padding: 12px 16px !important; }
.qona-empty { background: #fff; border: 1px dashed var(--qona-border); border-radius: var(--qona-radius); color: var(--qona-muted); padding: 50px 25px; text-align: center; }

.qona-steps { background: var(--qona-ink); color: #fff; }
.qona-steps .qona-section-heading h2 { color: #fff; }
.qona-steps .qona-section-heading p { color: #b7c2bc; }
.qona-steps__grid { display: grid; gap: 22px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.qona-steps__grid article { background: rgba(255,255,255,.065); border: 1px solid rgba(255,255,255,.11); border-radius: 22px; display: flex; gap: 18px; padding: 28px; }
.qona-steps__grid article > span { align-items: center; background: var(--qona-yellow); border-radius: 14px; color: var(--qona-ink); display: flex; flex: 0 0 52px; font-size: 24px; font-weight: 900; height: 52px; justify-content: center; }
.qona-steps h3 { color: #fff; font-size: 21px; margin: 1px 0 7px; }
.qona-steps article p { color: #bdc7c2; font-size: 15px; margin: 0; }

.qona-feature { background: #fff; }
.qona-feature__grid { align-items: center; display: grid; gap: 70px; grid-template-columns: minmax(0,.92fr) minmax(0,1fr); }
.qona-feature__image { align-items: center; background: #f3f5f2; border-radius: 32px; display: flex; justify-content: center; min-height: 500px; overflow: hidden; padding: 20px; }
.qona-feature__image img { max-height: 520px; object-fit: contain; }
.qona-feature__copy > p { color: var(--qona-muted); font-size: 18px; margin: 20px 0; }
.qona-feature__copy ul { list-style: none; margin: 0 0 28px; padding: 0; }
.qona-feature__copy li { font-weight: 700; margin: 13px 0; padding-left: 32px; position: relative; }
.qona-feature__copy li::before { align-items: center; background: var(--qona-green-soft); border-radius: 50%; color: var(--qona-green); content: "✓"; display: flex; font-size: 13px; height: 22px; justify-content: center; left: 0; position: absolute; top: 3px; width: 22px; }
.qona-feature__action { align-items: center; display: flex; gap: 25px; }

.qona-faq__grid { display: grid; gap: 70px; grid-template-columns: minmax(260px,.68fr) minmax(0,1fr); }
.qona-faq__grid > div:first-child > p { color: var(--qona-muted); font-size: 18px; margin-top: 18px; }
.qona-faq__items { display: grid; gap: 12px; }
.qona-faq details { background: #fff; border: 1px solid var(--qona-border); border-radius: 16px; box-shadow: 0 5px 16px rgba(32,42,36,.045); padding: 0 22px; }
.qona-faq summary { color: var(--qona-ink); cursor: pointer; font-size: 18px; font-weight: 800; list-style: none; padding: 20px 34px 20px 0; position: relative; }
.qona-faq summary::-webkit-details-marker { display: none; }
.qona-faq summary::after { color: var(--qona-orange); content: "+"; font-size: 27px; position: absolute; right: 0; top: 13px; }
.qona-faq details[open] summary::after { content: "−"; }
.qona-faq details p { border-top: 1px solid var(--qona-border); color: var(--qona-muted); margin: 0; padding: 16px 0 20px; }

.qona-final-cta { background: radial-gradient(circle at 10% 50%,rgba(255,212,99,.22),transparent 25%),linear-gradient(135deg,var(--qona-orange-dark),var(--qona-orange)); color: #fff; padding: 78px 0; text-align: center; }
.qona-final-cta h2 { color: #fff; margin: 8px 0 12px; }
.qona-final-cta p { font-size: 18px; margin: 0 auto 28px; max-width: 620px; }

.qona-footer { background: #101813; color: #bac4be; padding: 66px 0 0; }
.qona-footer__grid { display: grid; gap: 70px; grid-template-columns: 1.2fr .7fr 1fr; }
.qona-footer__brand { color: #fff; display: inline-block; font-size: 29px; margin-bottom: 10px; }
.qona-footer p { margin: 0; max-width: 430px; }
.qona-footer h2 { color: #fff; font-size: 17px; margin: 0 0 14px; }
.qona-footer__grid > div > a:not(.qona-footer__brand) { color: #c7d0cb; display: block; margin: 7px 0; }
.qona-footer__grid > div > a:hover { color: #fff; }
.qona-footer__bottom { border-top: 1px solid rgba(255,255,255,.1); font-size: 13px; margin-top: 42px; padding-block: 20px; text-align: center; }
.qona-mobile-orderbar { display: none; }

.ast-container { max-width: var(--qona-shell); }
.site-content { background: var(--qona-cream); }
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-woocommerce-container { background: #fff; border: 1px solid var(--qona-border); border-radius: var(--qona-radius); box-shadow: var(--qona-shadow-sm); margin-block: 45px 70px; padding: clamp(24px,4vw,52px); }
.entry-title { color: var(--qona-ink); font-size: clamp(32px,4vw,48px); font-weight: 900; }
.entry-content h2, .entry-content h3 { color: var(--qona-ink); font-weight: 850; }
.entry-content p, .entry-content li { color: #44524a; }
.entry-content > * + h2 { margin-top: 36px; }

.woocommerce .woocommerce-breadcrumb { color: var(--qona-muted); font-size: 13px; margin: 0 0 24px; }
.woocommerce .woocommerce-breadcrumb a { color: var(--qona-orange-dark); }
.woocommerce ul.products { gap: 26px !important; }
.woocommerce ul.products li.product { background: #fff; border: 1px solid var(--qona-border); border-radius: 20px; box-shadow: var(--qona-shadow-sm); overflow: hidden; padding: 16px !important; }
.woocommerce ul.products li.product a img { background: #f4f5f3; border-radius: 14px; margin-bottom: 18px !important; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color: var(--qona-ink); font-size: 19px !important; font-weight: 800; line-height: 1.45; }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { color: var(--qona-muted); }
.woocommerce .woocommerce-ordering select { background: #fff; border: 1px solid var(--qona-border); border-radius: 11px; min-height: 44px; }

.single-product .ast-woocommerce-container { background: transparent; border: 0; box-shadow: none; padding-inline: 0; }
.woocommerce div.product { background: #fff; border: 1px solid var(--qona-border); border-radius: 28px; box-shadow: var(--qona-shadow-sm); display: grid; gap: 48px; grid-template-columns: minmax(0,1fr) minmax(0,.88fr); overflow: hidden; padding: clamp(20px,3vw,42px); }
.woocommerce div.product div.images,
.woocommerce div.product div.summary { float: none !important; margin: 0 !important; width: 100% !important; }
.woocommerce div.product div.images img { background: #f3f5f2; border-radius: 20px; object-fit: contain; }
.woocommerce div.product div.images .flex-control-thumbs li img { border: 2px solid transparent; border-radius: 10px; margin-top: 10px; }
.woocommerce div.product .product_title { color: var(--qona-ink); font-size: clamp(30px,4vw,47px); font-weight: 900; letter-spacing: -.035em; line-height: 1.2; margin-bottom: 18px; }
.woocommerce div.product p.price { font-size: 31px !important; margin-bottom: 20px; }
.woocommerce-product-details__short-description { color: var(--qona-muted); font-size: 18px; }
.woocommerce .qona-buy-now--single { font-size: 19px !important; margin-top: 12px; min-height: 58px; width: 100%; }
.qona-delivery-note { color: var(--qona-green); font-size: 14px; font-weight: 750; margin: 12px 0 0; text-align: center; }
.woocommerce div.product .product_meta { display: none; }
.woocommerce div.product .woocommerce-product-rating { align-items: center; display: flex; gap: 8px; }
.woocommerce div.product .woocommerce-tabs { border-top: 1px solid var(--qona-border); grid-column: 1 / -1; margin-top: 14px; padding-top: 30px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { border: 0; display: flex; gap: 10px; margin: 0 0 24px; overflow-x: auto; padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: #f5f4f0; border: 1px solid var(--qona-border); border-radius: 999px; margin: 0; padding: 0 19px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: var(--qona-ink); border-color: var(--qona-ink); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #fff; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--qona-ink); font-size: 15px; }
.woocommerce div.product .woocommerce-tabs .panel { color: #44524a; margin: 0; }
.woocommerce .woocommerce-Reviews-title .qona-legacy-review-note { color: var(--qona-muted); display: block; font-size: 14px; font-weight: 600; line-height: 1.55; margin-top: 8px; }
.woocommerce #reviews #comments ol.commentlist { padding: 0; }
.woocommerce #reviews #comments ol.commentlist li .comment_container { align-items: start; display: grid; gap: 16px; grid-template-columns: 56px minmax(0,1fr); }
.woocommerce #reviews #comments ol.commentlist li img.avatar { border: 3px solid #fff; box-shadow: 0 6px 16px rgba(32,42,36,.12); float: none !important; height: 56px; margin: 0 !important; padding: 0; position: static !important; width: 56px; }
.woocommerce #reviews #comments ol.commentlist li .comment-text { background: #fbfaf7; border: 1px solid var(--qona-border); border-radius: 15px; display: grid !important; gap: 14px 20px; grid-template-columns: minmax(0,1fr) auto; margin: 0 !important; min-width: 0; padding: 20px 22px !important; }
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta { align-self: center; grid-column: 1; grid-row: 1; margin: 0 !important; min-width: 0; }
.woocommerce #reviews #comments ol.commentlist li .comment-text .star-rating { align-self: center; float: none !important; grid-column: 2; grid-row: 1; margin: 0 !important; }
.woocommerce #reviews #comments ol.commentlist li .comment-text .description { grid-column: 1 / -1; grid-row: 2; min-width: 0; }
.woocommerce #reviews #comments ol.commentlist li .comment-text .description p:last-child { margin-bottom: 0; }
.woocommerce #review_form #respond { background: var(--qona-orange-soft); border-radius: 18px; margin-top: 25px; padding: 24px; }
.woocommerce .related.products { grid-column: 1 / -1; }

.woocommerce-checkout .ast-container { max-width: 1060px; }
.woocommerce-checkout .ast-article-single { background: transparent; border: 0; box-shadow: none; padding-inline: 0; }
.woocommerce-checkout .entry-header { text-align: center; }
.woocommerce form.checkout { align-items: start; display: grid; gap: 28px; grid-template-columns: minmax(0,.86fr) minmax(360px,1fr); }
.woocommerce form.checkout #customer_details,
.woocommerce form.checkout #order_review_heading,
.woocommerce form.checkout #order_review { float: none; width: auto; }
.woocommerce form.checkout #customer_details { background: #fff; border: 1px solid var(--qona-border); border-radius: 22px; box-shadow: var(--qona-shadow-sm); grid-column: 1; grid-row: 1 / span 2; padding: 26px; }
.woocommerce form.checkout #customer_details .col-1 { float: none; width: 100%; }
.woocommerce form.checkout #customer_details .col-2 { display: none; }
.woocommerce form.checkout #customer_details h3 { border: 0; color: var(--qona-ink); font-size: 24px; margin: 0 0 18px; padding: 0; }
.woocommerce form.checkout #order_review_heading { background: #fff; border: 1px solid var(--qona-border); border-bottom: 0; border-radius: 22px 22px 0 0; color: var(--qona-ink); font-size: 24px; grid-column: 2; margin: 0; padding: 25px 26px 16px; }
.woocommerce form.checkout #order_review { background: #fff; border: 1px solid var(--qona-border); border-radius: 0 0 22px 22px; box-shadow: var(--qona-shadow-sm); grid-column: 2; margin: 0; padding: 0 26px 26px; }
.woocommerce form .form-row { margin-bottom: 18px; padding: 0; }
.woocommerce form .form-row label { color: var(--qona-ink); font-size: 16px; font-weight: 800; margin-bottom: 7px; }
.woocommerce form .form-row .required { color: var(--qona-orange); }
.woocommerce form .input-text,
.woocommerce form select,
.woocommerce form textarea { background: #fbfaf7; border: 1.5px solid #d7d8d2; border-radius: 13px; color: var(--qona-ink); font-size: 17px; min-height: 54px; padding: 13px 15px; width: 100%; }
.woocommerce form textarea.input-text { min-height: 125px; resize: vertical; }
.woocommerce form .input-text:focus,
.woocommerce form select:focus,
.woocommerce form textarea:focus { border-color: var(--qona-orange); box-shadow: 0 0 0 3px rgba(244,81,30,.12); outline: 0; }
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td { border-color: var(--qona-border) !important; color: var(--qona-ink); padding: 14px 8px !important; }
.qona-payment-plan { border-top: 1px solid var(--qona-border); margin-top: 18px; padding-top: 23px; }
.qona-payment-plan h3 { color: var(--qona-ink); font-size: 20px; margin: 0 0 14px; }
.qona-payment-option { align-items: flex-start; background: #fbfaf7; border: 2px solid var(--qona-border); border-radius: 15px; cursor: pointer; display: flex; gap: 12px; margin: 10px 0; padding: 15px; transition: border-color 160ms ease,background 160ms ease; }
.qona-payment-option:hover, .qona-payment-option.is-selected { background: var(--qona-orange-soft); border-color: var(--qona-orange); }
.qona-payment-option input { accent-color: var(--qona-orange); flex: 0 0 auto; height: 19px; margin: 3px 0 0; width: 19px; }
.qona-payment-option span, .qona-payment-option strong, .qona-payment-option small { display: block; }
.qona-payment-option strong { color: var(--qona-ink); font-size: 16px; }
.qona-payment-option small { color: var(--qona-muted); line-height: 1.5; margin-top: 3px; }
.woocommerce-checkout #payment { background: #f6f5f1; border-radius: 16px; margin-top: 20px; }
.woocommerce-checkout #payment ul.payment_methods { border-color: var(--qona-border); padding: 18px; }
.woocommerce-checkout #payment div.payment_box { background: #fff; border-radius: 10px; color: var(--qona-muted); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fff; }
.woocommerce-checkout #payment .place-order { padding: 18px !important; }
.woocommerce-checkout #payment #place_order { float: none; font-size: 18px !important; min-height: 58px; width: 100%; }
.woocommerce-checkout #payment #place_order.is-loading { cursor: wait; opacity: .7; }
.woocommerce-error, .woocommerce-info, .woocommerce-message { background: #fff; border: 1px solid var(--qona-border); border-radius: 13px; box-shadow: var(--qona-shadow-sm); color: var(--qona-ink); }
.woocommerce-error { border-top: 4px solid #c92f2f; }
.woocommerce-message, .woocommerce-info { border-top: 4px solid var(--qona-green); }
.qona-order-accounting { background: var(--qona-green-soft); border: 1px solid #bfe5d4; border-radius: 18px; margin: 25px 0; padding: 22px; }
.qona-order-accounting h2 { color: var(--qona-ink); font-size: 22px; margin: 0 0 12px; }
.qona-order-accounting > div { align-items: center; border-top: 1px solid #cce6d8; display: flex; justify-content: space-between; padding: 10px 0; }
.qona-order-accounting > div strong { color: var(--qona-green); }

:focus-visible { outline: 3px solid var(--qona-yellow) !important; outline-offset: 3px; }

@media (max-width: 921px) {
  .admin-bar .qona-header { top: 46px; }
  .qona-nav { display: none; }
  .qona-menu-toggle { display: flex; }
  .qona-hero { padding: 55px 0 70px; }
  .qona-hero__grid { gap: 45px; grid-template-columns: 1fr; }
  .qona-hero__copy { max-width: 720px; }
  .qona-hero-product { margin-inline: auto; max-width: 540px; transform: none; width: 100%; }
  .qona-trust-strip__grid { grid-template-columns: 1fr; }
  .qona-trust-strip__grid > div { border: 1px solid var(--qona-border); border-bottom: 0; min-height: 90px; }
  .qona-trust-strip__grid > div:first-child { border-radius: 20px 20px 0 0; }
  .qona-trust-strip__grid > div:last-child { border-bottom: 1px solid var(--qona-border); border-radius: 0 0 20px 20px; }
  .qona-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .qona-steps__grid { grid-template-columns: 1fr; }
  .qona-feature__grid, .qona-faq__grid { gap: 42px; grid-template-columns: 1fr; }
  .qona-feature__image { min-height: 390px; }
  .qona-footer__grid { gap: 38px; grid-template-columns: 1fr 1fr; }
  .qona-footer__grid > div:first-child { grid-column: 1 / -1; }
  .woocommerce div.product { gap: 32px; grid-template-columns: 1fr; }
  .woocommerce form.checkout { grid-template-columns: 1fr; }
  .woocommerce form.checkout #customer_details { grid-column: 1; grid-row: auto; }
  .woocommerce form.checkout #order_review_heading,
  .woocommerce form.checkout #order_review { grid-column: 1; }
}

@media (max-width: 544px) {
  body { font-size: 16px; padding-bottom: 0; }
  body.single-product { padding-bottom: 78px; }
  .qona-shell { padding-inline: 16px; }
  .qona-topbar .qona-shell { gap: 12px; justify-content: space-between; }
  .qona-topbar span { font-size: 11px; }
  .qona-header__inner { min-height: 66px; }
  .qona-brand .custom-logo { max-height: 40px; max-width: 175px; }
  .qona-brand__name { font-size: 22px; }
  .qona-brand__mark { border-radius: 10px; font-size: 21px; height: 38px; width: 38px; }
  .qona-hero { padding: 42px 0 60px; }
  .qona-hero__grid { gap: 34px; }
  .qona-hero__copy h1 { font-size: 41px; }
  .qona-hero__copy > p { font-size: 17px; }
  .qona-hero__actions { align-items: stretch; flex-direction: column; gap: 15px; }
  .qona-hero__actions .qona-button { width: 100%; }
  .qona-text-link { align-self: center; }
  .qona-hero__trust { gap: 9px 14px; }
  .qona-hero-product { border-radius: 24px; padding: 14px; }
  .qona-hero-product__image { border-radius: 18px; min-height: 275px; }
  .qona-hero-product__meta { padding: 16px 5px 4px; }
  .qona-trust-strip { margin-top: -22px; }
  .qona-trust-strip__grid > div { padding: 17px; }
  .qona-section { padding: 62px 0; }
  .qona-section-heading { align-items: start; display: block; margin-bottom: 25px; }
  .qona-section-heading h2, .qona-feature h2, .qona-faq h2, .qona-final-cta h2 { font-size: 32px; }
  .qona-section-heading > p { margin-top: 9px; }
  .qona-product-grid { grid-template-columns: 1fr; }
  .qona-product-card__image { min-height: 280px; }
  .qona-product-card__body { padding: 20px; }
  .qona-product-card__buy .qona-button { width: 100%; }
  .qona-steps__grid article { padding: 21px; }
  .qona-feature__image { min-height: 300px; }
  .qona-feature__action { align-items: stretch; flex-direction: column; gap: 15px; }
  .qona-feature__action .qona-button { width: 100%; }
  .qona-faq__grid { gap: 28px; }
  .qona-final-cta { padding: 60px 0; }
  .qona-footer { padding-top: 48px; }
  .qona-footer__grid { grid-template-columns: 1fr; }
  .qona-footer__grid > div:first-child { grid-column: auto; }
  .ast-separate-container .ast-article-single,
  .ast-separate-container .ast-woocommerce-container { border-radius: 18px; margin-block: 22px 45px; padding: 20px; }
  .single-product .ast-woocommerce-container { padding: 0; }
  .woocommerce div.product { border-radius: 20px; padding: 15px; }
  .woocommerce div.product .product_title { font-size: 30px; }
  .woocommerce div.product .woocommerce-tabs { padding-top: 22px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li { padding-inline: 14px; }
  .woocommerce #reviews #comments ol.commentlist li .comment_container { gap: 12px; grid-template-columns: 44px minmax(0,1fr); }
  .woocommerce #reviews #comments ol.commentlist li img.avatar { height: 44px; width: 44px; }
  .woocommerce #reviews #comments ol.commentlist li .comment-text { grid-template-columns: minmax(0,1fr); padding: 16px !important; row-gap: 10px; }
  .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta { grid-column: 1; grid-row: 1; }
  .woocommerce #reviews #comments ol.commentlist li .comment-text .star-rating { grid-column: 1; grid-row: 2; justify-self: start; }
  .woocommerce #reviews #comments ol.commentlist li .comment-text .description { grid-column: 1; grid-row: 3; }
  .woocommerce form.checkout #customer_details { padding: 20px; }
  .woocommerce form.checkout #order_review_heading { padding: 22px 20px 14px; }
  .woocommerce form.checkout #order_review { padding: 0 20px 20px; }
  .qona-mobile-orderbar { align-items: center; background: #fff; border-top: 1px solid var(--qona-border); bottom: 0; box-shadow: 0 -8px 30px rgba(21,33,27,.12); display: flex; gap: 14px; justify-content: space-between; left: 0; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); position: fixed; right: 0; z-index: 9999; }
  .qona-mobile-orderbar small, .qona-mobile-orderbar strong { display: block; }
  .qona-mobile-orderbar small { color: var(--qona-muted); font-size: 11px; }
  .qona-mobile-orderbar strong { color: var(--qona-orange-dark); font-size: 18px; }
  .qona-mobile-orderbar strong del { display: none; }
  .qona-mobile-orderbar strong ins { text-decoration: none; }
  .qona-mobile-orderbar > a { background: var(--qona-orange); border-radius: 12px; color: #fff; font-weight: 850; min-width: 170px; padding: 13px 16px; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
