/* Colour swatches, size links, quantity stepper, size guide popup, bra size calculator. */

/* Option labels: "Color: Blush Pink" with the size links on the right. */
.nz-product__form table.variations th.label{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.nz-product__form table.variations th.label label{margin:0}
.nz-opts__current{font-weight:400}
.nz-link{appearance:none;border:0;background:none;padding:6px 0;margin:-6px 0;font:inherit;font-size:13px;font-weight:600;color:var(--nz-accent,#B8456B);text-decoration:underline;cursor:pointer;white-space:nowrap}
.nz-link:hover{color:#8C2F50}
.nz-link:focus-visible,.nz-opt:focus-visible,.nz-qty button:focus-visible,.nz-dialog__close:focus-visible{outline:2px solid #3A2630;outline-offset:2px}

/* Colour circles. */
.nz-opts--swatch{gap:12px}
.nz-opt.nz-opt--swatch,.nz-opt.nz-opt--swatch.is-active{min-width:0;width:40px;height:40px;padding:0;border-radius:50%;background:var(--sw,#FBE4E8);border:1px solid #D9BFC6;font-size:0;text-decoration:none}
.nz-opt.nz-opt--swatch.is-active{border:2px solid #fff;outline:2px solid var(--nz-accent,#B8456B)}
.nz-opt.nz-opt--swatch.is-off{opacity:.35;border-style:dashed}

/* Quantity stepper. */
.nz-product__form .quantity.nz-qty{display:flex;align-items:center;justify-content:space-between;flex:0 0 116px;width:116px;height:48px;box-sizing:border-box;border:1px solid #E9CFD6;border-radius:999px;background:#fff}
.nz-product__form .quantity.nz-qty input.qty{flex:1;min-width:0;width:28px;height:46px;padding:0;border:0;background:none;text-align:center;font:inherit;font-weight:600;color:#3A2630;appearance:textfield;-moz-appearance:textfield}
.nz-product__form .quantity.nz-qty input.qty::-webkit-outer-spin-button,.nz-product__form .quantity.nz-qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.nz-qty button{flex:0 0 40px;width:40px;height:46px;border:0;background:none;color:#3A2630;font-size:20px;line-height:1;cursor:pointer;border-radius:999px}

/* Video tile in the thumbnails, and the hidden state of the floating player. */
.nz-gallery__thumb--video{background:#3A2630;color:#fff;display:flex;align-items:center;justify-content:center;border-color:transparent}
.nz-float-video[hidden]{display:none}

/* Popup. */
.nz-dialog{width:min(560px,calc(100vw - 24px));max-height:min(86vh,760px);padding:0;border:0;border-radius:20px;background:#fff;color:#3A2630;box-shadow:0 24px 60px rgba(58,38,48,.3);overflow:hidden}
.nz-dialog[open]{display:flex;flex-direction:column}
.nz-dialog::backdrop{background:rgba(58,38,48,.55)}
.nz-dialog__head{display:flex;align-items:center;justify-content:space-between;padding:10px 8px 10px 20px;border-bottom:1px solid #F3E3E7}
.nz-dialog__head h2{margin:0;font-family:'Fraunces',serif;font-weight:500;font-size:24px}
.nz-dialog__close{width:44px;height:44px;border:0;background:none;color:#3A2630;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%}
.nz-dialog__body{padding:6px 20px 20px;overflow:auto}
.nz-dialog__cta{display:flex;align-items:center;justify-content:center;margin-top:16px;height:48px}

/* Charts. */
.nz-chart__title{margin:16px 0 6px;font-family:'Jost',system-ui,sans-serif;font-size:15px;font-weight:600}
.nz-chart__hint{margin:0 0 8px;font-size:13px;color:#5E4650}
.nz-chart__note{margin:14px 0 0;font-size:13px;color:#5E4650}
.nz-chart{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
.nz-chart th,.nz-chart td{padding:9px 10px;text-align:left;border-bottom:1px solid #F3E3E7}
.nz-chart thead th{font-size:12px;font-weight:600;color:#5E4650;background:var(--nz-tint,#FBE4E8);border-bottom:0}
.nz-chart thead th:first-child{border-radius:10px 0 0 10px}
.nz-chart thead th:last-child{border-radius:0 10px 10px 0}
.nz-chart tbody th{font-weight:600}

/* Calculator page. */
.nz-calc__grid{display:grid;gap:28px;margin-top:22px}
.nz-calc__form{display:flex;flex-direction:column;gap:16px;padding:20px;border-radius:20px;background:#fff;border:1px solid #F3E3E7}
.nz-calc__units{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0;padding:0;border:0}
.nz-calc__units legend{padding:0;margin-bottom:6px;font-weight:600;font-size:14px}
.nz-calc__units label{display:flex;align-items:center;gap:8px;min-height:32px}
.nz-calc__units input{width:18px;height:18px;accent-color:var(--nz-accent,#B8456B)}
.nz-field{display:flex;flex-direction:column;gap:6px}
.nz-field label{font-weight:600;font-size:14px}
.nz-field label span{font-weight:400;color:#5E4650}
.nz-field input{height:48px;box-sizing:border-box;border:1px solid #E9CFD6;border-radius:12px;padding:0 14px;font:inherit;font-size:16px;color:#3A2630;background:#fff}
.nz-field input:focus-visible{outline:2px solid var(--nz-accent,#B8456B);outline-offset:1px}
.nz-field__help{margin:0;font-size:13px;color:#5E4650}
.nz-calc__submit{height:50px}
.nz-calc__result{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px;border-radius:16px;background:var(--nz-tint,#FBE4E8);text-align:center}
.nz-calc__result[hidden]{display:none}
.nz-calc__result.is-error{align-items:flex-start;text-align:left;background:#FFF4E5;color:#6B4A12;font-size:14px}
.nz-calc__label{font-size:13px;color:#5E4650}
.nz-calc__size{font-family:'Fraunces',serif;font-weight:500;font-size:44px;line-height:1.1;color:#8C2F50}
.nz-calc__detail{font-size:13px;color:#5E4650;margin-bottom:10px}
.nz-calc__result .nz-btn{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 24px;border-radius:999px;border:1px solid var(--nz-accent,#B8456B);background:#fff;color:var(--nz-accent,#B8456B);font-weight:600;text-decoration:none}
.nz-calc__h2{margin:0;font-family:'Fraunces',serif;font-weight:500;font-size:24px}
@media (min-width:1024px){
	.nz-calc__grid{grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:48px;align-items:start}
}
