#sh-collection {
  --shcb-charcoal:#282b2b;
  --shcb-rose:#b47b76;
  --shcb-blush:#d9aea7;
  --shcb-ivory:#f8f6f3;
  --shcb-muted:#716b67;
  --shcb-border:#e3dad4;
  --shcb-sans:Lato,Arial,sans-serif;
  --shcb-serif:"Stolen Hearts Serif",Georgia,serif;
  position:relative;
  isolation:isolate;
  padding:58px 0 0;
  margin:0;
  scroll-margin-top:90px;
  background:var(--shcb-ivory);
  color:var(--shcb-charcoal);
  text-align:left;
  font:400 15px/1.6 var(--shcb-sans);
  -webkit-font-smoothing:antialiased;
}
#sh-collection *, #sh-collection *::before, #sh-collection *::after { box-sizing:border-box; }
#sh-collection [hidden] { display:none!important; }
#sh-collection img { max-width:100%; margin:0; }
#sh-collection button, #sh-collection a { -webkit-tap-highlight-color:transparent; }
#sh-collection button { margin:0; font:400 13px/1.5 var(--shcb-sans); letter-spacing:normal; text-transform:none; text-shadow:none; animation:none!important; }
/* Contain the legacy theme's button margins and decorative overlays. */
#sh-collection button:not(.shcb-dot)::after { display:none; }
#sh-collection button:focus-visible, #sh-collection a:focus-visible, #sh-collection summary:focus-visible, #sh-collection [tabindex="0"]:focus-visible { outline:2px solid #75524e!important; outline-offset:4px; }
#sh-collection .shcb-section-wave { position:absolute; z-index:1; top:-59px; left:0; display:block; width:100%; height:60px; overflow:visible; fill:var(--shcb-ivory); pointer-events:none; }
#sh-collection .shcb-app, #sh-collection .shcb-builder { position:relative; width:100%; min-width:0; background:var(--shcb-ivory); }

/* A quiet introduction, continuous with the surrounding homepage. */
#sh-collection .shcb-intro { position:relative; padding:20px 7% 38px; text-align:center; }
#sh-collection .shcb-intro-copy { position:relative; z-index:1; width:min(100%,700px); margin:0 auto; }
#sh-collection .shcb-kicker { margin:0 0 12px; color:#85675f; font-size:10px; font-weight:500; letter-spacing:.2em; text-transform:uppercase; }
#sh-collection .shcb-intro h2 { margin:0 0 14px; color:var(--shcb-charcoal); font:400 clamp(38px,4.2vw,56px)/1.06 var(--shcb-serif)!important; letter-spacing:-.025em; text-transform:none; }
#sh-collection .shcb-intro-copy > p:not(.shcb-kicker) { max-width:660px; margin:0 auto; color:#69625e; font-size:14px; line-height:1.7; }
#sh-collection .shcb-intro-divider { display:block; width:48px; height:1px; margin:23px auto 0; background:#ca8d86; }
#sh-collection .shcb-handwritten { font:400 31px/1.1 "Dancing Script","Segoe Script",cursive; color:#bc817c; }
#sh-collection .shcb-intro-accent { position:absolute; top:46%; right:max(5%,calc((100% - 1440px)/2)); width:140px; margin:0; text-align:center; transform:translateY(-50%) rotate(-8deg); }
#sh-collection .shcb-intro-accent > span { display:block; margin-top:2px; font-size:34px; }
#sh-collection .shcb-intro-accent .sh-memory-heart { width:32px; margin-top:8px; }

/* One decision at a time, with the collection beside it. */
#sh-collection .shcb-stage { width:min(90%,1440px); margin:0 auto; padding:10px 0 68px; scroll-margin-top:108px; }
#sh-collection .shcb-step-header { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0 0 34px; padding:0 0 19px; border-bottom:1px solid var(--shcb-border); }
#sh-collection .shcb-progress { display:flex; flex:0 0 180px; flex-direction:column; gap:9px; color:#786963; font-size:11px; letter-spacing:.05em; }
#sh-collection .shcb-progress-track { display:block; width:100%; height:3px; overflow:hidden; border-radius:3px; background:#e8dfd9; }
#sh-collection .shcb-progress-track span { display:block; height:100%; border-radius:inherit; background:var(--shcb-rose); transition:width .3s ease; }
#sh-collection .shcb-journey { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px 20px; color:#8c817b; font-size:11px; line-height:1.5; }
#sh-collection .shcb-journey span { white-space:nowrap; }
#sh-collection .shcb-journey .is-current, #sh-collection .shcb-journey [aria-current="step"] { color:#8c5c57; font-weight:700; }
#sh-collection .shcb-journey .is-complete { color:#575a53; }
#sh-collection .shcb-builder-layout { display:grid; grid-template-columns:minmax(0,1fr) 350px; align-items:start; gap:clamp(28px,3.7vw,58px); }
#sh-collection .shcb-step-main { min-width:0; }
#sh-collection .shcb-step-main.is-entering { animation:shcb-enter .24s ease-out both; }
@keyframes shcb-enter { from { opacity:0; transform:translateY(7px); } to { opacity:1; transform:translateY(0); } }
#sh-collection .shcb-form-section { margin:0; scroll-margin-top:24px; }
#sh-collection .shcb-section-heading { display:flex; align-items:flex-start; gap:12px; margin:0 0 24px; }
#sh-collection .shcb-step-number { display:grid; flex:0 0 28px; width:28px; height:28px; margin-top:4px; place-items:center; border:1px solid #d9b8b1; border-radius:50%; background:#f0e5df; color:#895c57; font-size:11px; font-weight:700; line-height:1; }
#sh-collection .shcb-section-heading h2 { margin:0 0 7px; color:var(--shcb-charcoal); font:400 clamp(28px,2.8vw,38px)/1.12 var(--shcb-serif)!important; letter-spacing:-.02em; text-transform:none; }
#sh-collection .shcb-section-heading p { max-width:660px; margin:0; color:var(--shcb-muted); font-size:13px; line-height:1.6; }
#sh-collection .shcb-stage-actions { display:flex; min-height:48px; align-items:center; justify-content:space-between; gap:16px; margin:26px 0 0; }
#sh-collection .shcb-primary { display:inline-flex; min-height:48px; align-items:center; justify-content:center; gap:20px; padding:13px 25px; border:1px solid #a26762!important; border-radius:8px!important; background:#a26762!important; background-image:none!important; color:#fff!important; font:600 12px/1.4 var(--shcb-sans); letter-spacing:.02em; text-decoration:none; text-transform:none; cursor:pointer; transition:background-color .2s,border-color .2s,box-shadow .2s; }
#sh-collection .shcb-primary:hover { border-color:#9b6560!important; background:#9b6560!important; color:#fff!important; box-shadow:0 4px 14px rgba(124,81,73,.14); }
#sh-collection .shcb-primary > span { font-size:19px; font-weight:400; line-height:1; }
#sh-collection .shcb-primary:disabled, #sh-collection .shcb-primary[aria-disabled="true"] { border-color:#ded7d2!important; background:#e8e1dc!important; color:#9b8f87!important; box-shadow:none; cursor:not-allowed; }
#sh-collection .shcb-back-button, #sh-collection .shcb-secondary-button, #sh-collection .shcb-text-button { display:inline-flex; min-height:44px; align-items:center; justify-content:center; gap:7px; padding:8px 0!important; border:0!important; background:transparent!important; color:#76655c!important; font-size:12px; cursor:pointer; }
#sh-collection .shcb-back-button:hover, #sh-collection .shcb-secondary-button:hover, #sh-collection .shcb-text-button:hover { color:#9e6863!important; }
#sh-collection .shcb-text-button { text-decoration:underline; text-underline-offset:4px; }

