/*
Theme Name: RXG Wire
Description: 슈티컬파이(CEUTICALFY) 테마 — Figma RX GLOBAL_WEB_DESIGN_v1.0(가칭 시절 디자인 파일명) 파운데이션 토큰 기반 최종 시안 (모노크롬 + 포인트 블루)
Author: RXG Dev Team
Version: 1.4.7
Requires at least: 6.4
Tags: woocommerce
Text Domain: rxg-wire
*/

/* ============ 디자인 토큰 (Figma 02_FOUNDATION / 03_COMPONENTS) ============ */
:root {
	/* 컬러 — 모노크롬 스케일 */
	--w-bg: #F7F7FA;
	--w-surface: #FFFFFF;
	--w-surface-2: #F2F2F2;
	--w-surface-3: #F5F5F5;
	--w-border: #EDEDF2;
	--w-border-strong: #E0E0E0;
	--w-divider: #E6E6E6;
	--w-ink: #1F1F1F;
	--w-ink-2: #666666;
	--w-ink-3: #999999;
	--w-dark: #1F1F1F;
	--w-dark-hover: #383838;
	--w-dark-pressed: #121212;
	--w-dark-2: #333333;
	--w-disabled: #E0E0E0;
	/* 포인트/시맨틱 — 피그마 스텝 활성색 + 상태 배너 톤 */
	--w-accent: #2163D9;
	--w-accent-d: #1A4FAD;
	--w-accent-soft: #E5F1FB;
	--w-success: #0F7B3D;
	--w-success-bg: #EBFAF0;
	--w-danger: #C62828;
	--w-danger-bg: #FFEDED;
	--w-warn-bg: #FFF7E5;
	/* Radius (4/8/12/16/999) */
	--r-sm: 4px;
	--r-md: 8px;
	--r-lg: 12px;
	--r-xl: 16px;
	--r-full: 999px;
	/* Spacing (4/8/12/16/20/24/32/40/48/64/80) */
	--s1: 4px; --s2: 8px; --s3: 12px; --s4: 16px; --s5: 20px; --s6: 24px;
	--s8: 32px; --s10: 40px; --s12: 48px; --s16: 64px; --s20: 80px;
	/* Shadow — 절제된 모던 톤 */
	--sh-sm: 0 1px 2px rgba(31,31,31,.05);
	--sh-md: 0 4px 16px rgba(31,31,31,.07);
	--sh-lg: 0 16px 40px rgba(31,31,31,.11);
	--font: 'Pretendard', 'Inter', 'Noto Sans KR', 'Malgun Gothic', 'Apple SD Gothic Neo', -apple-system, sans-serif;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
	margin: 0;
	font-family: var(--font);
	background: var(--w-bg);
	color: var(--w-ink);
	font-size: 15px;
	line-height: 1.65;
	letter-spacing: -.01em;
	-webkit-font-smoothing: antialiased;
	word-break: keep-all;
}

a { color: inherit; text-decoration: none; transition: color .15s ease, background .15s ease; }
img { max-width: 100%; height: auto; }
h1, h2, h3, h4 { line-height: 1.32; margin-top: 0; }

