/* MASS Jewellers workshop catalog — scoped WS selectors to avoid affecting designer. */
:root{--ws-ink:#25352c;--ws-gold:#a48452;--ws-muted:#65716b;--ws-line:#e4dfd6;--ws-paper:#fff;--ws-soft:#f6f3ed}
.ws-hero{background:radial-gradient(circle at 88% 25%,#e7decf 0,#f5f2eb 42%,#faf8f4 78%);border-top:1px solid #e7e2d9}
.ws-hero-inner{padding-top:76px;padding-bottom:68px}.ws-kicker,.ws-eyebrow{font-size:12px;letter-spacing:.22em;color:#997448;font-weight:800}
.ws-hero h1{font-family:Georgia,serif;font-weight:400;line-height:1.09;letter-spacing:-.045em;font-size:clamp(3.1rem,7vw,6.8rem);margin:22px 0 20px;color:#26372d}.ws-hero h1 em{font-weight:400;color:#a37e4b}
.ws-lead{max-width:690px;font-size:clamp(1.04rem,2vw,1.33rem);line-height:1.7;color:#4e5c54}.ws-hero-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:28px}.ws-ghost{color:#364e3f;font-weight:650;text-underline-offset:6px}
.ws-hero-meta{display:flex;flex-wrap:wrap;gap:15px;margin-top:47px;font-size:12px;color:#68766c;letter-spacing:.06em}.ws-hero-meta span+span:before{content:'✦';color:#ae986e;margin-right:15px}
.ws-main{padding-top:70px;padding-bottom:100px}.ws-heading-row{display:flex;align-items:end;justify-content:space-between;gap:28px;margin:15px 0 34px}.ws-heading-row h2{font-size:clamp(2.2rem,5vw,3.4rem);font-weight:400;letter-spacing:-.035em;margin:0 0 8px}.ws-heading-row p{max-width:685px;color:#647069;line-height:1.75;margin:0}.ws-quote{display:inline-flex;white-space:nowrap;gap:10px;color:#836438;font-weight:700;border-bottom:1px solid #b6a17f;padding:12px 0}
.ws-search-label{font-weight:700;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#314137}.ws-search-wrap{margin-top:10px;display:flex;align-items:center;background:#fff;border:1px solid #d3cbbd;padding:0 17px;max-width:640px;height:58px;gap:10px}.ws-search-wrap>span{font-size:26px;color:#927449}.ws-search-wrap input{width:100%;border:none;outline:none;background:transparent;color:#27382d;font-size:1rem;min-width:0}.ws-search-wrap:focus-within{outline:2px solid #846b45;outline-offset:2px}.ws-search-wrap button{border:0;background:none;color:#725832;cursor:pointer;text-decoration:underline}.ws-tools{padding:23px;background:#f8f6f2;border:1px solid #e7e0d6}
#ws-tabs{display:flex;gap:8px;margin-top:21px;overflow-x:auto;padding:0 0 10px;scrollbar-width:thin}#ws-tabs button{border:1px solid #d9cbb6;border-radius:28px;padding:11px 17px;background:white;color:#39483d;white-space:nowrap;cursor:pointer;font-size:13px;font-weight:600}#ws-tabs button[aria-selected=true]{background:#25372d;color:#fff;border-color:#25372d}#ws-tabs button:focus-visible,.ws-info:focus-visible,.ws-dialog-close:focus-visible,.ws-dialog-dismiss:focus-visible{outline:3px solid #bb8542;outline-offset:3px}
.ws-status{font-size:13px;color:#687467;min-height:24px;margin:22px 0 8px}.ws-section{margin-top:30px;border:1px solid #e6e0d6;background:white;padding:clamp(17px,3vw,35px)}.ws-section-top{display:flex;gap:20px;justify-content:space-between;align-items:start}.ws-section-number{font-size:12px;letter-spacing:.19em;color:#a58558;font-weight:800}.ws-section h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(1.65rem,4vw,2.45rem);letter-spacing:-.035em;margin:9px 0 6px;color:#28382e}.ws-section-sub{font-size:15px;color:#68736b;margin:0 0 20px;line-height:1.5}.ws-section-note{font-size:13px;line-height:1.65;color:#776b5b;background:#f7f2e9;border-left:3px solid #bc965e;padding:13px;margin-top:21px}.ws-table{width:100%;border-collapse:collapse;table-layout:fixed}.ws-table thead th{padding:14px 9px;background:#f8f6f1;color:#677264;text-align:right;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.ws-table thead th:first-child{text-align:left}.ws-table tr{border-bottom:1px solid #e8e4dd}.ws-table tbody tr:last-child{border-bottom:0}.ws-table td{padding:18px 9px;font-size:15px;color:#25372e;vertical-align:middle}.ws-table td:not(:first-child){text-align:right;font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums}.ws-table th:first-child{width:56%}.ws-table.ws-matrix th:first-child{width:46%}.ws-table.ws-matrix th:not(:first-child){width:18%}.ws-service-name{display:flex;gap:12px;align-items:center}.ws-service-name>span{font-weight:600;line-height:1.4}.ws-info{width:26px;height:26px;flex:0 0 26px;border:1px solid #b8a17f;border-radius:50%;color:#82633f;background:#fbf9f4;cursor:help;font-family:Georgia,serif;font-weight:bold;line-height:1;font-size:14px}.ws-info:hover,.ws-info:focus{background:#2a3b30;color:#fff;border-color:#2a3b30}.ws-empty{text-align:center;padding:56px;color:#65716b}
.ws-hover-tip{position:fixed;max-width:min(330px,calc(100vw - 28px));background:#27382f;color:#fff;padding:13px 16px;border-radius:6px;z-index:1200;pointer-events:none;box-shadow:0 12px 32px #1114;font-size:13px;line-height:1.5;white-space:normal}.ws-hover-tip[hidden]{display:none}.ws-hover-tip strong{display:block;color:#edddb9;margin-bottom:4px}
.ws-dialog{max-width:min(540px,calc(100% - 32px));width:100%;border:1px solid #b8ab94;box-shadow:0 24px 100px #0006;padding:30px;background:#fff;color:#27392f}.ws-dialog::backdrop{background:rgba(15,28,21,.63)}.ws-dialog-top{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:11px;font-weight:bold;letter-spacing:.17em;color:#a07d4b}.ws-dialog-close{background:transparent;border:1px solid #ddd0be;border-radius:50%;width:35px;height:35px;font-size:23px;cursor:pointer}.ws-dialog h2{font:normal clamp(1.7rem,4vw,2.4rem) Georgia,serif;line-height:1.25;letter-spacing:-.025em;margin:22px 0 16px}.ws-dialog p{font-size:15px;line-height:1.7;color:#536159}.ws-dialog-prices{border-top:1px solid #e4ded2;border-bottom:1px solid #e4ded2;padding:15px 0;margin-top:24px}.ws-dialog-prices span{display:inline-block;margin:3px 16px 3px 0;font-weight:700;font-size:15px}.ws-dialog .ws-dialog-caveat{font-size:12px;color:#85735e}.ws-dialog-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px;align-items:center}.ws-dialog-dismiss{border:0;background:transparent;color:#42564a;cursor:pointer;padding:10px 15px}
.ws-note{margin-top:45px;padding:27px 29px;border:1px solid #dcc8a5;background:#f8f2e9;color:#4f503d;line-height:1.65}.ws-note strong{font-size:16px}.ws-note p{margin:10px 0 0}.ws-cta{display:flex;justify-content:space-between;align-items:center;gap:32px;margin:70px 0 0;background:#24352c;color:#fff;padding:34px 38px}.ws-cta h2{font:normal clamp(1.5rem,3vw,2.4rem) Georgia,serif;color:#fff;margin:12px 0}.ws-cta p{max-width:600px;line-height:1.7;color:#d5d8d0}.ws-cta .button{flex-shrink:0}.ws-cta .ws-eyebrow{color:#d0b585}
@media(max-width:700px){.ws-hero-inner{padding-top:50px;padding-bottom:46px}.ws-heading-row,.ws-cta{flex-direction:column;align-items:stretch}.ws-main{padding-top:45px;padding-bottom:50px}.ws-table{table-layout:auto}.ws-table td{padding:16px 5px;font-size:13px}.ws-table th:first-child{min-width:130px}.ws-table.ws-matrix td:not(:first-child){font-size:12px}.ws-service-name{gap:7px}.ws-service-name>span{font-size:13px}.ws-info{width:27px;height:27px;flex:0 0 27px}.ws-section{padding:14px}.ws-note{padding:20px}.ws-cta{padding:25px}.ws-dialog{padding:22px}}
@media(prefers-reduced-motion:reduce){.ws-hover-tip{transition:none}}

.ws-extra{padding-top:30px;padding-bottom:90px}.ws-extra h2{font-size:clamp(2rem,4vw,3.1rem);font-weight:400;letter-spacing:-.035em;margin:12px 0 28px}.ws-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:75px}.ws-process-step{background:#f7f4ee;border:1px solid #e5ded2;padding:25px}.ws-process-step>span{font-size:11px;font-weight:750;color:#9f7950;letter-spacing:.16em}.ws-process-step h3{font-size:18px;margin:15px 0 9px;color:#293b32}.ws-process-step p{color:#607066;line-height:1.65;font-size:14px;margin:0}.ws-faq{max-width:900px}.ws-faq details{border-bottom:1px solid #ded8ce;padding:0}.ws-faq summary{cursor:pointer;font-weight:650;padding:22px 45px 22px 0;position:relative;list-style:none}.ws-faq summary::-webkit-details-marker{display:none}.ws-faq summary::after{content:'+';position:absolute;right:12px;font-size:21px;top:17px;color:#927348}.ws-faq details[open] summary::after{content:'−'}.ws-faq details p{color:#667469;line-height:1.75;margin:0 0 22px;max-width:780px}.ws-faq-end{margin-top:29px}
@media(max-width:700px){.ws-process-grid{grid-template-columns:1fr;gap:11px;margin-bottom:55px}.ws-extra{padding-bottom:58px}.ws-info{width:36px;height:36px;flex-basis:36px;cursor:pointer}.ws-section{padding:12px}.ws-table td{padding:14px 4px}.ws-table.ws-matrix th:first-child{min-width:119px}}
