/*
Theme Name: PSNY Masks Renewal 1.7.8
Theme URI: https://mask.psny.jp/
Description: Child theme for the PSNY Masks site, based on Twenty Twenty-Five.
Author: PSNY
Template: twentytwentyfive
Version: 1.7.8
Text Domain: psny-masks-child
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;700&display=swap');

:root {
	--psny-ink: #202724;
	--psny-deep-atelier: #29362f;
	--psny-muted: #686d69;
	--psny-paper: #f7f3ed;
	--psny-line: #d9d5cc;
	--psny-linen-beige: #e9e0d5;
	--psny-accent: #a8875f;
	--psny-font-en: 'Times New Roman', serif;
	--psny-font-jp: 'Noto Serif JP', serif;
}

/* 1.1.28 shared product detail pages */
.psny-product-page main,.psny-product-page main>.wp-block-group,.psny-product-page .wp-block-post-content{max-width:none}
.psny-product-page .wp-block-post-title{width:min(1240px,calc(100% - 40px));margin:clamp(46px,7vw,92px) auto 34px;font-size:clamp(1.65rem,3.2vw,3rem);font-weight:400;line-height:1.45;letter-spacing:.035em}
.psny-product-detail{width:min(1240px,calc(100% - 40px));margin:0 auto clamp(80px,10vw,150px)}
.psny-product-detail .psny-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;color:var(--psny-muted);font-size:.66rem;letter-spacing:.12em}
.psny-product-detail .psny-breadcrumbs a{color:inherit;text-decoration:none}
.psny-product-detail__hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:clamp(38px,7vw,100px);align-items:start}
.psny-product-detail__image{margin:0;background:#f2f1ef}
.psny-product-detail__image img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.psny-product-detail__purchase{position:sticky;top:116px}
.psny-product-detail__label{display:flex;align-items:center;gap:14px;margin:0 0 28px;color:var(--psny-accent);font-family:var(--psny-font-en);font-size:.76rem;letter-spacing:.14em}
.psny-product-detail__label span{padding-left:14px;border-left:1px solid var(--psny-line);color:var(--psny-muted)}
.psny-product-detail__lead{margin:0 0 24px;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.8}
.psny-product-detail__purchase>p:not(.psny-product-detail__label):not(.psny-product-detail__lead){color:var(--psny-muted);font-size:.86rem;line-height:2}
.psny-product-detail__buy{margin-top:34px;padding-top:25px;border-top:1px solid var(--psny-line)}
.psny-product-detail__buy-label{margin:0 0 14px;color:var(--psny-muted);font-size:.64rem;letter-spacing:.16em}
.psny-product-detail__buy .psny-product-back{display:none}
.psny-product-detail__information{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(0,1fr);gap:clamp(40px,8vw,120px);margin-top:clamp(80px,11vw,150px);padding-top:42px;border-top:1px solid var(--psny-line)}
.psny-product-detail__information h2,.psny-product-detail__styling h2,.psny-product-related h2{margin:8px 0 0;font-size:clamp(1.35rem,2.2vw,2rem);font-weight:400}
.psny-product-detail__facts{margin:0}
.psny-product-detail__facts>div{display:grid;grid-template-columns:7em minmax(0,1fr);gap:24px;padding:20px 0;border-bottom:1px solid var(--psny-line)}
.psny-product-detail__facts dt{color:var(--psny-muted);font-size:.7rem;letter-spacing:.08em}
.psny-product-detail__facts dd{margin:0;font-size:.82rem;line-height:1.9}
.psny-product-detail__styling{margin:clamp(70px,9vw,120px) 0;padding:clamp(38px,6vw,72px);background:var(--psny-paper)}
.psny-product-detail__styling>p:last-child{max-width:720px;margin:24px 0 0;font-size:.9rem;line-height:2}
.psny-product-related{margin-top:clamp(70px,9vw,120px)}
.psny-product-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2.5vw,32px);margin-top:30px}
.psny-product-related__grid a{color:inherit;text-decoration:none}
.psny-product-related__grid img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#f2f1ef}
.psny-product-related__grid span{display:block;padding-top:15px;font-size:.83rem;line-height:1.65}
.psny-product-related__grid small{display:block;margin-bottom:6px;color:var(--psny-muted);font-size:.62rem;letter-spacing:.1em}
.psny-product-detail>.psny-mask-notice{margin-top:70px}
.psny-product-detail__back{margin-top:28px}
.psny-product-detail__back a{color:var(--psny-muted);font-size:.75rem;letter-spacing:.08em;text-decoration:none}
@media(max-width:820px){.psny-product-detail__hero,.psny-product-detail__information{grid-template-columns:1fr}.psny-product-detail__purchase{position:static}.psny-product-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.psny-product-page .wp-block-post-title,.psny-product-detail{width:min(100% - 28px,1240px)}.psny-product-detail__facts>div{grid-template-columns:1fr;gap:7px}.psny-product-related__grid{grid-template-columns:1fr}}

body {
	color: var(--psny-ink);
	background: #fff;
	font-family: var(--psny-font-jp);
	padding-top: 84px;
}

/* 1.1.29 unified series pages */
.psny-series-page main,.psny-series-page main>.wp-block-group,.psny-series-page .wp-block-post-content{max-width:none}
.psny-series-page .wp-block-post-title{width:min(1060px,calc(100% - 40px));margin:clamp(46px,7vw,92px) auto 12px;font-size:clamp(1.75rem,3vw,2.8rem);font-weight:400;line-height:1.35}
.psny-series-detail{width:min(1060px,calc(100% - 40px));margin:0 auto clamp(80px,10vw,140px)}
.psny-series-detail>.psny-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px;color:var(--psny-muted);font-size:.65rem;letter-spacing:.12em}
.psny-series-detail>.psny-breadcrumbs a{color:inherit;text-decoration:none}
.psny-series-detail__visual{margin:0;padding:clamp(20px,3vw,40px);background:var(--psny-paper)}
.psny-series-detail__visual img{display:block;width:100%;max-height:620px;object-fit:contain;background:#efeeeb}
.psny-series-detail__visual figcaption{display:flex;justify-content:space-between;gap:20px;margin-top:22px;color:var(--psny-muted);font-family:var(--psny-font-en);font-size:.72rem;letter-spacing:.12em}
.psny-series-detail__visual figcaption strong{color:var(--psny-ink);font-weight:400}
.psny-series-products{margin-top:clamp(70px,9vw,120px);padding-top:36px;border-top:1px solid var(--psny-line)}
.psny-series-products>header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}
.psny-series-products h2{margin:8px 0 0;font-size:clamp(1.35rem,2.2vw,2rem);font-weight:400}
.psny-series-products__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.5vw,32px)}
.psny-series-product-card{margin:0;border:1px solid var(--psny-line);background:#fff}
.psny-series-product-card a{display:block;color:inherit;text-decoration:none}
.psny-series-product-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#f2f1ef;transition:opacity .25s ease}
.psny-series-product-card a:hover img{opacity:.82}
.psny-series-product-card p{margin:18px 18px 8px;color:var(--psny-muted);font-size:.62rem;letter-spacing:.09em;text-transform:uppercase}
.psny-series-product-card h3{margin:0 18px 22px;font-size:.84rem;font-weight:400;line-height:1.7}
.psny-series-products__empty{padding:30px 0;color:var(--psny-muted);font-size:.85rem}
@media(max-width:760px){.psny-series-products__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.psny-series-page .wp-block-post-title,.psny-series-detail{width:min(100% - 28px,1060px)}.psny-series-detail__visual{padding:14px}.psny-series-detail__visual figcaption{margin-top:15px}.psny-series-products__grid{grid-template-columns:1fr}}

/* 1.1.30 series page spacing and desktop width correction */
.psny-series-page main.wp-block-group{margin-block-start:0!important;padding-top:0!important}
.psny-series-page main.wp-block-group>.wp-block-group{padding-top:48px!important}
.psny-series-page .wp-block-post-content{width:100%!important;max-width:none!important}
.psny-series-page .wp-block-post-title{width:min(1240px,calc(100% - 64px));max-width:1240px!important;margin:0 auto 14px!important}
.psny-series-detail{width:min(1240px,calc(100% - 64px));max-width:1240px!important}
@media(max-width:760px){.psny-series-page main.wp-block-group>.wp-block-group{padding-top:30px!important}.psny-series-page .wp-block-post-title,.psny-series-detail{width:min(100% - 32px,1240px)}}

/* 1.1.31 product page width, spacing and purchase emphasis */
.psny-product-page main.wp-block-group{margin-block-start:0!important;padding-top:0!important}
.psny-product-page main.wp-block-group>.wp-block-group{padding-top:48px!important}
.psny-product-page .wp-block-post-content{width:100%!important;max-width:none!important}
.psny-product-page .wp-block-post-title{width:min(1240px,100%);max-width:1240px!important;margin:0 auto 18px!important}
.psny-product-page .psny-product-detail{width:min(1240px,100%);max-width:1240px!important}
.psny-product-page .psny-product-detail__hero{grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);gap:clamp(44px,6vw,86px)}
.psny-product-page .psny-product-detail__buy{margin-top:38px;padding-top:28px}
@media(max-width:980px){.psny-product-page .psny-product-detail__hero{grid-template-columns:1fr}.psny-product-page .psny-product-detail__purchase{position:static}}
@media(max-width:760px){.psny-product-page main.wp-block-group>.wp-block-group{padding-top:30px!important}.psny-product-page .wp-block-post-title,.psny-product-page .psny-product-detail{width:100%;max-width:none!important}}

