/* King & Pauper: responsive single-frame fullscreen garment slideshows.
   All three founding shirts use this one layout. */
.kp-slideshow-page{
 width:100%;
 max-width:none;
 height:calc(100dvh - 94px);
 min-height:340px;
 margin:0;
 background:#090909;
 overflow:hidden;
}
.kp-slideshow{
 width:100%;
 height:100%;
 position:relative;
 background:#090909;
 isolation:isolate;
 overflow:hidden;
}
.kp-slide{
 position:absolute;
 inset:0;
 display:flex;
 align-items:center;
 justify-content:center;
 margin:0;
 opacity:0;
 visibility:hidden;
 pointer-events:none;
 background:#090909;
 transition:opacity .24s ease,visibility .24s ease;
}
.kp-slide.is-active{
 opacity:1;
 visibility:visible;
 pointer-events:auto;
 z-index:1;
}
.kp-slide>img{
 width:100%;
 height:100%;
 display:block;
 object-fit:contain;
 object-position:center center;
}
.kp-slide-arrow{
 position:absolute;
 z-index:4;
 top:50%;
 transform:translateY(-50%);
 border:1px solid rgba(221,198,155,.23);
 border-radius:50%;
 padding:0;
 width:46px;
 height:46px;
 display:grid;
 place-items:center;
 background:rgba(0,0,0,.45);
 color:#f4e5ce;
 font:300 35px/1 Georgia,serif;
 cursor:pointer;
 -webkit-tap-highlight-color:transparent;
 touch-action:manipulation;
}
.kp-slide-arrow:hover,.kp-slide-arrow:focus-visible{
 border-color:#e7c892;background:rgba(22,19,16,.90);
}
.kp-slide-arrow--prev{left:max(10px,env(safe-area-inset-left))}
.kp-slide-arrow--next{right:max(10px,env(safe-area-inset-right))}
.kp-slide-dots{
 position:absolute;
 z-index:4;
 left:50%;
 bottom:max(15px,env(safe-area-inset-bottom));
 transform:translateX(-50%);
 display:flex;
 align-items:center;
 justify-content:center;
 gap:2px;
 border-radius:24px;
 background:rgba(0,0,0,.45);
 padding:3px 7px;
}
.kp-slide-dot{
 width:30px;
 height:30px;
 border:0;
 background:transparent;
 padding:0;
 display:grid;
 place-items:center;
 cursor:pointer;
}
.kp-slide-dot::before{
 content:"";
 width:6px;
 height:6px;
 background:#bdb4a5;
 border-radius:999px;
 transition:width .18s ease,background .18s ease;
}
.kp-slide-dot.is-active::before{width:19px;background:#dfbd82}
.kp-slide-dot:focus-visible{outline:2px solid #e2bd7c;outline-offset:-3px}
.kp-slide--concept .luxury-art{
 display:block;
 width:100%;
 height:100%;
 min-height:0;
 aspect-ratio:auto;
 overflow:hidden;
}
.kp-slide--concept .kp-concept-badge,
.kp-slide--concept .kp-art-numeral{display:none!important}
body.page-product:has(#kpProductSlideshow) .site-footer{display:none!important}
@media(max-width:670px){
 .kp-slideshow-page{
  height:calc(100dvh - 74px - 69px - env(safe-area-inset-bottom));
  min-height:320px;
 }
 .kp-slide-arrow{width:42px;height:42px;font-size:31px;background:rgba(0,0,0,.38)}
 .kp-slide-arrow--prev{left:8px}
 .kp-slide-arrow--next{right:8px}
 .kp-slide-dots{bottom:12px}
}
@media(max-height:600px){
 .kp-slideshow-page{min-height:220px}
}
@media(prefers-reduced-motion:reduce){
 .kp-slide,.kp-slide-dot::before{transition:none!important}
}

@media(max-width:670px){.kp-slide:not(.kp-slide--concept)>img{object-fit:cover;object-position:center top}}

.kp-purchase-section{background:radial-gradient(ellipse at 12% 0%,#30241955,transparent 42%),#0a0a0a;color:#f4e9dc;border-top:1px solid #c4a16d55;padding:clamp(42px,6vw,90px) 22px 140px}
.kp-purchase-inner{max-width:1060px;margin:auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(310px,.76fr);align-items:start;gap:clamp(28px,5vw,90px)}
.kp-purchase-kicker{font:600 10px/1.5 var(--sans);letter-spacing:.23em;color:#d8b980}
.kp-purchase-copy h1{font:400 clamp(58px,7vw,102px)/.98 var(--display),Georgia,serif;color:#f8ecde;margin:14px 0 26px;letter-spacing:-.025em}
.kp-purchase-copy h2{font:400 clamp(27px,3.5vw,42px)/1.15 var(--display),Georgia,serif;color:#e9c791;margin:0 0 20px}
.kp-purchase-copy>p{font:400 15px/1.9 var(--sans);color:#d4c8ba;max-width:565px;margin:0}
.kp-purchase-highlights{display:flex;gap:8px;flex-wrap:wrap;margin-top:31px}
.kp-purchase-highlights span{font:600 9px/1.3 var(--sans);letter-spacing:.1em;color:#ddc8aa;padding:8px 11px;border:1px solid #c1a47455}
.kp-purchase-box{padding:clamp(23px,3.5vw,35px);border:1px solid #c6a67588;background:linear-gradient(145deg,#24201c,#101010 60%);box-shadow:0 24px 65px #0006}
.kp-purchase-price{display:flex;align-items:end;justify-content:space-between;gap:13px;padding-bottom:22px;border-bottom:1px solid #bf9b6444}
.kp-purchase-price>span{font:600 9px/1.5 var(--sans);letter-spacing:.11em;color:#d4bca0;max-width:140px}
.kp-purchase-price strong{font:400 clamp(26px,3vw,33px)/1 var(--display),Georgia,serif;color:#f0d3a1;white-space:nowrap}
.kp-purchase-size-label{font:600 10px/1.5 var(--sans);letter-spacing:.16em;color:#e8d1b2;margin:24px 0 12px}
.kp-purchase-sizes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 23px}
.kp-purchase-sizes .size-chip{min-width:0;min-height:48px;border:1px solid #725636;border-radius:0;background:#191513;color:#f0dfcc;font:600 13px/1 var(--sans);cursor:pointer}
.kp-purchase-sizes .size-chip.selected{background:linear-gradient(120deg,#f1d8a2,#c89a61);color:#17100b;border-color:#f0cc91;font-weight:700}
.kp-purchase-sizes .size-chip:focus-visible{outline:2px solid #eac783;outline-offset:3px}
.kp-buy-now{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:15px 20px;border:1px solid #efd09c;background:linear-gradient(110deg,#f1d6a1,#d3a266);font:700 12px/1.3 var(--sans);letter-spacing:.19em;color:#1c130c;cursor:pointer}
.kp-buy-now span{font-size:19px}
.kp-buy-now:disabled{opacity:.67;cursor:not-allowed}
.kp-buy-now:not(:disabled):hover{background:#ffe7bb}
.kp-buy-status{font:400 11px/1.6 var(--sans);color:#cbb79b;margin:13px 0 0}
.kp-purchase-disclosure{font:400 10px/1.7 var(--sans);color:#b4a491;border-top:1px solid #b69a6735;margin:15px 0 0;padding-top:12px}
@media(max-width:740px){.kp-purchase-section{padding:40px 20px calc(116px + env(safe-area-inset-bottom))}.kp-purchase-inner{grid-template-columns:1fr;gap:31px}.kp-purchase-copy h1{font-size:clamp(55px,13vw,76px);margin:11px 0 21px}.kp-purchase-copy h2{font-size:clamp(27px,7vw,38px);margin-bottom:12px}.kp-purchase-copy>p{font-size:14px;line-height:1.8}.kp-purchase-highlights{gap:6px;margin-top:23px}.kp-purchase-highlights span{font-size:8px}.kp-purchase-box{padding:23px 20px}}

/* Founding Collection V51: photographic Sakura hero, no three-item search clutter. */
.kp-founding-gallery .kp-collection-heading{margin-bottom:25px}
.kp-founding-gallery .kp-collection-heading h1{max-width:720px}
.kp-founding-gallery .kp-cards{margin-top:0}
.kp-sakura-collection-card .kp-card-visual{position:relative;overflow:hidden;background:#15202a}
.kp-sakura-card-images{position:relative;width:100%;height:100%;overflow:hidden;background:#151b20}
.kp-sakura-card-images>img{display:block;position:absolute;object-fit:cover;border:0}
.kp-sakura-card-front{inset:0;width:100%;height:100%;object-position:center 17%;transition:transform .4s ease}
.kp-sakura-card-back{right:9px;bottom:9px;width:32%;height:44%;object-position:center top;border:2px solid #d5b47c!important;box-shadow:0 9px 25px #000b;background:#161616}
.kp-sakura-collection-card .kp-card-visual:hover .kp-sakura-card-front{transform:scale(1.045)}
.kp-sakura-collection-card .kp-card-type{letter-spacing:.1em;line-height:1.5}
.kp-founding-gallery .kp-collection-foot{border-top:1px solid #9e784d44;padding-top:25px}
@media(max-width:670px){
 .kp-founding-gallery .kp-collection-heading{margin-bottom:21px}
 .kp-founding-gallery .kp-collection-heading h1{font-size:clamp(32px,8.5vw,49px);line-height:1.04}
 .kp-sakura-card-back{width:37%;height:36%;right:5px;bottom:5px;border-width:1px!important}
 .kp-sakura-card-front{object-position:center 13%}
 .kp-sakura-collection-card .kp-card-content h3{font-size:clamp(23px,6vw,38px);overflow-wrap:anywhere}
}


/* V56 mobile conversion bar: always visible above the fixed mobile dock on founding product pages. */
.kp-product-quickbar{display:none}
@media (max-width:670px){
  body.page-product .kp-product-quickbar{
    display:block!important;
    position:fixed;left:0;right:0;
    bottom:calc(65px + env(safe-area-inset-bottom));
    z-index:27;padding:7px 10px 9px;
    background:linear-gradient(180deg,rgba(13,13,13,.97),rgba(7,7,7,.99));
    border-top:1px solid #80613d;border-bottom:1px solid #4d3925;
    box-shadow:0 -12px 35px rgba(0,0,0,.55);
    backdrop-filter:blur(12px)
  }
  .kp-quick-size-row{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:7px}
  .kp-quick-size-label{font:700 8px/1 var(--sans);letter-spacing:.16em;color:#bda98e;margin-right:2px}
  .kp-quick-size{min-width:34px;height:27px;padding:0 8px;border:1px solid #5e4933;background:#141210;color:#d7c7b2;font:700 10px/1 var(--sans)}
  .kp-quick-size.selected{border-color:#e0ba78;background:#d4aa68;color:#160f09}
  .kp-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .kp-quick-actions button{min-height:43px;padding:7px 8px;font:800 9px/1.25 var(--sans);letter-spacing:.07em}
  .kp-quick-actions button span{display:block;margin-top:2px;font-size:8px;letter-spacing:.02em;opacity:.88}
  .kp-quick-add{border:1px solid #e6c17f;background:linear-gradient(110deg,#efd397,#c99a5e);color:#17100a}
  .kp-quick-combo{border:1px solid #b99562;background:#17130f;color:#f0d6a9}
  .kp-quick-actions button:active{transform:translateY(1px)}
  body.page-product .kp-purchase-section{padding-bottom:calc(205px + env(safe-area-inset-bottom))}
  body.page-product .site-footer{padding-bottom:190px}
}


/* V57 swipe discovery cue: make multi-photo behavior unmistakable on every founding shirt. */
.kp-slide-dots-wrap{
 position:absolute;z-index:6;left:50%;bottom:max(14px,env(safe-area-inset-bottom));
 transform:translateX(-50%);
 display:flex;flex-direction:column;align-items:center;gap:5px;
 pointer-events:none;
}
.kp-slide-dots-wrap .kp-slide-dots{
 position:static;left:auto;bottom:auto;transform:none;
 pointer-events:auto;
}
.kp-swipe-hint{
 display:flex;align-items:center;justify-content:center;gap:6px;
 padding:5px 9px;border-radius:999px;
 background:rgba(0,0,0,.58);border:1px solid rgba(224,188,126,.30);
 color:#f0dfc4;font:700 8px/1 var(--sans);letter-spacing:.12em;
 white-space:nowrap;text-shadow:0 1px 2px #000;
}
.kp-swipe-arrow{color:#e2bd7b;font-size:12px;letter-spacing:0}
@media(max-width:670px){
 body.page-product .kp-slide-dots-wrap{
  position:fixed;
  left:50%;
  bottom:calc(65px + env(safe-area-inset-bottom) + 113px);
  z-index:29;
 }
 body.page-product .kp-slide-dots{
  padding:3px 8px;background:rgba(0,0,0,.62);
  border:1px solid rgba(224,188,126,.20)
 }
 body.page-product .kp-swipe-hint{
  background:rgba(8,8,8,.78);
  box-shadow:0 5px 18px rgba(0,0,0,.35);
 }
}


/* V58 collector scarcity treatment */
.kp-collector-strip{display:inline-flex;align-items:center;margin:0 0 14px;padding:7px 10px;border:1px solid rgba(231,194,130,.42);background:linear-gradient(90deg,rgba(84,57,28,.32),rgba(23,18,13,.55));color:#f0d7aa;font:700 9px/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase}
.kp-purchase-copy h2{max-width:720px}
.kp-purchase-copy>p{font-size:15px;line-height:1.85;color:#ded0bf}
.kp-purchase-highlights span{background:rgba(211,165,99,.07)}
@media(max-width:670px){.kp-collector-strip{font-size:7px;letter-spacing:.11em;margin-bottom:10px;padding:6px 8px}.kp-purchase-copy>p{font-size:14px;line-height:1.75}}

/* Founding shirt photography in mobile bag; replaces obsolete concept artwork. */
.kp-bag-art{overflow:hidden;}
.kp-bag-art .kp-bag-product-photo{display:block;width:100%;height:100%;min-height:100%;object-fit:cover;object-position:center top;border-radius:inherit;}

/* Founding collection editorial: real designs instead of placeholder monogram */
.story-visual.kp-founding-editorial{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;align-items:stretch;padding:5px!important;overflow:hidden;background:#090909!important;min-height:360px;position:relative}
.story-visual.kp-founding-editorial::before,.story-visual.kp-founding-editorial::after{content:none!important;display:none!important}
.story-visual.kp-founding-editorial img{display:block;width:100%;height:100%;min-height:350px;object-fit:cover;object-position:center;filter:contrast(1.04);border:0}
@media(max-width:700px){.story-visual.kp-founding-editorial{min-height:270px;max-height:380px;gap:3px;padding:3px!important}.story-visual.kp-founding-editorial img{min-height:265px;max-height:375px;object-fit:cover}}
