:root{--paper:#f6f0e8;--ink:#111;--acid:#edf13c;--pink:#e7a0d5}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 "DM Sans",sans-serif}.shop-header{min-height:76px;padding:12px 4vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #cfc7bc}.logo{font:28px "Archivo Black",sans-serif;letter-spacing:-2px;color:inherit;text-decoration:none}.header-tools{display:flex;align-items:center;gap:12px}.language-switch,.currency-switch{display:flex;align-items:center;gap:5px;border:1px solid;padding:6px 9px;border-radius:999px;font:bold 8px sans-serif}.language-switch button,.currency-switch button{border:0;background:none;color:#777;font:inherit;cursor:pointer}.language-switch button.active,.currency-switch button.active{color:#111;text-decoration:underline;text-underline-offset:3px}.header-actions{justify-self:end;display:flex;gap:18px;align-items:center;font:bold 9px sans-serif}.header-actions a{color:inherit;text-decoration:none}.shop-intro{padding:90px 5vw 70px;background:var(--acid);display:grid;grid-template-columns:1fr 3fr 1fr;align-items:end}.shop-intro>p{font-size:9px;font-weight:700;letter-spacing:.18em}.shop-intro h1{margin:0;font:clamp(65px,9vw,135px)/.8 "Archivo Black",sans-serif;letter-spacing:-.07em}.shop-intro>div{font:25px/1.05 "Gochi Hand",cursive}.product-grid{display:grid;grid-template-columns:repeat(2,1fr)}.product-card{display:grid;grid-template-columns:58% 42%;min-height:560px;border-bottom:1px solid #111}.product-card:nth-child(odd){border-right:1px solid #111}.product-visual{min-height:560px;background-image:url("https://conistudio.watson.jp/SANDIA/assets/photos/gloss-collection-gel.png");background-size:400% 100%;background-repeat:no-repeat}.shade-1{background-position:0 0}.shade-2{background-position:33.333% 0}.shade-3{background-position:66.666% 0}.shade-4{background-position:100% 0}.product-info{padding:42px 28px;display:flex;flex-direction:column;align-items:flex-start}.product-info>span{font:bold 11px sans-serif}.product-info h2{margin:8px 0 25px;font:clamp(27px,3vw,45px)/.9 "Archivo Black",sans-serif;letter-spacing:-.05em}.product-info p{min-height:72px;margin:0 0 30px}.price{margin-top:auto;font-size:18px}.product-info button{width:100%;margin-top:20px;padding:15px;border:1px solid #111;background:#111;color:#fff;font:bold 9px sans-serif;cursor:pointer;transition:.2s}.product-info button:hover{background:var(--pink);color:#111}.demo-note{margin:0;padding:35px 5vw;text-align:center;font-size:10px;border-bottom:1px solid #cfc7bc}.toast{position:fixed;z-index:10;left:50%;bottom:25px;transform:translate(-50%,120px);padding:14px 22px;background:#111;color:#fff;font-size:10px;transition:.35s}.toast.show{transform:translate(-50%,0)}footer{padding:38px 5vw;background:#111;color:#fff;display:flex;justify-content:space-between;align-items:center}footer span{font:22px "Archivo Black",sans-serif}footer small{font-size:8px}@media(max-width:850px){.shop-header{grid-template-columns:1fr auto}.header-tools{grid-row:2;grid-column:1/-1;margin-top:10px;justify-content:space-between}.header-actions{grid-column:2;grid-row:1}.shop-intro{padding:65px 6vw 55px;display:block}.shop-intro h1{margin:18px 0 28px;font-size:16vw}.product-grid{grid-template-columns:1fr}.product-card{grid-template-columns:56% 44%;min-height:430px;border-right:0!important}.product-visual{min-height:430px}.product-info{padding:28px 18px}.product-info h2{font-size:7vw}.product-info p{font-size:12px}.product-info button{padding:13px 7px}footer{align-items:flex-start;flex-direction:column;gap:15px}footer span{font-size:18px}}@media(max-width:480px){.product-card{grid-template-columns:1fr}.product-visual{min-height:0;height:115vw}.product-info{min-height:320px}.product-info h2{font-size:11vw}.product-info p{min-height:0}.currency-switch{gap:2px}}

/* Product image and responsive title refinements */
.shop-intro>div{justify-self:end;text-align:right;transform:translateX(1.5vw)}.product-card{grid-template-columns:48% 52%;min-height:500px}.product-visual{min-height:500px;background-size:400% auto}.shade-1{background-position:0 center}.shade-2{background-position:33.333% center}.shade-3{background-position:66.666% center}.shade-4{background-position:100% center}@media(max-width:850px){.shop-intro h1{font-size:12.5vw}.shop-intro>div{justify-self:auto;text-align:left;transform:none}.product-card{grid-template-columns:48% 52%;min-height:380px}.product-visual{min-height:380px}}@media(max-width:480px){.product-card{grid-template-columns:1fr}.product-visual{height:80vw;min-height:0}}

/* Each product uses its own exact crop, preventing adjacent shades from bleeding in. */
.product-visual{background-size:cover;background-position:center;background-repeat:no-repeat}
.shade-1{background-image:url("assets/photos/shade-nude-sun.png?v=2")}
.shade-2{background-image:url("assets/photos/shade-coral-breeze.png?v=2")}
.shade-3{background-image:url("assets/photos/shade-berry-crush.png?v=2")}
.shade-4{background-image:url("assets/photos/shade-golden-hour.png?v=2")}

/* Slightly zoom each exact crop so no neighboring color can remain at the edges. */
.product-visual{background-size:cover;background-position:center}

/* Display the complete portrait sample exactly at its native 444:887 ratio. */
.product-card{min-height:0}
.product-visual{width:100%;height:auto!important;min-height:0!important;aspect-ratio:444/887;background-size:100% 100%;background-position:center}

/* Real image elements preserve the native portrait ratio in every browser. */
img.product-visual{display:block;width:100%;height:auto!important;min-height:0!important;aspect-ratio:auto;object-fit:contain;align-self:start}

/* Equal square images with a 7px beige frame overlaid on top of each photo. */
.product-image-frame{position:relative;align-self:start;width:100%;aspect-ratio:1/1;padding:0;background:#f6f0e8;line-height:0;box-sizing:border-box;overflow:hidden}
.product-image-frame::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;box-shadow:inset 0 0 0 7px #f6f0e8}
img.product-visual{display:block;width:100%;height:100%!important;border:0;outline:0;object-fit:cover;object-position:center;clip-path:none}

/* Product-page-only scope. The home page does not load this stylesheet. */
body.products-page{background:var(--paper);color:var(--ink)}
body.products-page *{box-sizing:border-box}

/* Product-page-only hover/focus reveal. */
.product-card{scroll-margin-top:24px}
.product-image-frame::before{content:attr(data-hover);position:absolute;z-index:3;inset:auto 7px 7px;min-height:72px;padding:18px 20px;display:flex;align-items:center;background:rgba(17,17,17,.88);color:#fff;font:12px/1.35 "Archivo Black",sans-serif;letter-spacing:-.02em;opacity:0;transform:translateY(14px);transition:opacity .3s ease,transform .3s ease;pointer-events:none}
.product-image-frame:hover::before,.product-image-frame:focus-visible::before,.product-image-frame.is-active::before{opacity:1;transform:none}
.product-image-frame:focus-visible{outline:3px solid #111;outline-offset:-3px}
.product-image-frame img{transition:transform .45s ease}
.product-image-frame:hover img,.product-image-frame:focus-visible img,.product-image-frame.is-active img{transform:scale(1.025)}
@media(max-width:850px){.product-image-frame::before{font-size:10px;min-height:60px;padding:14px 15px}}
@media(prefers-reduced-motion:reduce){.product-image-frame::before,.product-image-frame img{transition:none}.product-image-frame:hover img,.product-image-frame:focus-visible img,.product-image-frame.is-active img{transform:none}}
