/* Xylomareth — transformed from the uploaded template architecture. */
:root{--default-font:system-ui,-apple-system,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;--heading-font:var(--default-font);--nav-font:var(--default-font);--background-color:#fff;--surface-color:#fff;--light-color:#f4f6f8;--default-color:#4b5563;--heading-color:#172033;--accent-color:#17865c;--navy:#16243d;--orange:#d66a2c;--border-color:#dce1e7;--contrast-color:#fff;--nav-color:#243047;--nav-hover-color:#17865c;--nav-mobile-background-color:#fff;--shadow:0 12px 30px rgba(23,32,51,.08);--radius:10px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--default-color);background:var(--background-color);font-family:var(--default-font);line-height:1.65}body.cart-open{overflow:hidden}a{color:var(--accent-color);text-decoration:none}a:hover{color:#116b49}h1,h2,h3,h4,h5,h6{color:var(--heading-color);font-family:var(--heading-font);font-weight:750;letter-spacing:-.035em}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{max-width:1180px}.section{padding:72px 0;scroll-margin-top:78px}.light-background{background:var(--light-color)}.eyebrow{display:inline-block;color:var(--accent-color);font-size:.78rem;font-weight:800;letter-spacing:.08em;margin-bottom:8px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.section-heading h2{font-size:clamp(1.65rem,3vw,2.3rem);margin:0}.section-heading p{margin:8px 0 0}.header{--background-color:rgba(255,255,255,.95);color:var(--nav-color);background:var(--background-color);padding:14px 0;transition:.25s;z-index:997;border-bottom:1px solid transparent;backdrop-filter:blur(10px)}.scrolled .header{border-bottom-color:var(--border-color);box-shadow:0 5px 18px rgba(23,32,51,.06)}.header .logo{gap:10px}.header .logo h1{font-size:1.18rem;margin:0;color:var(--navy);letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--navy);color:#fff;font-weight:900}.navmenu ul{margin:0;padding:0;display:flex;list-style:none;align-items:center;gap:4px}.navmenu a,.cart-toggle{display:flex;align-items:center;gap:6px;padding:9px 11px;color:var(--nav-color);font-size:.92rem;font-weight:700;border-radius:8px;background:none;border:0}.navmenu a:hover,.navmenu a.active{color:var(--accent-color);background:#eef7f3}.cart-toggle{border:1px solid var(--border-color);margin-left:5px}.cart-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:var(--navy);color:#fff;font-size:.72rem}.mobile-nav-toggle{font-size:28px;line-height:0;cursor:pointer}.hero{padding:142px 0 72px;background:linear-gradient(180deg,#f7f9fb 0%,#fff 100%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center}.hero h2{font-size:clamp(2.3rem,5vw,4.2rem);line-height:1.08;margin:0 0 18px;max-width:760px}.hero p{font-size:1.08rem;max-width:650px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}.btn-primary,.btn-secondary,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 16px;border-radius:8px;font-weight:800;border:1px solid transparent;text-decoration:none}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{background:#23375c;color:#fff}.btn-secondary{background:#fff;border-color:var(--border-color);color:var(--heading-color)}.btn-secondary:hover{border-color:#aeb7c2;color:var(--heading-color)}.btn-ghost{background:transparent;color:var(--accent-color);padding-left:8px;padding-right:8px}.hero-meta{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:.86rem;font-weight:700;color:#667085}.supply-board{min-height:390px;background:#e9edf2;border:1px solid var(--border-color);border-radius:14px;padding:28px;display:grid;grid-template-columns:1.2fr .8fr 1fr;grid-template-rows:1fr 1fr;gap:12px}.supply-piece{background:#fff;border:1px solid #d4dae2;border-radius:10px;display:flex;flex-direction:column;justify-content:space-between;padding:18px;color:var(--navy);font-weight:800}.supply-piece i{font-size:2.2rem}.supply-piece.leash{grid-row:span 2}.supply-piece.bowl{background:#fff}.supply-piece.brush{background:#dff0e8}.supply-piece.toy{background:#f7e7dd}.supply-piece.scratch{background:#eef0f4}.category-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:10px}.category-chip{background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:16px 10px;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--heading-color);font-weight:800;text-align:center}.category-chip i{font-size:1.25rem;color:var(--accent-color)}.category-chip:hover{border-color:#9fb1a8;box-shadow:var(--shadow);color:var(--heading-color)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.product-grid-5{grid-template-columns:repeat(5,1fr)}.product-card{border:1px solid var(--border-color);border-radius:9px;background:#fff;overflow:hidden;display:flex;flex-direction:column;min-width:0}.product-visual{min-height:168px;background:#eef1f5;display:grid;place-items:center;position:relative;overflow:hidden}.product-visual:before,.detail-visual:before{content:"";width:84px;height:84px;border:14px solid rgba(23,134,92,.28);border-radius:22px;transform:rotate(15deg)}.product-visual .visual-label{position:absolute;left:12px;bottom:10px;background:#fff;border:1px solid var(--border-color);border-radius:99px;padding:3px 8px;font-size:.72rem;font-weight:800;color:var(--navy)}.product-card-body{padding:15px;display:flex;flex-direction:column;flex:1}.product-category{font-size:.75rem;color:var(--accent-color);font-weight:800}.product-card h3{font-size:1rem;margin:4px 0 5px;line-height:1.35}.product-price{font-weight:900;color:var(--navy);font-size:1.06rem}.product-desc{font-size:.84rem;margin:8px 0 10px;color:#687386}.product-spec-line{font-size:.76rem;color:#6b7280;margin-top:auto}.product-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;padding-top:12px}.product-actions a,.product-actions button{padding:8px 5px;min-height:36px;border-radius:7px;border:1px solid var(--border-color);background:#fff;font-size:.76rem;font-weight:800;color:var(--heading-color)}.product-actions .add-cart{background:var(--navy);color:#fff;border-color:var(--navy)}.compare-active{outline:2px solid var(--accent-color);outline-offset:-2px}.compact-spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.spec-card{background:#fff;border:1px solid var(--border-color);border-radius:9px;padding:18px}.spec-card h3{font-size:1rem;margin:2px 0 10px}.spec-card dl{display:grid;grid-template-columns:58px 1fr;gap:5px 10px;margin:0;font-size:.8rem}.spec-card dt{color:#7b8493}.spec-card dd{margin:0;color:var(--heading-color);font-weight:700}.compare-preview{border:1px solid var(--border-color);border-radius:10px;overflow:auto}.compare-preview table,.comparison-table{width:100%;border-collapse:collapse;background:#fff;min-width:720px}.compare-preview th,.compare-preview td,.comparison-table th,.comparison-table td{padding:14px 16px;border-bottom:1px solid var(--border-color);text-align:left;vertical-align:top}.compare-preview th,.comparison-table th{background:#f6f8fa;color:var(--heading-color);font-size:.82rem}.comparison-table td:first-child,.compare-preview td:first-child{font-weight:800;color:var(--heading-color);width:140px}.tips-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.tip-card{background:#fff;border:1px solid var(--border-color);border-radius:9px;padding:18px}.tip-card>span{font-size:.72rem;color:var(--orange);font-weight:900}.tip-card h3{font-size:1rem;margin:5px 0}.tip-card p{font-size:.84rem;margin:0}.faq-list{border-top:1px solid var(--border-color)}.faq-item{border-bottom:1px solid var(--border-color)}.faq-item button{width:100%;display:flex;justify-content:space-between;gap:20px;align-items:center;text-align:left;background:none;border:0;padding:19px 0;font-weight:800;color:var(--heading-color)}.faq-answer{padding:0 38px 18px 0;color:#606b7b}.page-title{padding:130px 0 44px;background:#eef2f5;border-bottom:1px solid var(--border-color)}.page-title.compact{padding:108px 0 22px}.page-title h1{font-size:clamp(2rem,4vw,3rem);margin:0 0 8px}.page-title p{margin:0;max-width:720px}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:18px 0 0;margin:0;font-size:.82rem}.breadcrumbs li+li:before{content:"/";margin-right:8px;color:#9aa3af}.breadcrumbs .current{color:#6b7280}.catalog-toolbar{display:grid;grid-template-columns:1fr 210px;gap:16px;align-items:end}.search-field,.sort-field,.contact-form label{display:grid;gap:7px;font-size:.8rem;font-weight:800;color:var(--heading-color)}.search-field>div{display:flex;align-items:center;border:1px solid var(--border-color);border-radius:8px;padding:0 13px;background:#fff}.search-field input{border:0;outline:0;width:100%;padding:11px;background:transparent}.sort-field select,.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--border-color);border-radius:8px;padding:11px 12px;background:#fff;color:var(--heading-color);outline:0}.sort-field select:focus,.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus,.search-field>div:focus-within{border-color:var(--accent-color);box-shadow:0 0 0 3px rgba(23,134,92,.12)}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.filter-button{border:1px solid var(--border-color);background:#fff;border-radius:99px;padding:7px 12px;font-size:.8rem;font-weight:800;color:var(--heading-color)}.filter-button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.catalog-status{display:flex;justify-content:space-between;gap:16px;margin:0 0 18px;font-size:.86rem}.compare-selector{border:1px dashed #b9c2cd;background:#fff;border-radius:9px;padding:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.compare-selector.large{margin-bottom:20px}.compare-chip{display:flex;align-items:center;gap:8px;background:#eef7f3;border:1px solid #c7e2d6;border-radius:8px;padding:8px 10px;font-size:.8rem;font-weight:800;color:var(--navy)}.compare-chip button{border:0;background:none;color:#667085}.empty-state{text-align:center;padding:60px 20px;border:1px dashed var(--border-color);border-radius:10px}.empty-state i{font-size:2.3rem;color:#9ca3af}.empty-state h2{font-size:1.3rem}.product-detail-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:44px}.detail-visual{min-height:480px;background:#eef1f5;border:1px solid var(--border-color);border-radius:12px;display:grid;place-items:center;position:relative}.detail-visual .visual-label{position:absolute;bottom:18px;left:18px;background:#fff;padding:6px 10px;border-radius:99px;font-weight:800}.detail-summary h1{font-size:2.35rem;margin:4px 0 8px}.detail-price{font-size:1.55rem;font-weight:900;color:var(--navy)}.detail-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.detail-options label{display:grid;gap:6px;font-size:.8rem;font-weight:800;color:var(--heading-color)}.detail-options select{padding:10px;border:1px solid var(--border-color);border-radius:8px;background:#fff}.quantity-control{display:flex;align-items:center;gap:0;border:1px solid var(--border-color);border-radius:8px;width:max-content;overflow:hidden}.quantity-control button{width:38px;height:38px;border:0;background:#f8f9fb}.quantity-control input{width:48px;text-align:center;border:0}.detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.detail-info{margin-top:44px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.info-block{border-top:2px solid var(--navy);padding:15px 0}.info-block h3{font-size:.92rem;margin:0 0 5px}.info-block p{margin:0;font-size:.88rem}.compare-head-card{padding:12px}.compare-head-card strong{display:block;color:var(--heading-color)}.compare-head-card button{margin-top:8px}.contact-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:34px}.contact-card{background:var(--light-color);border:1px solid var(--border-color);padding:26px;border-radius:10px}.contact-card h2{font-size:1.6rem}.info-note{display:flex;gap:10px;margin-top:24px;padding-top:18px;border-top:1px solid var(--border-color)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1/-1}.checkbox-label{grid-template-columns:auto 1fr!important;align-items:start}.checkbox-label input{margin-top:5px}.form-result{margin-top:14px;padding:12px;border-radius:8px;background:#eef7f3;color:#245b46;display:none}.form-result.error{background:#fff1f1;color:#8b2d2d}.policy-layout{display:grid;grid-template-columns:230px 1fr;gap:42px;align-items:start}.policy-nav{position:sticky;top:100px;display:grid;gap:8px;border:1px solid var(--border-color);border-radius:9px;padding:18px}.policy-nav a{font-size:.85rem}.policy-content{max-width:820px}.policy-content section{padding:0 0 26px;margin-bottom:26px;border-bottom:1px solid var(--border-color)}.policy-content h2{font-size:1.2rem}.policy-date{font-weight:800;color:var(--accent-color)}code{background:#eef1f5;border-radius:4px;padding:2px 5px;color:var(--navy)}.footer{background:var(--navy);color:#dbe2ec;padding:48px 0 22px}.footer h3,.footer strong{color:#fff}.footer a{color:#dbe2ec}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}.footer-grid p{margin:8px 0 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:30px;padding-top:18px;display:flex;justify-content:space-between;gap:14px;font-size:.78rem}.scroll-top{position:fixed;visibility:hidden;opacity:0;right:18px;bottom:18px;z-index:990;background:var(--accent-color);width:42px;height:42px;border-radius:8px;color:#fff;transition:.2s}.scroll-top.active{visibility:visible;opacity:1}.cart-panel{position:fixed;top:0;right:0;width:min(420px,100%);height:100vh;background:#fff;z-index:1002;transform:translateX(105%);transition:transform .25s ease;padding:22px;display:flex;flex-direction:column;box-shadow:-20px 0 50px rgba(23,32,51,.14)}.cart-panel.open{transform:translateX(0)}.cart-panel-head{display:flex;justify-content:space-between;align-items:start}.cart-panel h2{margin:0}.icon-button{width:38px;height:38px;border:1px solid var(--border-color);background:#fff;border-radius:8px}.cart-note{font-size:.78rem;background:var(--light-color);padding:9px;border-radius:7px}.cart-items{overflow:auto;flex:1}.cart-item{display:grid;grid-template-columns:58px 1fr auto;gap:10px;padding:12px 0;border-bottom:1px solid var(--border-color)}.cart-item-visual{width:58px;height:58px;background:#eef1f5;border-radius:8px;display:grid;place-items:center;color:var(--accent-color)}.cart-item h3{font-size:.9rem;margin:0}.cart-item p{font-size:.75rem;margin:2px 0}.cart-item-controls{display:flex;align-items:center;gap:5px}.cart-item-controls button{border:1px solid var(--border-color);background:#fff;border-radius:5px;min-width:28px;height:28px}.cart-remove{border:0!important;color:#8b2d2d!important}.cart-summary{display:flex;justify-content:space-between;padding:16px 0;border-top:1px solid var(--border-color);font-size:1.05rem}.cart-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.cart-actions .btn-primary{grid-column:1/-1}.cart-backdrop{position:fixed;inset:0;background:rgba(16,24,40,.45);z-index:1001}.cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:1000;max-width:900px;margin:auto;background:#fff;border:1px solid var(--border-color);box-shadow:var(--shadow);border-radius:10px;padding:14px 16px;display:flex;justify-content:space-between;gap:18px;align-items:center}.cookie-banner p{margin:0;font-size:.83rem}.cookie-banner>div{display:flex;gap:7px}.cookie-banner .btn-primary,.cookie-banner .btn-secondary{min-height:38px;padding:7px 12px}.no-scroll{overflow:hidden}
@media (max-width:1199px){.mobile-nav-toggle{display:block;color:var(--navy)}.navmenu>ul{display:none;position:absolute;inset:60px 12px auto 12px;background:var(--nav-mobile-background-color);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--shadow);padding:12px}.mobile-nav-active .navmenu>ul{display:block}.navmenu>ul li{width:100%}.navmenu a,.cart-toggle{width:100%;margin:0;justify-content:flex-start}.category-grid{grid-template-columns:repeat(4,1fr)}.product-grid,.compact-spec-grid{grid-template-columns:repeat(3,1fr)}.product-grid-5{grid-template-columns:repeat(3,1fr)}}
@media (max-width:991px){.hero-grid,.product-detail-layout,.contact-layout{grid-template-columns:1fr}.supply-board{min-height:310px}.product-grid,.product-grid-5,.compact-spec-grid{grid-template-columns:repeat(2,1fr)}.tips-grid{grid-template-columns:repeat(2,1fr)}.policy-layout{grid-template-columns:1fr}.policy-nav{position:static;grid-template-columns:repeat(3,1fr)}}
@media (max-width:767px){.section{padding:52px 0}.hero{padding:120px 0 52px}.hero h2{font-size:2.4rem}.supply-board{grid-template-columns:1fr 1fr;grid-template-rows:auto}.supply-piece.leash{grid-row:auto}.category-grid{grid-template-columns:repeat(2,1fr)}.catalog-toolbar{grid-template-columns:1fr}.catalog-status,.section-heading,.footer-bottom{align-items:flex-start;flex-direction:column}.detail-info{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.policy-nav{grid-template-columns:1fr 1fr}.cookie-banner{align-items:stretch;flex-direction:column}.cookie-banner>div{justify-content:flex-end}.footer-grid{grid-template-columns:1fr}.page-title{padding-top:115px}.cart-actions{grid-template-columns:1fr}.cart-actions .btn-primary{grid-column:auto}}
@media (max-width:520px){.product-grid,.product-grid-5,.compact-spec-grid,.tips-grid{grid-template-columns:1fr}.product-actions{grid-template-columns:1fr 1fr}.product-actions .add-cart{grid-column:1/-1}.detail-options{grid-template-columns:1fr}.policy-nav{grid-template-columns:1fr}.supply-board{min-height:260px}.hero-meta{display:grid}.header .logo h1{font-size:1.02rem}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
:focus-visible{outline:3px solid rgba(23,134,92,.45);outline-offset:3px}

/* Local product photos */
.product-visual img,.detail-visual img{width:100%;height:100%;display:block;object-fit:cover}
.product-visual:has(img):before,.detail-visual:has(img):before{display:none}
.detail-visual:has(img){display:block;overflow:hidden}
.detail-visual:has(img) img{min-height:480px}