/* 1.1.32 Shopify Buy Button iframe follows the purchase column width */
.psny-product-page .psny-product-detail__buy iframe.shopify-buy-frame--product,
.psny-product-page .psny-product-detail__buy iframe[name^="frame-product-"]{display:block;width:100%!important;max-width:none!important;margin:0!important}

/* 1.1.33 Shopify adds the 280px limit to the host wrapper, not the iframe. */
.psny-product-page .psny-product-detail__buy .psny-shopify-product.shopify-buy-frame,
.psny-product-page .psny-product-detail__buy .shopify-buy-frame--product{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}

/* 1.1.34 product detail follows the PS Sling purchase-first composition. */
.psny-product-page .wp-block-post-title{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}
.psny-product-page main.wp-block-group>.wp-block-group{padding-top:34px!important}
.psny-product-page .psny-product-detail{width:min(1360px,calc(100% - 64px));max-width:1360px!important}
.psny-product-page .psny-product-detail__hero{grid-template-columns:minmax(0,1.42fr) minmax(390px,.72fr);gap:clamp(42px,5vw,78px)}
.psny-product-gallery{min-width:0}
.psny-product-detail__image{overflow:hidden}
.psny-product-detail__image img{aspect-ratio:1/1;object-fit:cover;transition:opacity .2s ease}
.psny-product-gallery__thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px}
.psny-product-gallery__thumbs button{appearance:none;display:block;margin:0;padding:0;border:1px solid transparent;background:#f2f1ef;cursor:pointer;transition:border-color .2s ease,opacity .2s ease}
.psny-product-gallery__thumbs button:hover{opacity:.78}
.psny-product-gallery__thumbs button[aria-pressed="true"]{border-color:var(--psny-ink)}
.psny-product-gallery__thumbs img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.psny-product-detail__purchase{top:108px}
.psny-product-detail__purchase h1{margin:0 0 20px;font-size:clamp(1.5rem,2.3vw,2.35rem);font-weight:400;line-height:1.5;letter-spacing:.035em}
.psny-product-detail__label{margin-bottom:18px}
.psny-product-detail__lead{margin-bottom:22px;color:var(--psny-muted);font-size:.9rem;line-height:1.9}
.psny-product-detail__buy{margin-top:24px;padding-top:22px}
.psny-product-detail__story{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(0,1fr);gap:clamp(40px,8vw,120px);margin-top:clamp(72px,9vw,120px);padding:clamp(40px,6vw,72px);background:var(--psny-paper)}
.psny-product-detail__story h2{margin:8px 0 0;font-size:clamp(1.35rem,2.2vw,2rem);font-weight:400}
.psny-product-detail__story>div{max-width:760px}
.psny-product-detail__story>div p{margin:0 0 1.3em;font-size:.9rem;line-height:2}
.psny-product-detail__information{margin-top:clamp(70px,8vw,110px)}
@media(max-width:980px){.psny-product-page .psny-product-detail{width:min(100% - 40px,1360px)}.psny-product-page .psny-product-detail__story{grid-template-columns:1fr}.psny-product-page .psny-product-detail__hero{grid-template-columns:minmax(0,1fr)}.psny-product-page .psny-product-detail__purchase{position:static;min-width:0}}
@media(max-width:600px){.psny-product-page main.wp-block-group>.wp-block-group{padding-top:24px!important}.psny-product-page .psny-product-detail{width:min(100% - 28px,1360px)}.psny-product-gallery__thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.psny-product-detail__purchase{padding-top:26px}.psny-product-detail__story{margin-left:-14px;margin-right:-14px;padding:34px 22px}}

/* 1.1.36 standalone Guide and FAQ pages. */
.psny-home-help>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--psny-line)}
.psny-home-help article{padding:clamp(34px,5vw,70px);background:var(--psny-paper)}
.psny-home-help h2{margin:10px 0 20px;font-size:clamp(1.4rem,2.2vw,2rem);font-weight:400}
.psny-home-help article>p:not(.psny-mask-eyebrow){max-width:520px;font-size:.88rem;line-height:2}
.psny-home-help a,.psny-help-next a,.psny-help-contact a{display:inline-block;margin-top:20px;padding-bottom:6px;border-bottom:1px solid currentColor;color:var(--psny-ink);font-size:.75rem;letter-spacing:.08em;text-decoration:none}
.psny-help-page-body main,.psny-help-page-body main>.wp-block-group,.psny-help-page-body .wp-block-post-content{max-width:none}
.psny-help-page-body main.wp-block-group{margin-block-start:0!important;padding-top:0!important}
.psny-help-page-body main.wp-block-group>.wp-block-group{padding-top:44px!important}
.psny-help-page-body .wp-block-post-content{width:100%!important;max-width:none!important}
.psny-help-page{width:min(1180px,calc(100% - 64px));margin:0 auto clamp(90px,11vw,150px)}
.psny-help-page>.psny-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(42px,6vw,80px);color:var(--psny-muted);font-size:.66rem;letter-spacing:.12em}
.psny-help-page>.psny-breadcrumbs a{color:inherit;text-decoration:none}
.psny-help-hero{max-width:850px;margin-bottom:clamp(76px,10vw,130px)}
.psny-help-hero h1{margin:14px 0 30px;font-size:clamp(2rem,4.5vw,4.6rem);font-weight:400;line-height:1.35;letter-spacing:.025em}
.psny-help-hero>p:last-child{max-width:720px;color:var(--psny-muted);font-size:.94rem;line-height:2.15}
.psny-help-section{margin-top:clamp(70px,9vw,120px);padding-top:38px;border-top:1px solid var(--psny-line)}
.psny-help-section>h2,.psny-faq-group>h2,.psny-help-contact h2{margin:10px 0 34px;font-size:clamp(1.45rem,2.5vw,2.3rem);font-weight:400}
.psny-help-section--paper{padding:clamp(36px,6vw,72px);border:0;background:var(--psny-paper)}
.psny-guide-labels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--psny-line)}
.psny-guide-labels a{display:flex;min-height:170px;padding:30px;flex-direction:column;justify-content:space-between;background:#fff;color:inherit;text-decoration:none}
.psny-guide-labels strong{font-family:var(--psny-font-en);font-size:1.4rem;font-weight:400}
.psny-guide-labels span{color:var(--psny-muted);font-size:.78rem;line-height:1.8}
.psny-help-next{display:flex;flex-wrap:wrap;gap:34px;margin-top:clamp(70px,9vw,120px);padding-top:30px;border-top:1px solid var(--psny-line)}
.psny-faq-group{display:grid;grid-template-columns:minmax(170px,.4fr) minmax(0,1fr);gap:clamp(36px,7vw,100px);padding:48px 0;border-top:1px solid var(--psny-line)}
.psny-faq-group>h2{margin:3px 0 0}
.psny-help-contact{margin-top:clamp(70px,9vw,120px);padding:clamp(38px,6vw,72px);background:var(--psny-paper)}
.psny-help-contact>p:not(.psny-mask-eyebrow){max-width:680px;color:var(--psny-muted);font-size:.88rem;line-height:2}
@media(max-width:760px){.psny-home-help>div,.psny-guide-labels{grid-template-columns:1fr}.psny-help-page{width:min(100% - 32px,1180px)}.psny-help-page-body main.wp-block-group>.wp-block-group{padding-top:28px!important}.psny-faq-group{grid-template-columns:1fr;gap:18px}.psny-help-section--paper{margin-left:-16px;margin-right:-16px;padding:34px 20px}.psny-guide-labels a{min-height:130px}}

/* 1.1.40 About PSNY Masks */
.psny-about-page{width:min(1280px,calc(100vw - 64px));max-width:none;margin:0 auto clamp(90px,11vw,150px)!important;transform:none}
.psny-about-page>.psny-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(42px,6vw,76px);color:var(--psny-muted);font-size:.66rem;letter-spacing:.12em}
.psny-about-page>.psny-breadcrumbs a{color:inherit;text-decoration:none}
.psny-about-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.75fr);gap:clamp(36px,7vw,100px);align-items:center;margin-bottom:clamp(90px,12vw,160px)}
.psny-about-hero h1{margin:14px 0 28px;font-size:clamp(2.2rem,4.6vw,4.8rem);font-weight:400;line-height:1.35;letter-spacing:.025em}
.psny-about-hero p:last-child{max-width:680px;color:var(--psny-muted);font-size:.92rem;line-height:2.1}
.psny-about-hero figure,.psny-about-visual{margin:0;background:var(--psny-paper)}
.psny-about-hero img,.psny-about-visual img{display:block;width:100%;height:auto}
.psny-about-section{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:clamp(40px,8vw,120px);margin-top:clamp(90px,12vw,160px);padding-top:42px;border-top:1px solid var(--psny-line)}
.psny-about-section--reverse>.psny-about-copy{order:2}.psny-about-section--reverse>.psny-about-media{order:1}
.psny-about-copy h2{margin:10px 0 25px;font-size:clamp(1.55rem,3vw,2.8rem);font-weight:400;line-height:1.5}
.psny-about-copy>p:not(.psny-mask-eyebrow){color:var(--psny-muted);font-size:.88rem;line-height:2.05}
.psny-about-copy ul{margin:28px 0 0;padding:0;list-style:none;border-top:1px solid var(--psny-line)}
.psny-about-copy li{padding:15px 0;border-bottom:1px solid var(--psny-line);font-size:.78rem;line-height:1.8}
.psny-about-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start}
.psny-about-media--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.psny-about-media figure{margin:0;background:var(--psny-paper)}
.psny-about-media img{display:block;width:100%;height:auto}
.psny-about-note{margin-top:clamp(90px,12vw,160px);padding:clamp(38px,6vw,72px);background:var(--psny-paper)}
.psny-about-note h2{margin:10px 0 24px;font-size:clamp(1.45rem,2.6vw,2.4rem);font-weight:400}
.psny-about-note p{max-width:820px;color:var(--psny-muted);font-size:.86rem;line-height:2}
.psny-about-links{display:flex;flex-wrap:wrap;gap:30px;margin-top:34px}
.psny-about-links a{padding-bottom:6px;border-bottom:1px solid currentColor;color:var(--psny-ink);font-size:.75rem;letter-spacing:.08em;text-decoration:none}
@media(max-width:820px){.psny-about-hero,.psny-about-section{grid-template-columns:1fr}.psny-about-section--reverse>.psny-about-copy,.psny-about-section--reverse>.psny-about-media{order:initial}.psny-about-media--three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.psny-about-page{width:calc(100vw - 28px);margin-left:50%!important;margin-right:0!important;transform:translateX(-50%)}.psny-about-media,.psny-about-media--three{gap:7px}.psny-about-hero{gap:28px}.psny-about-section{gap:32px}.psny-about-note{margin-left:-14px;margin-right:-14px;padding:34px 22px}}

