:root { --moyo-ink:#252b38; --moyo-muted:#7d8490; --moyo-brand:#4754ca; --moyo-line:#e9e9ec; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--moyo-ink); background:#fff; font-family:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif; font-size:15px; line-height:1.55; }
img { max-width:100%; height:auto; }
button,input,select,textarea { font:inherit; }
button { cursor:pointer; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--moyo-brand); text-decoration:none; }
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible { outline:2px solid var(--moyo-brand); outline-offset:3px; }
.screen-reader-text { position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; padding:0!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.skip-link { position:absolute; left:16px; top:-80px; z-index:10000; padding:10px 14px; background:#fff; box-shadow:0 2px 16px #0002; }
.skip-link:focus { top:16px; }
.site-width { width:min(100% - 60px,1380px); margin-inline:auto; }
.site-header { background:#fff; border-bottom:1px solid #f0f0f2; }
.site-header__main { min-height:105px; display:flex; gap:30px; align-items:center; }
.site-logo { display:block; flex:none; width:180px; color:#303b67; font-size:27px; font-weight:800; letter-spacing:-.06em; white-space:nowrap; }
.site-logo img { display:block; width:100%; height:auto; object-fit:contain; }
.site-search { flex:1 1 460px; max-width:640px; height:44px; display:flex; border:1px solid #dadde3; border-radius:22px; overflow:hidden; background:#fff; }
.site-search:focus-within { border-color:var(--moyo-brand); }
.site-search input[type=search] { flex:1; min-width:0; padding:0 18px; border:0; outline:0; background:transparent; font-size:14px; }
.site-search button { flex:none; padding:0 22px; border:0; background:#303d79; color:#fff; font-weight:600; font-size:13px; }
.site-header__actions { margin-left:auto; display:flex; align-items:center; gap:17px; font-size:13px; white-space:nowrap; }
.site-header__nav-row { border-top:1px solid #f3f3f3; }
.site-header__nav-row .site-width { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:54px; }
.site-header__nav-row nav { min-width:0; }
.nav-menu { display:flex; flex-wrap:wrap; align-items:center; gap:clamp(14px,2vw,31px); margin:0; padding:0; list-style:none; }
.nav-menu li { position:relative; margin:0; list-style:none; }
.nav-menu a { display:block; padding:12px 0; color:#242834; font-size:15px; font-weight:600; }
.nav-menu a:hover { color:var(--moyo-brand); }
.nav-menu .sub-menu { position:absolute; left:0; top:100%; z-index:10; min-width:170px; margin:0; padding:8px 14px; list-style:none; border:1px solid var(--moyo-line); border-radius:6px; box-shadow:0 10px 30px #0002; background:#fff; display:none; }
.nav-menu li:hover>.sub-menu,.nav-menu li:focus-within>.sub-menu { display:block; }
.nav-menu .sub-menu a { font-weight:400; padding:8px 0; }
.nav-menu--secondary a { font-size:13px; font-weight:400; color:#5a5f6a; }
.site-mobile-menu { display:none; }
.moyomall-home__banner { padding-top:26px; }
.moyomall-category-tiles { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:20px; margin-block:53px 118px; }
.moyomall-category-tile { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; min-width:0; min-height:174px; border-radius:15px; background:#f4f4f4; text-align:center; color:#292d36; font-size:20px; font-weight:600; letter-spacing:-.05em; }
.moyomall-category-tile img { display:block; width:70px; height:70px; border-radius:15px; object-fit:cover; }
.moyomall-category-tile:hover,.moyomall-category-tile.is-current { color:var(--moyo-brand); }
.moyomall-section-title { margin:0 0 18px; color:#252525; font-size:clamp(22px,2.1vw,30px); line-height:1.35; font-weight:700; letter-spacing:-.045em; }
.moyomall-product-section--simple > .moyomall-section-title { text-align:center; }
.moyomall-product-section { margin-bottom:78px; }
.moyomall-product-section--simple { margin-bottom:70px; }
.moyomall-product-section__intro { display:flex; align-items:center; gap:16px; margin-bottom:17px; }
.moyomall-product-section__image { display:block; flex:none; }
.moyomall-product-section__image img { display:block; width:82px; height:82px; border-radius:15px; object-fit:cover; }
.moyomall-product-section__copy { flex:1; min-width:0; }
.moyomall-product-section__copy h2 { margin:0 0 5px; color:#252525; font-size:28px; line-height:1.35; font-weight:700; letter-spacing:-.05em; }
.moyomall-product-section__copy p { margin:0; color:#999; font-size:15px; }
.moyomall-product-section__more { flex:none; display:inline-flex; align-items:center; gap:9px; color:#555; font-size:13px; }
.moyomall-product-section__more:hover { color:var(--moyo-brand); }
.moyomall-section-heading { display:flex; justify-content:space-between; align-items:baseline; gap:16px; margin-bottom:20px; }
.moyomall-section-heading .moyomall-section-title { margin:0; }
.moyomall-section-heading>a { font-size:13px; color:#555; }
.moyomall-home__reviews,.moyomall-home__magazine { margin-bottom:80px; }
.moyomall-magazine-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.moyomall-magazine-card { min-width:0; margin:0; }
.moyomall-magazine-card__link { display:block; color:inherit; }
.moyomall-magazine-card img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:10px; }
.moyomall-magazine-card__copy { padding:10px 2px 0; }
.moyomall-magazine-card h2,.moyomall-magazine-card h3 { margin:0 0 7px; font-size:18px; line-height:1.45; font-weight:600; }
.moyomall-magazine-card p { margin:0; color:var(--moyo-muted); font-size:13px; line-height:1.6; }
.moyomall-page,.moyomall-woocommerce,.moyomall-search-results { min-height:50vh; padding-block:36px 80px; }
.moyomall-single { padding-block:45px 80px; }
.moyomall-single__article { max-width:980px; margin-inline:auto; }
.moyomall-single__featured { margin-bottom:30px; text-align:center; }
.moyomall-single__featured img { width:100%; max-height:620px; object-fit:contain; }
.moyomall-single__related { margin-top:70px; }
.moyomall-single__related h2 { margin:0 0 20px; font-size:25px; }
.moyomall-pagination { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; margin-top:38px; }
.moyomall-pagination .page-numbers { display:grid; place-items:center; min-width:34px; height:34px; padding:0 7px; border:1px solid var(--moyo-line); border-radius:4px; }
.moyomall-pagination .page-numbers.current { background:var(--moyo-brand); border-color:var(--moyo-brand); color:#fff; }
.moyomall-category-tiles--page { display:none; }
.moyomall-page--category { padding-top:66px; }
.moyomall-category-header { display:flex; align-items:center; justify-content:center; gap:16px; margin-bottom:37px; }
.moyomall-category-header img { width:70px; height:70px; border-radius:15px; object-fit:cover; }
.moyomall-category-header h1 { margin:0; font-size:60px; line-height:1.2; letter-spacing:-.05em; }
.moyomall-page-header { margin-bottom:24px; }
.moyomall-page-header h1 { margin:0; font-size:clamp(25px,3vw,36px); line-height:1.3; letter-spacing:-.04em; }
.entry-content { overflow-wrap:anywhere; }
.entry-content img { max-width:100%; height:auto; }
.entry-content iframe { max-width:100%; }
.site-footer { border-top:1px solid var(--moyo-line); padding-block:44px 22px; background:#fafafa; color:#686b73; font-size:13px; }
.site-footer__widgets { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
.site-footer__widgets:empty,.site-footer__legacy:empty { display:none; }
.site-footer__column { min-width:0; }
.site-footer__column ul { list-style:none; margin:0; padding:0; }
.site-footer__column li { margin-bottom:7px; }
.site-footer__column p { margin:0 0 10px; }
.moyomall-footer-title { margin:0 0 12px; color:#3c3e46; font-size:15px; font-weight:700; }
.site-footer__legacy { display:flex; flex-wrap:wrap; gap:18px 45px; padding-top:22px; }
.site-footer__bottom { margin-top:24px; padding-top:18px; border-top:1px solid #e4e4e7; }
.site-footer__bottom p { margin:0; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color:#252525; font-size:16px; }
.woocommerce ul.products li.product .price { color:var(--moyo-brand); }
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce a.button.alt,.woocommerce button.button.alt { background:#303d79; color:#fff; border-radius:4px; }
.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover { background:#4754ca; color:#fff; }
@media (max-width:1024px) {
 .site-header__main { gap:18px; }
 .site-logo { width:155px; }
 .site-header__actions { gap:10px; }
 .moyomall-magazine-cards { gap:18px; }
}
@media (max-width:767px) {
 .site-width { width:calc(100% - 20px); }
 .site-header__main { min-height:0; padding-block:12px; display:grid; grid-template-columns:1fr auto; gap:12px; }
 .site-logo { width:145px; grid-column:1; grid-row:1; }
 .site-header__actions { justify-self:end; grid-column:2; grid-row:1; gap:9px; font-size:12px; }
 .site-header__actions a:last-child { display:none; }
 .site-search { max-width:none; width:100%; height:40px; grid-column:1 / -1; grid-row:2; }
 .site-search input[type=search] { padding-inline:13px; }
 .site-search button { padding-inline:14px; }
 .site-mobile-menu { display:block; grid-column:1 / -1; grid-row:3; justify-self:start; font-size:13px; }
 .site-mobile-menu summary { cursor:pointer; font-weight:600; padding:4px 0; }
 .site-mobile-menu nav { padding:8px 0 2px; }
 .site-mobile-menu ul { list-style:none; margin:0; padding:0; }
 .site-mobile-menu a { display:block; padding:6px 2px; }
 .site-mobile-menu .sub-menu { padding-left:18px; }
 .site-header__nav-row { display:none; }
 .moyomall-home__banner { padding-top:12px; }
 .moyomall-category-tiles { width:calc(100% - 40px); grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-block:18px 52px; }
 .moyomall-category-tile { font-size:13px; }
 .moyomall-category-tile { min-height:111px; }
 .moyomall-category-tile img { width:50px; height:50px; border-radius:10px; }
 .moyomall-product-section,.moyomall-product-section--simple { margin-bottom:52px; }
 .moyomall-section-title { margin-bottom:13px; font-size:23px; }
 .moyomall-product-section__intro { gap:10px; margin-bottom:10px; }
 .moyomall-product-section__image img { width:55px; height:55px; }
 .moyomall-product-section__copy h2 { font-size:21px; }
 .moyomall-product-section__copy p { font-size:12px; }
 .moyomall-product-section__more { font-size:12px; }
 .moyomall-magazine-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px 12px; }
 .moyomall-magazine-card h2,.moyomall-magazine-card h3 { font-size:15px; }
 .moyomall-home__reviews,.moyomall-home__magazine { margin-bottom:55px; }
 .moyomall-page,.moyomall-woocommerce,.moyomall-search-results { padding-block:20px 55px; }
 .moyomall-single { padding-block:25px 55px; }
 .moyomall-single__related { margin-top:48px; }
 .moyomall-category-tiles--page { display:grid; width:calc(100% - 20px); margin:0 auto 60px; }
 .moyomall-category-tiles--page .moyomall-category-tile { color:#9a9a9a; }
 .moyomall-category-tiles--page .moyomall-category-tile:not(.is-current) img { filter:grayscale(1); opacity:.75; }
 .moyomall-category-tiles--page .moyomall-category-tile.is-current { outline:2px solid var(--moyo-brand); outline-offset:-2px; background:#fff; color:#252525; }
 .moyomall-page--category { padding-top:0; }
 .moyomall-category-header { gap:10px; }
 .moyomall-category-header img { display:none; }
 .moyomall-category-header h1 { font-size:24px; }
 .moyomall-category-header { margin-bottom:24px; }
 .site-footer { padding-block:30px 18px; }
 .site-footer__widgets { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
}
@media (max-width:380px) {
 .site-logo { width:125px; }
 .site-header__actions { gap:7px; font-size:11px; }
 .moyomall-category-tiles { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .moyomall-product-section__more { font-size:0; }
 .moyomall-product-section__more span { font-size:19px; }
 .site-footer__widgets { grid-template-columns:1fr; }
}

/* Astra A header/footer geometry, rendered by the independent B theme. */
.site-header { position:relative; z-index:30; border-bottom:0; }
.site-header__main { min-height:80px; justify-content:space-between; }
.site-logo { width:125px; }
.site-cart { display:block; position:relative; width:31px; height:31px; color:#4754ca; }
.site-cart svg { display:block; width:100%; height:100%; }
.site-cart__count { position:absolute; top:-8px; right:-10px; display:grid; place-items:center; min-width:17px; height:17px; padding:0 3px; border-radius:10px; background:#4754ca; color:#fff; font-size:10px; font-weight:700; }
.site-header__nav-row .site-width { min-height:71px; align-items:center; }
.site-header__primary { flex:1 1 auto; }
.site-header__secondary { flex:0 0 auto; }
.site-header__primary .nav-menu { gap:clamp(20px,2.3vw,38px); }
.site-header__primary .nav-menu a { font-size:17px; font-weight:700; color:#111; }
.site-header__primary .nav-menu .menu-item-has-children > a::after { content:""; display:inline-block; width:6px; height:6px; margin:0 0 3px 10px; border-right:1px solid currentColor; border-bottom:1px solid currentColor; transform:rotate(45deg); }
.site-header__secondary .nav-menu { gap:29px; }
.site-header__secondary .nav-menu a { font-size:17px; font-weight:700; color:#111; }
.site-header__secondary .dgwt-wcas-search-wrapp { width:265px; max-width:265px; }
.site-header__secondary .dgwt-wcas-search-wrapp input { font-size:14px; }
.site-footer { padding:46px 0; border:0; background:#8be7ec; color:#080808; font-size:15px; }
.site-footer__grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:30px; }
.site-footer__first,.site-footer__html-2 { min-width:0; }
.site-footer__copyright { margin-bottom:22px; }
.site-footer__copyright p,.site-footer__html-1 p,.site-footer__html-2 p { margin:0 0 15px; }
@media (min-width:768px) {
 .site-header__main.site-width,.site-header__nav-row .site-width { width:min(100% - 80px,1360px); }
 .site-logo { width:115px; }
}
@media (max-width:767px) {
 .site-header__main { position:relative; min-height:60px; padding:0; display:flex; justify-content:center; }
 .site-logo { width:90px; margin:auto; }
 .moyomall-home__banner { width:calc(100% - 40px); padding-top:0; }
 .site-cart { display:none; }
 .site-mobile-menu { display:block; position:absolute; top:0; left:0; margin:0; height:60px; }
 .site-mobile-menu summary { display:grid; place-items:center; width:44px; height:60px; padding:0; list-style:none; cursor:pointer; }
 .site-mobile-menu summary::-webkit-details-marker { display:none; }
 .site-mobile-menu__bars,.site-mobile-menu__bars::before,.site-mobile-menu__bars::after { display:block; width:19px; height:2.5px; border-radius:2px; background:#111; }
 .site-mobile-menu__bars { position:relative; }
 .site-mobile-menu__bars::before,.site-mobile-menu__bars::after { position:absolute; left:0; content:""; }
 .site-mobile-menu__bars::before { top:-6px; }
 .site-mobile-menu__bars::after { top:6px; }
 .site-mobile-menu__panel { position:absolute; left:-10px; top:60px; z-index:100; width:min(340px,100vw); max-height:calc(100vh - 60px); overflow:auto; padding:18px 20px 24px; border:1px solid var(--moyo-line); box-shadow:0 14px 35px #0003; background:#fff; }
 .site-mobile-menu nav { padding:0; }
 .site-mobile-menu nav a { font-size:15px; font-weight:600; }
 .site-mobile-menu__search { margin-top:15px; }
 .site-mobile-menu__search .dgwt-wcas-search-wrapp { width:100%; max-width:100%; }
 .site-footer { padding:30px 0; font-size:13px; }
 .site-footer__grid { grid-template-columns:1fr; gap:12px; }
 .site-footer__copyright { margin-bottom:12px; }
}
