/* ================================================================
   Ginga Store Premium Commerce 5.0.1
   Retail-first redesign: sharp geometry, editorial hierarchy, no rounded UI.
   ================================================================ */
:root{
  --navy:#061225;
  --navy-2:#0b1d38;
  --blue:#134b96;
  --gold:#d7a617;
  --gold-2:#f0c849;
  --ink:#0b1220;
  --muted:#667085;
  --surface:#ffffff;
  --canvas:#f3f1ec;
  --line:#d8dde6;
  --radius:0px;
  --shadow:0 22px 54px rgba(5,13,27,.10);
  --header:82px;
}

/* Hard-edge design system */
.button,.icon-btn,.cart-button,.header-order,.brand-mark,.site-header nav>a,
.collection-card,.collection-card-horizontal,.product-card,.product-badge,.wishlist-button,.quick-view,
.search-box,.chip,.side-filter,.shop-sidebar,.shop-toolbar,.clean-toolbar,
.order-form,.checkout-form,.checkout-payment-choice,.payment-choice-card,.payment-method-icon,.payment-dialog,
.payment-close,.payment-data,.payment-confirmation,.wishlist-panel,.wishlist-line img,
.quick-dialog,.quick-close,.cart-drawer,.cart-line img,.qty-control,.qty-control button,
.detail-gallery,.gallery-stage,.gallery-thumb,.detail-info article,.custom-product-link,
.newsletter-grid input,.newsletter-field-row,.testimonials-grid article,.category-card,
.portal-card,.portal-items article,.custom-form-wrap,.custom-form-wrap fieldset,
input,select,textarea,fieldset,details,.toast,.global-search #globalSearchResults a,
.global-search #globalSearchResults img{border-radius:0!important}

html,body{background:var(--canvas)}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.002em}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.container{width:min(1320px,calc(100% - 48px))}

/* Header: restrained luxury retail */
.site-header{height:var(--header)!important;background:rgba(4,11,23,.98)!important;border-bottom:1px solid rgba(255,255,255,.14)!important;box-shadow:0 8px 30px rgba(3,9,20,.12)}
.site-header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--gold),#f7df82,var(--gold));opacity:.95}
.site-header .brand{padding-left:24px}
.brand-mark{width:48px;height:48px;border:1px solid rgba(255,255,255,.16);background:#02060d}
.brand-copy b{font-size:.92rem;letter-spacing:.18em}.brand-copy small{font-size:.62rem;letter-spacing:.42em}
.site-header nav>a{position:relative;padding:30px 14px 27px;background:transparent!important;font-size:.83rem;letter-spacing:.08em;text-transform:uppercase}
.site-header nav>a:after{content:"";position:absolute;left:14px;right:14px;bottom:18px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.site-header nav>a:hover:after,.site-header nav>a:focus-visible:after{transform:scaleX(1)}
.header-actions{padding-right:24px}
.icon-btn{width:42px;height:42px;border:1px solid rgba(255,255,255,.2);background:transparent}
.cart-button,.header-order{min-height:42px;border:1px solid var(--gold);background:var(--gold)!important;color:#08152F!important;padding:0 16px!important;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.wishlist-toggle b{border-radius:0!important;top:-6px;right:-6px}

/* Hero */
.hero{min-height:calc(100svh - var(--header));padding-top:0!important}
.hero-slide:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,rgba(3,9,20,.35));pointer-events:none}
.hero-shade{background:linear-gradient(90deg,rgba(2,7,17,.93) 0%,rgba(2,7,17,.68) 44%,rgba(2,7,17,.12) 78%),linear-gradient(0deg,rgba(2,7,17,.62),transparent 46%)}
.hero-content{padding-bottom:clamp(64px,8vw,104px)}
.kicker{font-size:.7rem;letter-spacing:.32em}
.hero h1,.section-heading h2,.story-copy h2,.newsletter-grid h2,.checkout-copy h2,.detail-copy h1,.collection-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.045em}
.hero h1{font-size:clamp(4.2rem,10vw,9rem);line-height:.84;max-width:980px;margin:18px 0 24px}
.hero p{max-width:620px;font-size:1.05rem;line-height:1.75}
.button{min-height:48px;padding:13px 20px;text-transform:uppercase;letter-spacing:.075em;font-size:.78rem;box-shadow:none!important}
.button:hover{transform:none;filter:brightness(.96)}
.primary{background:var(--gold);color:#08152F}
.secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.48)}
.hero-points{padding-top:22px;border-top:1px solid rgba(255,255,255,.22);max-width:780px}
.slider-arrow{border-radius:0!important;border:1px solid rgba(255,255,255,.38)!important;background:rgba(2,7,17,.32)!important;backdrop-filter:blur(8px)}
.slider-dots button{border-radius:0!important;width:24px!important;height:2px!important}