body.admin-bar { padding-top: 84px; }
body.psny-menu-open { overflow: hidden; }

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

header.wp-block-template-part,
footer.wp-block-template-part nav,
footer.wp-block-template-part > .wp-block-group > .wp-block-group:last-child {
	display: none;
}

.psny-sitebar {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	min-height: 84px;
	padding: 18px clamp(20px, 4vw, 64px);
	border-bottom: 1px solid rgba(255,255,255,.14);
	background: var(--psny-ink);
	color: #fff;
	box-sizing: border-box;
}

body.admin-bar .psny-sitebar { top: 32px; }

.psny-sitebar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 1440px;
	min-height: 47px;
	margin: 0 auto;
	gap: 32px;
}

.psny-sitebar a {
	color: #fff;
	text-decoration: none;
}

.psny-sitebar__brand,
.psny-sitebar__brand img {
	display: block;
}

.psny-sitebar__brand img {
	width: clamp(76px, 7vw, 100px);
	height: auto;
}

.psny-sitebar__nav {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: clamp(16px, 2vw, 30px);
	font-family: var(--psny-font-jp);
	font-size: .69rem;
	font-weight: 400;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.psny-sitebar__nav a {
	position: relative;
	padding: 8px 0;
	color: rgba(255,255,255,.74);
	transition: color .3s ease;
}

.psny-sitebar__nav a::after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 3px;
	left: 0;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .45s cubic-bezier(.22,.61,.36,1);
}

.psny-sitebar__nav a:hover::after,
.psny-sitebar__nav a:focus-visible::after {
	transform: scaleX(1);
	transform-origin: left;
}


.psny-sitebar__menu-item { position: relative; }
.psny-sitebar__menu-label { display: flex; align-items: center; gap: 5px; }
.psny-sitebar__submenu-toggle {
	display: inline-grid;
	place-items: center;
	width: 22px;
	height: 28px;
	padding: 0;
	border: 0;
	background: transparent;
	color: rgba(255,255,255,.72);
	font: inherit;
	cursor: pointer;
}

.psny-sitebar__submenu {
	display: grid;
	grid-template-columns: repeat(3, minmax(130px, 1fr));
	gap: 26px;
	position: absolute;
	top: calc(100% + 18px);
	left: -24px;
	width: min(560px, 70vw);
	padding: 24px;
	border: 1px solid rgba(255,255,255,.14);
	background: rgba(32,39,36,.98);
	box-shadow: 0 18px 46px rgba(0,0,0,.2);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}

.psny-sitebar__menu-item:hover .psny-sitebar__submenu,
.psny-sitebar__menu-item:focus-within .psny-sitebar__submenu,
.psny-sitebar__menu-item.is-submenu-open .psny-sitebar__submenu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.psny-sitebar__submenu::before {
	content: '';
	position: absolute;
	top: -20px;
	left: 0;
	width: 100%;
	height: 20px;
}

.psny-sitebar__submenu a {
	display: block;
	padding: 7px 0;
	font-family: var(--psny-font-en);
	font-size: .68rem;
	letter-spacing: .08em;
	text-transform: none;
}

.psny-sitebar__submenu a::after { bottom: 2px; }
.psny-sitebar__submenu .psny-sitebar__submenu-label {
	margin-bottom: 6px;
	color: #fff;
	font-size: .72rem;
	letter-spacing: .14em;
}
.psny-sitebar__submenu .psny-sitebar__submenu-all {
	grid-column: 1 / -1;
	padding: 0 0 12px;
	border-bottom: 1px solid rgba(255,255,255,.14);
	color: #fff;
	font-size: .66rem;
	letter-spacing: .14em;
}

.psny-sitebar__toggle { display: none; }

.psny-mask-footer {
	margin-top: clamp(80px, 10vw, 140px);
	padding: clamp(64px, 7vw, 96px) clamp(20px, 4vw, 64px) 28px;
	background: var(--psny-ink);
	color: rgba(255,255,255,.78);
}

.psny-mask-footer__main {
	display: grid;
	grid-template-columns: minmax(0, 32%) minmax(0, 68%);
	gap: clamp(48px, 6vw, 96px);
	align-items: start;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}

.psny-mask-footer__logo {
	display: block;
	width: clamp(88px, 8vw, 112px);
	height: auto;
	margin-bottom: 28px;
}

.psny-mask-footer__statement {
	max-width: 360px;
	font-size: clamp(1rem, 1.25vw, 1.12rem);
	line-height: 1.9;
	letter-spacing: .025em;
	font-weight: 300;
	color: #fff;
}

.psny-mask-footer__en {
	font-family: var(--psny-font-en);
	font-size: .76rem;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.psny-mask-footer__label {
	margin: 0;
	font-size: .62rem;
	letter-spacing: .24em;
	text-transform: uppercase;
}

.psny-mask-footer__sitemap h2 {
	margin: 8px 0 26px;
	color: #fff;
	font-size: clamp(1.08rem, 1.5vw, 1.32rem);
	font-weight: 400;
	line-height: 1.45;
}

.psny-mask-footer__nav {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px clamp(48px, 6vw, 96px);
}

.psny-mask-footer a {
	color: inherit;
	text-decoration: none;
}

.psny-mask-footer__nav a {
	padding-block: 7px;
	font-family: var(--psny-font-jp);
	font-size: .78rem;
	letter-spacing: .08em;
}

.psny-mask-footer__social {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 42px;
	font-size: .75rem;
	letter-spacing: .06em;
}

.psny-mask-footer__social > span:first-child {
	width: 100%;
	margin-bottom: 4px;
	color: rgba(255,255,255,.48);
	font-size: .65rem;
	letter-spacing: .15em;
}

.psny-mask-footer :is(.psny-mask-footer__nav a,.psny-mask-footer__social a,.psny-mask-footer__bottom a) {
	position: relative;
	display: inline-block;
	width: fit-content;
	padding-bottom: 4px;
	transition: color .3s ease;
}

.psny-mask-footer :is(.psny-mask-footer__nav a,.psny-mask-footer__social a,.psny-mask-footer__bottom a)::after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .45s cubic-bezier(.22,.61,.36,1);
}

.psny-mask-footer :is(.psny-mask-footer__nav a,.psny-mask-footer__social a,.psny-mask-footer__bottom a):is(:hover,:focus-visible) {
	color: #fff;
}

.psny-mask-footer :is(.psny-mask-footer__nav a,.psny-mask-footer__social a,.psny-mask-footer__bottom a):is(:hover,:focus-visible)::after {
	transform: scaleX(1);
	transform-origin: left;
}

.psny-mask-footer__relationship {
	width: 100%;
	max-width: 1440px;
	margin: 56px auto 0;
	color: rgba(255,255,255,.56);
	font-size: .72rem;
	line-height: 1.9;
	letter-spacing: .04em;
}

.psny-mask-footer__bottom {
	display: flex;
	justify-content: space-between;
	gap: 24px;
	width: 100%;
	max-width: 1440px;
	margin: 24px auto 0;
	padding-top: 24px;
	border-top: 1px solid rgba(255,255,255,.15);
	font-size: .68rem;
	letter-spacing: .05em;
}

#series,
#guide,
#faq { scroll-margin-top: 104px; }

/* Mask-specific contact page: PSNY shell with a concise LINE-first flow. */
body.page-id-303 .wp-block-post-title { display: none !important; }
body.page-id-303 main,
body.page-id-303 .wp-block-post-content { margin-block-start: 0 !important; padding-block-start: 0 !important; }
body.page-id-303 .wp-block-post-content { max-width: none !important; }
body.page-id-303 main > .wp-block-group { padding-block: 0 !important; }

.psny-mask-contact {
	position: relative;
	left: 50%;
	width: 100vw;
	max-width: none;
	margin-left: 0;
	transform: translateX(-50vw);
	color: var(--psny-ink);
}