/* Stable option cards. Coverage details stay visible. */
#sh-collection .shcb-service-grid, #sh-collection .shcb-coverage-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:stretch; }
#sh-collection .shcb-choice-card, #sh-collection .shcb-coverage-card { position:relative; display:flex; flex-direction:column; width:100%; min-width:0; overflow:hidden; padding:0!important; border:1px solid var(--shcb-border)!important; border-radius:10px!important; background:#fffdfa!important; color:var(--shcb-charcoal)!important; text-align:left; box-shadow:0 3px 12px rgba(60,45,38,.025); cursor:pointer; transition:border-color .18s,box-shadow .18s,background-color .18s; }
#sh-collection .shcb-choice-card:hover, #sh-collection .shcb-coverage-card:hover { border-color:#bc9189!important; box-shadow:0 7px 22px rgba(70,46,36,.065); }
#sh-collection .shcb-choice-card.is-selected, #sh-collection .shcb-coverage-card.is-selected { border-color:var(--shcb-rose)!important; background:#fff!important; box-shadow:0 0 0 1px var(--shcb-rose),0 6px 20px rgba(70,46,36,.05); }
#sh-collection .shcb-card-image { display:block; width:100%; aspect-ratio:1.45/1; object-fit:cover; object-position:center 44%; }
#sh-collection .shcb-card-copy { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:18px; text-align:left; }
#sh-collection .shcb-card-copy > strong { margin:0 0 7px; color:var(--shcb-charcoal); font:600 16px/1.35 var(--shcb-sans); letter-spacing:0; }
#sh-collection .shcb-card-description { max-width:380px; color:#766d66; font-size:12px; line-height:1.6; }
#sh-collection .shcb-choice-mark { position:absolute; top:12px; right:12px; display:grid; width:24px; height:24px; place-items:center; border:1px solid rgba(255,255,255,.9); border-radius:50%; background:rgba(255,255,255,.9); color:transparent; font:700 12px/1 var(--shcb-sans); box-shadow:0 1px 5px rgba(0,0,0,.06); transition:background-color .18s,color .18s; }
#sh-collection .is-selected .shcb-choice-mark { border-color:var(--shcb-rose); background:var(--shcb-rose); color:#fff; }
#sh-collection .shcb-coverage-card .shcb-card-image { aspect-ratio:1.9/1; }
#sh-collection .shcb-coverage-card .shcb-card-copy { padding:17px; }
#sh-collection .shcb-coverage-details { display:block; width:100%; padding-top:15px; }
#sh-collection .shcb-detail-list { display:grid; gap:7px; color:#756d66; font-size:12px; line-height:1.5; }
#sh-collection .shcb-detail-list > span { position:relative; padding-left:12px; }
#sh-collection .shcb-detail-list > span::before { position:absolute; top:.65em; left:0; width:3px; height:3px; border-radius:50%; background:#b18479; content:""; }
#sh-collection .shcb-coverage-deliverables { display:block; margin-top:16px; padding-top:14px; border-top:1px solid #e8dfd9; }
#sh-collection .shcb-coverage-deliverables strong { display:block; margin-bottom:9px; color:#62564e; font:600 11px/1.5 var(--shcb-sans); }
#sh-collection .shcb-coverage-price { display:block; margin-top:auto; padding-top:17px; color:#80594f; font:600 19px/1.4 var(--shcb-sans); font-variant-numeric:tabular-nums; }
#sh-collection .shcb-coverage-price small { display:block; color:#8a7b72; font:400 11px/1.5 var(--shcb-sans); }
#sh-collection .shcb-gallery-note { margin:18px 0 0; color:#83786f; font-size:12px; line-height:1.6; }
#sh-collection .shcb-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; align-items:stretch; }
#sh-collection .shcb-product-grid .shcb-choice-card { display:grid; grid-template-columns:29% minmax(0,1fr); min-height:228px; }
#sh-collection .shcb-product-grid .shcb-card-image { height:100%; aspect-ratio:auto; }
#sh-collection .shcb-product-grid .shcb-card-copy { justify-content:flex-start; padding:20px 17px; }
#sh-collection .shcb-product-grid .shcb-card-copy > strong { padding-right:14px; }
#sh-collection .shcb-product-grid .shcb-choice-mark { top:10px; right:10px; width:19px; height:19px; border-color:#decfc6; background:#fffdfa; }
#sh-collection .shcb-product-grid .is-selected .shcb-choice-mark { border-color:var(--shcb-rose); background:var(--shcb-rose); }
#sh-collection .shcb-product-price { margin-top:13px; color:#80594f; font:600 17px/1.4 var(--shcb-sans); font-variant-numeric:tabular-nums; }
#sh-collection .shcb-product-note { margin-top:7px; color:#83776e; font:400 12px/1.5 var(--shcb-sans); }
#sh-collection .shcb-product-includes { display:grid; gap:3px; margin:9px 0 0; color:#73685f; font-size:12px; line-height:1.45; }
#sh-collection .shcb-product-includes > span::before { margin-right:6px; color:#a2796d; content:"✓"; font-size:10px; }

/* A large central style image, with neighboring choices peeking in. */
#sh-collection .shcb-carousel-block, #sh-collection .shcb-carousel { width:100%; }
#sh-collection .shcb-carousel-viewport { position:relative; display:grid; grid-template-columns:minmax(0,.24fr) minmax(0,1fr) minmax(0,.24fr); align-items:center; gap:16px; width:100%; margin:0 auto; touch-action:pan-y; user-select:none; cursor:grab; }
#sh-collection .shcb-carousel-viewport:active { cursor:grabbing; }
#sh-collection .shcb-neighbour { position:relative; display:block; width:100%; min-width:0; height:78%; min-height:120px; overflow:hidden; padding:0!important; border:0!important; border-radius:9px!important; background:#e5dcd6!important; opacity:.58; cursor:pointer; transition:opacity .18s; }
#sh-collection .shcb-neighbour:hover { opacity:.85; }
#sh-collection .shcb-neighbour img { display:block; width:100%; height:100%; object-fit:cover; pointer-events:none; }
#sh-collection .shcb-carousel-current { position:relative; width:100%; overflow:hidden; aspect-ratio:1.6/1; border-radius:10px; background:#b9a9a1; color:#fff; box-shadow:0 8px 22px rgba(50,37,31,.08); }
#sh-collection .shcb-carousel-image { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; pointer-events:none; }
#sh-collection .shcb-carousel-shade { position:absolute; inset:20% 0 0; background:linear-gradient(transparent,rgba(25,24,24,.72)); pointer-events:none; }
#sh-collection .shcb-carousel-copy { position:absolute; right:7%; bottom:9%; left:7%; display:flex; flex-direction:column; align-items:center; text-align:center; text-shadow:0 1px 8px rgba(0,0,0,.24); }
#sh-collection .shcb-carousel-copy strong { color:#fff; font:400 clamp(25px,2.5vw,37px)/1.12 var(--shcb-serif); }
#sh-collection .shcb-carousel-copy span { max-width:490px; margin-top:8px; color:#fff; font:400 12px/1.5 var(--shcb-sans); }
#sh-collection .shcb-carousel-arrow { position:absolute; z-index:2; top:50%; display:grid; width:42px; height:42px; place-items:center; padding:0!important; border:1px solid #e1d9d2!important; border-radius:50%!important; background:#fffdfa!important; color:var(--shcb-charcoal)!important; box-shadow:0 2px 12px rgba(50,37,31,.06); font-size:18px; line-height:1; cursor:pointer; transform:translateY(-50%); transition:background-color .18s,color .18s; }
#sh-collection .shcb-carousel-arrow:hover { border-color:#755b53!important; background:#755b53!important; color:#fff!important; }
#sh-collection .shcb-carousel-arrow-left { left:calc(16.216% - 17px); }
#sh-collection .shcb-carousel-arrow-right { right:calc(16.216% - 17px); }
#sh-collection .shcb-dots { display:flex; justify-content:center; gap:1px; margin:7px auto 0; }
#sh-collection .shcb-dot { display:grid; width:36px; height:36px; min-width:36px; min-height:36px; place-items:center; padding:0!important; border:0!important; border-radius:50%!important; background:transparent!important; cursor:pointer; }
#sh-collection .shcb-dot::after { position:static; inset:auto; display:block; width:6px; height:6px; border-radius:50%; background:#d6c6bd; content:""; opacity:1; transition:width .18s,background-color .18s; }
#sh-collection .shcb-dot.is-active::after { width:19px; border-radius:4px; background:var(--shcb-rose); }
#sh-collection .shcb-style-actions { display:flex; flex-direction:column; align-items:center; gap:8px; margin:13px 0 0; }
#sh-collection .shcb-influence { margin-top:23px; padding:17px 0 0; border-top:1px solid var(--shcb-border); }
#sh-collection .shcb-influence > summary { display:flex; min-height:35px; align-items:center; justify-content:space-between; gap:12px; color:#685a52; font:600 12px/1.5 var(--shcb-sans); cursor:pointer; list-style:none; }
#sh-collection .shcb-influence > summary::-webkit-details-marker { display:none; }
#sh-collection .shcb-influence > summary::after { color:#907064; content:"+"; font-size:18px; font-weight:400; }
#sh-collection .shcb-influence[open] > summary::after { content:"−"; }
#sh-collection .shcb-influence > summary span { color:#9a8980; font-size:11px; font-weight:400; }
#sh-collection .shcb-influence > p { margin:5px 0 13px; color:#83766e; font-size:12px; }
#sh-collection .shcb-influence-options { display:flex; flex-wrap:wrap; gap:8px; margin-top:11px; }
#sh-collection .shcb-influence-options button { min-height:40px; padding:8px 12px!important; border:1px solid #e1d6ce!important; border-radius:6px!important; background:#fcfaf7!important; color:#7e6d61!important; font-size:12px; cursor:pointer; }
#sh-collection .shcb-influence-options button:hover { border-color:#bd9589!important; }
#sh-collection .shcb-influence-options button[aria-pressed="true"] { border-color:#b68577!important; background:#f2e6df!important; color:#785045!important; }

