.ftp{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(24px,4.5vw,68px);padding:36px clamp(16px,3vw,40px) 64px;max-width:1360px;width:100%;min-width:0;margin:0 auto}
.ftp>div{min-width:0;max-width:100%}
.ftp .stage{width:100%;max-width:100%}
.ftp .thumbs{width:100%;max-width:100%;min-width:0;overscroll-behavior-x:contain}
.ftp .info{min-width:0;overflow-wrap:anywhere}
.ftp .info form,.ftp .opt,.ftp .pills,.ftp .trust{min-width:0;max-width:100%}
.ftp details>div{min-width:0;max-width:100%;overflow-x:auto}
.ftp details img,.ftp details video,.ftp details iframe{max-width:100%;height:auto}
.ftp details table{max-width:100%}
.ft-product-page .ftp table[id="size-guide"]{display:none!important}
.ft-product-page .ftmore .row{grid-template-columns:repeat(4,minmax(0,1fr))}
.ft-product-page .ftmore .row>a{min-width:0;overflow-wrap:anywhere}
@media(max-width:900px){.ftp{grid-template-columns:minmax(0,1fr)}}
@media(max-width:800px){.ft-product-page .ftmore .row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.ft-product-page header .bar{height:auto;min-height:64px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;gap:12px}.ft-product-page header .tools{flex-wrap:wrap;max-width:100%;gap:12px}.ftp .buy{flex-wrap:wrap}.ftp .atc{min-width:0}.ftp .trust{grid-template-columns:repeat(3,minmax(0,1fr))}.ftp .trust div{padding:10px 6px}}
.ftp .stage{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:20px;perspective:1000px;background:radial-gradient(circle at var(--mx,50%) var(--my,36%),#f7f8fa 0%,#dfe2e7 42%,#a9aeb6 100%);box-shadow:0 30px 80px rgba(0,0,0,.45)}
.ftp .stage::before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.95),transparent 55%);animation:ftBreathe 6s ease-in-out infinite;pointer-events:none}
.ftp .stage::after{content:"";position:absolute;top:-10%;bottom:-10%;left:-30%;width:90px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),rgba(150,155,165,.5),transparent);transform:skewX(-14deg);animation:ftSweep 7s ease-in-out infinite;pointer-events:none;mix-blend-mode:overlay}
@keyframes ftBreathe{0%,100%{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1.06)}}
@keyframes ftSweep{0%,55%{left:-30%}100%{left:130%}}
.ftp .tilt{position:absolute;inset:6% 6% 12%;transition:transform .25s ease-out;transform-style:preserve-3d}
.ftp .sway{width:100%;height:100%;animation:ftFloat 6s ease-in-out infinite}
@keyframes ftFloat{0%,100%{transform:translateY(0) rotateY(-5deg)}50%{transform:translateY(-14px) rotateY(5deg)}}
.ftp .sway img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:opacity .25s ease;-webkit-user-drag:none;user-select:none}
.ftp .floor{position:absolute;left:50%;bottom:7%;width:56%;height:5%;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(0,0,0,.38),transparent 70%);filter:blur(6px);animation:ftShadow 6s ease-in-out infinite}
@keyframes ftShadow{0%,100%{transform:translateX(-50%) scale(1)}50%{transform:translateX(-50%) scale(.84);opacity:.7}}
.ftp .badge{position:absolute;left:16px;top:16px;z-index:3;background:#0a0a0b;color:#f1f1f2;font-size:12px;font-weight:600;letter-spacing:.06em;padding:7px 14px;border-radius:99px}
.ftp .thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto}
.ftp .th{flex:0 0 78px;aspect-ratio:1;border-radius:12px;border:2px solid transparent;background:radial-gradient(circle,#f1f2f4,#bfc3ca);padding:0;cursor:pointer;overflow:hidden}
.ftp .th img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;display:block}
.ftp .th[aria-pressed="true"]{border-color:var(--paper)}
.ftp h1{font-size:clamp(28px,3.6vw,44px);line-height:1.05;margin:0 0 12px}
.ftp .pills-top{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.ftp .chip{font-size:12px;border:1px solid var(--line);border-radius:99px;padding:5px 12px;color:var(--mute)}
.ftp .pricerow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.ftp .price{font-size:28px;font-weight:700}
.ftp .was{color:var(--mute);text-decoration:line-through;font-size:18px}
.ftp .save{background:var(--paper);color:var(--ink);font-size:12px;font-weight:700;border-radius:99px;padding:5px 12px}
.ftp .opt{margin-bottom:18px}
.ftp .olab{font-size:14px;color:var(--mute);margin-bottom:8px}.ftp .olab b{color:var(--text);font-weight:600}
.ftp .pills{display:flex;gap:8px;flex-wrap:wrap}
.ftp .pill{background:none;color:var(--text);border:1px solid var(--line);border-radius:12px;padding:11px 18px;font:inherit;font-size:14px;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}
.ftp .pill:hover{border-color:var(--silver)}.ftp .pill:active{transform:scale(.96)}
.ftp .pill[aria-pressed="true"]{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.ftp .buy{display:flex;gap:10px;margin:22px 0 14px}
.ftp .qty{display:flex;align-items:center;border:1px solid var(--line);border-radius:99px}
.ftp .qty button{background:none;border:0;color:var(--text);width:40px;height:48px;font-size:20px;cursor:pointer}
.ftp .qty input{width:38px;text-align:center;background:none;border:0;color:var(--text);font:inherit;padding:0}
.ftp .atc{flex:1;font-size:16px;padding:15px 24px}
.ftp .atc[disabled]{opacity:.5;cursor:not-allowed}
.ftp .trust{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 26px}
.ftp .trust div{border:1px solid var(--line);border-radius:12px;padding:12px;font-size:13px;color:var(--mute);text-align:center}
.ftp .trust b{display:block;color:var(--text);font-size:13px;margin-bottom:2px}
.ftp details{border-bottom:1px solid var(--line);padding:16px 0}
.ftp summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between}
.ftp summary::-webkit-details-marker{display:none}.ftp summary::after{content:"+";color:var(--mute)}.ftp details[open] summary::after{content:"\2013"}
.ftp details p,.ftp details div,.ftp details li{color:var(--mute);margin-top:10px;max-width:60ch}
.ftp table{width:100%;border-collapse:collapse;font-size:14px;margin-top:10px}.ftp th,.ftp td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}
.ftmore{max-width:1360px;margin:0 auto;padding:0 clamp(16px,3vw,40px) 72px}
.ftmore h2{margin-bottom:18px}
.ftmore .row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:800px){.ftmore .row{grid-template-columns:repeat(2,1fr)}}
.ftmore a{display:block}
.ftmore .im{aspect-ratio:4/5;border-radius:14px;background:radial-gradient(circle,#f1f2f4,#b9bdc4);overflow:hidden}
.ftmore .im img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .6s cubic-bezier(.2,.7,.1,1)}
.ftmore a:hover .im img{transform:scale(1.06)}
.ftmore .t{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-size:14px;font-weight:600}
.ftsticky{position:fixed;left:0;right:0;bottom:0;z-index:50;display:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(10,10,11,.96);border-top:1px solid var(--line);transform:translateY(100%);transition:transform .3s ease}
.ftsticky.show{transform:none}
@media(max-width:900px){.ftsticky{display:flex}}
.ftsticky b{font-size:18px}
.ftp .stage{perspective:none}
.ftp .stage::before,.ftp .stage::after{display:none}
.ftp .tilt{transform:none;transition:none;transform-style:flat}
.ftp .sway,.ftp .floor{animation:none}
.ftp .sway img{display:block;transform:none}
@media(prefers-reduced-motion:reduce){.ftp .stage::before,.ftp .stage::after,.ftp .sway,.ftp .floor{animation:none}}