/* Sections / editorial rhythm */
.section{padding:clamp(78px,8vw,126px) 0}
.section-heading{margin-bottom:52px}.section-heading h2{font-size:clamp(2.7rem,5vw,5.2rem);line-height:.92}.section-heading p{max-width:560px;line-height:1.75}
.collections-section,.products-section{background:var(--surface)}
.collections-section{border-bottom:1px solid var(--line)}
.collection-card.collection-card-horizontal{min-height:clamp(470px,50vw,690px);border:1px solid rgba(255,255,255,.14);box-shadow:none}
.collection-card-horizontal .collection-content{left:clamp(28px,5vw,68px);bottom:clamp(34px,5vw,68px)}
.collection-content h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(2.6rem,5vw,5.2rem);letter-spacing:-.04em}
.collection-content p{line-height:1.75}.text-link{text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;padding-bottom:7px;border-bottom:1px solid var(--gold)}

/* Real shop / WooCommerce-like catalogue */
.products-section{padding-top:110px}
.shop-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:48px;align-items:start}
.shop-sidebar{position:sticky;top:calc(var(--header) + 26px);padding:0 24px 28px 0;border:0;border-right:1px solid var(--line);background:transparent;box-shadow:none}
.shop-sidebar-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:2px solid var(--ink)}
.clear-filters{border:0;background:transparent;color:var(--muted);padding:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer;font-size:.76rem}
.category-filter-list,.collection-filter-list{display:grid;margin-top:9px}
.side-filter{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;cursor:pointer;font-weight:650}
.side-filter b{font-size:.75rem;color:var(--muted);font-weight:600}.side-filter.active{color:var(--blue);box-shadow:inset 3px 0 0 var(--gold);padding-left:12px}.sidebar-divider{height:1px;background:var(--line);margin:28px 0}.sidebar-label{text-transform:uppercase;font-size:.68rem;letter-spacing:.24em;color:var(--muted);font-weight:800}
.shop-toolbar.clean-toolbar{min-height:58px;padding:0 0 18px;border:0;border-bottom:1px solid var(--line);background:transparent;box-shadow:none}
.search-box{min-width:min(400px,100%);border-width:0 0 1px;background:transparent;padding:0}.search-box input{padding:12px 3px}.results-count{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 20px}
.product-card{border:0;background:transparent;box-shadow:none;overflow:visible;transition:none}
.product-card:hover{transform:none;box-shadow:none}
.product-media{aspect-ratio:4/5;background:#eeece7;border:1px solid #e3e0da;overflow:hidden}
.product-media img{object-fit:cover;transition:transform .45s ease}.product-card:hover .product-media img{transform:scale(1.025)}
.product-badge{top:12px;left:12px;background:#08152F;color:#fff;padding:7px 10px;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase}
.wishlist-button{top:12px;right:12px;width:38px;height:38px;border:1px solid rgba(7,18,38,.18);background:rgba(255,255,255,.92)}
.quick-view{left:0;right:0;bottom:0;transform:translateY(100%);opacity:0;text-align:center;background:#08152F;color:#fff;padding:13px 16px;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}
.product-media:hover .quick-view{transform:translateY(0);opacity:1}
.product-body{padding:17px 0 0}.product-meta{font-size:.65rem;letter-spacing:.13em}.product-body h3{font-size:1.12rem;font-weight:700;margin:8px 0 3px}.product-body p{font-size:.88rem}.product-footer{margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.product-footer strong{font-size:1.1rem;color:var(--ink)}
.add-cart{border:1px solid var(--ink);background:transparent;color:var(--ink);min-height:39px;padding:8px 12px;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:850;cursor:pointer}.add-cart:hover{background:var(--ink);color:#fff}

/* Brand story / social proof */
.story-section{background:#061225}.story-grid{gap:10vw}.story-copy p{max-width:680px}.story-stats article{border-top-color:rgba(255,255,255,.22)}
.testimonials-section{background:#f0ede6}.testimonials-grid{gap:1px;background:#d8d4cb;border:1px solid #d8d4cb}.testimonials-grid article{box-shadow:none;padding:34px;background:#faf9f6}

/* Newsletter + checkout */
.newsletter-section{background:var(--gold);border-top:1px solid #bd8f0d;border-bottom:1px solid #bd8f0d}.newsletter-grid input{border:1px solid rgba(7,18,38,.35);background:#fff}.newsletter-field-row{display:grid;grid-template-columns:1fr auto;gap:0}.newsletter-field-row .button{min-width:160px}
.checkout-section{background:#ece9e2;border-top:1px solid #ddd7cc}.checkout-layout{gap:70px}.checkout-copy{top:calc(var(--header) + 38px)}
.order-form,.checkout-form{border:1px solid #d8d4cb;box-shadow:none;padding:clamp(24px,4vw,46px)}
.order-form input,.order-form select,.order-form textarea{border:1px solid #ccd2dc;background:#fff;min-height:48px;padding:12px 13px;color:#101828}.order-form textarea{min-height:100px}
.checkout-payment-choice{border:1px solid #d8d4cb;padding:20px}.payment-choice-card{border:1px solid #d8d4cb!important;background:#fff!important}.payment-choice-card:has(input:checked){border-color:var(--gold)!important;box-shadow:inset 4px 0 0 var(--gold)}
.payment-method-icon{box-shadow:none;border:1px solid #d8d4cb}

/* Footer */
.site-footer{background:#030914!important;border-top:3px solid var(--gold);padding-top:70px}.footer-grid{gap:70px}.footer-grid>div:not(:first-child)>b{display:block;margin-bottom:18px;color:var(--gold-2);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase}.footer-grid a,.footer-grid span{line-height:2}
.footer-bottom{margin-top:52px;padding-top:22px;border-top:1px solid rgba(255,255,255,.15)}

/* Product and collection pages */
.detail-page,.collection-page{background:#f4f1eb}.detail-header{height:82px;border-bottom:2px solid var(--gold)}
.product-detail{grid-template-columns:minmax(0,1.1fr) minmax(370px,.8fr);gap:clamp(42px,6vw,86px);padding-block:70px 100px}
.detail-gallery{border:1px solid #ddd8cf;background:#fff}.detail-copy{padding-top:12px}.detail-copy h1{font-size:clamp(3.2rem,5vw,5.6rem);line-height:.92}.detail-price{display:block;margin:20px 0;color:#9c7605;font-size:1.7rem}.detail-info{gap:0;border:1px solid #ddd8cf}.detail-info article{border-right:1px solid #ddd8cf;background:#fff}.detail-info article:last-child{border-right:0}.detail-buy select,.detail-buy input{min-height:50px;border:1px solid #cfd4dc;background:#fff}.custom-product-link{border-left:3px solid var(--gold);padding:18px 20px;background:#eee9de}
.gallery-thumb{border:1px solid #d8d4cb!important}.gallery-thumb.active{border-color:var(--gold)!important;box-shadow:inset 0 -3px 0 var(--gold)}
.collection-hero{min-height:70vh;border-bottom:3px solid var(--gold)}
.collection-hero article{max-width:1000px}.collection-hero h1{font-size:clamp(4.5rem,9vw,9rem);line-height:.85}

/* Modals / cart */
.cart-drawer{border-left:1px solid #d8d4cb;box-shadow:-22px 0 70px rgba(0,0,0,.18)}
.quick-dialog,.payment-dialog,.wishlist-panel{border:1px solid #d8d4cb;box-shadow:0 30px 90px rgba(0,0,0,.22)}
.quick-close,.payment-close,.wishlist-close,#closeCart{border:1px solid currentColor!important;background:transparent!important}

/* Absolute guarantee: rectangular UI, while actual circular artwork inside images stays untouched */
button,a,input,select,textarea,article,aside,section,form,label,div,span{--premium-radius:0px}

@media(max-width:1100px){
  .shop-layout{grid-template-columns:210px minmax(0,1fr);gap:30px}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-header nav>a{padding-inline:10px;font-size:.75rem}
}
@media(max-width:900px){
  .container{width:min(100% - 32px,760px)}
  .site-header .brand{padding-left:16px}.header-actions{padding-right:16px}
  .shop-layout{grid-template-columns:1fr;gap:28px}.shop-sidebar{position:static;border-right:0;border-bottom:1px solid var(--line);padding:0 0 22px}.category-filter-list,.collection-filter-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
  .product-detail{grid-template-columns:1fr}.newsletter-field-row{grid-template-columns:1fr}.newsletter-field-row .button{width:100%}
}
@media(max-width:620px){
  .container{width:calc(100% - 24px)}
  .product-grid{grid-template-columns:1fr 1fr;gap:26px 10px}.product-body h3{font-size:.94rem}.product-meta{display:grid;gap:2px}.product-footer{align-items:flex-start;gap:8px;flex-direction:column}.add-cart{width:100%}
  .hero h1{font-size:clamp(3.5rem,18vw,6rem)}.hero-content{padding-bottom:54px}.hero-points{display:grid;gap:10px}
  .category-filter-list,.collection-filter-list{grid-template-columns:1fr 1fr}.side-filter{font-size:.82rem}
  .quick-view{display:none}.site-header:after{height:2px}
}

/* Catalogue sorting */
.shop-toolbar-actions{display:flex;align-items:center;gap:20px}.sort-control{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.sort-control select{height:40px;min-width:160px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:0 32px 0 10px;font-size:.78rem;text-transform:none;letter-spacing:0}
@media(max-width:760px){.shop-toolbar.clean-toolbar{align-items:stretch;flex-direction:column}.shop-toolbar-actions{justify-content:space-between}.sort-control span{display:none}.sort-control select{min-width:145px}}

/* Premium 5.0.1 — strict rectangular public UI */
.skip-link,.round-action,.values-grid article,.form-head>span,.cart-button b,.mini-cart-row,
.quick-dialog>img,.portal-alert,.portal-status,.portal-progress i,.portal-summary div,
.gallery-stage>span,.gallery-nav,.gallery-thumb img,.custom-cta-art span,.custom-steps span,.custom-steps b,
.custom-form-wrap form,.position-grid label,.design-upload,.payment-choice-card img,.checkout-success,
.portal-payment-card,.payment-status-pill,.footer-social-links a,.quick-fields select,.quick-fields input{
  border-radius:0!important;
}