/* Optional additions are a draggable horizontal rail. */
#sh-collection .shcb-extras-toolbar { display:flex; align-items:center; justify-content:space-between; gap:15px; margin:0 0 13px; color:#83756a; font-size:12px; }
#sh-collection .shcb-extras-toolbar > div, #sh-collection .shcb-extras-toolbar > span:last-child { display:flex; gap:8px; }
#sh-collection .shcb-rail-arrow { display:grid; width:38px; height:38px; place-items:center; padding:0!important; border:1px solid #dacec5!important; border-radius:50%!important; background:#fffdfa!important; color:#6d5549!important; font-size:18px; cursor:pointer; transition:border-color .18s,background-color .18s; }
#sh-collection .shcb-rail-arrow:hover { border-color:#b78e7d!important; background:#f1e6dc!important; }
#sh-collection .shcb-rail-arrow:disabled { opacity:.35; cursor:default; }
#sh-collection .shcb-extras-rail { display:flex; gap:15px; overflow-x:auto; overscroll-behavior-x:contain; padding:3px 2px 17px; scroll-snap-type:x proximity; scrollbar-color:#c5a79a #ece5df; scrollbar-width:thin; cursor:grab; user-select:none; touch-action:pan-x pan-y; }
#sh-collection .shcb-extras-rail.is-dragging { scroll-snap-type:none; scroll-behavior:auto; cursor:grabbing; }
#sh-collection .shcb-extras-rail.is-dragging * { cursor:grabbing!important; }
#sh-collection .shcb-extras-rail::-webkit-scrollbar { height:5px; }
#sh-collection .shcb-extras-rail::-webkit-scrollbar-track { background:#ece5df; border-radius:4px; }
#sh-collection .shcb-extras-rail::-webkit-scrollbar-thumb { background:#c5a79a; border-radius:4px; }
#sh-collection .shcb-extra-card { position:relative; display:flex; flex:0 0 232px; flex-direction:column; min-width:0; overflow:hidden; padding:0!important; border:1px solid var(--shcb-border)!important; border-radius:10px!important; background:#fffdfa!important; color:var(--shcb-charcoal)!important; text-align:left; scroll-snap-align:start; cursor:grab; transition:border-color .18s,box-shadow .18s; }
#sh-collection .shcb-extra-card:hover { border-color:#bf9585!important; box-shadow:0 6px 18px rgba(80,56,40,.05); }
#sh-collection .shcb-extra-card.is-selected { border-color:var(--shcb-rose)!important; box-shadow:0 0 0 1px var(--shcb-rose); }
#sh-collection .shcb-extra-card.is-included { background:#f3eee8!important; }
#sh-collection .shcb-extra-image { display:block; width:100%; height:140px; overflow:hidden; background:#d4c4bc; }
#sh-collection .shcb-extra-image img { display:block; width:100%; height:100%; object-fit:cover; pointer-events:none; -webkit-user-drag:none; }
#sh-collection .shcb-extra-copy { display:flex; flex:1; flex-direction:column; align-items:flex-start; gap:7px; padding:17px 17px 48px; }
#sh-collection .shcb-extra-copy strong { color:var(--shcb-charcoal); font:600 15px/1.3 var(--shcb-sans); }
#sh-collection .shcb-extra-copy > span:not(.shcb-extra-price) { color:#807268; font-size:12px; line-height:1.55; }
#sh-collection .shcb-extra-price { margin-top:auto; padding-top:11px; color:#825c4d; font:600 14px/1.4 var(--shcb-sans); font-variant-numeric:tabular-nums; }
#sh-collection .shcb-extra-toggle { position:absolute; right:15px; bottom:14px; display:grid; width:29px; height:29px; place-items:center; border:1px solid #d6b5a7; border-radius:50%; background:#f7eee7; color:#9d6d58; font-size:18px; line-height:1; }
#sh-collection .shcb-extra-card.is-selected .shcb-extra-toggle { border-color:var(--shcb-rose); background:var(--shcb-rose); color:#fff; font-size:13px; }
#sh-collection .shcb-extra-card.is-included .shcb-extra-toggle { border-color:#d5d7c9; background:#e8eadf; color:#70765f; font-size:13px; }
#sh-collection .shcb-included-panel { margin-top:21px; padding:18px 21px; border:1px solid #dedfd2; border-radius:9px; background:#f0f1e9; }
#sh-collection .shcb-included-panel h2 { margin:0 0 8px; color:#616551; font:600 13px/1.4 var(--shcb-sans)!important; }
#sh-collection .shcb-included-panel ul, #sh-collection .shcb-collection-included ul { display:grid; gap:6px; padding:0; margin:0; list-style:none; }
#sh-collection .shcb-included-panel li, #sh-collection .shcb-collection-included li { display:flex; gap:8px; align-items:baseline; color:#74715f; font-size:12px; line-height:1.5; }
#sh-collection .shcb-included-panel li span, #sh-collection .shcb-collection-included li span { color:#909279; }
#sh-collection .shcb-inline-note { margin:-8px 0 18px; color:#817365; font-size:12px; }

/* The collection records choices; its price appears when it is useful. */
#sh-collection .shcb-sidebar-summary { position:sticky; top:110px; min-width:0; padding:27px; border:1px solid #e2d7cf; border-radius:13px; background:#fdfbf8; box-shadow:0 9px 30px rgba(105,76,50,.035); }
#sh-collection .shcb-sidebar-eyebrow { margin:0 0 7px; color:#876c5c; font:600 10px/1.4 var(--shcb-sans); letter-spacing:.14em; text-transform:uppercase; }
#sh-collection .shcb-sidebar-summary > h2 { margin:0 0 18px; color:#3e3a33; font:400 32px/1.1 var(--shcb-serif)!important; letter-spacing:-.02em; }
#sh-collection .shcb-pending-note { margin:17px 0 0; padding:15px 16px; border-left:2px solid #cda696; border-radius:0 6px 6px 0; background:#f3ece5; color:#746151; font-size:12px; line-height:1.65; }
#sh-collection .shcb-selection-list { display:grid; padding:0; margin:0 0 7px; list-style:none; }
#sh-collection .shcb-selection-item { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:4px 12px; padding:12px 0; border-bottom:1px solid #eee6de; }
#sh-collection .shcb-selection-item > div { min-width:0; }
#sh-collection .shcb-selection-item strong { display:block; color:#7c695a; font:400 11px/1.5 var(--shcb-sans); }
#sh-collection .shcb-selection-item span { display:block; margin-top:3px; color:#594b3f; font:400 13px/1.5 var(--shcb-sans); }
#sh-collection .shcb-selection-item > span { grid-column:1; }
#sh-collection .shcb-selection-item button { grid-column:2; grid-row:1 / span 2; min-height:36px; padding:6px 0 6px 8px!important; border:0!important; background:transparent!important; color:#9a7866!important; font-size:11px; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
#sh-collection .shcb-selection-item button:hover { color:#714d3c!important; }
#sh-collection .shcb-collection-rows { display:grid; }
#sh-collection .shcb-collection-row { display:grid; grid-template-columns:45px minmax(0,1fr) auto; align-items:center; gap:10px; padding:12px 0; border-bottom:1px solid #eee6de; }
#sh-collection .shcb-collection-thumb { display:block; width:45px; height:49px; overflow:hidden; border-radius:5px; background:#e8ddd7; }
#sh-collection .shcb-collection-thumb img { display:block; width:100%; height:100%; object-fit:cover; }
#sh-collection .shcb-collection-copy { display:flex; min-width:0; flex-direction:column; gap:3px; }
#sh-collection .shcb-collection-category { color:#877565; font-size:10px; line-height:1.4; }
#sh-collection .shcb-collection-copy > strong { color:#5c4e43; font:600 12px/1.4 var(--shcb-sans); }
#sh-collection .shcb-collection-copy > span:last-child { color:#7a6b5e; font-size:11px; line-height:1.5; }
#sh-collection .shcb-row-edit { display:inline; width:fit-content; padding:0!important; border:0!important; background:transparent!important; color:#5c4e43!important; font:600 12px/1.4 var(--shcb-sans); text-align:left; cursor:pointer; }
#sh-collection .shcb-row-edit span { display:inline; margin-left:5px; color:#886450; font-size:10px; font-weight:400; text-decoration:underline; text-underline-offset:3px; }
#sh-collection .shcb-row-edit:hover { color:#9e6863!important; }
#sh-collection .shcb-collection-price { color:#7d6250; font:600 12px/1.4 var(--shcb-sans); font-variant-numeric:tabular-nums; white-space:nowrap; }
#sh-collection .shcb-collection-included { padding:17px 0 3px; }
#sh-collection .shcb-collection-included h4 { margin:0 0 9px; color:#8b7966; font:600 11px/1.5 var(--shcb-sans); }
#sh-collection .shcb-collection-included li { color:#776b5f; font-size:11px; }
#sh-collection .shcb-total { display:flex; flex-direction:column; align-items:flex-start; gap:6px; margin-top:21px; padding:20px 0 13px; border-top:1px solid #e4d5c9; }
#sh-collection .shcb-total > span { color:#927764; font:400 11px/1.5 var(--shcb-sans); letter-spacing:.02em; }
#sh-collection .shcb-total strong { color:#8c5e4b; font:400 clamp(32px,2.8vw,40px)/1.1 var(--shcb-sans); letter-spacing:-.035em; font-variant-numeric:lining-nums tabular-nums; }
#sh-collection .shcb-estimate-note { margin:0; color:#817061; font-size:11px; line-height:1.6; }

