/* Soap and candle ateliers have standalone sections after the product collections. */
.atelier-jump-link { display: inline-flex; margin: -8px 0 27px; }
.soap-builder-section { margin-top: 48px; padding: 39px; border: 1px solid #c7baa0; background: #eae3d3; }
.soap-builder-layout { display: grid; grid-template-columns: .7fr 1.3fr; gap: 35px; align-items: start; }
.soap-builder-intro { position: sticky; top: 147px; padding: 12px 0 10px; }
.soap-builder-intro h2 { font: 400 57px/.98 var(--serif); letter-spacing: -1px; margin: 0 0 25px; }
.soap-builder-intro h2 em { color: #806a3c; }
.soap-builder-intro > p { font-size: 12px; line-height: 1.9; color: #686a5a; margin: 0 0 24px; }
.soap-size-mark { border-top: 1px solid #c7b793; border-bottom: 1px solid #c7b793; padding: 13px 0 20px; margin: 30px 0 21px; color: #716039; }
.soap-size-mark > strong { display: block; font: 400 98px/1 var(--serif); letter-spacing: -4px; }
.soap-size-mark > strong > span { font-size: 41px; letter-spacing: 0; margin-left: 7px; }
.soap-size-mark > span { display: block; font-size: 8px; letter-spacing: 1.5px; line-height: 1.7; margin-top: 9px; }
.custom-progress-two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.single-custom-builder .custom-panel { min-height: 0; }
.single-custom-builder .custom-notes { margin-bottom: 25px; }
.candles-section { background: #eee7d8; border-top: 1px solid #d6cbb5; }
.candle-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 25px; }
.candle-feature { background: #f8f3e7; border: 1px solid #cfc0a3; min-width: 0; }
.candle-feature > img { width: 100%; aspect-ratio: 1.1; object-fit: cover; object-position: center 60%; }
.candle-feature:nth-child(2) > img { object-position: center 76%; }
.candle-feature > div { padding: 27px 29px 30px; }
.candle-feature .custom-kicker { font-size: 8px; margin-bottom: 9px; }
.candle-feature h3 { font: 400 40px/1.1 var(--serif); margin: 0 0 9px; }
.candle-feature p { font-size: 10px; color: var(--muted); margin: 0 0 20px; }
.candle-feature .text-link { font-size: 11px; }
.candle-gallery-note { font-size: 10px; line-height: 1.8; color: var(--muted); margin: 19px 0 0; }
.candle-collection-intro { display: flex; justify-content: space-between; align-items: center; gap: 22px; border-top: 1px solid #cebea2; padding: 23px 0; }
.candle-collection-intro > span { font-size: 9px; letter-spacing: 1.7px; color: #716039; flex-shrink: 0; }
.candle-collection-intro > p { font-size: 11px; line-height: 1.7; color: var(--muted); margin: 0; }
.candle-collection-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 22px 18px; }
.candle-collection-card { min-width: 0; background: #f8f3e7; border: 1px solid #cebea2; display: flex; flex-direction: column; }
.candle-artwork-link { position: relative; display: block; background: #11110e; }
.candle-artwork-link > img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.candle-artwork-link > span { position: absolute; bottom: 11px; right: 11px; padding: 6px 8px; background: #10140fdf; color: #ecdfc3; font-size: 8px; letter-spacing: .3px; }
.candle-card-copy { display: flex; flex-direction: column; flex: 1; padding: 22px 18px 20px; }
.candle-card-copy > h3 { font: 400 29px/1.08 var(--serif); margin: 0 0 12px; }
.candle-card-caption { font-size: 10px; line-height: 1.6; color: #706956; margin: 0 0 17px; }
.candle-photo-options { display: flex; flex-wrap: wrap; gap: 7px; margin: 0 0 19px; }
.candle-photo-option { padding: 3px; border: 1px solid #cabc9f; background: #f5eedf; color: #5a513d; cursor: pointer; min-width: 52px; }
.candle-photo-option[aria-pressed="true"] { border-color: #705731; box-shadow: 0 0 0 1px #705731; background: #eee0c6; }
.candle-photo-option > img { width: 44px; height: 44px; object-fit: contain; display: block; background: #11110e; }
.candle-photo-option > span { display: block; font: 500 8px/1.4 var(--sans); margin-top: 4px; }
.candle-card-actions { margin-top: auto; padding-top: 8px; display: flex; flex-wrap: wrap; align-items: center; gap: 14px 16px; }
.candle-enquire-link { font-size: 11px; line-height: 1.6; background: #193629; color: #f5ead3; padding: 9px 13px; }
.candle-card-actions .text-link { font-size: 10px; line-height: 1.6; padding: 5px 0; }
.candle-photo-option:focus-visible,.candle-artwork-link:focus-visible,.candle-enquire-link:focus-visible { outline: 3px solid #8c692b; outline-offset: 4px; }
@media (max-width:1150px) { .candle-collection-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width:850px) { .candle-collection-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 21px 17px; } .candle-collection-intro { display: block; } .candle-collection-intro > p { margin-top: 11px; } }
@media (max-width:500px) { .candle-collection-grid { grid-template-columns: 1fr; gap: 24px; } .candle-card-copy { padding: 24px; } .candle-card-copy > h3 { font-size: 34px; } .candle-card-actions { gap: 24px; } .candle-card-actions .text-link { font-size: 11px; } }
.candle-atelier { padding-top: 67px; }
.candle-atelier-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 30px; margin-bottom: 30px; }
.candle-atelier-heading h2 { font: 400 57px/1 var(--serif); margin: 0; letter-spacing: -.8px; }
.candle-atelier-heading h2 em { color: #826a3b; }
.candle-atelier-heading > p { font-size: 12px; line-height: 1.8; color: var(--muted); max-width: 225px; margin: 0 0 3px; }
.candle-preview { padding: 31px 32px 34px; text-align: center; background: radial-gradient(ellipse at 50% 35%,#4b3a21,#282c21 57%,#15251e); color: #ebdec4; border: 1px solid #a78c52; position: sticky; top: 143px; min-height: 540px; }
.candle-preview > .custom-kicker { color: #d3ba84; border-bottom: 1px solid #b59c6559; padding-bottom: 19px; margin-bottom: 0; }
.candle-preview-stage { height: 335px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; }
.candle-preview-stage::after { content: ''; width: 230px; height: 20px; position: absolute; bottom: 8px; border-radius: 50%; background: #0a100baa; filter: blur(11px); }
.candle-preview-lid { position: relative; z-index: 1; width: 253px; height: 30px; border: 1px solid #d5b674; border-radius: 12px 12px 7px 7px; background: linear-gradient(90deg,#8c6224,#dac088 17%,#ad873f 39%,#705222 74%,#d5b776); box-shadow: inset 0 4px 3px #ffdda970,0 5px 5px #0006; }
.candle-preview-jar { position: relative; z-index: 1; width: 239px; min-height: 248px; padding: 31px 23px 29px; display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 18px; background: linear-gradient(98deg,#4a4837,#141c16 22%,#171f19 75%,#4c4937); border: 1px solid #ac976661; border-bottom: 7px solid #80724b; border-radius: 0 0 24px 24px; box-shadow: inset 6px 0 7px #d5bd7f30,inset -6px 0 7px #d5bd7f27,14px 15px 22px #060c0a69; color: #d3b773; }
.candle-preview-brand { font-size: 7px; line-height: 1.5; letter-spacing: 1.8px; }
.candle-preview-brand strong { display: block; font: 500 32px/1 var(--serif); letter-spacing: 6px; padding-left: 6px; margin-top: 5px; }
#candle-custom-preview-name { font: 400 25px/1.04 var(--serif); max-width: 100%; overflow-wrap: anywhere; }
.candle-preview-rule { width: 40px; height: 1px; flex-shrink: 0; background: #aa915c; }
.candle-preview-foot { font-size: 6px; letter-spacing: 1.2px; }
.candle-preview > p { font-size: 12px; line-height: 1.85; margin: 17px auto 22px; max-width: 300px; color: #e3d8c1; overflow-wrap: anywhere; }
.candle-preview-caption { display: block; font-size: 9px; line-height: 1.9; color: #bdb9a5; max-width: 290px; margin: 0 auto; }
@media (min-width:1501px) { .desktop-nav { gap: 14px; } }
@media (max-width:1500px) { .desktop-nav { display: none; } .menu-button { display: inline-flex; } }
@media (max-width:1100px) {
  .soap-builder-section { padding: 29px; }
  .soap-builder-layout { grid-template-columns: .62fr 1.38fr; gap: 25px; }
  .soap-builder-intro { top: 126px; }
  .soap-builder-intro h2 { font-size: 48px; }
  .soap-size-mark > strong { font-size: 87px; }
  .candle-preview { top: 124px; padding: 25px 20px 30px; }
  .candle-preview-stage { transform: scale(.9); transform-origin: center; margin: -8px -17px; }
}
@media (max-width:850px) {
  .soap-builder-layout { grid-template-columns: 1fr; gap: 22px; }
  .soap-builder-intro { position: static; padding: 0; }
  .soap-builder-intro h2 { font-size: 51px; }
  .soap-builder-intro h2 br { display: none; }
  .soap-size-mark { margin: 21px 0 17px; display: flex; align-items: center; gap: 25px; padding: 13px 0 15px; }
  .soap-size-mark > strong { font-size: 75px; }
  .soap-size-mark > span { max-width: 180px; }
  .soap-builder-intro > p { max-width: 490px; }
  .candle-feature > div { padding: 24px; }
  .candle-feature h3 { font-size: 35px; }
  .candle-atelier { padding-top: 52px; }
  .candle-atelier-heading h2 { font-size: 49px; }
  .candle-preview { position: relative; top: auto; min-height: 0; padding: 25px 30px 27px; display: grid; grid-template-columns: 1fr 1fr; gap: 0 30px; align-items: center; }
  .candle-preview > .custom-kicker { grid-column: 1/-1; margin-bottom: 15px; }
  .candle-preview-stage { grid-row: 2/4; transform: scale(.85); margin: -14px -20px; }
  .candle-preview > p { align-self: end; text-align: left; margin-bottom: 15px; }
  .candle-preview-caption { text-align: left; align-self: start; }
}
@media (max-width:600px) {
  .soap-builder-section { padding: 26px 17px 19px; margin-top: 35px; }
  .soap-builder-intro { padding: 0 3px; }
  .soap-builder-intro .eyebrow { font-size: 7px; letter-spacing: 1.2px; }
  .soap-builder-intro h2 { font-size: 46px; line-height: 1.04; margin-bottom: 19px; }
  .soap-size-mark { gap: 24px; }
  .soap-size-mark > strong { font-size: 73px; }
  .soap-size-mark > span { font-size: 7px; letter-spacing: 1px; }
  .soap-builder-section .custom-scent-builder { padding: 23px 16px; }
  .soap-builder-section .custom-panel-heading h3 { font-size: 34px; }
  .soap-builder-section .custom-notes { gap: 7px; }
  .soap-builder-section .custom-note > span { padding: 10px 11px; }
  .candle-gallery { grid-template-columns: 1fr; gap: 23px; }
  .candle-feature > img { aspect-ratio: 1.13; }
  .candle-feature > div { padding: 24px; }
  .candle-feature h3 { font-size: 36px; }
  .candle-feature p { margin-bottom: 16px; }
  .candle-gallery-note { margin-top: 18px; }
  .candle-atelier { padding-top: 43px; }
  .candle-atelier-heading { display: block; margin-bottom: 25px; }
  .candle-atelier-heading h2 { font-size: 46px; }
  .candle-atelier-heading > p { max-width: none; margin-top: 18px; font-size: 11px; }
  .candle-preview { padding: 21px 19px 25px; grid-template-columns: 145px 1fr; gap: 0 12px; }
  .candle-preview > .custom-kicker { font-size: 7px; letter-spacing: 1.4px; }
  .candle-preview-stage { height: 240px; transform: scale(.63); margin: -7px -35px; }
  .candle-preview > p { font-size: 10px; line-height: 1.8; }
  .candle-preview-caption { font-size: 8px; line-height: 1.8; }
}
@media (max-width:360px) { .candle-preview { grid-template-columns: 120px 1fr; gap: 0 9px; } .candle-preview-stage { transform: scale(.54); } .soap-builder-section { padding-left: 12px; padding-right: 12px; } }
