/*
Theme Name: SatoshiCards
Version: 1.0.0
Description: A collector-first Pokémon storefront for WooCommerce.
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#162035;--muted:#69717e;--paper:#f6f5f1;--red:#d73b35;--line:#dedfdc;--gold:#cf9e4a}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.6}h1,h2,h3,.brand{font-family:'Space Grotesk',sans-serif;line-height:1.1}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,.button{cursor:pointer}img{max-width:100%;height:auto}.wrap{width:min(1380px,92%);margin:auto}.topbar{background:var(--ink);color:white;text-align:center;font-size:11px;letter-spacing:1.5px;padding:8px}.header{background:#fffefb;border-bottom:1px solid var(--line)}.header-row{display:flex;align-items:center;gap:36px;padding:24px 0}.brand{font-weight:700;font-size:27px;letter-spacing:-1.5px;white-space:nowrap}.brand em{font-style:normal;color:var(--red)}.brand-icon{display:inline-grid;place-items:center;background:var(--red);color:white;width:35px;height:39px;border-radius:7px;transform:rotate(-8deg);margin-right:10px;font-size:25px}.search{flex:1;display:flex;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.search input{width:100%;border:0;background:transparent;padding:12px 16px;min-width:0}.search button{border:0;background:transparent;padding:10px 16px;color:var(--ink)}.account-links{display:flex;gap:24px;font-size:13px}.nav-row{border-top:1px solid #eeeee8;display:flex;gap:32px;padding:13px 0;font-size:13px;font-weight:600}.nav-row .right{margin-left:auto;color:var(--muted);font-weight:400}.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:50px;padding:62px 0 72px;min-height:540px}.eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:var(--red)}.hero h1{font-size:clamp(44px,5.2vw,76px);letter-spacing:-3.5px;margin:22px 0}.hero h1 span{color:var(--red)}.hero p{font-size:16px;color:var(--muted);max-width:450px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-block;padding:14px 23px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:5px;font-weight:600;font-size:13px;line-height:1.4}.btn.red,.woocommerce button.button.alt,.woocommerce a.button.alt{background:var(--red);border-color:var(--red)}.btn.ghost{color:var(--ink);background:transparent}.hero-note{margin-top:28px;font-size:11px;letter-spacing:.5px;color:var(--muted)}.hero-art{position:relative;min-height:400px;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse,#e6e3d6 0,transparent 65%)}.hero-art:before{content:'';position:absolute;border:1px solid #ddd9cd;border-radius:50%;width:370px;height:370px}.hero-art img{position:absolute;width:210px;border-radius:12px;filter:drop-shadow(0 23px 20px #17203630);transform:rotate(-14deg) translate(-115px,-5px)}.hero-art img:nth-child(2){transform:rotate(12deg) translate(115px,4px)}.hero-art img:nth-child(3){transform:rotate(-2deg);width:230px;z-index:2}.art-label{position:absolute;bottom:-12px;right:0;background:#fffefb;border:1px solid var(--line);padding:12px 20px;border-radius:8px;font-size:12px;z-index:3;box-shadow:0 8px 20px #17203608}.art-label strong{display:block}.trust-row{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);padding:23px 0;gap:20px;font-size:12px}.trust-row strong{display:block;font-size:13px}.trust-row span{color:var(--muted)}.section{padding:56px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:27px}.section-head h2{font-size:32px;letter-spacing:-1px;margin:7px 0}.section-head a{font-size:12px;text-decoration:underline;text-underline-offset:5px}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.category-tile{display:flex;flex-direction:column;justify-content:space-between;min-height:150px;background:#fffefb;border:1px solid var(--line);padding:24px;border-radius:8px;transition:transform .2s}.category-tile:hover{transform:translateY(-4px);border-color:var(--red)}.category-tile .num{color:var(--red);font-family:monospace;font-size:12px}.category-tile h3{font-size:20px;margin:18px 0 0}.category-tile small{color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.product-card{min-width:0;background:#fffefb;border:1px solid var(--line);border-radius:8px;overflow:hidden;transition:box-shadow .2s}.product-card:hover{box-shadow:0 12px 25px #1720360a}.product-image{height:265px;display:flex;align-items:center;justify-content:center;background:#efefea;position:relative;padding:22px}.product-image img{max-height:220px;max-width:90%;object-fit:contain;filter:drop-shadow(0 8px 7px #17203620);transition:transform .25s}.product-card:hover img{transform:translateY(-4px)}.badge{position:absolute;top:12px;left:12px;background:#fffefbf0;border:1px solid #e5e4db;padding:3px 8px;border-radius:3px;font-size:9px;text-transform:uppercase;letter-spacing:.8px;max-width:90%}.product-copy{padding:18px}.product-set{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-copy h3{font-size:16px;line-height:1.35;margin:9px 0 7px;min-height:44px}.product-meta{font-size:11px;color:var(--muted);min-height:18px}.product-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #efeee7;margin-top:15px;padding-top:13px}.price{font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700}.product-bottom .arrow{width:31px;height:31px;display:grid;place-items:center;background:var(--ink);color:white;border-radius:4px}.crypto-band{background:var(--ink);color:white;padding:48px;border-radius:9px;display:grid;grid-template-columns:1.3fr 1fr;gap:30px;align-items:center}.crypto-band h2{font-size:35px;letter-spacing:-1px;margin:12px 0}.crypto-band p{color:#c1c6d0;font-size:14px;max-width:480px}.coins{display:flex;flex-wrap:wrap;gap:10px;justify-content:end}.coin{border:1px solid #465065;border-radius:30px;padding:10px 16px;font-size:13px}.coin:first-child{color:#f4be60;border-color:#ad884b}.footer{background:#fffefb;border-top:1px solid var(--line);margin-top:55px;padding:45px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.footer p,.footer a:not(.brand){font-size:12px;color:var(--muted)}.footer h3{font-size:15px}.footer nav a{display:block;margin:9px 0}.footer-bottom{border-top:1px solid var(--line);padding-top:18px;margin-top:30px;font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.catalog-title{padding:42px 0 25px}.catalog-title h1{font-size:44px;letter-spacing:-2px;margin:10px 0}.catalog-title p{color:var(--muted)}.catalog-layout{display:grid;grid-template-columns:215px minmax(0,1fr);gap:32px}.filters{padding:20px;background:#fffefb;border:1px solid var(--line);border-radius:7px;align-self:start}.filters h3{margin:0 0 20px;font-size:17px}.filters label{display:block;font-size:11px;font-weight:700;margin:15px 0 6px}.filters select,.filters input{width:100%;border:1px solid var(--line);border-radius:4px;padding:9px;background:white;font-size:12px}.filters button{width:100%;margin-top:18px}.filters .reset{display:block;text-align:center;font-size:11px;margin-top:10px;text-decoration:underline}.catalog-layout .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;font-size:12px;color:var(--muted)}.catalog-toolbar select{padding:8px;border:1px solid var(--line);background:#fffefb;border-radius:4px}.pagination{display:flex;gap:8px;justify-content:center;margin:35px 0}.pagination a,.pagination span{padding:7px 13px;border:1px solid var(--line);border-radius:4px}.pagination .current{background:var(--ink);color:white}.empty{padding:60px 20px;border:1px dashed var(--line);text-align:center;grid-column:1/-1}.content-area{padding:40px 0;min-height:400px}.content-area h1{font-size:42px;letter-spacing:-1px}.prose{max-width:820px}.prose p{color:var(--muted)}.woocommerce div.product .product_title{font-size:34px;letter-spacing:-1px}.woocommerce div.product{padding:20px 0}.woocommerce div.product div.images img{max-height:570px;object-fit:contain}.woocommerce div.product div.images{background:#efefea;padding:35px;border-radius:9px}.woocommerce div.product p.price{color:var(--ink);font-size:29px}.woocommerce div.product .woocommerce-tabs ul.tabs li{border:0;background:transparent}.woocommerce .quantity .qty{padding:11px;border:1px solid var(--line);border-radius:4px;width:65px}.woocommerce input.input-text,.woocommerce textarea,.woocommerce select{padding:11px;border:1px solid var(--line);border-radius:4px;background:white}.woocommerce table.shop_table{background:#fffefb;border:1px solid var(--line)}.woocommerce-info,.woocommerce-message{border-top-color:var(--red)}.woocommerce-info:before,.woocommerce-message:before{color:var(--red)}.market-note{background:#eeeee6;border-radius:6px;padding:16px;font-size:12px;margin:22px 0}.market-note a{text-decoration:underline}.woocommerce ul.products li.product{background:#fffefb;border:1px solid var(--line);border-radius:7px;padding:18px}.woocommerce ul.products li.product a img{height:220px;object-fit:contain}.woocommerce ul.products li.product .price{color:var(--ink)}.sc-payment{background:#fffefb;border:1px solid var(--line);padding:25px;border-radius:8px;margin:25px 0}.sc-payment code{display:block;overflow-wrap:anywhere;background:var(--paper);padding:12px;margin:12px 0}.sc-payment label{display:block;margin-top:15px}.sc-payment input{width:100%}.sc-payment .amount{font-size:27px;font-weight:700}.sc-review-banner{background:#fff2cf;color:#564827;padding:10px;text-align:center;font-size:12px}.woocommerce #payment{background:#eeeee8}.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{background:#fffefb}.screen-reader-text{position:absolute;left:-10000px}.menu-toggle{display:none}.notice{padding:16px;background:#fff2cf;border-radius:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d79c35;outline-offset:3px}
.hero{background:radial-gradient(ellipse at 80% 50%,#273b4f,transparent 58%),#142035;color:#fff;border-radius:12px;margin:26px 0;padding:48px;position:relative;overflow:hidden}.hero h1 span{color:#ff8075}.hero p,.hero-note{color:#bdc6d4}.hero .eyebrow{color:#f5b87b}.hero .btn.ghost{border-color:#647187;color:#fff}.hero-art{background:radial-gradient(ellipse,#496e7240,transparent 68%)}.hero-art:before{border-color:#79979e50}.art-label{color:var(--ink)}.product-image{background:radial-gradient(ellipse at center,#fbfbf7,#eaece8)}
@media(max-width:1000px){.header-row{gap:20px}.brand{font-size:23px}.account-links{gap:12px}.hero{gap:20px;padding:30px}.hero-art img{width:165px}.hero-art img:nth-child(3){width:185px}.hero-art img:first-child{transform:rotate(-14deg) translate(-85px,0)}.hero-art img:nth-child(2){transform:rotate(12deg) translate(85px,0)}.product-grid{grid-template-columns:repeat(3,1fr)}.catalog-layout .product-grid{grid-template-columns:repeat(2,1fr)}.product-image{height:240px}.trust-row{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.header-row{flex-wrap:wrap;padding:17px 0;gap:15px}.brand{font-size:23px}.account-links{margin-left:auto;font-size:11px}.search{order:3;flex-basis:100%}.nav-row{gap:19px;overflow:auto;white-space:nowrap;font-size:12px}.nav-row .right{display:none}.hero{display:flex;flex-direction:column;padding:35px 0 45px;gap:15px}.hero-copy{width:100%}.hero h1{font-size:49px;letter-spacing:-2px}.hero p{font-size:14px}.hero-art{min-height:330px;width:100%;margin-top:20px}.hero-art:before{width:290px;height:290px}.art-label{bottom:0;right:10px}.hero-note{font-size:10px}.trust-row{gap:18px;font-size:11px}.section{padding:35px 0}.section-head h2{font-size:27px}.category-grid{grid-template-columns:repeat(2,1fr);gap:10px}.category-tile{padding:18px;min-height:130px}.category-tile h3{font-size:18px}.product-grid,.catalog-layout .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-image{height:205px;padding:20px 12px}.product-image img{max-height:175px}.product-copy{padding:12px}.product-copy h3{font-size:13px;min-height:51px}.product-set{font-size:8px}.product-meta{font-size:9px}.price{font-size:17px}.badge{font-size:8px;left:8px;top:8px}.crypto-band{padding:27px;grid-template-columns:1fr}.crypto-band h2{font-size:29px}.coins{justify-content:start}.footer-grid{grid-template-columns:1fr 1fr;gap:20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.catalog-title h1{font-size:36px}.catalog-layout{display:block}.filters{margin-bottom:20px}.filters form{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}.filters label{margin-top:5px}.filters button{margin-top:10px}.filters h3{margin-bottom:10px}.catalog-toolbar{gap:10px}.content-area h1{font-size:32px}.woocommerce div.product .product_title{font-size:28px}.woocommerce div.product div.images{padding:25px}}

@media(max-width:650px){.hero{padding:28px 22px}.hero h1{font-size:42px}.hero-art img:first-child{transform:rotate(-14deg) translate(-65px,0)}.hero-art img:nth-child(2){transform:rotate(12deg) translate(65px,0)}.hero-art img{width:135px}.hero-art img:nth-child(3){width:165px}}

/* Comfortable touch controls and narrow-screen form containment. */
.catalog-layout>section,.hero-copy,.product-copy{min-width:0}
.product-copy h3{overflow-wrap:anywhere}
.filters input,.filters select,.filters button{min-height:44px}
@media(max-width:650px){
 .filters input,.filters select,.search input,.woocommerce input.input-text,.woocommerce select,.woocommerce textarea{font-size:16px;max-width:100%;min-width:0}
 .nav-row a{display:inline-flex;align-items:center;min-height:44px}
 .account-links a{padding:8px 0;min-height:44px;display:inline-flex;align-items:center}
 .filters form>div{min-width:0}.catalog-toolbar{flex-wrap:wrap}
 .woocommerce form .form-row{float:none!important;width:100%!important}
 .woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;display:flex;overflow-x:auto}
 .woocommerce div.product .woocommerce-tabs ul.tabs li{flex-shrink:0}
 .sc-payment{padding:18px}.sc-payment .amount{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.card-facts{border-top:1px solid var(--line);margin:24px 0;padding-top:14px}.card-facts>div{display:grid;grid-template-columns:110px 1fr;gap:15px;padding:7px 0;font-size:13px}.card-facts dt{color:var(--muted)}.card-facts dd{margin:0;font-weight:600}

/* Category artwork comes from real products in the corresponding collection. */
.category-tile{position:relative;overflow:hidden}
.category-art{height:220px;display:flex;align-items:center;justify-content:center;margin:12px -8px 20px;background:radial-gradient(ellipse,#e8ece780,transparent 70%)}
.category-art img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 10px #16213120);transition:transform .2s ease}
.category-tile:hover .category-art img{transform:translateY(-5px) rotate(-2deg)}
@media(max-width:1000px){.category-art{height:170px}}
@media(max-width:650px){.category-art{height:145px;margin:10px 0 16px}.category-tile h3{font-size:17px}.category-tile small{font-size:12px}}
@media(prefers-reduced-motion:reduce){.category-tile:hover .category-art img{transform:none}}