/* One clear next action after the complete collection. */
#sh-collection .shcb-live-summary { max-width:1160px; margin:0 auto; }
#sh-collection .shcb-summary-heading { margin:0 0 28px; text-align:center; }
#sh-collection .shcb-summary-kicker { margin:0 0 6px; color:#9a7764; font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
#sh-collection .shcb-summary-heading h2 { margin:0 0 9px; color:var(--shcb-charcoal); font:400 clamp(35px,3.7vw,47px)/1.12 var(--shcb-serif)!important; }
#sh-collection .shcb-summary-heading > p:last-child { margin:0; color:#8a7667; font-size:13px; }
#sh-collection .shcb-final-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:32px; }
#sh-collection .shcb-final-image { position:relative; min-width:0; margin:0; overflow:hidden; aspect-ratio:1/1.1; border-radius:12px; background:#bfa9a0; }
#sh-collection .shcb-final-image img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; }
#sh-collection .shcb-final-image::after { position:absolute; inset:45% 0 0; content:""; background:linear-gradient(transparent,rgba(25,24,24,.5)); }
#sh-collection .shcb-final-image > span { position:absolute; z-index:1; right:26px; bottom:23px; left:26px; color:#fff; font-size:11px; letter-spacing:.12em; }
#sh-collection .shcb-final-card { min-width:0; padding:30px; border:1px solid #e2d7cf; border-radius:12px; background:#fdfbf8; }
#sh-collection .shcb-final-card > h3 { margin:0 0 10px; color:#3e3a33; font:400 31px/1.2 var(--shcb-serif)!important; }
#sh-collection .shcb-final-card .shcb-collection-row { grid-template-columns:52px minmax(0,1fr) auto; gap:13px; }
#sh-collection .shcb-final-card .shcb-collection-thumb { width:52px; height:55px; }
#sh-collection .shcb-final-card .shcb-collection-copy > strong, #sh-collection .shcb-final-card .shcb-collection-price, #sh-collection .shcb-final-card .shcb-row-edit { font-size:13px; }
#sh-collection .shcb-final-card .shcb-collection-copy > span:last-child { font-size:12px; }
#sh-collection .shcb-summary-details { margin-top:12px; color:#827160; }
#sh-collection .shcb-summary-details summary { min-height:40px; padding:10px 0; color:#7c624f; font-size:12px; cursor:pointer; }
#sh-collection .shcb-summary-details ul { margin:0 0 9px; padding-left:17px; font-size:12px; }
#sh-collection .shcb-summary-details p { margin:0; font-size:12px; line-height:1.6; }
#sh-collection .shcb-date-link { width:100%; margin-top:9px; }
#sh-collection .shcb-date-note, #sh-collection .shcb-email-note { margin:11px 0 0; color:#806b5c; font-size:12px; line-height:1.5; text-align:center; }
#sh-collection .shcb-email-note { margin-top:4px; color:#837263; }
#sh-collection .shcb-sr-only, #sh-collection .shcb-noscript { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

#sh-collection-scenic { position:relative; display:block; width:100%; height:clamp(270px,42vw,620px); overflow:hidden; background:#6e675e; }
#sh-collection-scenic .shcb-scenic-wave { position:absolute; z-index:2; top:0; left:0; display:block; width:100%; height:clamp(44px,5vw,80px); fill:#f8f6f3; pointer-events:none; }
#sh-collection-scenic img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 51%; }
#sh-collection-scenic > span { position:absolute; inset:35% 0 0; pointer-events:none; background:linear-gradient(transparent,rgba(20,22,21,.15)); }

