/*
Theme Name: LUXE GINZA Unified
Theme URI: https://luxeginza.com/
Author: LUXE GINZA
Description: 買取サイトとWooCommerce販売サイトを統合したLUXE GINZA専用テーマ。
Version: 2.3.0
Requires at least: 6.4
Requires PHP: 8.1
Text Domain: luxe-ginza
*/

:root{--ink:#111;--paper:#f7f6f3;--white:#fff;--muted:#6b6862;--line:#dedbd4;--gold:#b79a61;--max:1440px;--serif:"Times New Roman","Yu Mincho",YuMincho,"Hiragino Mincho ProN",serif;--sans:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Noto Sans JP",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:var(--sans);font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}.wrap{width:min(calc(100% - 48px),var(--max));margin:auto}.eyebrow{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.notice-bar{background:#111;color:#fff;text-align:center;padding:7px 20px;font-size:.72rem;letter-spacing:.12em}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(0,0,0,.08);backdrop-filter:blur(14px)}.header-row{height:84px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.brand{font-family:var(--serif);font-size:1.45rem;letter-spacing:.2em;text-align:center;line-height:1}.brand span{display:block;margin-top:8px;font-family:var(--sans);font-size:.55rem;letter-spacing:.32em;color:var(--muted)}.primary-nav,.utility-nav{display:flex;gap:25px;align-items:center;font-size:.75rem;letter-spacing:.12em}.utility-nav{justify-content:flex-end}.menu-toggle{display:none;border:0;background:none;font-size:1.5rem}.cart-count{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:50%;background:var(--ink);color:#fff;font-size:.62rem;margin-left:4px}
.hero{min-height:670px;background:#111;color:#fff;display:grid;grid-template-columns:42% 58%;overflow:hidden}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:80px max(48px,calc((100vw - var(--max))/2)) 80px max(28px,calc((100vw - var(--max))/2));position:relative}.hero-copy h1{font-family:var(--serif);font-size:clamp(2.8rem,5vw,5.8rem);font-weight:400;line-height:.98;letter-spacing:.03em;margin:24px 0}.hero-copy p{color:#c9c5bd;max-width:500px}.hero-image{background:url('assets/images/sample-watch.png') center/cover no-repeat;min-height:570px}.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{display:inline-flex;align-items:center;justify-content:center;width:max-content;border:1px solid var(--ink)!important;border-radius:0!important;background:var(--ink)!important;color:#fff!important;padding:14px 28px!important;font-weight:500!important;font-size:.76rem!important;letter-spacing:.16em;text-transform:uppercase;transition:.25s}.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--gold)!important;border-color:var(--gold)!important}.button.light{background:#fff!important;color:#111!important;border-color:#fff!important;margin-top:25px}
.section{padding:110px 0}.section.soft{background:var(--paper)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}.section-head h2,.editorial h2,.assurance h2{font-family:var(--serif);font-size:clamp(2.1rem,4vw,4rem);font-weight:400;line-height:1.1;margin:8px 0}.text-link{font-size:.75rem;letter-spacing:.15em;border-bottom:1px solid}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.category-card{position:relative;min-height:510px;background:#111;overflow:hidden}.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.category-card:hover img{transform:scale(1.035)}.category-overlay{position:absolute;inset:auto 0 0;padding:60px 35px 28px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.78))}.category-overlay h3{font-family:var(--serif);font-size:2rem;font-weight:400;margin:0}.products ul.products,.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:36px 18px;margin:0!important}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important}.woocommerce ul.products li.product a img{margin:0 0 17px!important;aspect-ratio:1;object-fit:cover;background:#eee}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.9rem!important;font-weight:500!important;padding:0!important}.woocommerce ul.products li.product .price{color:var(--ink)!important;font-size:.88rem!important}.woocommerce span.onsale{border-radius:0!important;background:#111!important;min-height:auto!important;line-height:1!important;padding:9px!important;font-size:.65rem!important}.demo-badge{position:absolute;top:12px;left:12px;background:#fff;color:#111;padding:5px 8px;font-size:.62rem;letter-spacing:.1em;z-index:2}.editorial{display:grid;grid-template-columns:1fr 1fr;min-height:540px}.editorial-visual{background:url('assets/images/sample-bag.png') center/cover}.editorial-copy{background:#181818;color:#fff;padding:9vw;display:flex;flex-direction:column;justify-content:center}.editorial-copy p{color:#c9c5bd}.assurance{text-align:center;max-width:780px;margin:auto}.assurance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:55px}.assurance-item strong{font-family:var(--serif);font-size:1.35rem;font-weight:400}.assurance-item p{font-size:.82rem;color:var(--muted)}
.site-main{min-height:55vh}.page-hero{padding:80px 0 45px;background:var(--paper);border-bottom:1px solid var(--line)}.page-hero h1{font-family:var(--serif);font-size:clamp(2.5rem,6vw,5.5rem);font-weight:400;margin:0}.content-area{padding:70px 0 110px}.woocommerce div.product{display:grid;grid-template-columns:54% 1fr;gap:6vw}.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important}.woocommerce div.product .product_title{font-family:var(--serif);font-weight:400;font-size:2.3rem}.woocommerce div.product p.price{color:var(--ink);font-size:1.25rem}.luxe-specs{border-top:1px solid var(--line);margin:30px 0}.luxe-spec-row{display:grid;grid-template-columns:35% 1fr;padding:10px 0;border-bottom:1px solid var(--line);font-size:.82rem}.luxe-spec-row dt{color:var(--muted)}.luxe-spec-row dd{margin:0}.woocommerce .quantity .qty{height:48px}.woocommerce-message,.woocommerce-info{border-top-color:var(--gold)!important}.woocommerce-message::before,.woocommerce-info::before{color:var(--gold)!important}.woocommerce table.shop_table{border-radius:0!important}.entry-content{max-width:900px}.site-footer{background:#111;color:#fff;padding:80px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px}.footer-brand{font-family:var(--serif);font-size:1.6rem;letter-spacing:.15em}.site-footer h3{font-size:.72rem;letter-spacing:.16em;color:#a9a49a}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:8px 0;font-size:.82rem;color:#d1cdc5}.footer-bottom{border-top:1px solid #333;margin-top:60px;padding-top:20px;color:#777;font-size:.68rem}.required-page-note{background:#fff3cd;border:1px solid #ecd58a;padding:16px;font-size:.82rem;margin-bottom:25px}
@media(max-width:900px){.wrap{width:min(calc(100% - 30px),var(--max))}.header-row{height:68px;grid-template-columns:40px 1fr 40px}.menu-toggle{display:block}.primary-nav{position:absolute;display:none;top:100%;left:0;right:0;background:#fff;padding:25px;flex-direction:column;border-top:1px solid var(--line)}.primary-nav.open{display:flex}.utility-nav a:not(.cart-link){display:none}.brand{font-size:1.1rem}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 25px}.hero-image{min-height:430px;order:-1}.section{padding:75px 0}.category-grid{grid-template-columns:1fr}.category-card{min-height:430px}.products ul.products,.woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:28px 12px}.editorial{grid-template-columns:1fr}.editorial-visual{min-height:430px}.editorial-copy{padding:65px 28px}.assurance-grid{grid-template-columns:1fr;gap:20px}.woocommerce div.product{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:30px}.section-head{align-items:start;flex-direction:column;gap:10px}}
@media(max-width:480px){.hero-image{min-height:360px}.products ul.products,.woocommerce ul.products{grid-template-columns:1fr 1fr}.category-card{min-height:360px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.8rem!important}}

/* Unified sell + shop experience */
.sell-hero{background:#0d0d0d;color:#fff;min-height:720px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);overflow:hidden}.sell-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:90px max(36px,calc((100vw - var(--max))/2)) 90px max(28px,calc((100vw - var(--max))/2));position:relative}.sell-hero__copy:after{content:"GINZA";position:absolute;left:4%;bottom:-7%;font:400 16vw/1 var(--serif);color:rgba(255,255,255,.025);letter-spacing:.1em;pointer-events:none}.sell-hero h1{font-family:var(--serif);font-size:clamp(3rem,5vw,6rem);font-weight:400;line-height:1.05;margin:22px 0}.sell-hero h1 em{font-style:normal;color:var(--gold)}.sell-hero p{max-width:560px;color:#cbc7bf;font-size:1.02rem}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button.outline-light{background:transparent!important;color:#fff!important;border-color:#777!important}.sell-hero__visual{position:relative;background:url('assets/images/sample-jewelry.png') center/cover}.sell-hero__visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0d0d0d 0,transparent 28%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 45%)}.hero-caption{position:absolute;right:30px;bottom:26px;z-index:2;font-size:.68rem;letter-spacing:.15em;color:#bbb}.trust-bar{background:#fff;border-bottom:1px solid var(--line)}.trust-row{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:22px 16px;text-align:center;border-right:1px solid var(--line)}.trust-item:last-child{border:0}.trust-item strong{display:block;font-family:var(--serif);font-size:1.06rem;font-weight:400}.trust-item span{font-size:.72rem;color:var(--muted)}
.gold-board{background:#171717;color:#fff;padding:34px}.gold-board__head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:22px}.gold-board__head h3{font-family:var(--serif);font-size:1.8rem;font-weight:400;margin:0}.gold-board__updated{font-size:.72rem;color:#aaa}.gold-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #444;border-left:1px solid #444}.gold-cell{padding:20px;border-right:1px solid #444;border-bottom:1px solid #444}.gold-cell span{font-size:.72rem;color:#aaa}.gold-cell strong{display:block;font-size:1.24rem;font-weight:500}.gold-note{font-size:.72rem;color:#aaa;margin:18px 0 0}.split-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:start}.split-intro h2{font-family:var(--serif);font-size:clamp(2.4rem,4.5vw,4.8rem);font-weight:400;line-height:1.08;margin:10px 0}.split-intro__body{padding-top:20px}.split-intro__body p:first-child{font-size:1.28rem;line-height:1.9}.category-sell-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.sell-category{background:#fff;padding:0 0 30px;min-width:0}.sell-category img{width:100%;aspect-ratio:1;object-fit:cover}.sell-category__body{padding:25px 22px 0}.sell-category h3{font-family:var(--serif);font-size:1.45rem;font-weight:400;margin:0}.sell-category p{font-size:.78rem;color:var(--muted);min-height:4em}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.case-card{border:1px solid var(--line);background:#fff}.case-card img,.case-placeholder{width:100%;aspect-ratio:4/3;object-fit:cover;background:linear-gradient(135deg,#262626,#0b0b0b);display:grid;place-items:center;color:var(--gold);font-family:var(--serif);font-size:3rem}.case-card__body{padding:24px}.case-card h3{font-family:var(--serif);font-size:1.22rem;font-weight:400;margin:5px 0}.case-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px;padding-top:15px;border-top:1px solid var(--line);font-size:.75rem}.case-meta span{display:block;color:var(--muted)}.case-meta strong{font-size:.92rem}.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:45px}.reason{background:#fff;padding:38px}.reason b{font-family:var(--serif);font-size:2rem;color:var(--gold);font-weight:400}.reason h3{font-family:var(--serif);font-weight:400;font-size:1.35rem}.reason p{font-size:.83rem;color:var(--muted)}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;counter-reset:flow}.flow-step{counter-increment:flow;position:relative;padding-top:58px}.flow-step:before{content:"0" counter(flow);position:absolute;top:0;font-family:var(--serif);font-size:2.6rem;color:var(--gold)}.flow-step:not(:last-child):after{content:"";position:absolute;top:25px;left:52px;right:-34px;border-top:1px solid var(--line)}.flow-step h3{font-size:1rem}.flow-step p{font-size:.82rem;color:var(--muted)}.expert-panel{display:grid;grid-template-columns:.9fr 1.1fr;background:#151515;color:#fff}.expert-mark{min-height:480px;display:grid;place-items:center;background:radial-gradient(circle at center,#34312b,#111 70%);font-family:var(--serif);font-size:9rem;color:var(--gold)}.expert-copy{padding:7vw;align-self:center}.expert-copy h2{font-family:var(--serif);font-size:clamp(2.2rem,4vw,4rem);font-weight:400;line-height:1.15}.expert-copy p{color:#c8c4bd}.pending-note{border-left:2px solid var(--gold);padding-left:15px;color:#aaa!important;font-size:.78rem}.shop-preview{background:#f3f1ed}.store-panel{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.store-map{min-height:450px;background:linear-gradient(135deg,#e6e3dc,#cfcac0);display:grid;place-items:center;text-align:center;color:#777;padding:30px}.store-map b{display:block;font-family:var(--serif);font-size:2rem;color:#333}.store-info{padding:7vw}.store-info h2{font-family:var(--serif);font-size:clamp(2.2rem,4vw,4rem);font-weight:400;margin:10px 0}.store-details{border-top:1px solid var(--line);margin-top:25px}.store-details div{display:grid;grid-template-columns:110px 1fr;padding:11px 0;border-bottom:1px solid var(--line);font-size:.82rem}.store-details span{color:var(--muted)}.faq-list{max-width:900px;margin:40px auto 0;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list summary{cursor:pointer;font-weight:500;list-style:none;display:flex;justify-content:space-between}.faq-list summary:after{content:"＋";color:var(--gold)}.faq-list details[open] summary:after{content:"−"}.faq-list p{color:var(--muted);font-size:.88rem}.final-cta{background:#111;color:#fff;text-align:center;padding:100px 20px}.final-cta h2{font-family:var(--serif);font-size:clamp(2.4rem,5vw,5rem);font-weight:400;line-height:1.1;margin:15px 0}.final-cta p{color:#aaa}.mobile-cta{display:none}.header-shop-link{border-bottom:1px solid var(--gold);padding-bottom:3px}
@media(max-width:1000px){.sell-hero{grid-template-columns:1fr}.sell-hero__visual{min-height:470px;order:-1}.sell-hero__copy{padding:70px 30px}.trust-row{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.gold-grid,.category-sell-grid{grid-template-columns:1fr 1fr}.split-intro{grid-template-columns:1fr;gap:20px}.case-grid{grid-template-columns:1fr 1fr}.reason-grid{grid-template-columns:1fr}.flow{grid-template-columns:1fr}.flow-step:not(:last-child):after{display:none}.expert-panel,.store-panel{grid-template-columns:1fr}.expert-mark{min-height:320px}.store-map{min-height:320px}}
.sell-category img{aspect-ratio:3/4;object-fit:contain;background:#0a0a0a}
.sell-hero__visual{background:#0a0a0a;display:flex;align-items:center;justify-content:center;min-height:720px}
.sell-hero__visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;object-position:center;background:#0a0a0a}
.sell-hero__visual:after{background:linear-gradient(90deg,#0d0d0d 0,rgba(13,13,13,.75) 15%,transparent 48%),linear-gradient(0deg,rgba(0,0,0,.25),transparent 45%)}
@media(max-width:650px){body{padding-bottom:62px}.sell-hero__visual{min-height:340px}.sell-hero__copy{padding:55px 22px 65px}.sell-hero h1{font-size:2.9rem}.hero-actions .button{width:100%}.gold-board{padding:25px 18px}.gold-board__head{align-items:start;flex-direction:column}.gold-grid{grid-template-columns:1fr 1fr}.gold-cell{padding:15px 12px}.gold-cell strong{font-size:1rem}.category-sell-grid,.case-grid{grid-template-columns:1fr}.sell-category p{min-height:0}.reason{padding:28px}.mobile-cta{position:fixed;z-index:50;display:grid;grid-template-columns:1fr 1fr;left:0;right:0;bottom:0;height:62px}.mobile-cta a{display:grid;place-items:center;color:#fff;background:#111;font-size:.75rem;letter-spacing:.08em}.mobile-cta a:first-child{background:#276b45}.final-cta{padding:75px 20px}}

/* v2.1 customer feedback and delivery purchase */
.primary-nav,.utility-nav{gap:20px;letter-spacing:.1em}
.trust-row{grid-template-columns:repeat(2,1fr)}
.delivery-buying{background:#7f6840;color:#fff;padding:80px 0}
.delivery-buying__inner{display:flex;align-items:center;justify-content:space-between;gap:60px}
.delivery-buying h2{font-family:var(--serif);font-size:clamp(2.2rem,4vw,4rem);font-weight:400;line-height:1.15;margin:10px 0}
.delivery-buying p{max-width:720px;color:#eee7da}
.delivery-buying .eyebrow{color:#e7d4aa}
.delivery-buying .button{flex:0 0 auto}
@media(max-width:1000px){.trust-item:nth-child(-n+2){border-bottom:0}.delivery-buying__inner{align-items:flex-start;flex-direction:column;gap:25px}}

/* v2.2 second customer revision */
.flow--two{grid-template-columns:repeat(2,1fr);max-width:980px}.flow--two .flow-step{padding-top:0}.flow--two .flow-step:before,.flow--two .flow-step:after{display:none}
.shop-preview__lead{font-family:var(--serif);font-size:clamp(2.1rem,4vw,4rem);line-height:1.1;margin:8px 0}
.access-reservation{display:flex;align-items:center;gap:24px;margin-top:28px;flex-wrap:wrap}
.access-reservation .button{margin:0}
.line-qr{display:flex;align-items:center;gap:12px;font-size:.72rem;letter-spacing:.12em}
.line-qr img{width:112px;height:112px;background:#fff;padding:6px;border:1px solid var(--line)}
.news-section{background:#fff}
.news-list{border-top:1px solid var(--line)}
.news-item{display:grid;grid-template-columns:130px 1fr auto;gap:24px;align-items:center;padding:22px 4px;border-bottom:1px solid var(--line)}
.news-item time{font-family:var(--serif);color:var(--muted);font-size:.86rem}
.news-item span{font-size:.92rem}
.news-item b{font-size:.65rem;letter-spacing:.16em;color:var(--gold)}
.news-empty{padding:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted)}
.footer-grid{grid-template-columns:2fr 1fr}
.site-footer h3,.footer-heading-link{font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.16em;color:#a9a49a}
.footer-news-row{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #333;margin-top:55px;padding-top:25px}
.footer-news-row span{font-size:.75rem;color:#777}
.footer-bottom{margin-top:25px}
.journal-entry{padding:25px 0;border-bottom:1px solid var(--line)}
.journal-entry time,.journal-single time{font-family:var(--serif);color:var(--muted);font-size:.86rem}
.journal-entry h2{font-family:var(--serif);font-weight:400}
.journal-single-wrap{max-width:900px}
.journal-single{padding:40px 0}
.journal-single h2{font-family:var(--serif);font-size:clamp(1.8rem,4vw,3rem);font-weight:400;line-height:1.35}
.entry-content{overflow-wrap:anywhere;line-height:2}
.entry-content img{height:auto;max-width:100%}
.entry-content p{margin:0 0 1.4em}
.journal-back{display:inline-block;margin:0 0 60px}
@media(max-width:1000px){.flow--two{grid-template-columns:1fr}.flow--two .flow-step:not(:last-child):after{display:none}}
@media(max-width:650px){.access-reservation{align-items:flex-start;flex-direction:column}.news-item{grid-template-columns:95px 1fr}.news-item b{display:none}.footer-news-row{align-items:flex-start;flex-direction:column;gap:6px}}
.expert-mark{min-height:480px;padding:0;display:flex;align-items:stretch;justify-content:center;overflow:hidden}.expert-logo{display:block;width:auto;height:100%;max-width:100%;object-fit:contain}
.access-reservation .button,.instagram-link{width:158px;box-sizing:border-box;justify-content:center}.instagram-link{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:10px;border:1px solid var(--line);color:#29231d;font-size:.76rem;letter-spacing:.04em;transition:background .2s ease,color .2s ease,border-color .2s ease}.instagram-link:hover,.instagram-link:focus-visible{background:#29231d;border-color:#29231d;color:#fff}.instagram-link svg{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.instagram-link .instagram-dot{fill:currentColor;stroke:none}
.store-map--embed{padding:0;overflow:hidden}
.store-map--embed iframe{display:block;width:100%;height:100%;min-height:450px;border:0}
@media(max-width:1000px){.store-map--embed iframe{min-height:320px}}
