:root{--ink:#272622;--mute:#8c8a84;--gold:#9a793f;--border:#e8e5dd;--cream:#f6f5f1;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}
button,a{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}
.wrap{width:min(1340px,calc(100% - 96px));margin-left:auto;margin-right:auto}
.announcement{background:#302f2c;color:#dedbd3;text-align:center;padding:10px 12px;font-size:9px;letter-spacing:2px;font-weight:600}.announcement .sep{margin:0 24px;color:#b89b6e}
.nav{height:96px;display:flex;align-items:center;justify-content:space-between;gap:36px;border-bottom:1px solid var(--border)}.brand{font:32px var(--serif);letter-spacing:6px;line-height:.9;color:#3b3428;display:flex;flex-direction:column;white-space:nowrap}.brand span{font:8px var(--sans);font-weight:600;letter-spacing:3.8px;text-align:center;padding-top:12px;color:var(--gold)}.nav nav{display:flex;gap:34px;padding-left:80px}.nav nav a{font-size:12px;color:#4b4b48;transition:color .15s}.nav nav a:hover{color:var(--gold)}.nav-right{display:flex;align-items:center;gap:24px;font-size:25px}.searchIcon{font-size:31px;transform:rotate(-20deg)}.bag{border:0;background:transparent;position:relative;font-size:25px;padding:4px}.bag b{position:absolute;top:0;right:-7px;font-size:9px;background:var(--gold);color:white;width:16px;height:16px;display:grid;place-items:center;border-radius:50%}.breadcrumb{font-size:9px;letter-spacing:1.35px;font-weight:600;color:#918e85;padding-top:31px;padding-bottom:29px}.breadcrumb span{padding:0 13px;color:#c3bdaf}.breadcrumb strong{color:#5b554c;font-weight:500}
.product-area{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.78fr);gap:7%;padding-bottom:85px;align-items:start}.viewer-shell{position:relative;height:680px;overflow:hidden;background:radial-gradient(ellipse at 50% 38%,#fff 0%,#f9f7f2 43%,#efece4 100%);border:1px solid #f0eee8}.viewer-shell:after{content:"";position:absolute;z-index:0;left:19%;bottom:88px;right:19%;height:40px;background:radial-gradient(ellipse,#b4a58f33,transparent 68%);pointer-events:none}
.viewer-top{position:absolute;top:25px;left:26px;right:26px;z-index:3;display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.75px;font-weight:700;color:#806a47}.glass{background:#ffffffcf;padding:12px 15px;border:1px solid #eee8df}.demo-label{font-size:9px;letter-spacing:1.4px;color:#967e55;font-weight:700}
.scene{position:absolute;inset:0;z-index:1;touch-action:pan-y;cursor:grab}.scene:active{cursor:grabbing}.scene canvas{width:100%;height:100%;display:block}.photo-stage{position:absolute;z-index:1;inset:70px 55px 100px;display:flex;justify-content:center;align-items:center}.photo-stage[hidden]{display:none}.photo-stage img{max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply}
.viewer-tools{position:absolute;z-index:5;top:84px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:flex-start}.viewSwitch{background:#ffffffda;padding:4px;border:1px solid #eee9df;display:flex;gap:3px}.viewSwitch button{border:0;background:transparent;padding:10px 14px;color:#8a8272;font-size:9px;font-weight:700;letter-spacing:1px}.viewSwitch button.selected{color:#2b2a26;background:#ece5d7}.floatingBtns{display:flex;flex-direction:column;gap:7px}.floatingBtns button{border:1px solid #e8e5dc;background:#ffffffdd;font-size:21px;line-height:1;width:38px;height:38px;display:grid;place-items:center;color:#5d5549;transition:background .2s}.floatingBtns button:hover{background:white}
.viewer-bottom{position:absolute;bottom:26px;left:28px;right:28px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px}.viewer-bottom button{border:1px solid #d9ceb9;padding:12px 15px;background:#fff9;font-size:9px;font-weight:700;letter-spacing:1.2px;color:#827151}.viewer-bottom button.rotating{background:#b39561;color:white}.rotate-symbol{font-size:15px;margin-right:5px}.drag-caption{font-size:9px;letter-spacing:1px;color:#9a9181;font-weight:600}
.three-images-head{display:flex;justify-content:space-between;align-items:end;padding:29px 0 18px}.three-images-head p{color:#929088;font-size:12px;margin:8px 0 0}.three-images-head small{color:#9d998e;font-size:11px}
.angle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.angle-card{padding:0;border:1px solid #ece9e3;background:#faf9f6;text-align:left;transition:border-color .2s,transform .2s}.angle-card:hover,.angle-card.active{border-color:#aa8c54;transform:translateY(-2px)}.angle-img{height:152px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle,#fff,#f3f0e9)}.angle-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.angle-info{background:white;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;color:#676053;font-size:9px;letter-spacing:1.2px;font-weight:700}.angle-info b{font-size:18px;font-weight:400}
.info-column{padding-top:5px}.edition{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:var(--gold);font-weight:700;margin-bottom:22px}.edition span:last-child{color:#aaa398}.info-column h1{font:52px/1.17 var(--serif);margin:0;letter-spacing:-1.1px;color:#302e29;font-weight:400}.info-column h1 em{font-style:normal;color:var(--gold)}.tagline{font:italic 17px var(--serif);color:#9e8f78;margin:16px 0 21px}.rating{display:flex;gap:12px;align-items:center}.rating span:first-child{color:#b39359;letter-spacing:3px;font-size:13px}.rating b{font-size:12px;font-weight:600}.rating .reviews{color:#98958d;font-size:12px}.price-row{display:flex;gap:18px;align-items:center;padding:27px 0 22px;margin-top:27px;border-top:1px solid var(--border)}.price-row strong{font:30px var(--serif);font-weight:500}.price-row span{font-size:9px;letter-spacing:1.4px;color:#adaba5;font-weight:600}.description{font-size:13px;line-height:2;color:#807e78;max-width:450px;margin:0 0 31px}
.option{margin-top:25px}.option-title{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.4px;font-weight:700;margin-bottom:15px}.option-title span{color:#958a79;font-weight:500;letter-spacing:0;font-size:12px}.option-title .guide{font-size:10px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.metal-options{display:flex;gap:9px;flex-wrap:wrap}.metal-options button{border:1px solid #dfddd7;background:white;color:#817d76;display:flex;align-items:center;gap:8px;padding:11px 12px;font-size:11px}.metal-options button.active{color:#6a532e;border-color:#af9055;background:#fcfaf6}.metal-options i{display:inline-block;width:16px;height:16px;border-radius:50%;border:1px solid #ffffffa8;box-shadow:0 0 0 1px #dedbd3}
.size-option{margin-top:27px}.sizes{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.sizes button{background:white;color:#666058;border:1px solid #e5e2d9;padding:12px;font-size:11px}.sizes button.active,.sizes button:hover{border-color:var(--gold);background:#f7f2e8;color:var(--gold)}.selection-note{font-size:11px;color:#7f8679;padding:23px 0 17px}.stock-dot{display:inline-block;width:6px;height:6px;background:#7b9273;border-radius:50%;margin-right:7px}
.add-cart{background:#9d7d49;border:1px solid #9d7d49;color:white;width:100%;padding:19px 22px;text-align:center;font-size:11px;font-weight:700;letter-spacing:1.7px;position:relative;transition:background .2s}.add-cart span{position:absolute;right:22px;font-size:18px;top:13px}.add-cart:hover{background:#785c30}.outline-btn{margin-top:10px;width:100%;padding:16px 18px;border:1px solid #a6916b;background:white;font-size:10px;font-weight:700;color:#82683e;letter-spacing:1.4px}
.benefits{margin-top:36px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-bottom:34px;border-bottom:1px solid var(--border)}.benefits>div{display:flex;gap:8px;align-items:flex-start}.benefits>div>span{font-size:28px;line-height:1;color:#a0875c}.benefits p{margin:0;display:flex;flex-direction:column;gap:7px}.benefits b{font-size:10px;white-space:nowrap;font-weight:600}.benefits small{font-size:9px;color:#a8a39a;line-height:1.4}
.accordion details{border-bottom:1px solid var(--border)}.accordion summary{list-style:none;display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:19px 0;font-size:10px;letter-spacing:1.3px;font-weight:700}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-size:17px;color:#a8a398;font-weight:400}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{margin:0 0 22px;color:#8c8881;font-size:12px;line-height:1.9}
.story{background:#292a26;color:#f5f1e9;text-align:center;padding:90px 20px}.story-inner>span{font-size:10px;letter-spacing:3px;color:#b7a37e}.story h2{font:48px/1.2 var(--serif);font-weight:400;margin:24px 0}.story h2 i{color:#b59a6c;font-weight:400}.story p{font-size:12px;letter-spacing:.2px;color:#bcb8af}
.demo-disclosure{margin-top:24px;margin-bottom:28px;display:flex;gap:14px;align-items:flex-start;padding:18px 21px;border:1px solid #e8e2d4;background:#fcfaf6}.disclosure-icon{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:50%;border:1px solid var(--gold);color:var(--gold);font-family:Georgia;font-style:italic}.demo-disclosure p{margin:0;font-size:11px;color:#837d71;line-height:1.8}.demo-disclosure strong{color:#6d624c}
footer{padding-top:24px;padding-bottom:38px;display:flex;align-items:center;justify-content:space-between}footer>span:last-child{font-size:9px;letter-spacing:1.5px;color:#aaa397}.footer-brand{font-size:21px}.footer-brand span{font-size:6px;letter-spacing:2.4px;padding-top:8px}
.toast{position:fixed;right:23px;bottom:23px;z-index:50;opacity:0;pointer-events:none;background:#2d2c28;color:white;padding:16px 20px;box-shadow:0 8px 35px #0002;font-size:12px;transition:opacity .2s}.toast.shown{opacity:1}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.nav nav{padding-left:0;gap:16px}.product-area{gap:4%;grid-template-columns:minmax(0,1fr) minmax(330px,1fr)}.viewer-shell{height:590px}.info-column h1{font-size:43px}.angle-img{height:120px}.benefits{grid-template-columns:1fr;gap:20px}}
@media(max-width:1050px){.announcement{font-size:8px;letter-spacing:1px}.announcement .sep{margin:0 8px}.wrap{width:calc(100% - 28px)}.nav{height:76px}.nav nav,.searchIcon,.account{display:none}.brand{font-size:25px}.nav-right{gap:6px}.breadcrumb{font-size:8px;white-space:nowrap;overflow:hidden;padding:20px 0}.breadcrumb span{padding:0 6px}.product-area{display:block;padding-bottom:35px}.viewer-shell{height:min(118vw,560px)}.viewer-top{top:16px;left:14px;right:14px}.viewer-tools{top:66px;left:13px;right:13px}.viewer-bottom{left:14px;right:14px;bottom:14px}.glass{padding:10px 12px}.viewer-bottom button{font-size:8px;padding:10px}.drag-caption{font-size:7px;max-width:140px;text-align:right;line-height:1.5}.angle-grid{gap:8px}.angle-img{height:105px}.angle-info{padding:11px 8px;font-size:8px}.three-images-head{padding:20px 0 13px}.info-column{padding-top:42px}.edition{font-size:8px}.info-column h1{font-size:44px}.price-row{margin-top:22px}.benefits{grid-template-columns:repeat(3,1fr);gap:10px}.benefits>div{display:block}.benefits>div>span{display:block;margin-bottom:8px}.benefits b{white-space:normal}.story{padding:67px 15px}.story h2{font-size:40px}footer>span:last-child{font-size:7px;max-width:135px;line-height:2;text-align:right}}
@media(max-width:380px){.info-column h1{font-size:37px}.metal-options button{font-size:9px;padding:8px}.viewer-shell{height:460px}.viewSwitch button{padding:8px 9px;font-size:8px}.floatingBtns button{width:32px;height:32px}.drag-caption{display:none}.angle-img{height:85px}}

/* Sapphire ring video-backed 360° viewer */
.sapphire-viewer{background:#f7f7f6;isolation:isolate}
.sapphire-viewer::after{display:none}
.video-wrap{position:absolute;inset:0;z-index:1;overflow:hidden;cursor:grab;touch-action:pan-y;background:#f7f7f6}
.video-wrap[hidden]{display:none!important}
.video-wrap.grabbing,.gesture-overlay.grabbing{cursor:grabbing}
#spinVideo{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .16s ease-out;pointer-events:none}
.gesture-overlay{position:absolute;inset:0;z-index:2;touch-action:pan-y;cursor:grab}
.viewer-top,.viewer-tools,.viewer-bottom{pointer-events:none}
.viewer-top>*,.viewer-tools>*,.viewer-bottom>*{pointer-events:auto}
.pulse{display:inline-block;width:5px;height:5px;background:#9eaf80;border-radius:50%;margin-right:5px;vertical-align:middle}
.sapphire-photo{inset:75px 16px 100px;overflow:hidden}
.sapphire-photo img{width:100%;height:100%;mix-blend-mode:normal;object-fit:contain;transition:transform .2s;transform-origin:center}
.sapphire-bottom{bottom:23px}
.sapphire-bottom button{backdrop-filter:blur(10px)}
.sapphire-viewer .demo-label{color:#756b58}
.sapphire-viewer .glass{background:#fff9}
.timeline-control{display:flex;gap:12px;align-items:center;padding:17px 14px 4px;transition:opacity .2s}
.timeline-control span{font-size:10px;color:#958c7d;font-weight:700;min-width:28px}
.timeline-control span:last-child{text-align:right}
.timeline-control input{appearance:none;-webkit-appearance:none;background:#dcd9d1;height:2px;flex:1;outline:0;cursor:pointer}
.timeline-control input::-webkit-slider-thumb{-webkit-appearance:none;width:13px;height:13px;background:#9d7d49;border:3px solid #fff;box-shadow:0 0 0 1px #9d7d49;border-radius:50%}
.timeline-control input::-moz-range-thumb{width:8px;height:8px;background:#9d7d49;border:3px solid #fff;box-shadow:0 0 0 1px #9d7d49;border-radius:50%}
.sapphire-price strong{font-size:27px}
.demo-caveat{font-size:10px;line-height:1.6;color:#aaa095;margin:11px 0 0}
.angle-img{background:#f5f5f4}
.angle-img img{mix-blend-mode:normal}
.sapphire-viewer .viewSwitch{background:#ffffffeb}
@media(max-width:750px){
.sapphire-viewer{height:min(115vw,590px)}
.sapphire-photo{inset:75px 10px 82px}
.sapphire-bottom{bottom:14px}
.timeline-control{padding:16px 8px 2px}
.sapphire-price strong{font-size:24px}
.gesture-overlay{touch-action:pan-y}
}