@media(max-width:1180px) {
  #sh-collection .shcb-intro-accent { right:3%; width:105px; }
  #sh-collection .shcb-intro-accent > span { font-size:28px; }
  #sh-collection .shcb-intro-copy { max-width:610px; }
  #sh-collection .shcb-builder-layout { grid-template-columns:minmax(0,1fr) 300px; gap:26px; }
  #sh-collection .shcb-sidebar-summary { padding:23px; }
  #sh-collection .shcb-service-grid, #sh-collection .shcb-coverage-grid { gap:12px; }
  #sh-collection .shcb-card-copy, #sh-collection .shcb-coverage-card .shcb-card-copy { padding:14px; }
  #sh-collection .shcb-product-grid { gap:12px; }
  #sh-collection .shcb-product-grid .shcb-choice-card { display:flex; min-height:0; }
  #sh-collection .shcb-product-grid .shcb-card-image { height:105px; }
  #sh-collection .shcb-product-grid .shcb-card-copy { padding:16px; }
  #sh-collection .shcb-product-grid .shcb-choice-mark { top:12px; right:12px; width:23px; height:23px; }
  #sh-collection .shcb-carousel-viewport { gap:11px; }
  #sh-collection .shcb-carousel-copy strong { font-size:29px; }
  #sh-collection .shcb-carousel-copy span { font-size:12px; }
}
@media(max-height:800px) { #sh-collection .shcb-sidebar-summary { position:static; } }
@media(max-width:900px) {
  #sh-collection { padding-top:42px; }
  #sh-collection .shcb-section-wave { top:-36px; height:37px; }
  #sh-collection .shcb-intro { padding:16px 6% 30px; }
  #sh-collection .shcb-intro-accent { display:none; }
  #sh-collection .shcb-stage { width:90%; padding-top:4px; scroll-margin-top:86px; }
  #sh-collection .shcb-step-header { margin-bottom:27px; gap:18px; }
  #sh-collection .shcb-progress { flex-basis:150px; }
  #sh-collection .shcb-journey { gap:7px 12px; font-size:10px; }
  #sh-collection .shcb-builder-layout { grid-template-columns:1fr; gap:28px; }
  #sh-collection .shcb-sidebar-summary { position:static; padding:24px; }
  #sh-collection .shcb-sidebar-summary > h2 { margin-bottom:12px; font-size:29px!important; }
  #sh-collection .shcb-selection-list { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; }
  #sh-collection .shcb-sidebar-summary .shcb-collection-rows { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; }
  #sh-collection .shcb-sidebar-summary .shcb-total { flex-direction:row; align-items:center; justify-content:space-between; margin-top:16px; }
  #sh-collection .shcb-pending-note { margin-top:12px; }
  #sh-collection .shcb-product-grid .shcb-choice-card { display:grid; grid-template-columns:29% minmax(0,1fr); }
  #sh-collection .shcb-product-grid .shcb-card-image { height:100%; }
  #sh-collection .shcb-product-grid .shcb-choice-mark { top:10px; right:10px; width:19px; height:19px; }
  #sh-collection .shcb-final-grid { gap:22px; }
  #sh-collection .shcb-final-card { padding:22px; }
}
@media(max-width:620px) {
  #sh-collection { padding-top:30px; }
  #sh-collection .shcb-intro { padding:18px 6% 30px; }
  #sh-collection .shcb-intro h2 { margin:0 auto 13px; font-size:39px!important; }
  #sh-collection .shcb-kicker { font-size:10px; letter-spacing:.14em; }
  #sh-collection .shcb-intro-copy > p:not(.shcb-kicker) { font-size:13px; }
  #sh-collection .shcb-intro-divider { margin-top:20px; }
  #sh-collection .shcb-stage { width:90%; padding:3px 0 45px; }
  #sh-collection .shcb-step-header { align-items:flex-start; flex-direction:column; gap:14px; margin-bottom:25px; padding-bottom:16px; }
  #sh-collection .shcb-progress { flex-basis:auto; width:100%; flex-direction:row; align-items:center; gap:15px; font-size:12px; }
  #sh-collection .shcb-progress > span:first-child { white-space:nowrap; }
  #sh-collection .shcb-progress-track { flex:1; }
  #sh-collection .shcb-journey { justify-content:flex-start; gap:6px 14px; font-size:11px; }
  #sh-collection .shcb-section-heading { gap:10px; margin-bottom:20px; }
  #sh-collection .shcb-step-number { flex-basis:24px; width:24px; height:24px; margin-top:3px; font-size:10px; }
  #sh-collection .shcb-section-heading h2 { margin-bottom:7px; font-size:30px!important; }
  #sh-collection .shcb-section-heading p { font-size:12px; }
  #sh-collection .shcb-stage-actions { gap:12px; margin-top:22px; }
  #sh-collection .shcb-primary { min-height:48px; padding:12px 21px; }
  #sh-collection .shcb-service-grid, #sh-collection .shcb-coverage-grid { grid-template-columns:1fr; gap:12px; }
  #sh-collection .shcb-service-grid .shcb-choice-card { display:grid; grid-template-columns:35% minmax(0,1fr); min-height:123px; }
  #sh-collection .shcb-service-grid .shcb-card-image { height:100%; aspect-ratio:auto; }
  #sh-collection .shcb-service-grid .shcb-card-copy { justify-content:center; padding:17px 32px 17px 16px; }
  #sh-collection .shcb-card-copy > strong { font-size:16px; }
  #sh-collection .shcb-card-description { font-size:12px; }
  #sh-collection .shcb-service-grid .shcb-choice-mark { top:15px; right:12px; width:19px; height:19px; border-color:#e2d3c9; background:#fffdfa; }
  #sh-collection .shcb-service-grid .is-selected .shcb-choice-mark { border-color:var(--shcb-rose); background:var(--shcb-rose); }
  #sh-collection .shcb-coverage-card { display:grid; grid-template-columns:23% minmax(0,1fr); }
  #sh-collection .shcb-coverage-card .shcb-card-image { height:100%; aspect-ratio:auto; object-position:center; }
  #sh-collection .shcb-coverage-card .shcb-card-copy { padding:18px; }
  #sh-collection .shcb-coverage-card .shcb-card-copy > strong { padding-right:15px; }
  #sh-collection .shcb-coverage-card .shcb-choice-mark { width:20px; height:20px; border-color:#decdc2; }
  #sh-collection .shcb-coverage-details { padding-top:13px; }
  #sh-collection .shcb-detail-list { gap:5px; font-size:12px; }
  #sh-collection .shcb-coverage-deliverables { margin-top:12px; padding-top:12px; }
  #sh-collection .shcb-coverage-deliverables strong { font-size:12px; }
  #sh-collection .shcb-coverage-price { padding-top:13px; font-size:18px; }
  #sh-collection .shcb-coverage-price small { font-size:12px; }
  #sh-collection .shcb-gallery-note { margin-top:14px; font-size:12px; }
  #sh-collection .shcb-product-grid { grid-template-columns:1fr; gap:12px; }
  #sh-collection .shcb-product-grid .shcb-choice-card { grid-template-columns:27% minmax(0,1fr); }
  #sh-collection .shcb-product-grid .shcb-card-copy { padding:18px; }
  #sh-collection .shcb-product-grid .shcb-card-copy > strong { padding-right:12px; }
  #sh-collection .shcb-product-price { margin-top:11px; }
  #sh-collection .shcb-product-note, #sh-collection .shcb-product-includes { font-size:12px; }
  #sh-collection .shcb-carousel-viewport { grid-template-columns:18px minmax(0,1fr) 18px; gap:8px; }
  #sh-collection .shcb-carousel-current { aspect-ratio:1.08/1; border-radius:9px; }
  #sh-collection .shcb-neighbour { height:80%; min-height:0; border-radius:5px!important; }
  #sh-collection .shcb-carousel-copy { right:9%; bottom:10%; left:9%; }
  #sh-collection .shcb-carousel-copy strong { font-size:31px; }
  #sh-collection .shcb-carousel-copy span { margin-top:8px; font-size:12px; }
  #sh-collection .shcb-carousel-arrow { width:38px; height:38px; font-size:17px; }
  #sh-collection .shcb-carousel-arrow-left { left:7px; }
  #sh-collection .shcb-carousel-arrow-right { right:7px; }
  #sh-collection .shcb-dots { margin-top:8px; }
  #sh-collection .shcb-dot { width:40px; height:40px; min-width:40px; min-height:40px; }
  #sh-collection .shcb-style-actions { margin-top:8px; }
  #sh-collection .shcb-influence { margin-top:18px; padding-top:12px; }
  #sh-collection .shcb-influence > summary { font-size:12px; }
  #sh-collection .shcb-influence-options button { min-height:44px; }
  #sh-collection .shcb-extras-toolbar { font-size:12px; }
  #sh-collection .shcb-extras-rail { gap:12px; margin-right:-5.55%; padding-right:20px; }
  #sh-collection .shcb-extra-card { flex-basis:226px; }
  #sh-collection .shcb-extra-image { height:137px; }
  #sh-collection .shcb-extra-copy { padding:17px 17px 46px; }
  #sh-collection .shcb-included-panel { margin-top:15px; padding:16px; }
  #sh-collection .shcb-sidebar-summary { padding:21px; }
  #sh-collection .shcb-sidebar-eyebrow { font-size:11px; }
  #sh-collection .shcb-selection-list, #sh-collection .shcb-sidebar-summary .shcb-collection-rows { grid-template-columns:1fr; }
  #sh-collection .shcb-selection-item strong { font-size:12px; }
  #sh-collection .shcb-selection-item span { font-size:13px; }
  #sh-collection .shcb-selection-item button { min-height:40px; font-size:12px; }
  #sh-collection .shcb-collection-copy > strong, #sh-collection .shcb-row-edit { font-size:13px; }
  #sh-collection .shcb-collection-copy > span:last-child, #sh-collection .shcb-collection-category, #sh-collection .shcb-collection-price, #sh-collection .shcb-row-edit span { font-size:12px; }
  #sh-collection .shcb-collection-included h4, #sh-collection .shcb-collection-included li { font-size:12px; }
  #sh-collection .shcb-total > span, #sh-collection .shcb-estimate-note { font-size:12px; }
  #sh-collection .shcb-total strong { font-size:34px; }
  #sh-collection .shcb-summary-heading { margin-bottom:20px; }
  #sh-collection .shcb-summary-heading > p:last-child { font-size:12px; }
  #sh-collection .shcb-final-grid { grid-template-columns:1fr; gap:16px; }
  #sh-collection .shcb-final-image { aspect-ratio:1.7/1; }
  #sh-collection .shcb-final-card { padding:21px; }
  #sh-collection .shcb-final-card > h3 { margin-bottom:9px; font-size:29px!important; }
  #sh-collection .shcb-final-card .shcb-collection-row { grid-template-columns:45px minmax(0,1fr) auto; gap:10px; }
  #sh-collection .shcb-final-card .shcb-collection-thumb { width:45px; height:49px; }
  #sh-collection .shcb-date-note, #sh-collection .shcb-email-note { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) {
  #sh-collection *, #sh-collection *::before, #sh-collection *::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation:none!important; }
}

/* ==========================================================================
   Editorial refresh (v6, 2026-10-07) — visual layer only, no logic changes.
   Matches the content-creation section: serif titles, full-bleed imagery,
   glass edges, soft depth, rose pills and a dark collection card.
   Scoped to #sh-collection.shcb so it overrides the v5 rules above.
   ========================================================================== */
#sh-collection.shcb { --ed-ink:#1d2120; --ed-rose:#bc827e; --ed-rose-hi:#cd9690; --ed-blush:#e4ada7; --ed-ivory:#f3eee7; --ed-line:#e6ddd5; }
#sh-collection.shcb .shcb-builder { overflow:clip; }
#sh-collection.shcb .shcb-builder::before, #sh-collection.shcb .shcb-builder::after { content:""; position:absolute; z-index:0; width:clamp(220px,24vw,380px); height:460px; pointer-events:none; background:url('/wp-content/mu-plugins/stolenhearts-leaf-shadow.svg') center/contain no-repeat; opacity:.045; }
#sh-collection.shcb .shcb-builder::before { left:-90px; top:120px; transform:rotate(160deg); }
#sh-collection.shcb .shcb-builder::after { right:-90px; bottom:40px; transform:rotate(-12deg); }
#sh-collection.shcb .shcb-stage { position:relative; z-index:1; }
#sh-collection.shcb .shcb-kicker { color:var(--ed-rose); font-size:11px; font-weight:400; letter-spacing:.34em; }

/* Progress: a fine rose line with a travelling dot */
#sh-collection.shcb .shcb-step-header { margin:0 0 44px; padding:0; border:0; }
#sh-collection.shcb .shcb-progress { flex:1 1 auto; flex-direction:row; align-items:center; gap:24px; color:var(--ed-rose); font:400 10.5px/1.4 var(--shcb-sans); letter-spacing:.3em; text-transform:uppercase; white-space:nowrap; }
#sh-collection.shcb .shcb-progress-track { position:relative; flex:1 1 auto; height:1px; overflow:visible; border-radius:0; background:var(--ed-line); }
#sh-collection.shcb .shcb-progress-track span { position:relative; height:1px; border-radius:0; background:var(--ed-rose); transition:width .6s cubic-bezier(.2,.7,.2,1); }
#sh-collection.shcb .shcb-progress-track span::after { content:""; position:absolute; right:-4px; top:-3.5px; width:8px; height:8px; border-radius:50%; background:var(--ed-rose); box-shadow:0 0 0 4px #bc827e26; }

/* Focus: rose ring for keyboard users; no ring after a mouse click */
#sh-collection.shcb button:focus:not(:focus-visible) { outline:none!important; }
#sh-collection.shcb button:focus-visible, #sh-collection.shcb a:focus-visible, #sh-collection.shcb summary:focus-visible, #sh-collection.shcb [tabindex="0"]:focus-visible { outline:2px solid var(--ed-rose)!important; outline-offset:4px; }

/* Step heading: italic rose numeral */
#sh-collection.shcb .shcb-section-heading { align-items:flex-start; gap:clamp(16px,1.6vw,24px); margin:0 0 clamp(26px,2.6vw,38px); }
#sh-collection.shcb .shcb-step-number { display:block; flex:0 0 auto; width:auto; height:auto; margin:0; padding:0; border:0; border-radius:0; background:none; color:var(--ed-rose); font:italic 400 clamp(40px,3.6vw,58px)/.86 var(--shcb-serif); letter-spacing:-.03em; font-variant-numeric:lining-nums; font-feature-settings:"lnum" 1; }
#sh-collection.shcb .shcb-step-number::before { content:"0"; }
#sh-collection.shcb .shcb-section-heading h2 { margin:0 0 9px; font-size:clamp(32px,3.1vw,46px)!important; line-height:1.06!important; }
#sh-collection.shcb .shcb-section-heading p { color:#6f6862; font-size:14px; line-height:1.7; }

/* Shared card language */
#sh-collection.shcb .shcb-choice-card, #sh-collection.shcb .shcb-coverage-card, #sh-collection.shcb .shcb-extra-card { border:1px solid #ece4dc!important; border-radius:20px!important; background:#fffdfa!important; box-shadow:0 14px 34px rgba(60,42,32,.07); transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,border-color .3s; }
#sh-collection.shcb .shcb-choice-card:hover, #sh-collection.shcb .shcb-coverage-card:hover, #sh-collection.shcb .shcb-extra-card:hover { transform:translateY(-5px); border-color:#e2d3c9!important; box-shadow:0 24px 46px rgba(60,42,32,.12); }
#sh-collection.shcb .shcb-choice-card.is-selected, #sh-collection.shcb .shcb-coverage-card.is-selected, #sh-collection.shcb .shcb-extra-card.is-selected { border-color:var(--ed-rose)!important; background:#fffdfa!important; box-shadow:0 0 0 1px var(--ed-rose),0 0 0 6px #bc827e1f,0 24px 46px rgba(60,42,32,.12); }
#sh-collection.shcb .shcb-card-image { transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .4s; }
#sh-collection.shcb .shcb-choice-card:hover .shcb-card-image, #sh-collection.shcb .shcb-coverage-card:hover .shcb-card-image { transform:scale(1.04); }
#sh-collection.shcb .shcb-card-copy { padding:22px 22px 24px; }
#sh-collection.shcb .shcb-card-copy > strong { margin:0 0 8px; color:#2b2b2b; font:400 clamp(23px,1.9vw,28px)/1.1 var(--shcb-serif); letter-spacing:-.01em; }
#sh-collection.shcb .shcb-card-description { color:#736a64; font-size:13px; line-height:1.65; }
#sh-collection.shcb .shcb-choice-mark { width:26px; height:26px; border:1.5px solid #d8c4bb; background:#fffdfa; color:transparent; font-size:12px; box-shadow:none; transition:background .3s,border-color .3s,transform .3s; }
#sh-collection.shcb .is-selected .shcb-choice-mark { border-color:var(--ed-rose); background:var(--ed-rose); color:#fff; transform:scale(1.06); }

/* Service step: full-bleed portrait cards with type over the image */
#sh-collection.shcb .shcb-service-grid { gap:clamp(14px,1.5vw,22px); counter-reset:shcb-svc; }
#sh-collection.shcb .shcb-service-grid .shcb-choice-card { display:block; aspect-ratio:4/5; min-height:0; border:0!important; background:#2a2826!important; counter-increment:shcb-svc; }
#sh-collection.shcb .shcb-service-grid .shcb-choice-card::before { content:""; position:absolute; inset:0; z-index:2; pointer-events:none; border-radius:inherit; background:linear-gradient(155deg,#ffffff24 0%,#ffffff05 26%,transparent 42%); box-shadow:inset 0 0 0 1px #ffffff40,inset 0 1px 0 #ffffff59; }
#sh-collection.shcb .shcb-service-grid .shcb-card-image { position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto; object-fit:cover; }
#sh-collection.shcb .shcb-service-grid .shcb-card-copy { position:absolute; z-index:1; left:0; right:0; bottom:0; display:block; padding:clamp(70px,7vw,110px) clamp(18px,1.7vw,26px) clamp(20px,1.8vw,28px); background:linear-gradient(0deg,#141413e0 0%,#14141399 45%,transparent 100%); }
#sh-collection.shcb .shcb-service-grid .shcb-card-copy::before { content:counter(shcb-svc,decimal-leading-zero); display:block; margin:0 0 10px; color:var(--ed-blush); font:400 10.5px/1 var(--shcb-sans); letter-spacing:.3em; }
#sh-collection.shcb .shcb-service-grid .shcb-card-copy > strong { display:block; margin:0 0 8px; color:#fff; font-size:clamp(28px,2.5vw,38px); }
#sh-collection.shcb .shcb-service-grid .shcb-card-description { display:block; max-width:290px; color:#f1ece6e6; font-size:13px; }
#sh-collection.shcb .shcb-service-grid .shcb-choice-mark { z-index:3; top:16px; right:16px; width:32px; height:32px; border:1.5px solid #ffffffd9; background:#ffffff26; -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
#sh-collection.shcb .shcb-service-grid .is-selected .shcb-choice-mark { border-color:#fff; background:var(--ed-rose); }
#sh-collection.shcb .shcb-service-grid .shcb-choice-card.is-selected { box-shadow:0 0 0 2px var(--shcb-ivory),0 0 0 4px var(--ed-rose),0 26px 50px rgba(60,42,32,.2); }
#sh-collection.shcb .shcb-service-grid:has(.is-selected) .shcb-choice-card:not(.is-selected) .shcb-card-image { filter:saturate(.75) brightness(.8); }

/* Film collection step */
#sh-collection.shcb .shcb-product-grid { gap:clamp(14px,1.5vw,20px); }
#sh-collection.shcb .shcb-product-grid .shcb-choice-card { grid-template-columns:34% minmax(0,1fr); }
#sh-collection.shcb .shcb-product-grid .shcb-card-copy { padding:24px 22px; }
#sh-collection.shcb .shcb-product-grid .shcb-card-copy > strong { padding-right:30px; font-size:clamp(22px,1.8vw,26px); }
#sh-collection.shcb .shcb-product-grid .shcb-choice-mark { top:16px; right:16px; width:24px; height:24px; }
#sh-collection.shcb .shcb-product-price, #sh-collection.shcb .shcb-coverage-price { color:var(--ed-rose); font:400 19px/1.4 var(--shcb-sans); letter-spacing:.02em; }
#sh-collection.shcb .shcb-coverage-price small { color:#9a8a80; font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; }
#sh-collection.shcb .shcb-product-includes { gap:5px; margin-top:12px; }
#sh-collection.shcb .shcb-product-includes > span::before { color:var(--ed-rose); }

/* Coverage step */
#sh-collection.shcb .shcb-coverage-grid { gap:clamp(14px,1.5vw,20px); }
#sh-collection.shcb .shcb-coverage-card .shcb-card-image { aspect-ratio:1.7/1; }
#sh-collection.shcb .shcb-coverage-card .shcb-card-copy { padding:22px; }
#sh-collection.shcb .shcb-coverage-card .shcb-choice-mark { top:14px; right:14px; border-color:#ffffffd9; background:#ffffff33; -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); }
#sh-collection.shcb .shcb-coverage-card.is-selected .shcb-choice-mark { background:var(--ed-rose); border-color:#fff; }
#sh-collection.shcb .shcb-coverage-deliverables { border-top-color:var(--ed-line); }
#sh-collection.shcb .shcb-coverage-deliverables strong { color:#8a7a70; font:400 10.5px/1.5 var(--shcb-sans); letter-spacing:.22em; text-transform:uppercase; }
#sh-collection.shcb .shcb-detail-list > span::before { background:var(--ed-rose); }
#sh-collection.shcb .shcb-gallery-note, #sh-collection.shcb .shcb-inline-note { color:#857a72; font:italic 400 16px/1.55 var(--shcb-serif); }

/* Style carousel */
#sh-collection.shcb .shcb-carousel-current { border-radius:22px; box-shadow:0 30px 60px rgba(40,30,25,.22); }
#sh-collection.shcb .shcb-carousel-current::after { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; background:linear-gradient(155deg,#ffffff1f 0%,transparent 40%); box-shadow:inset 0 0 0 1px #ffffff40,inset 0 1px 0 #ffffff59; }
#sh-collection.shcb .shcb-carousel-copy strong { font-size:clamp(30px,3vw,46px); }
#sh-collection.shcb .shcb-carousel-copy span { font-size:13px; letter-spacing:.02em; }
#sh-collection.shcb .shcb-neighbour { border-radius:16px!important; opacity:.5; transform:scale(.94); transition:opacity .3s,transform .4s; }
#sh-collection.shcb .shcb-neighbour:hover { opacity:.8; transform:scale(.97); }
#sh-collection.shcb .shcb-carousel-arrow { width:48px; height:48px; border:1px solid #eed5ca55!important; background:#bc827ef0!important; color:#fff!important; box-shadow:0 8px 22px rgba(60,40,30,.25); font-size:17px; }
#sh-collection.shcb .shcb-carousel-arrow:hover { border-color:#eed5ca55!important; background:var(--ed-rose-hi)!important; transform:translateY(-50%) scale(1.06); }
#sh-collection.shcb .shcb-dot::after { background:#dccbc2; }
#sh-collection.shcb .shcb-dot.is-active::after { width:22px; background:var(--ed-rose); }
#sh-collection.shcb .shcb-influence { border-top-color:var(--ed-line); }
#sh-collection.shcb .shcb-influence > summary { color:#3e3a36; font:400 21px/1.3 var(--shcb-serif); }
#sh-collection.shcb .shcb-influence > summary span { font:400 10.5px/1.4 var(--shcb-sans); letter-spacing:.2em; text-transform:uppercase; }
#sh-collection.shcb .shcb-influence > summary::after { color:var(--ed-rose); font-size:22px; }
#sh-collection.shcb .shcb-influence-options button { min-height:40px; padding:8px 18px!important; border-color:#e3d6cd!important; border-radius:999px!important; background:#fffdfa!important; }
#sh-collection.shcb .shcb-influence-options button[aria-pressed="true"] { border-color:var(--ed-rose)!important; background:var(--ed-rose)!important; color:#fff!important; }

/* Extras rail */
#sh-collection.shcb .shcb-extras-toolbar { color:#8a7c72; font:400 10.5px/1.5 var(--shcb-sans); letter-spacing:.24em; text-transform:uppercase; }
#sh-collection.shcb .shcb-rail-arrow { width:42px; height:42px; border-color:#e0cfc6!important; background:#fffdfa!important; color:var(--ed-rose)!important; }
#sh-collection.shcb .shcb-rail-arrow:hover { border-color:var(--ed-rose)!important; background:var(--ed-rose)!important; color:#fff!important; }
#sh-collection.shcb .shcb-extras-rail { gap:18px; padding:8px 4px 26px; }
#sh-collection.shcb .shcb-extra-card { flex-basis:244px; }
#sh-collection.shcb .shcb-extra-card:hover { transform:translateY(-4px); }
#sh-collection.shcb .shcb-extra-image { height:158px; }
#sh-collection.shcb .shcb-extra-copy { padding:20px 20px 54px; }
#sh-collection.shcb .shcb-extra-copy strong { color:#2b2b2b; font:400 23px/1.12 var(--shcb-serif); }
#sh-collection.shcb .shcb-extra-price { color:var(--ed-rose); font:400 15px/1.4 var(--shcb-sans); letter-spacing:.02em; }
#sh-collection.shcb .shcb-extra-toggle { right:18px; bottom:18px; width:32px; height:32px; border:1px solid #dcbfb4; background:#fffdfa; color:var(--ed-rose); transition:background .3s,color .3s,transform .3s; }
#sh-collection.shcb .shcb-extra-card:hover .shcb-extra-toggle { transform:rotate(90deg); }
#sh-collection.shcb .shcb-extra-card.is-selected .shcb-extra-toggle { border-color:var(--ed-rose); background:var(--ed-rose); color:#fff; transform:none; }
#sh-collection.shcb .shcb-extra-card.is-included { background:#f4efe9!important; box-shadow:none; }
#sh-collection.shcb .shcb-included-panel { padding:22px 24px; border:0; border-radius:18px; background:#efe9e2; }
#sh-collection.shcb .shcb-included-panel h2 { color:#3e3a36; font:400 22px/1.3 var(--shcb-serif)!important; }
#sh-collection.shcb .shcb-included-panel li, #sh-collection.shcb .shcb-included-panel li span { color:#6f655d; }

/* Navigation: rose pill + quiet back link */
#sh-collection.shcb .shcb-stage-actions { margin-top:34px; }
#sh-collection.shcb .shcb-primary { min-height:56px; gap:22px; padding:16px 36px; border:1px solid #dca69a55!important; border-radius:999px!important; background:var(--ed-rose)!important; color:#fff!important; font:400 11px/1.4 var(--shcb-sans); letter-spacing:.24em; text-transform:uppercase; box-shadow:0 14px 30px rgba(150,95,85,.24); transition:background .25s,transform .25s,box-shadow .25s,opacity .25s; }
#sh-collection.shcb .shcb-primary:hover { border-color:#dca69a55!important; background:var(--ed-rose-hi)!important; transform:translateY(-2px); box-shadow:0 18px 36px rgba(150,95,85,.3); }
#sh-collection.shcb .shcb-primary > span { font-size:20px; letter-spacing:0; }
#sh-collection.shcb .shcb-primary:disabled, #sh-collection.shcb .shcb-primary[aria-disabled="true"] { border-color:#dcc6be!important; background:transparent!important; color:#b49a91!important; box-shadow:none; transform:none; }
#sh-collection.shcb .shcb-back-button, #sh-collection.shcb .shcb-secondary-button { color:#8a7a70!important; font:400 10.5px/1.4 var(--shcb-sans); letter-spacing:.24em; text-transform:uppercase; }
#sh-collection.shcb .shcb-back-button:hover, #sh-collection.shcb .shcb-secondary-button:hover { color:var(--ed-rose)!important; }

/* "Your collection": dark card, like the cinematic sections */
#sh-collection.shcb .shcb-sidebar-summary, #sh-collection.shcb .shcb-final-card { overflow:hidden; isolation:isolate; padding:34px 32px 30px; border:1px solid #ffffff12; border-radius:24px; background:radial-gradient(ellipse 90% 60% at 80% 0%,#2f3533 0%,transparent 70%),var(--ed-ink); color:var(--ed-ivory); box-shadow:0 34px 70px rgba(25,28,27,.28); }
#sh-collection.shcb .shcb-sidebar-summary::before, #sh-collection.shcb .shcb-final-card::before { content:""; position:absolute; z-index:-1; right:-70px; bottom:-60px; width:260px; height:300px; pointer-events:none; background:url('/wp-content/mu-plugins/stolenhearts-leaf-shadow.svg') center/contain no-repeat; opacity:.09; transform:rotate(-14deg); }
#sh-collection.shcb .shcb-final-card { position:relative; }
#sh-collection.shcb .shcb-sidebar-summary { position:sticky; top:110px; }
@media(max-height:800px),(max-width:900px) { #sh-collection.shcb .shcb-sidebar-summary { position:relative; top:auto; } }
#sh-collection.shcb .shcb-sidebar-eyebrow { color:var(--ed-blush); font:400 10.5px/1.4 var(--shcb-sans); letter-spacing:.32em; }
#sh-collection.shcb .shcb-sidebar-summary > h2, #sh-collection.shcb .shcb-final-card > h3 { margin:0 0 20px; color:#f8f6f3; font:400 clamp(32px,2.6vw,40px)/1.05 var(--shcb-serif)!important; }
#sh-collection.shcb .shcb-pending-note { margin:22px 0 0; padding:18px 0 0; border:0; border-top:1px solid #ffffff17; border-radius:0; background:none; color:#d8d1c8; font:italic 400 19px/1.45 var(--shcb-serif); }
#sh-collection.shcb .shcb-pending-note::before { content:""; display:block; width:26px; height:1px; margin:0 0 16px; background:var(--ed-blush); }
#sh-collection.shcb .shcb-selection-item, #sh-collection.shcb .shcb-collection-row { border-bottom-color:#ffffff14; }
#sh-collection.shcb .shcb-selection-item strong, #sh-collection.shcb .shcb-collection-category { color:#a69b92; font:400 10px/1.5 var(--shcb-sans); letter-spacing:.22em; text-transform:uppercase; }
#sh-collection.shcb .shcb-selection-item span { color:#f3eee7; font:400 19px/1.3 var(--shcb-serif); }
#sh-collection.shcb .shcb-selection-item button { color:var(--ed-blush)!important; }
#sh-collection.shcb .shcb-selection-item button:hover { color:#fff!important; }
#sh-collection.shcb .shcb-collection-thumb { border-radius:8px; box-shadow:inset 0 0 0 1px #ffffff26; }
#sh-collection.shcb .shcb-collection-copy > strong, #sh-collection.shcb .shcb-row-edit { color:#f3eee7!important; }
#sh-collection.shcb .shcb-row-edit { font:400 17px/1.3 var(--shcb-serif); }
#sh-collection.shcb .shcb-row-edit span { color:var(--ed-blush); font:400 10px/1 var(--shcb-sans); }
#sh-collection.shcb .shcb-row-edit:hover { color:#fff!important; }
#sh-collection.shcb .shcb-collection-copy > span:last-child { color:#b3aaa1; }
#sh-collection.shcb .shcb-collection-price { color:#efe3dc; font:400 13px/1.4 var(--shcb-sans); letter-spacing:.02em; }
#sh-collection.shcb .shcb-collection-included h4 { color:#a69b92; font:400 10px/1.5 var(--shcb-sans); letter-spacing:.22em; text-transform:uppercase; }
#sh-collection.shcb .shcb-collection-included li, #sh-collection.shcb .shcb-collection-included li span { color:#cfc7be; }
#sh-collection.shcb .shcb-total { border-top-color:#ffffff1f; }
#sh-collection.shcb .shcb-total > span { color:#a69b92; font:400 10px/1.5 var(--shcb-sans); letter-spacing:.24em; text-transform:uppercase; }
#sh-collection.shcb .shcb-total strong { color:var(--ed-blush); font:300 clamp(40px,3.3vw,52px)/1.05 var(--shcb-sans); letter-spacing:-.03em; }
#sh-collection.shcb .shcb-estimate-note, #sh-collection.shcb .shcb-date-note, #sh-collection.shcb .shcb-email-note { color:#a69b92; }
#sh-collection.shcb .shcb-summary-details, #sh-collection.shcb .shcb-summary-details summary { color:#cfc7be; }
#sh-collection.shcb .shcb-final-card .shcb-primary { box-shadow:0 14px 30px rgba(0,0,0,.3); }

/* Final screen */
#sh-collection.shcb .shcb-summary-kicker { color:var(--ed-rose); font-size:11px; letter-spacing:.34em; }
#sh-collection.shcb .shcb-summary-heading h2 { font-size:clamp(42px,4.6vw,66px)!important; line-height:1.04!important; }
#sh-collection.shcb .shcb-final-grid { gap:clamp(22px,2.6vw,40px); }
#sh-collection.shcb .shcb-final-image { border-radius:24px; box-shadow:0 34px 70px rgba(40,30,25,.22); }
#sh-collection.shcb .shcb-final-image::before { content:""; position:absolute; inset:0; z-index:2; border-radius:inherit; pointer-events:none; background:linear-gradient(155deg,#ffffff1f 0%,transparent 40%); box-shadow:inset 0 0 0 1px #ffffff40,inset 0 1px 0 #ffffff59; }
#sh-collection.shcb .shcb-final-image > span { font:400 11px/1.4 var(--shcb-sans); letter-spacing:.34em; }

@media(max-width:900px) {
  #sh-collection.shcb .shcb-service-grid .shcb-card-copy > strong { font-size:clamp(24px,3.2vw,30px); }
}
@media(max-width:620px) {
  #sh-collection.shcb .shcb-step-header { margin-bottom:30px; }
  #sh-collection.shcb .shcb-progress { gap:16px; font-size:10px; letter-spacing:.24em; }
  #sh-collection.shcb .shcb-step-number { font-size:40px; }
  #sh-collection.shcb .shcb-section-heading { gap:14px; }
  #sh-collection.shcb .shcb-section-heading h2 { font-size:clamp(28px,8vw,34px)!important; }
  #sh-collection.shcb .shcb-section-heading p { font-size:13px; }
  #sh-collection.shcb .shcb-service-grid { gap:14px; }
  #sh-collection.shcb .shcb-service-grid .shcb-choice-card { display:block; aspect-ratio:16/11; min-height:0; }
  #sh-collection.shcb .shcb-service-grid .shcb-card-copy { justify-content:flex-end; padding:60px 20px 20px; }
  #sh-collection.shcb .shcb-service-grid .shcb-card-copy > strong { font-size:28px; }
  #sh-collection.shcb .shcb-service-grid .shcb-choice-mark { top:14px; right:14px; width:30px; height:30px; border-color:#ffffffd9; background:#ffffff26; }
  #sh-collection.shcb .shcb-service-grid .is-selected .shcb-choice-mark { border-color:#fff; background:var(--ed-rose); }
  #sh-collection.shcb .shcb-product-grid .shcb-card-copy { padding:20px 18px; }
  #sh-collection.shcb .shcb-primary { min-height:54px; padding:14px 28px; }
  #sh-collection.shcb .shcb-sidebar-summary, #sh-collection.shcb .shcb-final-card { padding:28px 24px 24px; border-radius:22px; }
  #sh-collection.shcb .shcb-extra-card { flex-basis:228px; }
}
@media(prefers-reduced-motion:reduce) {
  #sh-collection.shcb .shcb-choice-card, #sh-collection.shcb .shcb-coverage-card, #sh-collection.shcb .shcb-extra-card, #sh-collection.shcb .shcb-card-image, #sh-collection.shcb .shcb-primary { transition:none; }
  #sh-collection.shcb .shcb-choice-card:hover, #sh-collection.shcb .shcb-coverage-card:hover, #sh-collection.shcb .shcb-extra-card:hover, #sh-collection.shcb .shcb-card-image { transform:none!important; }
}