.psny-contact-section { padding: clamp(72px, 8vw, 120px) clamp(24px, 8vw, 132px); }
.psny-contact-section > div { width: 100%; max-width: 1120px; margin: 0 auto; }
.psny-contact-eyebrow { margin: 0 0 18px; font-size: .64rem; letter-spacing: .23em; text-transform: uppercase; }
.psny-contact-title { margin: 0; font-size: clamp(1.7rem, 3.2vw, 2.75rem); font-weight: 300; line-height: 1.62; letter-spacing: .045em; }
.psny-contact-copy { max-width: 42rem; margin: 24px 0 0; font-size: .88rem; line-height: 2.05; }

.psny-contact-hero { background: var(--psny-paper); }
.psny-contact-hero > div { max-width: 900px; }

.psny-contact-line { background: var(--psny-ink); color: #fff; }
.psny-contact-line__grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr); gap: clamp(48px, 7vw, 96px); align-items: start; }
.psny-contact-line .psny-contact-copy { color: rgba(255,255,255,.74); }
.psny-contact-line__button {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	min-width: 260px;
	margin-top: 34px;
	padding: 16px 20px;
	background: #06c755;
	color: #07180e;
	font-size: .76rem;
	letter-spacing: .08em;
	text-decoration: none;
	transition: background .3s ease, color .3s ease;
}
.psny-contact-line__button:hover,
.psny-contact-line__button:focus-visible { background: #fff; color: var(--psny-ink); }
.psny-contact-line__steps { margin: 0; padding: 0; list-style: none; counter-reset: contact-step; }
.psny-contact-line__steps li { counter-increment: contact-step; padding: 20px 0; border-top: 1px solid rgba(255,255,255,.18); font-size: .82rem; line-height: 1.75; }
.psny-contact-line__steps li::before { content: '0' counter(contact-step); display: block; margin-bottom: 6px; color: rgba(255,255,255,.45); font-family: var(--psny-font-en); font-size: .65rem; letter-spacing: .18em; }

.psny-contact-send { background: var(--psny-paper); }
.psny-contact-send__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 46px; border-top: 1px solid var(--psny-line); border-left: 1px solid var(--psny-line); }
.psny-contact-send__grid article { min-height: 190px; padding: 30px; border-right: 1px solid var(--psny-line); border-bottom: 1px solid var(--psny-line); }
.psny-contact-send__grid b { color: var(--psny-muted); font-family: var(--psny-font-en); font-size: .65rem; font-weight: 400; letter-spacing: .16em; }
.psny-contact-send__grid h3 { margin: 18px 0 10px; font-size: 1rem; font-weight: 400; }
.psny-contact-send__grid p { margin: 0; color: var(--psny-muted); font-size: .78rem; line-height: 1.9; }

.psny-contact-mail { background: #fff; }
.psny-contact-mail__intro { max-width: 700px; }
.psny-contact-mail details { max-width: 760px; margin-top: 34px; border-top: 1px solid var(--psny-line); border-bottom: 1px solid var(--psny-line); }
.psny-contact-mail summary { position: relative; padding: 22px 48px 22px 0; cursor: pointer; font-size: .84rem; letter-spacing: .06em; list-style: none; }
.psny-contact-mail summary::-webkit-details-marker { display: none; }
.psny-contact-mail summary::after { content: '+'; position: absolute; top: 19px; right: 6px; font-family: var(--psny-font-en); font-size: 1.15rem; font-weight: 300; }
.psny-contact-mail details[open] summary::after { content: '−'; }
.psny-contact-mail__form { padding: 12px 0 36px; }
.psny-contact-mail__form .wpcf7 { max-width: 620px; }
.psny-contact-mail__form input:not([type='checkbox']):not([type='submit']),
.psny-contact-mail__form textarea { width: 100%; box-sizing: border-box; }
.psny-contact-mail__form input[type='file'] { font-size: .75rem; }
.psny-contact-mail__form input[type='submit'] { border-radius: 0; }

.psny-contact-links { padding-top: 56px; padding-bottom: 56px; background: var(--psny-paper); text-align: center; }
.psny-contact-links nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 24px; }
.psny-contact-links a { padding: 11px 22px; border: 1px solid rgba(32,39,36,.35); color: inherit; font-size: .72rem; letter-spacing: .06em; text-decoration: none; transition: background .3s ease, color .3s ease; }
.psny-contact-links a:hover,
.psny-contact-links a:focus-visible { background: var(--psny-ink); color: #fff; }

body.home main {
	margin-block-start: 0 !important;
}

body.home main > .wp-block-post-title {
	display: none;
}

body.home .wp-block-post-content {
	max-width: none;
	margin: 0;
}

body.home main > .wp-block-group {
	padding-block: 0 !important;
}

body.home .psny-mask-home {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
}

body.page-id-595 main > h1,
body.page-id-595 .wp-block-post-title {
	display: none !important;
}

body.page-id-595 .psny-mask-home {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
}

body.page-id-595 main,
body.page-id-595 .wp-block-post-content {
	padding-block-start: 0;
	margin-block-start: 0;
}

body:not(.home) main {
	margin-block-start: 0;
	padding-block-start: clamp(24px, 4vw, 56px);
}

body:not(.home) .wp-block-post-title {
	font-size: clamp(2rem, 5vw, 3.75rem);
	line-height: 1.12;
	letter-spacing: -.025em;
}

body:not(.home) .wp-block-post-content > .wp-block-image:first-child img {
	display: block;
	width: min(100%, 760px);
	margin-inline: auto;
}

body.page-id-626 main {
	width: min(1120px, calc(100% - 40px));
	max-width: none !important;
	margin-inline: auto;
}

body.page-id-626 main > .wp-block-group {
	padding-inline: 0;
}

/* 1.2.2: compact browsing rhythm for the 12-series catalog. */
.psny-series-page main.wp-block-group>.wp-block-group{padding-top:36px!important}
.psny-series-page .wp-block-post-title{font-size:clamp(1.9rem,3.5vw,3.15rem)!important;line-height:1.14!important;letter-spacing:-.015em!important}
.psny-series-detail__visual{padding:clamp(16px,2.3vw,30px)}
.psny-series-detail__visual img{width:100%;height:clamp(320px,38vw,520px);max-height:none;object-fit:contain}
.psny-product-gallery__thumbs{display:flex;gap:9px;overflow-x:auto;padding:0 0 8px;scroll-snap-type:x proximity;scrollbar-width:thin}
.psny-product-gallery__thumbs button{flex:0 0 clamp(76px,8vw,108px);scroll-snap-align:start}
.psny-home-series__grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:980px){.psny-home-series__grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.psny-series-page main.wp-block-group>.wp-block-group{padding-top:24px!important}.psny-series-page .wp-block-post-title{font-size:clamp(1.7rem,9vw,2.35rem)!important}.psny-series-detail__visual img{height:280px}.psny-product-gallery__thumbs{gap:7px}.psny-product-gallery__thumbs button{flex-basis:72px}.psny-home-series__grid--4{grid-template-columns:1fr}}

body.page-id-626 .wp-block-post-content {
	width: 100%;
	max-width: none !important;
	padding-inline: 0;
	margin-inline: 0 !important;
}

body.page-id-626 .wp-block-post-content > * {
	width: 100%;
	max-width: none !important;
}

body.page-id-626 .psny-mask-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.page-id-626 .psny-mask-card__body h3 {
	font-size: .92rem;
	line-height: 1.55;
	margin: 0;
}

.psny-mask-filters {
	display: grid;
	gap: 12px;
	margin: 0 0 36px;
}

.psny-series-heading {
	margin: 0;
	font-family: var(--psny-font-en);
	font-size: 1.35rem;
	font-weight: 400;
	letter-spacing: .04em;
}

.psny-series-visuals {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(180px, 22%);
	gap: 12px;
	overflow-x: auto;
	padding: 4px 2px 14px;
	scroll-snap-type: x proximity;
}

.psny-series-card {
	position: relative;
	min-height: 132px;
	padding: 0;
	overflow: hidden;
	border: 2px solid transparent;
	background: var(--psny-ink);
	color: #fff;
	cursor: pointer;
	scroll-snap-align: start;
}

.psny-series-card img {
	display: block;
	width: 100%;
	height: 132px;
	object-fit: cover;
	opacity: .84;
	transition: opacity .2s ease, transform .25s ease;
}

.psny-series-card span {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 28px 12px 11px;
	background: linear-gradient(transparent, rgba(32,39,36,.9));
	font-family: var(--psny-font-jp);
	font-size: .78rem;
	letter-spacing: .05em;
	text-align: left;
}

.psny-series-card:hover img {
	opacity: 1;
	transform: scale(1.025);
}

.psny-series-card[aria-pressed="true"] {
	border-color: var(--psny-accent);
}

.psny-mask-filter-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.psny-mask-filter-label {
	min-width: 4.5em;
	color: var(--psny-muted);
	font-size: .72rem;
	letter-spacing: .08em;
}

.psny-mask-filter {
	padding: 9px 14px;
	border: 1px solid var(--psny-line);
	background: transparent;
	color: var(--psny-ink);
	font-family: var(--psny-font-en);
	font-size: .68rem;
	letter-spacing: .1em;
	cursor: pointer;
}

.psny-mask-filter[aria-pressed="true"] {
	background: var(--psny-ink);
	border-color: var(--psny-ink);
	color: #fff;
}

.psny-mask-filter--series {
	padding-block: 7px;
	border-radius: 999px;
}

.psny-mask-card__series {
	margin: 0 0 8px;
	color: var(--psny-muted);
	font-family: var(--psny-font-en);
	font-size: .63rem;
	letter-spacing: .13em;
	text-transform: uppercase;
}

.psny-product-back {
	margin-top: 32px;
	font-size: .85rem;
}

