html.drawer-open{overflow:hidden}dialog.drawer{background:var(--paper);width:min(520px,100vw);max-width:100vw;height:100dvh;max-height:none;color:var(--cocoa);border:0;margin:0;padding:0;inset:0 0 0 auto;box-shadow:-24px 0 48px #1b140f2e}dialog.drawer::backdrop{background:#1b140f7a}dialog.drawer[open]{animation:drawer-in .32s var(--ease)}@keyframes drawer-in{0%{transform:translate(100%)}}.drawer-panel{overscroll-behavior:contain;height:100%;padding:28px clamp(20px,6vw,48px) 40px;overflow-y:auto}.drawer-head{align-items:center;gap:12px;min-height:48px;margin-bottom:28px;display:flex}.drawer-title{font:400 clamp(26px, 3vw, 32px) / 1.1 var(--serif);letter-spacing:0;flex:1;margin:0}.drawer-title:focus{outline:none}.drawer-title:focus-visible{outline:3px solid var(--cocoa);outline-offset:4px}.drawer-close,.drawer-back{width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border:0;flex:none;padding:0;position:relative}.drawer-close{margin-right:-10px}.drawer-close:before,.drawer-close:after{content:"";background:currentColor;height:1.5px;position:absolute;top:50%;left:11px;right:11px;transform:rotate(45deg)}.drawer-close:after{transform:rotate(-45deg)}.drawer-back{margin-left:-12px}.drawer-back:before{content:"";border-bottom:1.5px solid;border-left:1.5px solid;width:11px;height:11px;position:absolute;top:16px;left:18px;transform:rotate(45deg)}.drawer-view[hidden]{display:none}.drawer-label{letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:600;display:block}.drawer-actions{gap:12px;margin-top:28px;display:grid}.drawer-actions .button{width:100%;min-height:54px}.drawer-actions .form-message:empty{display:none}.drawer-link{min-height:44px;color:inherit;font:600 12px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;text-underline-offset:7px;cursor:pointer;background:0 0;border:0;justify-self:center;padding:0;text-decoration:underline 1px}.services-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.services-list li{border-bottom:1px solid var(--line)}.services-item{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:6px;padding:20px 44px 20px 0;display:grid;position:relative}.services-item:after{content:"";width:9px;height:9px;transition:transform .2s var(--ease);border-top:1.5px solid;border-right:1.5px solid;position:absolute;top:50%;right:8px;transform:translateY(-50%)rotate(45deg)}.services-item:hover:after{transform:translate(3px,-50%)rotate(45deg)}.services-name{font:600 12px/1.2 var(--body);letter-spacing:.16em;text-transform:uppercase}.services-line{font:400 19px/1.3 var(--serif);color:var(--muted)}.service-body{color:var(--muted);font-size:15px;line-height:1.6}.service-body h3{color:var(--cocoa);letter-spacing:.16em;text-transform:uppercase;margin:26px 0 8px;font-size:11px;font-weight:600}.service-body p{margin:0 0 12px}.service-body .link-caps{color:var(--cocoa);margin-top:12px}.size-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.size-cell{min-height:52px;color:inherit;font:400 22px/1 var(--serif);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 4px;text-decoration:none;transition:border-color .16s;display:flex}.size-cell:hover{border-color:var(--line-strong)}.size-cell[aria-pressed=true]{border-color:var(--cocoa);background:var(--cocoa);color:var(--paper)}.size-unknown{border-color:var(--cocoa);font:400 18px/1.1 var(--serif);text-align:center;grid-column:span 2}.size-fit{font:400 19px/1.35 var(--serif);margin:22px 0 0}.size-help{border-top:1px solid var(--line);margin-top:26px;padding-top:24px}.size-help p:not(.drawer-label){margin:0 0 8px;font-size:15px}.size-help .drawer-label{margin-bottom:12px}.size-help .size-rule{color:var(--muted);margin-top:14px;font-size:13px;line-height:1.5}.engraving-ring{border-bottom:1px solid var(--line);grid-template-columns:72px 1fr auto;align-items:center;gap:16px;padding-bottom:22px;display:grid}.engraving-ring img{object-fit:cover;background:var(--plate);width:72px;height:72px}.engraving-ring p{margin:0}.engraving-ring-name{font:400 21px/1.15 var(--serif)}.engraving-ring-metal,.engraving-ring-price{color:var(--muted);font-size:13px}.engraving-styles{border:0;margin:24px 0 0;padding:0}.style-cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.style-card{border:1px solid var(--line-strong);cursor:pointer;justify-content:center;align-items:center;min-height:72px;display:flex;position:relative}.style-card:has(input:checked){border-color:var(--cocoa);box-shadow:inset 0 0 0 1px var(--cocoa)}.style-card:has(input:focus-visible){outline:3px solid var(--cocoa);outline-offset:3px}.style-card input{opacity:0;position:absolute}.style-block span{font:600 15px/1 var(--body);letter-spacing:.14em;text-transform:uppercase}.style-script span{font:italic 400 24px/1 var(--serif)}.engraving-field{margin-top:24px}.engraving-field input{border:1px solid var(--control-border);width:100%;min-height:52px;color:var(--cocoa);font:18px var(--body);letter-spacing:.04em;background:#fff;border-radius:0;padding:0 14px}.engraving-count,.engraving-rules{color:var(--muted);margin:8px 0 0;font-size:13px}.engraving-count{font-variant-numeric:tabular-nums}.engraving-rules{margin-top:2px}.engraving-preview{background:var(--paper-3);justify-items:center;gap:8px;margin-top:22px;padding:26px 16px 14px;display:grid;box-shadow:inset 0 6px 14px #2b1d141f,inset 0 -6px 14px #2b1d1414}.engraving-preview-text{min-height:1.2em;font:600 20px/1.2 var(--body);letter-spacing:.12em;color:#6e5634;overflow-wrap:anywhere;text-align:center}.engraving-preview-text.is-empty{color:var(--muted);font-weight:400}.engraving-preview-note{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px}.engraving-hint{font:400 18px/1.35 var(--serif);margin:16px 0 0}.engraving-note{color:var(--muted);text-align:center;margin:0;font-size:13px;line-height:1.5}@media (width<=600px){dialog.drawer{width:100vw;box-shadow:none}dialog.drawer-sheet{height:auto;max-height:90dvh;inset:auto 0 0;box-shadow:0 -16px 40px #1b140f33}dialog.drawer-sheet[open]{animation-name:sheet-in}.drawer-panel{padding:18px 20px 28px}.drawer-head{margin-bottom:18px}.drawer-sheet .drawer-panel{max-height:90dvh}.size-grid{gap:4px}.size-cell{min-height:46px;font-size:20px}.size-unknown{font-size:15px}}@keyframes sheet-in{0%{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){dialog.drawer[open],dialog.drawer-sheet[open]{animation:none}.services-item:after{transition:none}}