::selection { background: var(--w-accent); color: #fff; }

/* ============ 버튼 공통 (Figma 01_BUTTON: L=24/16, M=20/12, gap 8) ============ */
.rxg-btn-primary,
.rxg-btn-secondary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--s2);
	border-radius: var(--r-md);
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
	border: 1px solid transparent;
	transition: background .15s ease, transform .12s ease, box-shadow .15s ease;
}
.rxg-btn-primary { background: var(--w-dark); color: #fff; padding: var(--s4) var(--s6); }
.rxg-btn-primary:hover { background: var(--w-dark-hover); box-shadow: var(--sh-md); }
.rxg-btn-primary:active { background: var(--w-dark-pressed); }
.rxg-btn-primary:disabled { background: var(--w-disabled); color: #fff; cursor: default; box-shadow: none; }
.rxg-btn-secondary { background: #fff; color: var(--w-ink); border-color: var(--w-border-strong); padding: var(--s4) var(--s6); }
.rxg-btn-secondary:hover { background: #F7F7F7; }
.rxg-btn-secondary:active { background: #EDEDED; }

/* ============ 헤더 (Figma GLOBAL_RULES: #1F1F1F, Desktop pad 120 → 1200 container) ============ */
.rxg-header {
	background: var(--w-dark);
	position: sticky;
	top: 0;
	z-index: 90;
	box-shadow: 0 1px 0 rgba(255,255,255,.06) inset, var(--sh-sm);
}

.rxg-header__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 var(--s6);
	height: 64px;
	display: flex;
	align-items: center;
	gap: 28px;
}

.rxg-header__logo {
	font-weight: 800;
	font-size: 19px;
	letter-spacing: -.3px;
	color: #fff;
	display: flex;
	align-items: center;
	gap: 10px;
}

.rxg-header__logo::before {
	content: "";
	width: 28px; height: 28px;
	border-radius: 8px;
	background:
		radial-gradient(circle at 30% 30%, #4D8BFF, transparent 60%),
		linear-gradient(135deg, var(--w-accent), #0E3E96);
	box-shadow: 0 2px 8px rgba(33,99,217,.45);
	display: inline-block;
}

.rxg-header__nav { display: flex; gap: 4px; margin-left: 8px; }
.rxg-header__nav a {
	font-size: 14px;
	color: rgba(255,255,255,.72);
	padding: 8px 14px;
	border-radius: var(--r-full);
	font-weight: 500;
}
.rxg-header__nav a:hover { background: rgba(255,255,255,.1); color: #fff; }

.rxg-header__account { margin-left: auto; display: flex; gap: 8px; align-items: center; }
.rxg-header__account a {
	font-size: 13.5px;
	padding: 8px 16px;
	border-radius: var(--r-full);
	font-weight: 600;
}
.rxg-header__account a:first-child { color: #fff; border: 1px solid rgba(255,255,255,.28); }
.rxg-header__account a:first-child:hover { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.5); }
.rxg-header__account a:last-child { background: #fff; color: var(--w-ink); }
.rxg-header__account a:last-child:hover { background: #EDEDED; }

/* ============ 메인/푸터 (푸터 #1F1F1F, pad 40) ============ */
.rxg-main {
	max-width: 1200px;
	margin: 0 auto;
	padding: var(--s10) var(--s6) var(--s16);
	min-height: 62vh;
}

.rxg-footer {
	background: var(--w-dark);
	color: #B8B8B8;
	margin-top: var(--s16);
	border-top: 1px solid rgba(255,255,255,.06);
}

.rxg-footer__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: var(--s10) var(--s6);
	display: flex;
	flex-wrap: wrap;
	gap: var(--s4);
	align-items: center;
	font-size: 13px;
}

.rxg-footer__brand { font-weight: 800; font-size: 16px; color: #fff; margin-right: 12px; letter-spacing: -.2px; }
.rxg-footer__links { display: flex; gap: 20px; }
.rxg-footer__links a { color: #8F8F8F; }
.rxg-footer__links a:hover { color: #fff; }
.rxg-footer__copy { margin: 0 0 0 auto; color: #6E6E6E; }

/* ============ 브레드크럼/히어로/섹션 ============ */
.rxg-breadcrumb { font-size: 12px; color: var(--w-ink-3); margin-bottom: var(--s4); letter-spacing: .2px; }

.rxg-hero {
	position: relative;
	padding: var(--s16) var(--s12) var(--s12);
	border-radius: var(--r-xl);
	background:
		radial-gradient(1000px 420px at 8% -30%, rgba(33,99,217,.14), transparent 62%),
		radial-gradient(800px 380px at 92% -40%, rgba(31,31,31,.09), transparent 60%),
		linear-gradient(180deg, #FFFFFF, #F2F3F7);
	border: 1px solid var(--w-border);
	margin-bottom: var(--s2);
	overflow: hidden;
}

.rxg-hero::after {
	content: "RX";
	position: absolute;
	right: -30px; top: -60px;
	font-size: 320px;
	font-weight: 800;
	letter-spacing: -20px;
	color: rgba(31,31,31,.035);
	pointer-events: none;
	line-height: 1;
}

.rxg-hero__title { font-size: 36px; font-weight: 800; letter-spacing: -1.2px; margin: 0 0 14px; }
.rxg-hero__desc { margin: 0 0 22px; color: var(--w-ink-2); font-size: 16px; max-width: 560px; }

.rxg-hero__chips { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 22px; }
.rxg-chip {
	font-size: 12px; font-weight: 600;
	padding: 6px 12px;
	border-radius: var(--r-full);
	background: #fff;
	border: 1px solid var(--w-border-strong);
	color: var(--w-ink-2);
	box-shadow: var(--sh-sm);
}

.rxg-btn-hero {
	display: inline-block;
	padding: 15px 28px;
	border-radius: var(--r-md);
	background: var(--w-dark);
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	transition: transform .12s ease, background .15s ease, box-shadow .15s ease;
}
.rxg-btn-hero:hover { background: var(--w-dark-hover); transform: translateY(-1px); box-shadow: var(--sh-md); }
.rxg-btn-hero:active { background: var(--w-dark-pressed); }

.rxg-section { margin-top: var(--s12); }
.rxg-section__title {
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -.5px;
	margin: 0 0 var(--s5);
	display: flex;
	align-items: center;
	gap: 12px;
}
.rxg-section__title::after { content: ""; flex: 1; height: 1px; background: var(--w-border-strong); }

.rxg-hint { color: var(--w-ink-3); }

/* ============ 상품 카드 — Tailwind 템플릿(content-product.php)이 구조/그리드를 담당.
   여기서는 관련상품 등 Woo 기본 루프와 플러그인 루프 요소(배지/버튼)만 보정. ============ */
.woocommerce .related ul.products, .woocommerce .upsells ul.products, .woocommerce .cross-sells ul.products {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--s6);
}
@media (max-width: 1024px) { .woocommerce .related ul.products, .woocommerce .upsells ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 768px) { .woocommerce .related ul.products, .woocommerce .upsells ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s4); } }

/* Woo 기본 루프 레이아웃 묵리화 — 그리드는 Tailwind 클래스가 담당 */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	clear: none !important;
}
.woocommerce ul.products li.first, .woocommerce-page ul.products li.first { clear: none !important; }
/* clearfix 가상요소가 grid 첫 셀을 차지하는 것 차단 */
.woocommerce ul.products::before, .woocommerce ul.products::after, .woocommerce-page ul.products::before, .woocommerce-page ul.products::after { display: none !important; }

/* 목록 루프 배지 — 카드 이미지 위 좌상단 플로팅 (Tailwind 카드 relative 기준) */
ul.products .product .rxg-status-badge {
	position: absolute;
	top: 10px; left: 10px;
	z-index: 2;
	margin: 0;
}
ul.products .product .rxg-status-badge__tag { box-shadow: var(--sh-sm); }

/* 루프 카드 내 가격 블록/TA 패널 여백 */
ul.products .product .rxg-price-block { margin: 0; }
ul.products .product .rxg-ta--loop { margin: 0; }

/* 장바구니 버튼 (루프) */
ul.products .product .button.add_to_cart_button, .rxg-pcard .add_to_cart_button {
	display: block; width: 100%;
	text-align: center;
	background: var(--w-dark);
	color: #fff;
	border-radius: var(--r-md);
	padding: 11px 12px;
	font-size: 13.5px;
	font-weight: 700;
	transition: background .15s ease;
}
ul.products .product .button.add_to_cart_button:hover, .rxg-pcard .add_to_cart_button:hover { background: var(--w-dark-hover); }
ul.products .product .button.add_to_cart_button:active, .rxg-pcard .add_to_cart_button:active { background: var(--w-dark-pressed); }
ul.products .product .added_to_cart { display: block; text-align: center; font-size: 12.5px; color: var(--w-accent); font-weight: 600; margin-top: 6px; }

/* WooCommerce 루프 기본 요소 정리 */
ul.products li.product .onsale {
	top: 10px; right: 10px; left: auto;
	min-height: 0; min-width: 0;
	margin: 0; padding: 5px 10px;
	font-size: 11px; font-weight: 800; letter-spacing: .4px;
	background: var(--w-accent);
	color: #fff;
	border-radius: var(--r-sm);
	line-height: 1.4;
	z-index: 2;
}

/* ============ 상품 상세 (C04) — 레이아웃은 Tailwind 템플릿, 여기서는 Woo 기본 마크업 요소 톤 ============ */
.woocommerce div.product .summary .product_title { font-size: 24px; font-weight: 800; letter-spacing: -.5px; margin: 0 0 var(--s3); }
.woocommerce div.product .summary .price { font-size: 20px; color: var(--w-ink); }
.woocommerce div.product .summary .price del { color: var(--w-ink-3); font-size: 15px; }
.woocommerce div.product .summary .price ins { text-decoration: none; font-weight: 800; }
.woocommerce div.product .summary .woocommerce-product-details__short-description { color: var(--w-ink-2); font-size: 14px; }

.woocommerce button.single_add_to_cart_button, .woocommerce .cart .button {
	background: var(--w-dark) !important;
	border-radius: var(--r-md) !important;
	padding: 15px 26px !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	transition: background .15s ease !important;
}
.woocommerce button.single_add_to_cart_button:hover, .woocommerce .cart .button:hover { background: var(--w-dark-hover) !important; }
.woocommerce button.single_add_to_cart_button:disabled { background: var(--w-disabled) !important; }
.woocommerce .quantity .qty { border-radius: var(--r-md); height: 50px; border: 1px solid var(--w-border-strong); }

/* 상세 탭 — 언더라인 스타일 (Figma C04 탭 규격) */
.woocommerce .woocommerce-tabs ul.tabs {
	list-style: none !important; padding: 0 !important; margin: 0 0 -1px !important;
	display: flex; gap: 4px; border-bottom: 1px solid var(--w-border-strong);
}
.woocommerce .woocommerce-tabs ul.tabs::before, .woocommerce .woocommerce-tabs ul.tabs::after { display: none !important; }
.woocommerce .woocommerce-tabs ul.tabs li {
	background: transparent !important; border: 0 !important; border-radius: 0 !important;
	padding: 0 !important; margin: 0 !important;
}
.woocommerce .woocommerce-tabs ul.tabs li::before, .woocommerce .woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce .woocommerce-tabs ul.tabs li a {
	display: block; padding: 10px 16px;
	font-size: 14px; font-weight: 600; color: var(--w-ink-2);
	border-bottom: 2px solid transparent;
}
.woocommerce .woocommerce-tabs ul.tabs li a:hover { color: var(--w-ink); }
.woocommerce .woocommerce-tabs ul.tabs li.active a { color: var(--w-ink); border-bottom-color: var(--w-dark-pressed); font-weight: 700; }
.woocommerce .woocommerce-tabs .panel {
	background: #fff; border: 1px solid var(--w-border); border-radius: 0 0 var(--r-lg) var(--r-lg);
	padding: var(--s6); box-shadow: var(--sh-sm);
}
.woocommerce .woocommerce-tabs .panel > h2:first-child { font-size: 18px; font-weight: 800; letter-spacing: -.3px; }

/* 관련 상품 */
.woocommerce div.product .related.products > h2 { font-size: 20px; font-weight: 800; letter-spacing: -.4px; }

/* 리뷰 폼 */
.woocommerce #reviews #comments { margin-bottom: var(--s4); }
.woocommerce #reviews .commentlist { list-style: none; padding: 0; }
.woocommerce #review_form_wrapper { background: #fff; border: 1px solid var(--w-border); border-radius: var(--r-lg); padding: var(--s6); margin-top: var(--s4); }
.woocommerce #review_form_wrapper input.input-text, .woocommerce #review_form_wrapper textarea { border: 1px solid var(--w-border-strong); border-radius: var(--r-md); padding: 11px 12px; font-size: 14px; }
.woocommerce #review_form_wrapper input.input-text:focus, .woocommerce #review_form_wrapper textarea:focus { border-color: var(--w-accent); outline: none; box-shadow: 0 0 0 3px rgba(33,99,217,.15); }
.woocommerce #review_form_wrapper .form-submit .submit {
	background: var(--w-dark) !important; color: #fff !important; border-radius: var(--r-md) !important;
	padding: 12px 24px !important; font-weight: 700 !important; font-size: 14px !important;
}
.woocommerce #review_form_wrapper .form-submit .submit:hover { background: var(--w-dark-hover) !important; }

/* WooCommerce 글로벌 메시지 */
.woocommerce-message, .woocommerce-info {
	border-top-color: var(--w-accent);
	background: var(--w-accent-soft);
	border-radius: var(--r-md);
	color: var(--w-ink);
}
.woocommerce-message::before, .woocommerce-info::before { color: var(--w-accent); }
.woocommerce-error { border-radius: var(--r-md); }

/* ============ 페이지 (숏코드 화면 등) ============ */
.rxg-page { max-width: 960px; }
.rxg-page__title { font-size: 26px; font-weight: 800; letter-spacing: -.6px; }
.rxg-page__content {
	background: #fff;
	border: 1px solid var(--w-border);
	border-radius: var(--r-lg);
	padding: var(--s8);
	box-shadow: var(--sh-sm);
}

/* WooCommerce Cart / Checkout / Account 기본 화면 톤 맞춤 */
.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals,
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid var(--w-border);
	border-radius: var(--r-lg);
	padding: var(--s6);
}
.woocommerce table.shop_table { border-radius: var(--r-md); border-color: var(--w-border); }
.woocommerce table.shop_table th { background: var(--w-surface-3); font-size: 12px; letter-spacing: .3px; text-transform: uppercase; color: var(--w-ink-2); }
.woocommerce table.shop_table td { border-color: var(--w-border); }
.woocommerce a.button.alt, .woocommerce button.button.alt { background: var(--w-dark); border-radius: var(--r-md); }
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover { background: var(--w-dark-hover); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select {
	border: 1px solid var(--w-border-strong);
	border-radius: var(--r-md);
	padding: 12px;
	font-size: 14px;
	transition: border-color .15s ease, box-shadow .15s ease;
}
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus, .woocommerce form .form-row select:focus {
	border-color: var(--w-accent);
	outline: none;
	box-shadow: 0 0 0 3px rgba(33,99,217,.15);
}

/* ── 로그인/회원가입 (my-account 비로그인) ── */
.woocommerce-account:not(.logged-in) .woocommerce { max-width: 520px; margin: 0 auto; }
.woocommerce form.login, .woocommerce form.register {
	border: 1px solid var(--w-border);
	border-radius: var(--r-xl);
	padding: var(--s8);
	background: #fff;
	box-shadow: var(--sh-md);
}
.woocommerce form.login .form-row, .woocommerce form.register .form-row { margin-bottom: var(--s4); }
.woocommerce form.login label, .woocommerce form.register label { font-size: 13px; font-weight: 600; color: var(--w-ink); margin-bottom: 6px; }
.woocommerce form.login input.input-text, .woocommerce form.register input.input-text {
	width: 100%; padding: 13px 14px; font-size: 14.5px;
	border: 1px solid var(--w-border-strong); border-radius: var(--r-md);
	transition: border-color .15s ease, box-shadow .15s ease;
}
.woocommerce form.login input.input-text:focus, .woocommerce form.register input.input-text:focus {
	border-color: var(--w-accent); outline: none; box-shadow: 0 0 0 3px rgba(33,99,217,.15);
}
.woocommerce form.login .woocommerce-form-login__submit,
.woocommerce form.register .woocommerce-form-register__submit {
	width: 100%; margin-top: var(--s3);
	background: var(--w-dark) !important; color: #fff !important;
	border-radius: var(--r-md) !important;
	padding: 14px !important; font-size: 15px !important; font-weight: 700 !important;
	transition: background .15s ease !important;
}
.woocommerce form.login .woocommerce-form-login__submit:hover,
.woocommerce form.register .woocommerce-form-register__submit:hover { background: var(--w-dark-hover) !important; }
.woocommerce .woocommerce-form-login .woocommerce-LostPassword a { color: var(--w-accent); font-size: 13px; font-weight: 600; }
.woocommerce form.login .woocommerce-form-login__rememberme { display: flex; align-items: center; gap: 8px; font-size: 13.5px; color: var(--w-ink-2); }

/* 로그인 후 my-account 대시보드 */
.woocommerce-account .woocommerce-MyAccount-navigation { width: 240px; }
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--w-border); }
.woocommerce-MyAccount-navigation li:last-child { border-bottom: 0; }
.woocommerce-MyAccount-navigation a { display: block; padding: 12px 14px; border-radius: var(--r-md); font-size: 14px; color: var(--w-ink-2); font-weight: 500; }
.woocommerce-MyAccount-navigation li.is-active a, .woocommerce-MyAccount-navigation a:hover { background: var(--w-surface-3); color: var(--w-ink); font-weight: 700; }
.woocommerce-MyAccount-content mark { background: var(--w-accent-soft); color: var(--w-accent); font-weight: 700; border-radius: var(--r-sm); padding: 2px 8px; }

/* ── Woo 블록 카트/체크아웃 (Woo 11 블록 톤) ── */
.wp-block-woocommerce-cart, .wp-block-woocommerce-checkout {
	background: #fff; border: 1px solid var(--w-border); border-radius: var(--r-lg);
	padding: var(--s6); box-shadow: var(--sh-sm);
}
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
	background: var(--w-dark) !important;
	border-radius: var(--r-md) !important;
	font-weight: 700 !important;
	transition: background .15s ease !important;
}
.wc-block-cart__submit-button:hover, .wc-block-components-checkout-place-order-button:hover { background: var(--w-dark-hover) !important; }
.wc-block-components-product-name { font-weight: 700; color: var(--w-ink); }
.wc-block-components-totals-item__value, .wc-block-components-product-price { font-variant-numeric: tabular-nums; }
.wc-block-cart-item__quantity .wc-block-components-quantity-selector { border-radius: var(--r-md); }
.wc-block-components-text-input input, .wc-block-components-select__select { border-radius: var(--r-md) !important; }
.wc-block-components-text-input input:focus, .wc-block-components-select__select:focus {
	border-color: var(--w-accent) !important;
	box-shadow: 0 0 0 3px rgba(33,99,217,.12) !important;
}

/* ============ 블로그 폴백 ============ */
.rxg-blog__item {
	background: #fff;
	border: 1px solid var(--w-border);
	border-radius: var(--r-lg);
	padding: var(--s5);
	margin-bottom: var(--s4);
	box-shadow: var(--sh-sm);
	transition: box-shadow .18s ease, transform .18s ease;
}
.rxg-blog__item:hover { box-shadow: var(--sh-md); transform: translateY(-1px); }
.rxg-blog__item h2 { margin: 0 0 4px; font-size: 18px; letter-spacing: -.3px; }

/* ============ 반응형 (GLOBAL_RULES: Desktop 1200 / Mobile 390·pad 24) ============ */
@media (max-width: 1024px) {
	.rxg-hero { padding: var(--s12) var(--s8) var(--s8); }
	.rxg-hero__title { font-size: 30px; }
	.rxg-grid, ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 768px) {
	.rxg-grid, ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s4); }
	.rxg-section { margin-top: var(--s10); }
	.rxg-hero::after { font-size: 200px; right: -20px; top: -30px; }
	.rxg-grid .product .rxg-price-block, ul.products .product .rxg-price-block { margin: 0 var(--s3) var(--s3); }
	.rxg-grid .product .rxg-ta--loop, ul.products .product .rxg-ta--loop { margin: 0 var(--s3); }
	.rxg-grid .product .woocommerce-loop-product__title, ul.products .product .woocommerce-loop-product__title { margin: var(--s3) var(--s3) 4px; font-size: 14px; }
	.rxg-grid .product .button.add_to_cart_button, ul.products .product .button.add_to_cart_button { margin: auto var(--s3) var(--s3); }
}

@media (max-width: 600px) {
	body { font-size: 14.5px; }
	.rxg-header__inner { padding: 0 var(--s4); height: 56px; gap: 10px; }
	.rxg-header__logo { font-size: 16px; gap: 8px; }
	.rxg-header__logo::before { width: 24px; height: 24px; }
	.rxg-header__nav { display: none; }
	.rxg-header__account { gap: 6px; }
	.rxg-header__account a { padding: 7px 11px; font-size: 12.5px; white-space: nowrap; }
	.rxg-main { padding: var(--s6) var(--s4) var(--s12); }
	.rxg-hero { padding: var(--s10) var(--s6) var(--s8); border-radius: var(--r-lg); }
	.rxg-hero__title { font-size: clamp(20px, 6.4vw, 25px); letter-spacing: -.6px; overflow-wrap: anywhere; }
	.rxg-hero__desc { font-size: 14.5px; overflow-wrap: anywhere; }
	.rxg-section__title { font-size: 19px; }
	.rxg-footer__inner { flex-direction: column; align-items: flex-start; gap: var(--s3); padding: var(--s8) var(--s4); }
	.rxg-footer__copy { margin-left: 0; }
	.rxg-page__content { padding: var(--s5); }
	.woocommerce div.product .summary { padding: var(--s5); }
	.woocommerce div.product .summary .product_title { font-size: 20px; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.rxg-grid .product, ul.products .product, .rxg-btn-hero { transition: none; }
}