@media (max-width: 900px) {
	.psny-series-visuals {
		grid-auto-columns: minmax(160px, 48%);
	}
	body.page-id-626 .psny-mask-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.psny-mask-home {
	margin-block-start: 0;
}

.psny-mask-hero {
	position: relative;
	height: clamp(520px, 31.25vw, 600px);
	min-height: 520px;
	display: grid;
	align-items: end;
	overflow: hidden;
	background: var(--psny-ink);
	color: #fff;
}

.psny-mask-hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
}

.psny-mask-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.psny-mask-hero::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(90deg, rgba(23,24,23,.76), rgba(23,24,23,.12));
}

.psny-mask-hero__inner,
.psny-mask-section {
	width: min(1120px, calc(100% - 40px));
	margin-inline: auto;
}

.psny-mask-hero__inner {
	position: relative;
	z-index: 2;
	padding-block: clamp(72px, 12vw, 140px);
}

.psny-mask-eyebrow {
	font-size: .75rem;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.psny-mask-hero h1 {
	max-width: 720px;
	font-size: clamp(2.5rem, 7vw, 5.8rem);
	line-height: 1.06;
	font-weight: 400;
	margin: .25em 0;
}

.psny-mask-lead {
	max-width: 640px;
	font-size: clamp(1rem, 2vw, 1.25rem);
	line-height: 2;
}

.psny-mask-section {
	padding-block: clamp(72px, 10vw, 130px);
}

.psny-mask-section--paper {
	width: 100%;
	max-width: none;
	background: var(--psny-paper);
}

.psny-mask-section--paper > div {
	width: min(1120px, calc(100% - 40px));
	margin-inline: auto;
}

.psny-mask-story {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: clamp(36px, 8vw, 110px);
}

.psny-mask-story h2,
.psny-mask-section h2 {
	font-size: clamp(2rem, 4vw, 3.6rem);
	font-weight: 400;
	line-height: 1.2;
}

.psny-mask-story p {
	line-height: 2.1;
}

.psny-mask-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	margin-top: 48px;
}

/* MC01 is an accessory, presented below the three selected masks. */
.psny-mask-grid > .psny-mask-card--case {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
	align-items: center;
}
@media (max-width: 600px) {
	.psny-mask-grid > .psny-mask-card--case {
		grid-template-columns: minmax(0, 1fr);
	}
}

.psny-mask-card {
	background: #fff;
	border: 1px solid var(--psny-line);
}

.psny-mask-card img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.psny-mask-card__body {
	padding: 24px;
}

.psny-mask-card h3 {
	font-size: 1.05rem;
	font-weight: 500;
}

.psny-mask-card a,
.psny-mask-link {
	color: inherit;
	text-underline-offset: .3em;
}

.psny-mask-notice {
	font-size: .82rem;
	line-height: 1.8;
	color: var(--psny-muted);
	border-top: 1px solid var(--psny-line);
	padding-top: 24px;
}

.psny-shopify-product {
	min-height: 160px;
}

@media (max-width: 999px) {
	body { padding-top: 68px; }
	body.admin-bar { padding-top: 68px; }
	body.admin-bar .psny-sitebar { top: 32px; }

	.psny-sitebar {
		min-height: 68px;
		padding: 14px 20px;
	}

	.psny-sitebar__inner { min-height: 39px; }
	.psny-sitebar__brand img { width: 76px; }

	.psny-sitebar__toggle {
		display: block;
		position: relative;
		z-index: 2;
		width: 42px;
		height: 38px;
		padding: 0;
		border: 0;
		background: transparent;
		color: #fff;
		cursor: pointer;
	}

	.psny-sitebar__toggle::before,
	.psny-sitebar__toggle::after,
	.psny-sitebar__toggle > span[aria-hidden] {
		content: '';
		position: absolute;
		left: 9px;
		width: 24px;
		height: 1px;
		background: currentColor;
		transition: transform .25s ease, opacity .25s ease, top .25s ease;
	}
	.psny-sitebar__toggle::before { top: 11px; }
	.psny-sitebar__toggle > span[aria-hidden] { top: 19px; }
	.psny-sitebar__toggle::after { top: 27px; }
	.is-menu-open .psny-sitebar__toggle::before { top: 19px; transform: rotate(45deg); }
	.is-menu-open .psny-sitebar__toggle > span[aria-hidden] { opacity: 0; }
	.is-menu-open .psny-sitebar__toggle::after { top: 19px; transform: rotate(-45deg); }

	.psny-sitebar__nav {
		display: none;
		position: fixed;
		inset: 68px 0 0;
		z-index: 1;
		align-content: start;
		justify-content: stretch;
		padding: clamp(48px, 9vw, 86px) 28px;
		background: var(--psny-ink);
		overflow-y: auto;
	}
	.admin-bar .psny-sitebar__nav { top: 100px; }
	.psny-sitebar.is-menu-open .psny-sitebar__nav { display: grid; }
	.psny-sitebar__nav a {
		display: block;
		padding: 16px 0;
		border-bottom: 1px solid rgba(255,255,255,.14);
		font-size: .82rem;
	}
	.psny-sitebar__nav a::after { display: none; }
	.psny-sitebar__menu-label { border-bottom: 1px solid rgba(255,255,255,.14); }
	.psny-sitebar__menu-label > a { flex: 1; border: 0; }
	.psny-sitebar__submenu-toggle { width: 44px; height: 49px; }
	.psny-sitebar__submenu-toggle > span[aria-hidden] { transition: transform .2s ease; }
	.psny-sitebar__menu-item.is-submenu-open .psny-sitebar__submenu-toggle > span[aria-hidden] { transform: rotate(180deg); }
	.psny-sitebar__submenu {
		display: none;
		position: static;
		grid-template-columns: 1fr;
		gap: 16px;
		width: auto;
		padding: 16px 0 22px 18px;
		border: 0;
		background: transparent;
		box-shadow: none;
		opacity: 1;
		visibility: visible;
		transform: none;
	}
	.psny-sitebar__menu-item.is-submenu-open .psny-sitebar__submenu { display: grid; }
	.psny-sitebar__submenu::before { display: none; }
	.psny-sitebar__submenu a { padding: 8px 0; border-bottom: 0; font-size: .75rem; }
	.psny-sitebar__submenu .psny-sitebar__submenu-all { grid-column: auto; padding-bottom: 12px; }
}

@media (max-width: 781px) {
	.psny-contact-section { padding: 64px 20px; }
	.psny-contact-line__grid,
	.psny-contact-send__grid { grid-template-columns: 1fr; }
	.psny-contact-line__button { width: 100%; min-width: 0; box-sizing: border-box; }
	.psny-contact-send__grid article { min-height: 0; }
	.psny-contact-links nav { flex-direction: column; align-items: stretch; }
	.psny-mask-footer__main {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.psny-mask-footer { padding: 56px 20px 24px; }
	.psny-mask-footer__logo { width: 92px; }
	.psny-mask-footer__statement { font-size: 1rem; }
	.psny-mask-footer__sitemap h2 { font-size: 1.12rem; }
	.psny-mask-footer__nav { gap-inline: 28px; }
	.psny-mask-footer__relationship { margin-top: 44px; }
	.psny-mask-footer__bottom {
		flex-direction: column;
		margin-top: 24px;
	}

	.psny-mask-story,
	.psny-mask-grid {
		grid-template-columns: 1fr;
	}

	.psny-mask-hero {
		height: auto;
		min-height: 0;
		aspect-ratio: 18 / 25;
	}
	.psny-mask-hero::after {
		background: linear-gradient(180deg, rgba(23,24,23,.04) 22%, rgba(23,24,23,.72) 100%), linear-gradient(90deg, rgba(23,24,23,.52), rgba(23,24,23,.06));
	}
	.psny-mask-hero__inner { padding-block: 54px; }
}

@media (max-width: 782px) {
	body.admin-bar .psny-sitebar { top: 46px; }
	.admin-bar .psny-sitebar__nav { top: 114px; }
}

/* 1.1.11 editorial home and product content */
.psny-home-intro {
	max-width: 720px;
	line-height: 2;
}

.psny-home-series__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 42px;
}

.psny-home-series__card {
	position: relative;
	min-height: 280px;
	overflow: hidden;
	background: var(--psny-ink);
	color: #fff;
	text-decoration: none;
}

.psny-home-series__card img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 280px;
	object-fit: cover;
	opacity: .83;
	transition: transform .35s ease, opacity .25s ease;
}

.psny-home-series__card:hover img {
	transform: scale(1.025);
	opacity: .94;
}

.psny-home-series__card > span {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 70px 22px 22px;
	background: linear-gradient(transparent, rgba(18,23,21,.9));
}

.psny-home-series__card strong,
.psny-home-series__card small {
	display: block;
}

.psny-home-series__card strong {
	font-size: 1.08rem;
	font-weight: 400;
}

.psny-home-series__card small {
	margin-top: 8px;
	font-size: .73rem;
	line-height: 1.6;
	opacity: .82;
}

.psny-home-series__cta {
	margin-top: 30px;
	text-align: right;
}

.psny-home-series__cta a {
	color: inherit;
	text-underline-offset: .35em;
}

/* 1.1.23 price labels containing their series */
.psny-home-labels {
	background: #f7f3ed;
}

.psny-home-label {
	margin-top: 54px;
	padding: 28px clamp(16px, 3vw, 34px) 34px;
	border-top: 1px solid rgba(32,39,36,.12);
}

