/* Nail Atelier v2.14.51. Scoped to core-nails; does not affect other storefront templates. */
.nl-site .nl51-commerce{background:linear-gradient(180deg,#fff7fa 0%,#fff 28%,#fffafc 100%);padding:42px 0 86px;color:#4d3040}
.nl-site .nl51-commerce>.container{max-width:1180px}
.nl-site .nl51-listing-heading{text-align:center;margin:2px auto 37px;max-width:660px}
.nl-site .nl51-listing-heading h1{color:#54213d;font-size:clamp(34px,4.3vw,58px);font-weight:500;line-height:1.14;margin:7px 0 13px}
.nl-site .nl51-listing-heading p{font-size:16px;color:#785a68;line-height:1.75;margin:0}
.nl-site .nl51-eyebrow{display:block;font-size:13px;font-weight:750;letter-spacing:.19em;text-transform:uppercase;color:#c33476}
.nl-site .nl51-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:7px 0 26px;color:#826778;font-size:14px}
.nl-site .nl51-crumbs>a{color:#854160;text-decoration:none}
.nl-site .nl51-crumbs>a:hover{text-decoration:underline;color:#c13173}
.nl-site .nl51-crumbs>[aria-current=page]{color:#4c2440}
.nl-site .nl51-category-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:11px;margin:0 auto 31px;max-width:1110px}
.nl-site .nl51-category-filters>.nl-category-pill{background:#fff;color:#673650;border:1px solid #efd6e2;border-radius:999px;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;box-shadow:0 3px 15px #7b305009;font-size:14px;line-height:1.3;text-decoration:none;min-height:43px;transition:background .18s,color .18s,border-color .18s,transform .18s}
.nl-site .nl51-category-filters>.nl-category-pill small{font-size:12px;opacity:.8;color:inherit}
.nl-site .nl51-category-filters>.nl-category-pill:hover,.nl-site .nl51-category-filters>.nl-category-pill[aria-current=page]{background:#a92d68;color:#fff;border-color:#a92d68;transform:translateY(-1px)}
.nl-site .nl51-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:12px 0 32px}
.nl-site .nl51-product-card{overflow:hidden;min-width:0;border:1px solid #f1dce5;border-radius:19px;background:#fff;box-shadow:0 12px 38px #61243d0a;transition:transform .2s,box-shadow .2s}
.nl-site .nl51-product-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px #7228491c}
.nl-site .nl51-product-photo{display:block;position:relative;aspect-ratio:1/1;overflow:hidden;background:#fceef3;color:#b52e70}
.nl-site .nl51-product-photo>img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.nl-site .nl51-product-card:hover .nl51-product-photo>img{transform:scale(1.045)}
.nl-site .nl51-product-empty{display:grid;place-items:center;width:100%;height:100%;font:italic 90px Georgia,serif;color:#d58cae}
.nl-site .nl51-product-quick{position:absolute;inset:auto 13px 13px;background:#ffffffed;border-radius:999px;padding:10px 17px;text-align:center;font-size:14px;font-weight:650;color:#7f2852;opacity:0;transform:translateY(8px);transition:opacity .2s,transform .2s}
.nl-site .nl51-product-card:hover .nl51-product-quick,.nl-site .nl51-product-photo:focus-visible .nl51-product-quick{opacity:1;transform:none}
.nl-site .nl51-product-copy{padding:22px 23px 24px}
.nl-site .nl51-product-category{color:#ba4a7e;text-transform:uppercase;font-size:12px;font-weight:750;letter-spacing:.10em}
.nl-site .nl51-product-copy h2{font:500 clamp(21px,2vw,26px)/1.25 Georgia,serif;color:#4b2940;margin:7px 0 12px;letter-spacing:normal}
.nl-site .nl51-product-copy h2>a{color:inherit;text-decoration:none}
.nl-site .nl51-product-copy h2>a:hover{color:#b82b6e}
.nl-site .nl51-product-price{font-size:19px;font-weight:750;color:#a52b63;margin:0 0 9px}
.nl-site .nl51-stock{display:inline-flex;align-items:center;color:#39734a;font-size:13px;font-weight:600;margin-bottom:16px}
.nl-site .nl51-stock-out{color:#a94657}
.nl-site .nl51-card-link{display:flex;align-items:center;justify-content:space-between;background:#fff5f8;border-radius:10px;padding:12px 14px;text-decoration:none;color:#8a2a56;font-size:14px;font-weight:700;transition:background .2s,color .2s}
.nl-site .nl51-card-link:hover{background:#9e295f;color:#fff}
.nl-site .nl51-detail-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(24px,5vw,70px);align-items:start;padding-bottom:56px}
.nl-site .nl51-gallery{min-width:0}
.nl-site .nl51-gallery-stage{position:relative;border:1px solid #edd4df;border-radius:20px;overflow:hidden;background:#fff0f5;box-shadow:0 15px 45px #73284915}
.nl-site .nl51-main-photo{display:block;width:100%;border:none;padding:0;aspect-ratio:1/1;background:#fff0f5;cursor:zoom-in;position:relative;overflow:hidden}
.nl-site .nl51-main-photo img{display:block;height:100%;width:100%;object-fit:contain;transition:transform .3s;}
.nl-site .nl51-main-photo:hover img{transform:scale(1.07)}
.nl-site .nl51-magnify{position:absolute;right:15px;bottom:16px;display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:8px 13px;background:#fffE;color:#5b2b44;font-size:13px;font-weight:650;box-shadow:0 2px 12px #0001}
.nl-site .nl51-magnify span{font-size:21px;line-height:1}
.nl-site .nl51-counter{position:absolute;top:15px;right:16px;background:#fffE;color:#633c4c;border-radius:40px;padding:7px 14px;font-size:13px;font-weight:700}
.nl-site .nl51-thumbnails{display:grid;grid-auto-columns:94px;grid-auto-flow:column;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding:13px 2px 8px;scrollbar-width:thin}
.nl-site .nl51-thumbnails button{aspect-ratio:1/1;padding:4px;border-radius:13px;border:2px solid transparent;background:#fff;cursor:pointer;scroll-snap-align:start;transition:border .2s}
.nl-site .nl51-thumbnails button:hover,.nl-site .nl51-thumbnails button[aria-pressed=true]{border-color:#d42e7b}
.nl-site .nl51-thumbnails img{display:block;width:100%;height:100%;object-fit:cover;border-radius:9px}
.nl-site .nl51-detail-content{padding:4px 0 10px}
.nl-site .nl51-detail-content h1{font:500 clamp(34px,4vw,56px)/1.11 Georgia,serif;color:#4d2540;letter-spacing:-.02em;margin:12px 0 23px}
.nl-site .nl51-detail-price{color:#a92164;font-size:clamp(22px,2.6vw,29px);font-weight:750;margin:0 0 17px}
.nl-site .nl51-availability{color:#35784b;font-size:14px;font-weight:650;display:flex;align-items:center;gap:8px;padding-bottom:20px;border-bottom:1px solid #eddde5}
.nl-site .nl51-availability span{font-size:10px}
.nl-site .nl51-availability.is-unavailable{color:#ba3f58}
.nl-site .nl51-description{font-size:16px;line-height:1.8;color:#644b59;margin:24px 0 18px;overflow-wrap:anywhere}
.nl-site .nl51-description :is(p,ul,ol){margin:0 0 13px}
.nl-site .nl51-buy{margin:25px 0;max-width:100%}
.nl-site .nl51-buy>label{font-size:14px;font-weight:700;color:#5f354b;display:block;margin-bottom:10px}
.nl-site .nl51-buy-row{display:flex;align-items:stretch;gap:12px;max-width:100%}
.nl-site .nl51-buy-row>input{width:104px;flex:none;font-size:17px;text-align:center;color:#4b2a40;background:#fff;border:1px solid #dfc1d0;border-radius:12px;padding:12px}
.nl-site .nl51-buy-row>button,.nl-site .nl51-enquiry-button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:13px 22px;min-height:54px;border:0;border-radius:12px;background:linear-gradient(100deg,#f03583,#ab2466);color:#fff;font-size:16px;font-weight:750;box-shadow:0 9px 24px #d32f7430;text-decoration:none;cursor:pointer}
.nl-site .nl51-buy-row>button:hover,.nl-site .nl51-enquiry-button:hover{background:linear-gradient(100deg,#b22c6a,#86234f);color:#fff}
.nl-site .nl51-details-card{border:1px solid #eed8e3;background:#fff9fc;border-radius:16px;padding:22px;margin-top:24px}
.nl-site .nl51-details-card h2{font:500 25px Georgia,serif;margin:0 0 14px;color:#512540}
.nl-site .nl51-details-card dl{margin:0;display:grid;gap:0}
.nl-site .nl51-details-card dl>div{display:grid;grid-template-columns:110px 1fr;gap:10px;border-bottom:1px solid #f1e1e9;padding:9px 0;font-size:14px}
.nl-site .nl51-details-card dl>div:last-child{border:0}
.nl-site .nl51-details-card dt{font-weight:700;color:#694b5d}.nl-site .nl51-details-card dd{margin:0;overflow-wrap:anywhere}
.nl-site .nl51-order-note{color:#826d77;font-size:14px;line-height:1.6;margin:19px 0}
.nl-site .nl51-order-note>a{color:#a62a68;text-decoration:underline}
.nl-site .nl51-unavailable{color:#a74457;font-weight:700}
.nl-site .nl51-related{padding:54px 0 10px;border-top:1px solid #efdbe5}
.nl-site .nl51-related-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 23px}
.nl-site .nl51-related-heading h2{font:500 clamp(29px,3vw,40px) Georgia,serif;color:#572a45;margin:8px 0 0}
.nl-site .nl51-related-heading>a{font-size:14px;color:#a62b69;font-weight:750;text-decoration:none}
.nl-site .nl51-no-photo{aspect-ratio:1/1;border-radius:20px;background:linear-gradient(135deg,#f7d7e7,#fff5f9);display:grid;align-content:center;justify-items:center;color:#be6d91;font:italic 120px Georgia,serif}
.nl-site .nl51-no-photo small{font:normal 15px system-ui,sans-serif;color:#77566a}
.nl-site .nl51-lightbox{width:95vw;max-width:1100px;height:93vh;max-height:900px;border:0;border-radius:18px;padding:15px 20px 24px;background:#251724;color:#fff;box-shadow:0 30px 100px #0009}
.nl-site .nl51-lightbox::backdrop{background:#150c16e8;backdrop-filter:blur(5px)}
.nl-site .nl51-lightbox-tools{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:14px;margin-bottom:12px}
.nl-site .nl51-lightbox-tools>button{background:#ffffff22!important;color:#fff!important;border:1px solid #ffffff33;border-radius:50%;height:42px;width:42px;padding:0!important;font-size:28px;line-height:1;cursor:pointer}
.nl-site .nl51-lightbox-view{display:flex;align-items:center;justify-content:space-between;gap:12px;height:calc(100% - 60px)}
.nl-site .nl51-lightbox-view>img{height:100%;width:calc(100% - 90px);flex:1;object-fit:contain;min-width:0}
.nl-site .nl51-lightbox-view>button{border-radius:50%;flex:none;width:40px;height:40px;border:1px solid #ffffff45;background:#ffffff22!important;color:#fff!important;padding:0!important;font-size:30px;cursor:pointer}
.nl-site :is(.nl51-thumbnails button,.nl51-main-photo,.nl51-buy-row button,.nl51-card-link):focus-visible{outline:3px solid #e3337f;outline-offset:3px}
/* Homepage product showcase follows the same premium product card rules. */
.nl-site .nl-featured-shop .nl51-product-grid{margin-top:17px}
@media(max-width:1050px){.nl-site .nl51-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nl-site .nl51-detail-layout{gap:28px}}
@media(max-width:760px){.nl-site .nl51-detail-layout{grid-template-columns:1fr;gap:25px}.nl-site .nl51-commerce{padding-top:30px}.nl-site .nl51-thumbnails{grid-auto-columns:78px}.nl-site .nl51-product-grid{gap:15px}}
@media(max-width:530px){.nl-site .nl51-product-grid{grid-template-columns:1fr;gap:18px}.nl-site .nl51-product-quick{opacity:1;transform:none}.nl-site .nl51-buy-row{gap:8px}.nl-site .nl51-buy-row>input{width:84px}.nl-site .nl51-buy-row>button{padding:10px 12px;font-size:14px}.nl-site .nl51-related-heading{align-items:start;flex-direction:column}.nl-site .nl51-lightbox{padding:12px;width:100vw;height:100vh;max-height:none;border-radius:0}.nl-site .nl51-lightbox-view{gap:5px}.nl-site .nl51-lightbox-view>button{width:32px;height:32px}.nl-site .nl51-lightbox-view>img{width:calc(100% - 70px)}}
@media(hover:none){.nl-site .nl51-product-quick{opacity:1;transform:none}}
/* Older Nails commerce stylesheet uses !important for generic buttons. Override only the new gallery controls. */
.nl-site .nl51-main-photo{background:#fff0f5!important;color:#5d314b!important;border:0!important;border-radius:0!important;min-height:0!important;box-shadow:none!important}
.nl-site .nl51-thumbnails button{background:#fff!important;color:#5d314b!important;border:2px solid transparent!important;border-radius:13px!important;padding:4px!important;min-height:0!important;box-shadow:none!important}
.nl-site .nl51-thumbnails button:hover,.nl-site .nl51-thumbnails button[aria-pressed=true]{border-color:#d42e7b!important}
.nl-site .nl51-buy-row>button{background:linear-gradient(100deg,#f03583,#ab2466)!important;color:#fff!important}
.nl-site .nl51-buy-row>button:hover{background:linear-gradient(100deg,#b22c6a,#86234f)!important}

/* v2.14.52: Real SKU options, separate from the product's public title. */
.nl52-variant-picker{margin:25px 0;padding:22px;border:1px solid #efd8e5;background:#fffafd;border-radius:15px}
.nl52-variant-picker h2{font-size:19px!important;margin:0 0 17px!important;color:#452039}
.nl52-variant-picker fieldset{border:0!important;padding:0!important;margin:0 0 15px!important}
.nl52-variant-picker legend{font-size:14px;font-weight:700;color:#54344b;padding:0;margin-bottom:9px}
.nl52-options{display:flex;flex-wrap:wrap;gap:9px}
.nl52-option{display:inline-flex;align-items:center;justify-content:center;min-width:62px;min-height:40px;border:1px solid #ecc7db;border-radius:9px;padding:7px 13px;background:#fff!important;color:#6b3555!important;text-decoration:none!important;font-size:14px;font-weight:600;transition:background .15s,border-color .15s}
.nl52-option:is(:hover,:focus-visible),.nl52-option.is-selected{background:#762650!important;border-color:#762650!important;color:#fff!important}
.nl52-option-note{font-size:12px;line-height:1.5;color:#776070;margin:8px 0 0}
.nl51-details-card dl div{overflow-wrap:anywhere}
