.template-product main{padding-top:96px}.pdp{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,1fr);grid-template-areas:"slider buy" "more buy";column-gap:clamp(24px,4vw,72px);align-items:start}.pdp>.angles{grid-area:slider}.pdp>.buy{grid-area:buy}.pdp>.made{grid-area:more;padding-top:var(--s-7)}.angles{position:relative;min-width:0}.angles__viewport{contain:inline-size}.angles__viewport{position:relative;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;border-radius:var(--r-glass);padding:18px 0 8px;cursor:grab}.angles__viewport::-webkit-scrollbar{display:none}.angles__viewport.is-dragging{scroll-snap-type:none;cursor:grabbing}.angles__viewport:active{cursor:grabbing}.has-cursor .angles__viewport{cursor:grab}.angles__track{display:flex;gap:18px}.angles__track:before,.angles__track:after{content:"";flex:0 0 calc((100% - var(--slide-w, 82%)) / 2 - 18px)}.angle{flex:0 0 var(--slide-w, 82%);scroll-snap-align:center;scroll-snap-stop:always;display:grid;gap:var(--s-3);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;transition:opacity var(--d-medium) var(--ease-out),filter var(--d-medium) var(--ease-out),transform var(--d-medium) var(--ease-out)}.angle .portrait{aspect-ratio:1;border-radius:6px;box-shadow:0 40px 70px -40px #7a1a2a8c,0 0 0 1px #ffffffb3}.angle img{pointer-events:none;-webkit-user-drag:none}.angle:not(.is-current){opacity:.45;filter:blur(1.5px) saturate(.85);transform:scale(.94)}.angle__label{display:none;font-size:var(--t-label);font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);text-align:center}.angles__ui{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);margin-top:var(--s-4)}.angles__count{font-family:var(--f-display);font-size:1.35rem;min-width:5ch}.angles__count b{font-weight:400;color:var(--burgundy)}.angles__dots{display:flex;gap:6px}.angles__dots button{width:44px;height:44px;padding:0;border:0;background:none;cursor:pointer;display:grid;place-items:center}.angles__dots{gap:10px}.angles__dots button{width:56px;height:64px}.angles__dots span{position:relative;display:block;width:50px;height:50px;border-radius:14px;overflow:hidden;padding:3px;background:#ffffff8c;border:1px solid rgba(255,255,255,.95);box-shadow:0 8px 18px -12px #7a1a2a80,inset 0 1px #fff;opacity:.72;transition:transform var(--d-small) var(--ease-back),opacity var(--d-small),box-shadow var(--d-small)}.angles__dots img{width:100%;height:100%;object-fit:cover;border-radius:10px}.angles__dots button:hover span{opacity:1;transform:translateY(-2px)}.angles__dots button[aria-current=true] span{opacity:1;transform:translateY(-4px) scale(1.08);box-shadow:0 12px 22px -10px #7a1a2a99,0 0 0 2px var(--burgundy),inset 0 1px #fff}.angles__dots button[aria-current=true]:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:var(--burgundy);margin-top:58px}.angles__arrows{display:flex;gap:var(--s-2)}.angles__hint{position:absolute;top:34px;left:50%;transform:translate(-50%);z-index:3;pointer-events:none;transition:opacity .6s}.angles__hint.gone{opacity:0}.buy{position:sticky;top:96px;padding:clamp(24px,3vw,40px);display:grid;gap:var(--s-5)}.buy h1{font-size:clamp(2rem,3.2vw,2.9rem);line-height:1.06;letter-spacing:-.02em}.buy__price{display:flex;align-items:baseline;gap:var(--s-4);flex-wrap:wrap}.buy__price .now{font-family:var(--f-display);font-size:1.9rem}.buy__price .note{font-size:var(--t-small);color:var(--ink-3)}.buy__rating{display:flex;gap:var(--s-3);align-items:center;font-size:var(--t-small);color:var(--ink-2);text-decoration:none}.buy__rating .stars{color:var(--burgundy);letter-spacing:3px}.opt{display:grid;gap:var(--s-3);border:0;margin:0;padding:0}.opt legend{display:flex;justify-content:space-between;width:100%;font-size:var(--t-small);color:var(--ink-2);margin-bottom:var(--s-3);padding:0}.opt legend b{font-weight:500;color:var(--ink)}.linkish{background:none;border:0;padding:0;cursor:pointer;font-size:var(--t-small);color:var(--burgundy);text-decoration:underline;text-decoration-color:#7a1a2a59;text-underline-offset:.25em}.fit{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-2)}.fit label{position:relative}.fit input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.fit span{display:grid;gap:2px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.9);background:#ffffff73;box-shadow:inset 0 1px #fff;transition:all var(--d-small) var(--ease-out);font-size:var(--t-small)}.fit span b{font-weight:500;font-size:.95rem}.fit span small{color:var(--ink-3)}.fit .fee{font-style:normal;color:var(--burgundy);font-weight:500;margin-left:4px}.fit input:checked+span{background:#fff;border-color:var(--burgundy);box-shadow:0 12px 24px -14px #7a1a2a80,0 0 0 3px #f4b3c466}.fit input:focus-visible+span{outline:1.5px solid var(--burgundy);outline-offset:3px}.measure{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .6s var(--ease-out),opacity .4s}.measure.is-open{grid-template-rows:1fr;opacity:1}.measure__in{min-height:0;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3)}.measure .field label{font-size:13px}.measure .input{min-height:46px;border-radius:14px}.measure p{grid-column:1 / -1;font-size:13px;color:var(--ink-3)}.buy__row{display:grid;grid-template-columns:auto 1fr;gap:var(--s-2)}.qty{display:flex;align-items:center;border-radius:var(--r-pill);background:#ffffff8c;border:1px solid rgba(255,255,255,.9);box-shadow:inset 0 1px #fff}.qty button{width:44px;height:52px;border:0;background:none;cursor:pointer;font-size:1.1rem;color:var(--ink-2)}.qty input{width:32px;text-align:center;border:0;background:none;font-variant-numeric:tabular-nums;-moz-appearance:textfield}.qty input::-webkit-inner-spin-button{-webkit-appearance:none}.buy__assure{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-2);font-size:var(--t-small);color:var(--ink-2)}.buy__assure li{display:flex;gap:var(--s-3);align-items:center}.buy__assure svg{color:var(--burgundy)}.details{padding:var(--s-10) 0 var(--s-8);display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(32px,6vw,110px);align-items:start}.made h2{font-size:clamp(2rem,3.2vw,2.8rem);margin-bottom:var(--s-4)}.made p{color:var(--ink-2)}.anatomy{padding-block:var(--s-10) var(--s-8);max-width:calc(1100px + 2 * var(--gutter))}.anatomy__head{display:flex;justify-content:space-between;align-items:end;gap:var(--s-5);flex-wrap:wrap}.anatomy__head p{color:var(--ink-3)}.anatomy__grid{display:grid;grid-template-columns:1.55fr 1fr 1fr;grid-template-rows:1fr 1fr auto;gap:18px;margin-top:var(--s-7)}.anatomy__photo{grid-row:1 / 4;margin:0;padding:14px;display:grid;gap:var(--s-3);align-content:start}.anatomy__open{position:relative;display:block;width:100%;border:0;padding:0;background:none;cursor:zoom-in;border-radius:10px}.anatomy__open .portrait{aspect-ratio:1;border-radius:10px}.anatomy__open img{transition:transform var(--d-large, .9s) var(--ease-out)}.anatomy__open:hover img{transform:scale(1.035)}.anatomy__more{position:absolute;right:14px;bottom:14px;z-index:2}.anatomy__video{position:absolute;inset:0;z-index:1;opacity:0;transition:opacity .9s var(--ease-out);pointer-events:none}.anatomy__video.is-playing{opacity:1}.anatomy__video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity var(--fade, 1.2s) var(--ease-out)}.anatomy__video video.on{opacity:1}.anatomy__open:hover .anatomy__video video{transform:scale(1.035);transition:opacity var(--fade, 1.2s) var(--ease-out),transform .9s var(--ease-out)}.anatomy__more[hidden]{display:none}.anatomy__grid .spec{align-content:center}.anatomy__photo figcaption{padding:0 6px 4px}.spec{padding:var(--s-5);display:grid;gap:6px;align-content:start;transition:transform var(--d-small) var(--ease-out)}.spec:hover{transform:translateY(-4px)}.spec__ic{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:var(--burgundy);margin-bottom:var(--s-2);background:radial-gradient(circle at 35% 30%,#fff,#fff0f5b3 55%,#f4b3c473);border:1px solid #fff;box-shadow:0 8px 18px -10px #7a1a2a80,inset 0 -3px 8px #f4b3c480}.spec__ic svg{width:24px;height:24px}.spec__k{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.spec__v{font-family:var(--f-display);font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.15;color:var(--ink)}.spec--wide{grid-column:2 / 4;grid-template-columns:auto 1fr;gap:var(--s-4);align-items:start}.spec--wide .spec__ic{margin:0}.spec--wide p{color:var(--ink-2);font-size:var(--t-small);margin-top:4px}.acc--pair{grid-template-columns:1fr 1fr;align-items:start;margin-top:18px}.crafts{list-style:none;margin:var(--s-7) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-5) var(--s-4)}.crafts li{display:grid;justify-items:center;gap:var(--s-3);text-align:center;font-size:var(--t-small);color:var(--ink-2)}.crafts__ic{position:relative;width:68px;height:68px;border-radius:50%;display:grid;place-items:center;color:var(--burgundy);background:radial-gradient(circle at 35% 30%,#fff,#fff0f5b3 55%,#f4b3c473);border:1px solid rgba(255,255,255,.95);box-shadow:0 12px 26px -14px #7a1a2a8c,inset 0 -4px 10px #f4b3c480,inset 0 1px #fff;transition:transform var(--d-small) var(--ease-back)}.crafts__ic svg{width:30px;height:30px}.crafts li:hover .crafts__ic{transform:translateY(-4px) rotate(-6deg)}.acc{display:grid;gap:var(--s-3)}.acc details{padding:0 var(--s-6);border-radius:var(--r-glass)}.acc summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);padding:var(--s-5) 0;cursor:pointer;font-family:var(--f-display);font-size:1.35rem}.acc summary::-webkit-details-marker{display:none}.acc summary svg{transition:transform var(--d-small) var(--ease-out);color:var(--burgundy)}.acc details[open] summary svg{transform:rotate(45deg)}.acc .body{padding:0 0 var(--s-5);color:var(--ink-2);display:grid;gap:var(--s-3)}.acc ul{margin:0;padding-left:1.1em;display:grid;gap:6px}.acc ul li::marker{color:var(--gold)}.specs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-2)}.specs div{padding:var(--s-3) var(--s-4);border-radius:12px;background:#ffffff73}.specs dt{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.specs dd{margin:2px 0 0;color:var(--ink)}.reviews{padding:var(--s-9) 0}.reviews__top{display:grid;grid-template-columns:auto 1fr auto;gap:var(--s-7);align-items:center;padding:var(--s-6) var(--s-7);margin:var(--s-6) 0 var(--s-5)}.score{font-family:var(--f-display);font-size:4.6rem;line-height:1}.score small{display:block;font-family:var(--f-body);font-size:var(--t-small);color:var(--ink-3);margin-top:var(--s-2)}.bars{display:grid;gap:6px;max-width:360px;font-size:13px;color:var(--ink-2)}.bars div{display:grid;grid-template-columns:30px 1fr 24px;gap:var(--s-3);align-items:center}.bars i{display:block;height:6px;border-radius:6px;background:linear-gradient(90deg,var(--burgundy) var(--w),transparent var(--w))}.rev-grid{columns:3 280px;column-gap:18px}.rev{break-inside:avoid;margin:0 0 18px;padding:24px;display:grid;gap:var(--s-3)}.rev .stars{color:var(--burgundy);letter-spacing:3px;font-size:13px}.rev h3{font-size:1.15rem}.rev p{color:var(--ink-2);font-size:.98rem}.rev .pic{border-radius:10px;aspect-ratio:4/3}.rev .by{font-size:13px;color:var(--ink-3)}.rev .by b{font-weight:500;color:var(--ink)}.related{padding:var(--s-8) 0 var(--s-10)}.related .grid{margin-top:var(--s-6)}.modal{position:fixed;left:50%;top:50%;z-index:calc(var(--z-drawer) + 2);width:min(760px,calc(100vw - 24px));max-height:calc(100svh - 32px);overflow:auto;padding:clamp(24px,4vw,44px);transform:translate(-50%,-46%) scale(.97);opacity:0;visibility:hidden;filter:blur(6px);transition:transform var(--d-medium) var(--ease-out),opacity var(--d-small),filter var(--d-medium),visibility 0s linear var(--d-medium)}.modal.is-open{transform:translate(-50%,-50%);opacity:1;visibility:visible;filter:none;transition-delay:0s}.modal__head{display:flex;justify-content:space-between;align-items:start;gap:var(--s-4);margin-bottom:var(--s-5)}.unit{display:inline-flex;padding:4px;border-radius:var(--r-pill);background:#ffffff80;border:1px solid rgba(255,255,255,.9)}.unit button{border:0;background:none;padding:8px 16px;border-radius:var(--r-pill);cursor:pointer;font-size:var(--t-small);color:var(--ink-2)}.unit button[aria-pressed=true]{background:var(--ink);color:var(--pearl)}.sg-table{width:100%;border-collapse:collapse;font-size:var(--t-small);margin:var(--s-4) 0 var(--s-5);font-variant-numeric:tabular-nums}.sg-table th{text-align:left;font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);padding:0 var(--s-3) var(--s-3)}.sg-table td{padding:10px var(--s-3)}.sg-table tbody tr:nth-child(odd) td{background:#ffffff73}.sg-table tbody tr td:first-child{border-radius:10px 0 0 10px}.sg-table tbody tr td:last-child{border-radius:0 10px 10px 0}.sg-table tr.is-match td{background:#fff;color:var(--burgundy);box-shadow:inset 0 0 0 1px #7a1a2a40}.sg-find{display:grid;grid-template-columns:1fr auto;gap:var(--s-2);align-items:end}.sg-out{font-size:var(--t-small);color:var(--ink-2);min-height:1.6em;margin-top:var(--s-2)}.sg-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-3);margin-top:var(--s-5)}.sg-steps div{padding:var(--s-4);border-radius:14px;background:#ffffff73;font-size:13px;color:var(--ink-2)}.sg-steps b{display:block;font-family:var(--f-display);font-weight:400;font-size:1.1rem;color:var(--ink);margin-bottom:4px}.lightbox{position:fixed;inset:0;z-index:calc(var(--z-drawer) + 2);display:grid;place-items:center;padding:24px;visibility:hidden;opacity:0;transition:opacity var(--d-small),visibility 0s linear var(--d-small)}.lightbox.is-open{visibility:visible;opacity:1;transition-delay:0s}.lightbox__frame{position:relative;width:min(88vmin,860px);padding:14px;border-radius:22px;transform:scale(.94);transition:transform var(--d-medium) var(--ease-out)}.lightbox.is-open .lightbox__frame{transform:none}.lightbox__frame img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.lightbox__bar{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding:0 4px}.lightbox .close{position:absolute;top:-18px;right:-18px;z-index:3}.dock{position:fixed;left:12px;right:12px;bottom:12px;z-index:var(--z-header);display:none;grid-template-columns:1fr auto;gap:var(--s-3);align-items:center;padding:10px 10px 10px 20px;border-radius:var(--r-pill);transform:translateY(140%);transition:transform var(--d-medium) var(--ease-out)}.dock.show{transform:none}.dock b{font-family:var(--f-display);font-weight:400;display:block;font-size:1rem;line-height:1.2}.dock span{font-size:13px;color:var(--ink-2)}@media(max-width:960px){main{padding-top:80px}.pdp{grid-template-columns:minmax(0,1fr);grid-template-areas:"slider" "buy" "more"}.buy{position:static}.angles{--slide-w: 86%}.angles__arrows{display:none}.angles__dots{gap:4px}.angles__dots button{width:48px;height:58px}.angles__dots span{width:42px;height:42px;border-radius:12px}.angles__dots button[aria-current=true]:after{margin-top:52px}.anatomy__grid{grid-template-columns:1fr 1fr;grid-template-rows:none;gap:10px}.anatomy__photo{grid-column:1 / -1;grid-row:auto}.spec--wide{grid-column:1 / -1}.acc--pair{grid-template-columns:1fr}.made{padding-top:var(--s-8)}.reviews__top{grid-template-columns:1fr;gap:var(--s-5);padding:var(--s-5)}.sg-steps,.sg-find{grid-template-columns:1fr}.modal__head{flex-wrap:wrap-reverse}.modal__head>div:last-child{width:100%;justify-content:space-between}.dock{display:grid}.acc details{padding:0 var(--s-5)}}.buy__desc{color:var(--ink-2);font-size:var(--t-small);line-height:1.65;max-height:6.6em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,transparent);mask-image:linear-gradient(#000 60%,transparent)}.buy__desc.is-open{max-height:none;-webkit-mask-image:none;mask-image:none}.buy__desc+.linkish{justify-self:start;margin-top:-8px}.buy__form{display:grid;gap:var(--s-5)}.buy__app:empty{display:none}.pdp .choice span{min-width:52px}.reviews__app{margin-top:var(--s-6)}.linkish{display:inline-block;padding-block:11px;margin-block:-11px}.qty input{height:44px}@media(max-width:380px){.angles__count{display:none}.angles__dots button{width:42px}.angles__dots span{width:38px;height:38px}}