.psny-home-label--essential { background: rgba(238,232,222,.64); }
.psny-home-label--signature { background: rgba(225,226,220,.52); }
.psny-home-label--couture { background: rgba(214,207,198,.46); }

.psny-home-label__header a {
	display: inline-block;
	color: var(--psny-muted);
	font-family: var(--psny-font-en);
	font-size: .76rem;
	font-weight: 400;
	letter-spacing: .18em;
	text-decoration: none;
	text-transform: uppercase;
}

.psny-home-label .psny-home-series__grid {
	margin-top: 22px;
}

.psny-home-series__grid--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 66.666%;
}

.psny-home-series__grid--1 {
	grid-template-columns: minmax(0, 1fr);
	max-width: 33.333%;
}

.psny-table-wrap {
	overflow-x: auto;
	margin-top: 42px;
}

.psny-home-compare table {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	font-size: .82rem;
	line-height: 1.7;
}

.psny-home-compare th,
.psny-home-compare td {
	padding: 18px 16px;
	border-bottom: 1px solid var(--psny-line);
	text-align: left;
	vertical-align: top;
}

.psny-home-compare thead th {
	color: var(--psny-muted);
	font-size: .68rem;
	font-weight: 400;
	letter-spacing: .08em;
}

.psny-choice-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	margin-top: 64px;
	background: var(--psny-line);
}

.psny-choice-steps article {
	padding: 32px;
	background: var(--psny-paper);
}

.psny-choice-steps b {
	color: var(--psny-accent);
	font-family: var(--psny-font-en);
	font-weight: 400;
}

.psny-choice-steps h3 {
	margin: 14px 0 10px;
	font-weight: 400;
}

.psny-choice-steps p {
	font-size: .82rem;
	line-height: 1.8;
}

.psny-home-faq {
	max-width: 880px;
}

.psny-faq-list {
	margin-top: 42px;
	border-top: 1px solid var(--psny-line);
}

.psny-faq-list details {
	padding: 22px 2px;
	border-bottom: 1px solid var(--psny-line);
}

.psny-faq-list summary {
	cursor: pointer;
	font-size: .95rem;
}

.psny-faq-list details p {
	margin: 18px 0 0;
	color: var(--psny-muted);
	font-size: .85rem;
	line-height: 1.9;
}

.psny-product-editorial {
	margin-block: 42px;
}

.psny-product-editorial > p:not(.psny-mask-eyebrow) {
	font-size: .95rem;
	line-height: 2;
}

.psny-product-facts {
	margin-top: 40px;
	border-top: 1px solid var(--psny-line);
}

.psny-product-facts dl {
	margin: 0;
}

.psny-product-facts dl > div {
	display: grid;
	grid-template-columns: 7em minmax(0, 1fr);
	gap: 20px;
	padding: 18px 0;
	border-bottom: 1px solid var(--psny-line);
}

.psny-product-facts dt {
	color: var(--psny-muted);
	font-size: .72rem;
	letter-spacing: .08em;
}

.psny-product-facts dd {
	margin: 0;
	font-size: .8rem;
	line-height: 1.8;
}

@media (max-width: 900px) {
	.psny-home-series__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.psny-home-series__grid--2,
	.psny-home-series__grid--1 { max-width: none; }
}

@media (max-width: 620px) {
	.psny-home-series__grid {
		gap: 10px;
	}
	.psny-home-series__card,
	.psny-home-series__card img {
		min-height: 210px;
	}
	.psny-home-series__card > span {
		padding: 52px 14px 14px;
	}
	.psny-home-series__card small {
		display: none;
	}
	.psny-choice-steps {
		grid-template-columns: 1fr;
	}
	.psny-product-facts dl > div {
		grid-template-columns: 1fr;
		gap: 6px;
	}
}

/* All Masks: progressive search and combined catalog filters. */
.psny-all-masks [hidden] { display: none !important; }
.psny-catalog-controls { margin: 32px 0; padding: 24px; border: 1px solid #ddd8d1; background: #faf9f7; }
.psny-catalog-controls label { display: flex; flex-direction: column; gap: 8px; font-size: 14px; }
.psny-catalog-controls input, .psny-catalog-controls select { box-sizing: border-box; width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #b9b3aa; border-radius: 0; background: #fff; color: #292724; font: inherit; font-size: 16px; }
.psny-catalog-controls input:focus-visible, .psny-catalog-controls select:focus-visible, .psny-all-masks button:focus-visible { outline: 2px solid #615344; outline-offset: 3px; }
.psny-catalog-fields { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-top: 18px; }
.psny-catalog-hint { font-size: 12px; line-height: 1.8; color: #625c54; }
.psny-catalog-status { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.psny-all-masks button { min-height: 44px; padding: 10px 16px; border: 1px solid #b9b3aa; background: #fff; color: #292724; cursor: pointer; font: inherit; font-size: 14px; }
.psny-catalog-empty { padding: 48px 16px; text-align: center; }
@media (max-width: 600px) { .psny-catalog-controls { padding: 16px; } .psny-catalog-fields { grid-template-columns: 1fr; gap: 14px; } }

/* 1.3.2: homepage phrase wrapping and full-width label background. */
.psny-mask-home .psny-copy-unit { display: inline-block; white-space: nowrap; }
.psny-mask-home .psny-mask-hero h1 { font-size: clamp(2rem, 5vw, 4rem); line-height: 1.3; }
.psny-mask-home .psny-mask-hero h1 .psny-copy-unit { display: block; }
.psny-mask-home .psny-mask-section h2 { font-size: clamp(1.5rem, 3.4vw, 2.75rem); line-height: 1.5; }
.psny-mask-home .psny-mask-story h2,
.psny-mask-home .psny-home-help h2 { font-size: clamp(1.5rem, 2.5vw, 2.25rem); }
.psny-mask-home .psny-home-labels { position: relative; isolation: isolate; }
.psny-mask-home .psny-home-labels::before {
    content: ""; position: absolute; inset: 0; z-index: -1;
    background: #f7f3ed; box-shadow: 0 0 0 100vmax #f7f3ed;
    clip-path: inset(0 -100vmax); pointer-events: none;
}

/* Editorial external text links: explicit opt-in only. */
.wp-block-post-content a.external-text-link {
    color: inherit; font-weight: inherit; text-decoration: none;
    border-bottom: 0; background: none;
}
.external-text-link__text {
    background-image: linear-gradient(var(--psny-accent), var(--psny-accent));
    background-position: left bottom; background-repeat: no-repeat;
    background-size: 0% 1px; padding-bottom: .12em;
    -webkit-box-decoration-break: clone; box-decoration-break: clone;
    transition: background-size .25s ease;
}
.external-text-link__tail { white-space: nowrap; }
.external-text-link__arrow { display: inline-block; margin-inline-start: .15em; transition: transform .25s ease; }
.external-text-link:is(:hover, :focus-visible) .external-text-link__text { background-size: 100% 1px; }
.external-text-link:is(:hover, :focus-visible) .external-text-link__arrow { transform: translate(2px, -2px); }
.external-text-link:focus-visible { outline: 2px solid var(--psny-accent); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) {
    .external-text-link__text, .external-text-link__arrow { transition: none; }
}

.psny-mask-case-page .psny-product-detail__image img{aspect-ratio:auto;object-fit:contain}

/* 1.3.6: explicit controls for overflowing product thumbnail strips. */
.psny-product-gallery__pager{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:18px;color:var(--psny-muted);font-family:var(--psny-font-en);font-size:.75rem;letter-spacing:.12em}
.psny-product-gallery__pager[hidden]{display:none}
.psny-product-gallery__pager button{appearance:none;width:48px;min-height:48px;padding:0;border:1px solid var(--psny-line);border-radius:50%;background:transparent;color:var(--psny-ink);font:inherit;font-size:1.2rem;cursor:pointer;transition:color .22s ease,border-color .22s ease,background .22s ease,transform .22s ease}
.psny-product-gallery__pager button:hover:not(:disabled){color:var(--psny-accent);border-color:var(--psny-accent);background:var(--psny-paper)}
.psny-product-gallery__pager button:first-child:hover:not(:disabled){transform:translateX(-2px)}
.psny-product-gallery__pager button:last-child:hover:not(:disabled){transform:translateX(2px)}
.psny-product-gallery__pager span{min-width:100px;text-align:center;font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){.psny-product-gallery__pager button{transition:none;transform:none!important}}
.psny-product-gallery__pager button:focus-visible{outline:2px solid var(--psny-accent);outline-offset:3px}
.psny-product-gallery__pager button:disabled{opacity:.2;cursor:default}

/* 1.3.8: guide-only width and choosing guidance. */
.psny-help-page-body .wp-block-post-content>.psny-guide-page{width:min(1240px,calc(100% - 64px));max-width:1240px!important}
.psny-guide-page section{scroll-margin-top:110px}
.psny-guide-index{display:flex;flex-wrap:wrap;gap:14px 28px;padding:24px 0;border-block:1px solid var(--psny-line)}
.psny-guide-index a{color:var(--psny-ink);text-decoration:none;font-size:.8rem}
.psny-guide-intro{max-width:760px;line-height:2;color:var(--psny-muted)}
.psny-guide-materials{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:34px}
.psny-guide-materials a{display:block;color:inherit;text-decoration:none}
.psny-guide-materials img{display:block;width:100%;aspect-ratio:1;object-fit:cover;margin-bottom:22px}
.psny-guide-materials span{font-family:var(--psny-font-en);font-size:.7rem;color:var(--psny-accent)}
.psny-guide-materials h3,.psny-guide-advice h3{font-size:1.1rem;font-weight:400;line-height:1.6}
.psny-guide-materials p,.psny-guide-advice p,.psny-guide-fit p,.psny-guide-consult p{font-size:.88rem;line-height:2;color:var(--psny-muted)}
.psny-guide-note{font-size:.75rem;color:var(--psny-muted);line-height:1.9;margin-top:28px}
.psny-guide-advice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.psny-guide-fit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center}
.psny-guide-fit img{width:100%;max-width:447px;justify-self:center}
.psny-guide-fit .psny-guide-size{font-size:1.8rem;color:var(--psny-ink);line-height:1.8}
.psny-guide-size span{font-size:.75rem;color:var(--psny-muted)}
.psny-guide-fit a,.psny-guide-consult a{color:var(--psny-ink);text-underline-offset:6px;font-size:.85rem}
.psny-guide-consult{margin-top:80px;padding:40px;background:var(--psny-paper)}
.psny-guide-consult h2{font-size:1.6rem;font-weight:400}
@media(max-width:980px){.psny-guide-materials{grid-template-columns:repeat(2,minmax(0,1fr))}.psny-guide-advice{gap:24px}.psny-guide-fit{gap:30px}}
@media(max-width:760px){.psny-help-page-body .wp-block-post-content>.psny-guide-page{width:calc(100% - 32px)}.psny-guide-advice,.psny-guide-fit{grid-template-columns:1fr}.psny-guide-materials{gap:24px 16px}.psny-guide-materials h3{font-size:1rem}.psny-guide-consult{padding:28px 22px}.psny-guide-index{gap:16px 22px}}

/* Shopify series artwork includes lettering: display the complete image. */
.psny-home-series__card--collection-image { min-height: 0; background: var(--psny-paper); color: var(--psny-ink); }
.psny-home-series__card--collection-image img { height: auto; min-height: 0; aspect-ratio: 3 / 2; object-fit: contain; opacity: 1; }
.psny-home-series__card--collection-image:hover img { transform: none; opacity: 1; }
.psny-home-series__card--collection-image > span { position: static; display: block; padding: 18px 22px; background: none; }

/* Three price categories: a shared color masthead with scoped template spacing. */
.psny-price-label-body main.wp-block-group { margin-block-start: 0!important; padding: 0!important; }
.psny-price-label-body main.wp-block-group > .wp-block-group { margin-inline: 0!important; padding: 0!important; }
.psny-price-label-body .wp-block-post-content { margin-inline: 0!important; padding-inline: 0!important; }
.psny-price-label-page { width: 100%; max-width: none!important; }
.psny-label-hero { padding-block: clamp(28px,4vw,52px); background: var(--psny-linen-beige); color: var(--psny-ink); }
.psny-price-label-page--signature .psny-label-hero { background: #dde3dd; }
.psny-price-label-page--couture .psny-label-hero { background: var(--psny-deep-atelier); color: var(--psny-paper); }
.psny-label-hero__inner, .psny-label-products { width: min(1240px,calc(100% - 64px)); margin-inline: auto; }
.psny-label-hero .psny-breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 30px; color: inherit; font-size: .65rem; letter-spacing: .12em; }
.psny-label-hero .psny-breadcrumbs a { color: inherit; text-decoration: none; }
.psny-label-hero .psny-breadcrumbs a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.psny-label-hero .psny-mask-eyebrow { color: inherit; margin: 0 0 14px; font-size: .72rem; letter-spacing: .12em; }
.psny-label-hero h1 { margin: 0; color: inherit; font-family: var(--psny-font-en); font-size: clamp(2.8rem,5.5vw,5rem); font-weight: 400; line-height: 1.08; letter-spacing: -.025em; }
.psny-label-products { margin-top: clamp(28px,4vw,48px); }
@media(max-width:760px) { .psny-label-hero__inner, .psny-label-products { width: calc(100% - 32px); } .psny-label-hero .psny-breadcrumbs { margin-bottom: 24px; } }
/* Visual categories replace the primary price hierarchy. */
.psny-choose-body main.wp-block-group { margin-block-start:0!important; padding:0!important; }
.psny-choose-body main.wp-block-group > .wp-block-group, .psny-choose-body .wp-block-post-content { margin-inline:0!important; padding:0!important; }
.psny-choose-page { width:100%; max-width:none!important; }
.psny-choose-inner { width:min(1240px,calc(100% - 64px)); margin-inline:auto; }
.psny-choose-hero { padding-block:clamp(28px,4vw,52px); background:var(--psny-linen-beige); }
.psny-choose-page--pattern .psny-choose-hero { background:var(--psny-paper); }
.psny-choose-page--lace .psny-choose-hero { background:#dde3dd; }
.psny-choose-page--mode .psny-choose-hero { background:var(--psny-deep-atelier); color:var(--psny-paper); }
.psny-choose-hero .psny-breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:28px; font-size:.65rem; letter-spacing:.1em; }
.psny-choose-hero a { color:inherit; }
.psny-choose-hero h1 { margin:12px 0 20px; font-size:clamp(2.2rem,4.8vw,4.4rem); font-weight:400; line-height:1.2; }
.psny-choose-hero p { color:inherit; line-height:1.8; }
.psny-choose-content { padding-block:clamp(30px,5vw,64px) 80px; }
.psny-style-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin-top:30px; }
.psny-style-card { color:var(--psny-ink); background:var(--psny-paper); text-decoration:none; display:flex; flex-direction:column; }
.psny-style-card img { display:block; width:100%; aspect-ratio:1; object-fit:cover; }
.psny-style-card__copy { display:flex; flex:1; flex-direction:column; gap:12px; padding:24px; }
.psny-style-card small { font-family:var(--psny-font-en); letter-spacing:.1em; }
.psny-style-card strong { font-size:clamp(1rem,1.5vw,1.35rem); font-weight:400; }
.psny-style-card__copy > span { font-size:.8rem; line-height:1.9; }
.psny-style-card em { margin-top:auto; padding-top:8px; font-size:.75rem; font-style:normal; }
.psny-style-card:hover { box-shadow:inset 0 -2px var(--psny-accent); }
.psny-style-card:focus-visible, .psny-style-tabs a:focus-visible { outline:2px solid var(--psny-accent); outline-offset:4px; }
.psny-style-note { font-size:.78rem; color:var(--psny-muted); line-height:1.9; margin-block:24px; }
.psny-choose-series { margin-top:64px; padding-top:40px; border-top:1px solid var(--psny-line); scroll-margin-top:110px; }
.psny-style-tabs { display:flex; flex-wrap:wrap; gap:12px; }
.psny-style-tabs a { padding:12px 18px; border:1px solid var(--psny-line); color:var(--psny-ink); text-decoration:none; font-size:.82rem; }
.psny-style-tabs a[aria-current] { background:var(--psny-ink); color:var(--psny-paper); }
.psny-style-all { margin-top:36px; }
.psny-style-all a { color:var(--psny-ink); }
.psny-style-submenu { display:grid; gap:18px; }
.psny-series-product-card h2 { margin:0 18px 22px; font-size:.9rem; line-height:1.8; font-weight:400; }
@media(max-width:980px) { .psny-style-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .psny-choose-inner { width:calc(100% - 32px); } .psny-style-grid { gap:12px; } .psny-style-card__copy { padding:18px 14px; } }
@media(max-width:380px) { .psny-style-grid { grid-template-columns:1fr; } }

/* Shared purchase-first product layout, with a single heading in DOM order. */
.psny-product-page .psny-product-detail__hero { grid-template-areas:"gallery heading" "gallery purchase"; grid-template-rows:auto 1fr; row-gap:0; }
.psny-product-heading { grid-area:heading; min-width:0; }
.psny-product-heading h1 { margin:0 0 20px; font-size:clamp(1.5rem,2.3vw,2.35rem); font-weight:400; line-height:1.5; letter-spacing:.035em; }
.psny-product-gallery { grid-area:gallery; }
.psny-product-detail__purchase { grid-area:purchase; }
#product-purchase { scroll-margin-top:130px; }
.psny-purchase-jump { display:none; }
.psny-purchase-jump[hidden] { display:none!important; }
@media(max-width:980px) {
 .psny-product-page .psny-product-detail__hero { grid-template-areas:"heading" "gallery" "purchase"; grid-template-rows:auto auto auto; }
 .psny-product-heading { margin-bottom:24px; }
 .psny-purchase-jump { display:block; position:fixed; z-index:35; bottom:calc(14px + env(safe-area-inset-bottom)); left:50%; transform:translateX(-50%); white-space:nowrap; padding:14px 24px; background:var(--psny-ink); color:var(--psny-paper); text-decoration:none; font-size:.8rem; border:1px solid var(--psny-paper); }
 .psny-purchase-jump:focus-visible { outline:2px solid var(--psny-accent); outline-offset:4px; }
 .psny-product-page { padding-bottom:76px; }
}

.psny-product-heading>p:not(.psny-product-detail__label):not(.psny-product-detail__lead){color:var(--psny-muted);font-size:.86rem;line-height:2}

/* Compact same-series navigation below the purchase options. */
.psny-series-picker{margin-top:30px;padding-top:22px;border-top:1px solid var(--psny-line);min-width:0}
.psny-series-picker header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}
.psny-series-picker h2{font-size:.85rem!important;letter-spacing:.08em;margin:0!important;flex-shrink:0}
.psny-series-picker header a{font-size:.7rem;color:var(--psny-muted);text-align:right}
.psny-series-picker__items{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;padding:2px 2px 8px}
.psny-series-picker__items>a{flex:0 0 66px;min-width:0;text-align:center;text-decoration:none;scroll-snap-align:start;color:var(--psny-muted)}
.psny-series-picker__items img{display:block;box-sizing:border-box;width:100%;aspect-ratio:1;object-fit:cover;border:1px solid transparent;padding:3px}
.psny-series-picker__items [aria-current="page"] img{border-color:var(--psny-ink)}
.psny-series-picker__items span{display:block;font-family:var(--psny-font-en);font-size:.65rem;letter-spacing:.05em;margin-top:5px}
.psny-series-picker__items a:hover img{border-color:var(--psny-muted)}
.psny-series-picker__items a:focus-visible{outline:2px solid var(--psny-accent);outline-offset:-2px}
.psny-series-picker .psny-product-gallery__pager{gap:16px;margin-top:10px;font-size:.65rem}
.psny-series-picker .psny-product-gallery__pager button{width:36px;min-height:36px;font-size:1rem}
.psny-series-picker .psny-product-gallery__pager span{min-width:72px}

/* Product breadcrumbs: quiet, complete hierarchy with unbroken steps. */
.psny-product-detail>.psny-breadcrumbs{display:block;margin-bottom:20px;font-size:12px;line-height:1.7;letter-spacing:.035em;color:#656c68}
.psny-product-detail>.psny-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 0;list-style:none;margin:0;padding:0}
.psny-product-detail>.psny-breadcrumbs li{display:inline-flex;align-items:baseline;margin:0;white-space:nowrap}
.psny-product-detail>.psny-breadcrumbs li+li::before{content:"›";margin:0 9px;color:#8a908c}
.psny-product-detail>.psny-breadcrumbs a:hover{text-decoration:underline;text-underline-offset:3px}
.psny-product-detail>.psny-breadcrumbs a:focus-visible{outline:2px solid var(--psny-accent);outline-offset:3px}
.psny-product-detail>.psny-breadcrumbs [aria-current="page"]{color:var(--psny-ink)}
@media(max-width:600px){.psny-product-detail>.psny-breadcrumbs{margin-bottom:16px;font-size:11px;letter-spacing:.02em}.psny-product-detail>.psny-breadcrumbs li+li::before{margin:0 6px}}

/* Defined hit areas and short separators for the global navigation. */
@media(min-width:1000px){
 .psny-sitebar__nav{gap:0}
 .psny-sitebar__nav>a,.psny-sitebar__menu-label>a{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding:12px 16px;transition:background .25s ease,color .25s ease}
 .psny-sitebar__nav>a::after,.psny-sitebar__menu-label>a::after{display:none}
 .psny-sitebar__nav>a:not([data-track-id="header_01--link_07--contact"])::before{content:"";position:absolute;left:0;top:50%;height:12px;width:1px;background:rgba(255,255,255,.22);transform:translateY(-50%);pointer-events:none}
 .psny-sitebar__nav>a:is(:hover,:focus-visible),.psny-sitebar__menu-label>a:is(:hover,:focus-visible){background:rgba(255,255,255,.07);color:#fff}
 .psny-sitebar__menu-label{gap:0;padding-right:12px}
 .psny-sitebar__nav>a[data-track-id="header_01--link_07--contact"]{margin-left:14px;padding:12px 19px;border:1px solid rgba(255,255,255,.42);color:#fff}
 .psny-sitebar__nav>a[data-track-id="header_01--link_07--contact"]:is(:hover,:focus-visible){border-color:rgba(255,255,255,.8)}
}
@media(max-width:999px){
 .psny-sitebar__nav>a[data-track-id="header_01--link_07--contact"]{margin-top:20px;padding:16px 20px;border:1px solid rgba(255,255,255,.42);text-align:center;color:#fff}
}

/* Three compact, clearly named footer groups. */
.psny-mask-footer__main{grid-template-columns:minmax(180px,.85fr) minmax(0,2.15fr);gap:clamp(40px,5vw,80px)}
.psny-mask-footer__groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.psny-mask-footer__group{min-width:0;border-top:1px solid rgba(255,255,255,.22);padding-top:20px}
.psny-mask-footer__group h2{margin:0 0 18px;color:#fff;font-size:13px;font-weight:400;letter-spacing:.08em;line-height:1.7}
.psny-mask-footer__groups .psny-mask-footer__nav{display:flex;flex-direction:column;gap:2px}
.psny-mask-footer__groups .psny-mask-footer__nav a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;box-sizing:border-box;padding:10px 0;font-size:12px;line-height:1.8;letter-spacing:.035em}
.psny-mask-footer__groups .psny-mask-footer__nav a span{font-size:11px;color:rgba(255,255,255,.5)}
@media(max-width:999px){.psny-mask-footer__main{grid-template-columns:1fr;gap:40px}.psny-mask-footer__groups{gap:24px}}
@media(max-width:600px){.psny-mask-footer__groups{grid-template-columns:1fr;gap:28px}.psny-mask-footer__group h2{margin-bottom:10px}.psny-mask-footer__bottom{flex-direction:column;gap:16px}}

/* Shared page-top control: comfortable target, quiet outline. */
.psny-back-to-top{position:fixed;right:24px;bottom:24px;z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:56px;height:64px;padding:8px;border:1px solid #a7ada8;border-radius:2px;background:rgba(255,255,255,.96);color:#26332d;cursor:pointer;font:10px/1.2 sans-serif;letter-spacing:.12em;box-shadow:0 2px 12px rgba(28,40,33,.06)}
.psny-back-to-top[hidden]{display:none}
.psny-back-to-top:hover{background:#26332d;color:#fff;border-color:#26332d}
.psny-back-to-top:focus-visible{outline:2px solid #26332d;outline-offset:4px}
.psny-menu-open .psny-back-to-top{display:none}
@media(max-width:600px){.psny-back-to-top{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:48px;height:56px}}

/* Scroll entrance: animation only, content remains visible without JavaScript. */
@keyframes psny-scroll-enter{from{opacity:.01;translate:0 20px}to{opacity:1;translate:0 0}}
.psny-scroll-enter{animation:psny-scroll-enter .6s cubic-bezier(0,0,.3,1) both;animation-delay:var(--psny-reveal-delay,0ms)}
.psny-scroll-enter:focus-within{animation:none}
@media(prefers-reduced-motion:reduce){.psny-scroll-enter{animation:none!important}}
@media print{.psny-scroll-enter{animation:none!important}}

/* Language selector follows the PSNY brand site's shared treatment. */
.psny-language-bar{position:relative;z-index:30;width:100%;color:#fff;background:linear-gradient(90deg,#42cfc0 0%,#348f83 28%,#1f3c36 55%,#151a18 72%,#151a18 100%);border-bottom:1px solid rgba(255,255,255,.12)}
.psny-language-bar__inner{display:flex;justify-content:flex-end;padding:8px 4%;margin:0 auto;max-width:1440px;box-sizing:border-box}
.psny-language-switcher{position:relative;width:190px;font:300 12px/1 sans-serif}
.psny-language-switcher summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;min-height:34px;padding:2px 0 5px;border-bottom:1px solid rgba(255,255,255,.3);box-sizing:border-box}
.psny-language-switcher summary::-webkit-details-marker{display:none}
.psny-language-switcher summary:hover,.psny-language-switcher[open] summary{border-bottom-color:#42cfc0}
.psny-language-switcher summary:focus-visible,.psny-language-switcher__menu a:focus-visible{outline:2px solid #42cfc0;outline-offset:4px}
.psny-language-switcher__eyebrow{font:300 11px/1 Georgia,serif;letter-spacing:.13em;color:rgba(255,255,255,.62)}
.psny-language-switcher__current{font:300 12px/1 sans-serif;color:#fff}
.psny-language-switcher__mark{width:6px;height:6px;margin-left:auto;margin-right:3px;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:rotate(45deg)}
.psny-language-switcher[open] .psny-language-switcher__mark{transform:rotate(225deg)}
.psny-language-switcher__menu{position:absolute;top:100%;right:0;z-index:50;width:190px;box-sizing:border-box;list-style:none;margin:0;padding:6px;background:#151a18;border:1px solid rgba(255,255,255,.18);box-shadow:0 8px 20px rgba(0,0,0,.12)}
.psny-language-switcher__menu li{list-style:none;margin:0;padding:0}
.psny-language-switcher__menu a{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding:10px 12px;color:#fff;text-decoration:none;font:300 12px/1.4 sans-serif}
.psny-language-switcher__menu a:hover{background:rgba(255,255,255,.08);color:#42cfc0}
@media(max-width:760px){.psny-language-bar__inner{padding:8px 20px}.psny-language-switcher{width:174px}.psny-language-switcher__menu{width:174px}.psny-language-switcher summary{min-height:36px}}

/* Product code sits below the Japanese product name, matching zh-Hant. */
.psny-product-heading .psny-product-detail__code{margin:20px 0 0;font:13px/1.8 sans-serif;letter-spacing:.12em;color:var(--psny-ink,#202724)}

/* Direct purchase when product is not available on the Buy Button channel. */
.psny-product-purchase-link{display:block;padding:18px 24px;background:#2c302e;color:#fff;text-align:center;text-decoration:none;line-height:1.7}.psny-product-purchase-link:hover{background:#a8875f}.psny-product-purchase-link:focus-visible{outline:2px solid #a8875f;outline-offset:4px}
