@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,700;0,800;1,700;1,800&display=swap');:root{--purple:#7B337E;--deep:#420D4B;--pink:#F5D5E0;--lav:#F5D5E0;--ink:#210635}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#F5D5E0;color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.announcement{text-align:center;background:linear-gradient(90deg,#6667AB,#7B337E,#420D4B);color:white;font-size:10px;letter-spacing:2px;padding:12px 10px;font-weight:700}.header{background:#fff;display:flex;align-items:center;justify-content:space-between;padding:20px max(5%,calc((100vw - 1160px)/2));gap:20px;position:relative;z-index:4}.nav{display:flex;gap:23px;font-size:12px;color:#6667AB}.nav a:hover{color:#7B337E}.logo{font-family:'Playfair Display',serif;font-size:28px;font-style:italic;font-weight:800;color:#420D4B;text-align:center;line-height:1}.logo span{color:#7B337E}.logo small{display:block;font:700 9px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:8px}.menu{display:none}.hero{min-height:550px;background:linear-gradient(115deg,#6667AB 0%,#7B337E 45%,#420D4B 100%);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:55px max(7%,calc((100vw - 1050px)/2)) 85px;position:relative;overflow:hidden;gap:60px}.grid-art{position:absolute;right:0;top:0;width:180px;height:130px;opacity:.25;background:repeating-linear-gradient(90deg,transparent 0 24px,#F5D5E0 25px 26px),repeating-linear-gradient(0deg,transparent 0 24px,#F5D5E0 25px 26px);transform:rotate(7deg)}.eyebrow{font-size:11px;letter-spacing:4px;font-weight:700;color:#F5D5E0}.hero h1,h2{font-family:'Playfair Display',serif;line-height:1.08}.hero h1{font-size:clamp(46px,5.5vw,76px);margin:20px 0;color:#F5D5E0}.hero h1 em,h2 em{color:#F5D5E0}.hero-copy>p:not(.eyebrow){line-height:1.8;max-width:400px;font-size:15px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(120deg,#7B337E,#420D4B);color:#fff;padding:17px 24px;font-weight:700;letter-spacing:2px;font-size:11px;border:0;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-3px);box-shadow:0 10px 25px #420D4B45}.under{display:block;text-decoration:underline;text-underline-offset:5px;font-size:11px;letter-spacing:1px;margin-top:22px;font-weight:700}.hero-art{position:relative}.photo-frame{border:9px solid white;box-shadow:0 16px 40px #21063530;transform:rotate(2deg);position:relative;background:white}.photo-frame img{width:100%;height:365px;object-fit:cover;display:block;filter:saturate(.75)}.photo-label{position:absolute;bottom:15px;left:15px;right:15px;background:#F5D5E0e8;padding:12px;text-align:center;font-family:'Playfair Display',serif;font-style:italic;font-size:16px}.scribble{position:absolute;top:-44px;left:-22px;font-size:46px;letter-spacing:-20px;color:#F5D5E0}.flower{position:absolute;bottom:-28px;right:-28px;color:#F5D5E0;font-size:65px}.spark{position:absolute;color:#fff;font-size:35px}.s1{top:15%;left:43%}.s2{bottom:15%;left:4%}.s3{top:35%;right:3%}.wave{position:absolute;bottom:-1px;left:0;width:100%;height:30px;background:#fff;clip-path:polygon(0 45%,5% 60%,10% 35%,15% 65%,20% 35%,25% 60%,30% 40%,35% 65%,40% 35%,45% 60%,50% 40%,55% 60%,60% 35%,65% 65%,70% 40%,75% 60%,80% 35%,85% 65%,90% 40%,95% 60%,100% 35%,100% 100%,0 100%)}.section{padding:85px max(6%,calc((100vw - 1140px)/2))}.categories,.faq{background:white}.center{text-align:center}.section h2,.shipping h2,.newsletter h2{font-size:clamp(37px,4.5vw,60px);margin:12px 0 36px}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.category{min-height:240px;padding:25px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:white;transition:transform .25s;overflow:hidden;position:relative}.category:hover{transform:translateY(-7px)}.category:before{content:'';position:absolute;inset:0;background:repeating-radial-gradient(circle at 10% 10%,transparent 0 13px,#ffffff1b 14px 15px);opacity:.7}.category>*{position:relative}.category span{font-size:36px;margin-bottom:18px}.category strong{font-family:'Playfair Display',serif;font-size:24px;font-style:italic;line-height:1.1;text-shadow:0 2px 3px #0002}.category small{font-size:9px;letter-spacing:2px;margin-top:22px}.c1{background:linear-gradient(140deg,#6667AB,#7B337E)}.c2{background:linear-gradient(140deg,#F5D5E0,#7B337E)}.c3{background:linear-gradient(140deg,#420D4B,#6667AB)}.c4{background:linear-gradient(140deg,#7B337E,#420D4B)}.note{text-align:center;color:#6667AB;font-size:12px;margin-top:25px}.shipping{background:linear-gradient(110deg,#6667AB,#7B337E,#420D4B);color:white;text-align:center;display:flex;align-items:center;justify-content:space-evenly;padding:65px 25px}.shipping>span{font-size:65px;opacity:.5}.shipping .eyebrow{color:#F5D5E0}.shipping h2{margin:15px 0}.shipping h2 em{color:#F5D5E0}.shipping p:last-child{max-width:530px;line-height:1.8;margin:auto;font-size:14px}.about{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px;background:linear-gradient(140deg,#F5D5E0,#6667AB)}.about-art{min-height:350px;display:grid;place-items:center;position:relative}.orb{width:280px;height:280px;border-radius:48% 52% 45% 55%;background:radial-gradient(circle at 30% 30%,#ffffff66,#7B337E 50%,#420D4B);box-shadow:0 15px 40px #21063544,inset 0 0 30px #fff9;display:grid;place-items:center;transform:rotate(-12deg)}.orb span{font-size:150px;color:#fff5f9;text-shadow:0 0 22px white}.sticker{position:absolute;bottom:10px;right:5px;background:white;color:#420D4B;transform:rotate(8deg);font-weight:800;font-size:12px;text-align:center;padding:20px;line-height:1.5;box-shadow:0 10px 20px #21063525}.about-copy p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:470px}.light{background:white;color:#8547a4}.custom{background:linear-gradient(140deg,#fff,#F5D5E0)}.intro{max-width:610px;margin:-15px auto 35px;color:#6667AB;line-height:1.7}form{max-width:760px;margin:auto;background:#fff;padding:35px;box-shadow:0 10px 40px #9b60a019}form label{display:block;font-size:12px;font-weight:700;letter-spacing:.3px;margin-bottom:20px}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,select,textarea{font:inherit;display:block;width:100%;padding:15px;border:1px solid #6667AB;background:#F5D5E0;margin-top:9px;color:#210635;border-radius:0}input:focus,select:focus,textarea:focus{outline:2px solid #7B337E}.check{display:flex;gap:12px;align-items:flex-start;line-height:1.6;font-weight:500}.check input{width:auto;margin:3px 0}.form-status{font-size:12px;white-space:pre-wrap;line-height:1.6}.faq{max-width:none}.faq details{max-width:790px;margin:0 auto;border-bottom:1px solid #F5D5E0;padding:20px 0}.faq summary{cursor:pointer;font-weight:700}.faq details p{line-height:1.7;color:#6667AB}.newsletter{background:linear-gradient(120deg,#6667AB,#7B337E,#420D4B);text-align:center;color:white;padding:65px 20px}.newsletter>span{font-size:50px}.newsletter h2{margin:8px 0 18px}.newsletter h2 em{color:#F5D5E0}.newsletter p{font-size:14px;line-height:1.7;margin-bottom:25px}footer{text-align:center;background:#fff;padding:40px 20px;color:#6667AB;font-size:12px}.footer-logo{font:italic 800 26px 'Playfair Display',serif;color:#420D4B}footer small{display:block;margin-top:22px}@media(max-width:760px){.header{padding:20px;flex-wrap:wrap}.logo{font-size:24px}.nav{display:none;order:3;width:100%;justify-content:center;flex-wrap:wrap}.header.expanded .nav{display:flex}.menu{display:block;background:none;border:0;color:#420D4B;font-size:25px}.hero{grid-template-columns:1fr;padding:55px 8% 75px;gap:35px}.hero h1{font-size:53px}.photo-frame{max-width:450px;margin:auto}.photo-frame img{height:300px}.category-grid{grid-template-columns:repeat(2,1fr)}.category{min-height:200px}.about{grid-template-columns:1fr;gap:20px}.about-art{min-height:300px}.two{grid-template-columns:1fr;gap:0}.shipping>span{display:none}form{padding:24px}.section{padding:65px 6%}}@media(max-width:400px){.category strong{font-size:19px}.category{min-height:175px}.hero h1{font-size:44px}}

/* MOON palette: blush #F5D5E0, periwinkle #6667AB, orchid #7B337E, plum #420D4B, midnight #210635 */
.hero{background:linear-gradient(120deg,#6667AB 0%,#7B337E 52%,#420D4B 100%);color:#F5D5E0}.hero-copy>p:not(.eyebrow){color:#F5D5E0}.hero .btn{background:linear-gradient(110deg,#F5D5E0,#d7b3df);color:#210635}.hero .under{color:#F5D5E0}.hero .photo-label{color:#210635}.category.c2{color:#210635}.categories h2,.custom h2,.faq h2{color:#420D4B}.shipping{background:linear-gradient(115deg,#6667AB,#7B337E 52%,#210635)}.about{background:linear-gradient(135deg,#F5D5E0,#b6a1cf 55%,#6667AB)}.about .eyebrow{color:#420D4B}.about h2{color:#210635}.newsletter{background:linear-gradient(115deg,#6667AB,#7B337E,#420D4B)}.announcement{background:linear-gradient(90deg,#6667AB,#7B337E,#420D4B)}.custom{background:linear-gradient(145deg,#fff,#F5D5E0)}.category.c1{background:linear-gradient(135deg,#6667AB,#7B337E)}.category.c2{background:linear-gradient(135deg,#F5D5E0,#b8a0d0)}.category.c3{background:linear-gradient(135deg,#7B337E,#420D4B)}.category.c4{background:linear-gradient(135deg,#6667AB,#210635)}.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #6667AB;outline-offset:3px}

/* Shop launch placeholder */
.shop-waitlist{min-height:68vh;display:grid;place-items:center;text-align:center;padding:95px 22px;background:radial-gradient(ellipse at 15% 20%,#f5d5e0 0%,transparent 42%),radial-gradient(ellipse at 88% 85%,#6667ab 0%,transparent 45%),linear-gradient(135deg,#f5d5e0 0%,#c8a5d8 40%,#7b337e 76%,#420d4b 100%);}
.shop-waitlist-inner{max-width:760px;margin:auto;padding:32px 18px;}
.coming-ornament{color:#7b337e;letter-spacing:20px;font-size:28px;margin:18px 0;}
.coming-title{font-size:clamp(3rem,8vw,6.5rem);line-height:1.05;letter-spacing:-.05em;color:#210635;margin:12px 0 25px;}
.coming-title em{color:#7b337e;font-weight:500;}
.coming-copy{max-width:520px;margin:0 auto 26px;font-size:1.13rem;line-height:1.7;color:#420d4b;}
.coming-tag{display:inline-block;border:1px solid #7b337e;border-radius:100px;padding:13px 25px;color:#420d4b;background:#ffffff99;font-size:.78rem;font-weight:800;letter-spacing:.15em;}
.coming-local{margin:28px auto 16px;color:#420d4b;line-height:1.9;}
.coming-contact{color:#420d4b;text-decoration:underline;text-underline-offset:4px;font-weight:700;overflow-wrap:anywhere;}

/* Launch status and custom order availability */
.launch-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;margin:24px auto 16px}
.shop-link{text-decoration:none;transition:transform .2s ease,background .2s ease}
.shop-link:hover{transform:translateY(-2px);background:#f5d5e0}
.custom-open-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:100px;padding:15px 25px;background:#420d4b;color:#fff;text-decoration:none;font-size:.79rem;font-weight:800;letter-spacing:.11em;box-shadow:0 9px 25px #21063533;transition:background .2s ease,transform .2s ease}
.custom-open-link:hover{background:#7b337e;transform:translateY(-2px)}
.custom-open-copy{max-width:590px;margin:15px auto 22px;color:#420d4b;font-size:1rem;line-height:1.7;text-align:center}
@media(max-width:560px){.launch-actions{flex-direction:column}.launch-actions>a{width:min(100%,340px)}.custom-open-link{font-size:.72rem;letter-spacing:.08em}}

/* Coming soon is an informational label, not a link. */
.coming-tag.shop-link {cursor:default; pointer-events:none; text-decoration:none; display:inline-flex; align-items:center; justify-content:center;}


/* BARBSSHOPS boutique UI: cohesive rounded controls, mobile-first spacing */
:root{--ui-shadow:0 12px 28px rgba(33,6,53,.18);--ui-radius:999px}
a.btn,button.btn,.custom-open-link,.coming-tag,.contact-actions .btn{
  appearance:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;max-width:100%;width:auto;padding:15px 27px;
  border:1px solid rgba(255,255,255,.36);border-radius:var(--ui-radius);
  background:linear-gradient(125deg,#7B337E,#420D4B);color:#fff;
  box-shadow:var(--ui-shadow),inset 0 1px 0 rgba(255,255,255,.24);
  font:700 12px/1.35 'DM Sans',sans-serif;letter-spacing:.105em;text-align:center;
  text-decoration:none;white-space:normal;overflow-wrap:break-word;cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
a.btn:hover,button.btn:hover,.custom-open-link:hover,.contact-actions .btn:hover{
  transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 16px 34px rgba(33,6,53,.26);
}
a.btn:active,button.btn:active,.custom-open-link:active{transform:translateY(0) scale(.985)}
a.btn.light,.contact-actions .btn.light{background:linear-gradient(120deg,#fff8fc,#F5D5E0);color:#420D4B;border-color:#ffffffa6}
.contact-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:14px;margin:28px auto 0;max-width:760px}
.contact-actions .btn{flex:1 1 240px;margin:0;min-width:0}
.newsletter .contact-actions .btn{vertical-align:middle}
.launch-actions{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:14px;margin:28px auto 20px}
.launch-actions .coming-tag,.launch-actions .custom-open-link{min-height:54px;flex:0 1 auto;margin:0}
.launch-actions .coming-tag{border:1px solid rgba(66,13,75,.3);background:rgba(255,255,255,.65);color:#420D4B;box-shadow:0 8px 24px rgba(33,6,53,.09);cursor:default;pointer-events:none}
.custom-open-link{background:linear-gradient(120deg,#7B337E,#420D4B);color:white}
.menu{border:1px solid #e8d3eb;border-radius:14px;background:#f9eff8;color:#420D4B;width:46px;height:44px;display:none;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px #420d4b16}
.nav a{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border-radius:999px;transition:background .2s,color .2s}
.nav a:hover,.nav a:focus-visible{background:#F5D5E0;color:#420D4B}
form button.btn{width:100%;margin-top:6px}
input,select,textarea{border-radius:14px;border-color:#d6badc;background:#fffafd}
input:focus,select:focus,textarea:focus{outline:2px solid #7B337E;outline-offset:2px}
@media(max-width:760px){.menu{display:inline-flex}.header.expanded .nav{gap:7px}.header.expanded .nav a{background:#f8edf8}.contact-actions{max-width:440px}.contact-actions .btn{flex:1 1 100%;width:100%}.launch-actions{flex-direction:column;align-items:center}.launch-actions .coming-tag,.launch-actions .custom-open-link{width:min(100%,350px);flex:none}.newsletter{padding-left:7%;padding-right:7%}}
@media(max-width:390px){a.btn,button.btn,.custom-open-link,.coming-tag{font-size:11px;letter-spacing:.065em;padding:14px 16px}.logo{font-size:21px}}
@media(prefers-reduced-motion:reduce){a.btn,button.btn,.custom-open-link,.nav a{transition:none}}

/* Boutique mobile dropdown: floating, soft gradient, fully styled */
.header{isolation:isolate}
.mobile-nav{display:none}
.menu{position:relative;z-index:12}
.menu-lines{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center}
.menu-lines i{display:block;width:20px;height:2px;background:#420D4B;border-radius:5px;transition:transform .25s,opacity .2s}
.header.expanded .menu-lines i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.header.expanded .menu-lines i:nth-child(2){opacity:0}
.header.expanded .menu-lines i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%237B337E' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:45px;cursor:pointer}
@media(max-width:760px){
 .header{z-index:20;position:relative;flex-wrap:nowrap}
 .header .nav{display:none!important}
 .menu{display:inline-flex;flex-shrink:0;background:linear-gradient(135deg,#fff9fc,#f1ddf1);border:1px solid #e9cce7;border-radius:15px;box-shadow:0 6px 20px #420d4b1a}
 .mobile-nav{display:flex;flex-direction:column;position:absolute;top:calc(100% - 2px);left:12px;right:12px;background:linear-gradient(155deg,#fffafd 0%,#f8e8f3 60%,#e9ddf5 100%);border:1px solid #e5c7e7;border-radius:0 0 24px 24px;box-shadow:0 20px 35px #21063535;padding:20px 15px 16px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px) scale(.98);transform-origin:top center;transition:opacity .24s,transform .24s,visibility .24s;max-height:calc(100dvh - 190px);overflow-y:auto}
 .header.expanded .mobile-nav{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
 .mobile-nav-heading{display:flex;justify-content:space-between;align-items:center;padding:0 10px 12px;color:#7B337E;font-size:10px;letter-spacing:2.2px;font-weight:800}
 .mobile-nav-heading span{font-size:24px}
 .mobile-nav a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 17px;margin:4px 0;border:1px solid #ecd5eb;border-radius:16px;background:#fffafddd;color:#420D4B;font-size:15px;font-weight:700;box-shadow:0 3px 10px #420d4b0a;transition:background .2s,transform .2s}
 .mobile-nav a:active{transform:scale(.985);background:#f3dbea}
 .mobile-nav a b{font-size:10px;color:#7B337E;opacity:.65}
 .mobile-nav a small{font-size:9px;letter-spacing:.4px;margin-left:5px;color:#7B337E;font-weight:800;white-space:nowrap}
 .mobile-nav-footer{margin:14px 5px 0;text-align:center;color:#7B337E;font-size:9px;line-height:1.7;letter-spacing:1px;font-weight:700}
}
@media(prefers-reduced-motion:reduce){.mobile-nav,.menu-lines i{transition:none}}

/* Fully custom, cross-platform item picker — avoids the native iOS select popup. */
.pretty-select{position:relative;width:100%;font-family:'DM Sans',sans-serif}
.pretty-select-trigger{width:100%;min-height:58px;padding:15px 18px 15px 20px;display:flex;justify-content:space-between;align-items:center;gap:15px;text-align:left;border:1.5px solid #d6badc;border-radius:18px;background:linear-gradient(120deg,#fffafd,#f8edf8);color:#420D4B;font:600 15px/1.5 'DM Sans',sans-serif;box-shadow:0 5px 14px #420d4b0a;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.pretty-select-trigger:hover,.pretty-select.open .pretty-select-trigger{border-color:#7B337E;box-shadow:0 0 0 3px #7b337e17,0 7px 18px #420d4b13}
.pretty-select-trigger:focus-visible,.pretty-select-menu button:focus-visible{outline:3px solid #6667AB;outline-offset:2px}
.pretty-chevron{flex:none;width:10px;height:10px;border-right:2px solid #7B337E;border-bottom:2px solid #7B337E;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.pretty-select.open .pretty-chevron{transform:rotate(225deg) translate(-2px,-2px)}
.pretty-select-menu{position:absolute;top:calc(100% + 9px);left:0;right:0;z-index:50;display:grid;gap:5px;padding:9px;max-height:min(330px,48dvh);overflow-y:auto;overscroll-behavior:contain;border:1px solid #e2c6e7;border-radius:20px;background:linear-gradient(155deg,#fffafd,#f7e7f4 75%,#e8dcf5);box-shadow:0 20px 44px #21063530;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-7px) scale(.985);transition:opacity .18s,transform .18s,visibility .18s}
.pretty-select.open .pretty-select-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
.pretty-select-menu button{appearance:none;display:block;width:100%;border:1px solid transparent;border-radius:13px;padding:14px 15px;text-align:left;background:transparent;color:#420D4B;font:600 14px/1.4 'DM Sans',sans-serif;cursor:pointer;transition:background .15s,transform .15s}
.pretty-select-menu button:hover,.pretty-select-menu button:focus-visible{background:#f5d5e0}
.pretty-select-menu button[aria-selected="true"]{background:linear-gradient(110deg,#7B337E,#420D4B);color:white}
.pretty-select-menu button[aria-selected="true"]::after{content:'✓';float:right;margin-left:10px}
@media(max-width:600px){.pretty-select-menu{max-height:min(310px,43dvh)}.pretty-select-menu button{min-height:48px;padding:13px 14px}.pretty-select-trigger{font-size:14px}}
@media(prefers-reduced-motion:reduce){.pretty-select-menu,.pretty-chevron{transition:none}}

/* BLACK SHEEP EDITION — user-selected palette */
:root{--purple:#545664;--deep:#1E2423;--pink:#767887;--lav:#383B42;--ink:#E9E8EF;--surface:#1E2423;--muted:#A9ABB8}
body{background:#0D0E0D;color:#E9E8EF}
.announcement{background:linear-gradient(100deg,#383B42,#1E2423,#0D0E0D);color:#E9E8EF}
.header,footer{background:#111315;color:#E9E8EF;border-color:#383B42}
.logo,.logo span,.footer-logo,.menu{color:#E9E8EF}
.nav,.nav a,.note,.intro,footer,footer small{color:#B9BBC8}
.nav a:hover,.nav a:focus-visible{background:#383B42;color:#fff}
.hero,.shipping,.newsletter{background:linear-gradient(125deg,#383B42 0%,#1E2423 58%,#0D0E0D 100%);color:#F2F0F7}
.hero h1,.hero h1 em,.shipping h2 em,.newsletter h2 em,.eyebrow{color:#F2F0F7}
.shop-waitlist{background:radial-gradient(ellipse at 12% 20%,#545664 0%,transparent 45%),radial-gradient(ellipse at 92% 88%,#383B42 0%,transparent 42%),linear-gradient(135deg,#383B42,#1E2423 62%,#0D0E0D);color:#F2F0F7}
.shop-waitlist .eyebrow,.shop-waitlist h1,.shop-waitlist h1 em,.coming-title,.coming-copy,.coming-local,.coming-contact,.custom-open-copy{color:#F2F0F7}
.coming-ornament{color:#B9BBC8}
.categories,.faq,.custom,.section:not(.shipping):not(.newsletter):not(.about):not(.shop-waitlist){background:#141618;color:#E9E8EF}
.categories h2,.custom h2,.faq h2,.section h2{color:#F2F0F7}
.about{background:linear-gradient(135deg,#383B42,#1E2423);color:#F2F0F7}
.about h2,.about .eyebrow{color:#F2F0F7}
.c1,.category.c1{background:linear-gradient(135deg,#545664,#383B42)}
.c2,.category.c2{background:linear-gradient(135deg,#767887,#545664);color:#fff}
.c3,.category.c3{background:linear-gradient(135deg,#383B42,#1E2423)}
.c4,.category.c4{background:linear-gradient(135deg,#1E2423,#0D0E0D)}
.btn,a.btn,button.btn,.custom-open-link{background:linear-gradient(125deg,#767887,#545664);color:#fff;border:1px solid #A9ABB8;box-shadow:0 8px 22px #0005}
.hero .btn{background:linear-gradient(125deg,#767887,#545664);color:#fff}
.coming-tag,.shop-link{background:#383B42;color:#E9E8EF;border:1px solid #767887}
form{background:#1E2423;color:#F2F0F7;border:1px solid #545664;border-radius:24px;box-shadow:0 16px 42px #0005}
input,select,textarea{background:#383B42;color:#fff;border:1px solid #767887;border-radius:14px}
input::placeholder,textarea::placeholder{color:#C4C4CE}
input:focus,select:focus,textarea:focus{outline:2px solid #B9BBC8}
.faq details{border-color:#545664}.faq details p{color:#C4C4CE}
.menu{background:#383B42;border-color:#767887}.menu-lines i{background:#F2F0F7}
.mobile-nav{background:linear-gradient(145deg,#383B42,#1E2423,#0D0E0D);border-color:#545664}
.mobile-nav-heading,.mobile-nav-footer{color:#D5D4E0}
.mobile-nav a{background:#383B42;color:#F2F0F7;border-color:#545664}
.mobile-nav a small,.mobile-nav a b{color:#C4C4CE}
.mobile-nav a:active{background:#545664}
.pretty-select-trigger{background:linear-gradient(120deg,#383B42,#1E2423);color:#fff;border-color:#767887}
.pretty-select-trigger:hover,.pretty-select.open .pretty-select-trigger{border-color:#B9BBC8;box-shadow:0 0 0 3px #76788755}
.pretty-chevron{border-color:#D5D4E0}
.pretty-select-menu{background:linear-gradient(145deg,#383B42,#1E2423);border-color:#767887}
.pretty-select-menu button{color:#F2F0F7}
.pretty-select-menu button:hover,.pretty-select-menu button:focus-visible{background:#545664}
.pretty-select-menu button[aria-selected="true"]{background:#767887;color:#fff}
:focus-visible{outline-color:#B9BBC8!important}

/* Contact preferences: matching dark boutique form UI */
#quoteForm select {appearance:none;-webkit-appearance:none;width:100%;border:1px solid #767887;border-radius:18px;background:#1E2423;color:#f4f1f5;padding:17px 42px 17px 18px;font:inherit;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d7d7e3' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 17px center;}
#quoteForm select:focus-visible,#quoteForm input:focus-visible {outline:2px solid #b5b7d0;outline-offset:2px;}
#quoteForm .contact-note {font-size:.88rem;line-height:1.6;opacity:.8;margin:0 0 24px;}

/* BARBSSHOPS • charcoal + violet fusion, November 2026 */
:root{--purple:#9561c8;--deep:#4b256d;--pink:#d5b9ee;--lav:#3a304b;--ink:#f4eefb;--surface:#201c29;--muted:#bdb0ca}
body{background:#0d0e0d;color:#f4eefb}
.announcement{background:linear-gradient(100deg,#383b42,#55316f 52%,#210635);color:#fff}
.header,footer{background:#15131c;color:#f4eefb;border-color:#453753}
.logo,.logo span,.footer-logo{color:#eee0ff}.logo span{color:#b99ce9}
.nav,.nav a,.note,.intro,footer,footer small{color:#c7b7d7}
.nav a:hover,.nav a:focus-visible{background:#3b2b4d;color:#fff}
.hero,.shipping,.newsletter{background:radial-gradient(circle at 12% 12%,#665178 0%,transparent 46%),linear-gradient(125deg,#383b42,#39274b 52%,#100d18 100%);color:#f4eefb}
.hero h1,.hero h1 em,.shipping h2 em,.newsletter h2 em,.eyebrow{color:#f1dfff}
.shop-waitlist{background:radial-gradient(ellipse at 13% 18%,#65467b 0%,transparent 44%),radial-gradient(ellipse at 90% 85%,#545664 0%,transparent 44%),linear-gradient(135deg,#383b42,#2a1d3a 65%,#0d0e0d);color:#f4eefb}
.shop-waitlist .eyebrow,.shop-waitlist h1,.shop-waitlist h1 em,.coming-title,.coming-copy,.coming-local,.coming-contact,.custom-open-copy{color:#f4eefb}
.coming-ornament{color:#d6b4f3}
.categories,.faq,.custom,.section:not(.shipping):not(.newsletter):not(.about):not(.shop-waitlist){background:#17151e;color:#f4eefb}
.categories h2,.custom h2,.faq h2,.section h2{color:#f4eefb}
.about{background:linear-gradient(135deg,#383b42,#39274b 60%,#1e2423);color:#f4eefb}
.about h2,.about .eyebrow{color:#f4eefb}
.category.c1{background:linear-gradient(135deg,#6667ab,#47365b)}
.category.c2{background:linear-gradient(135deg,#767887,#654078);color:#fff}
.category.c3{background:linear-gradient(135deg,#7b337e,#383b42)}
.category.c4{background:linear-gradient(135deg,#383b42,#210635)}
.btn,a.btn,button.btn,.custom-open-link,.hero .btn{background:linear-gradient(120deg,#8b55bd,#55316f);color:#fff;border:1px solid #a985c7;box-shadow:0 8px 25px #0006}
.btn:hover,a.btn:hover,button.btn:hover,.custom-open-link:hover{background:linear-gradient(120deg,#a46ad4,#694184)}
.btn.light,a.btn.light,.contact-actions .btn.light{background:linear-gradient(120deg,#e7d6f4,#bca3d8);color:#23132f;border-color:#ddc9ef}
.coming-tag,.shop-link{background:#30283d;color:#e9d9f8;border:1px solid #896ba6}
form{background:#201c29;color:#f4eefb;border:1px solid #51415e;border-radius:25px;box-shadow:0 16px 42px #0005}
input,select,textarea{background:#2c2636;color:#fff;border:1px solid #675678;border-radius:15px}
input::placeholder,textarea::placeholder{color:#c0b2ca}
input:focus,select:focus,textarea:focus{outline:2px solid #ad83d2}
.faq details{border-color:#4b3b59}.faq details p{color:#c9bcd5}
.menu{background:#292135;color:#eee0ff;border:1px solid #6b5281}
.menu-lines i{background:#e5cafa}
@media(max-width:760px){.mobile-nav{background:linear-gradient(155deg,#292237,#1d1a28);border-color:#665075;box-shadow:0 20px 40px #0009}.mobile-nav-heading,.mobile-nav-footer{color:#d9b9f4}.mobile-nav a,.header.expanded .nav a{background:#32283f;color:#f4eafb;border-color:#59486c}.mobile-nav a small,.mobile-nav a b{color:#d7b6f4}.mobile-nav a:active{background:#513761}}
.pretty-select-trigger{background:linear-gradient(120deg,#30283d,#262130);color:#f5eafa;border-color:#725c85}
.pretty-select-trigger:hover,.pretty-select.open .pretty-select-trigger{border-color:#b78bda;box-shadow:0 0 0 3px #b78bda30}
.pretty-chevron{border-color:#c9a0e7}
.pretty-select-menu{background:linear-gradient(150deg,#33283e,#211b2d);border-color:#755b8a;box-shadow:0 20px 44px #000a}
.pretty-select-menu button{color:#f6e9ff}
.pretty-select-menu button:hover,.pretty-select-menu button:focus-visible{background:#4a365d}
.pretty-select-menu button[aria-selected=true]{background:linear-gradient(120deg,#8150a8,#4b256d);color:#fff}
:focus-visible{outline-color:#c9a0e7!important}

/* Smooth, accessible page-to-page transitions */
html{background:#0d0e0d}
body{opacity:1;transform:none;transition:opacity .52s cubic-bezier(.22,1,.36,1),filter .52s ease;will-change:opacity}
body.page-entering{opacity:0;filter:blur(5px)}
body.page-leaving{opacity:0;filter:blur(4px);pointer-events:none}
.page-transition{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:radial-gradient(ellipse at 40% 30%,#4b256d 0%,#292135 43%,#0d0e0d 100%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s cubic-bezier(.22,1,.36,1),visibility .55s;}
.page-transition.is-active{opacity:1;visibility:visible;pointer-events:all}
.page-transition__inner{text-align:center;color:#f4eefb;transform:translateY(9px);opacity:0;transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .45s ease;padding:24px}
.page-transition.is-active .page-transition__inner{transform:translateY(0);opacity:1}
.page-transition__mark{display:block;font-family:Georgia,serif;font-style:italic;font-size:clamp(2.1rem,7vw,3.4rem);letter-spacing:-.05em}
.page-transition__caption{display:block;margin-top:14px;font-size:.72rem;font-weight:700;letter-spacing:.28em;color:#d9c1ed}
.page-transition__bar{height:2px;width:116px;margin:27px auto 0;border-radius:5px;overflow:hidden;background:#ffffff30}
.page-transition__bar:before{content:'';display:block;width:42%;height:100%;background:linear-gradient(90deg,#b99ce9,#fff);border-radius:5px;animation:barb-progress 1.15s ease-in-out infinite alternate}
@keyframes barb-progress{from{transform:translateX(-100%)}to{transform:translateX(240%)}}
@media(prefers-reduced-motion:reduce){body,.page-transition,.page-transition__inner{transition-duration:.01ms!important;filter:none!important}.page-transition__bar:before{animation:none}}

/* BARBSSHOPS signature glow loader — CSS artwork, no emoji */
.page-transition{background:radial-gradient(circle at 50% 46%,#51306b 0%,#25172f 39%,#0d0e0d 82%);overflow:hidden}
.page-transition__aura{position:absolute;width:min(75vw,510px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#ae76df44 0%,#8d4eb31e 36%,transparent 70%);filter:blur(24px);animation:barb-aura 2.5s ease-in-out infinite alternate}
.page-transition__inner{position:relative;z-index:1;width:min(92vw,450px);padding:36px 20px}
.page-transition__gem{position:relative;width:104px;height:104px;margin:0 auto 23px;filter:drop-shadow(0 0 12px #c99af4) drop-shadow(0 0 29px #b176ef);animation:barb-float 2.4s ease-in-out infinite}
.page-transition__gem svg{width:100%;height:100%}
.page-transition__mark{font-size:clamp(2.1rem,8vw,3.3rem);color:#fff5ff;text-shadow:0 0 13px #d9a4f7aa,0 0 38px #9a4fc688}
.page-transition__caption{margin-top:17px;color:#e6c9f7;font-size:.68rem;letter-spacing:.25em}
.page-transition__hint{display:block;margin-top:15px;font-family:Georgia,serif;font-style:italic;font-size:13px;color:#d4b9e6b8}
.page-transition__bar{height:5px;width:min(210px,65vw);margin-top:25px;border-radius:999px;background:#ffffff1c;box-shadow:0 0 12px #bd84e733}
.page-transition__bar:before{width:48%;background:linear-gradient(90deg,#9e67d9,#f6d4fc,#ffffff);box-shadow:0 0 11px #e9bafa;animation:barb-progress 1.05s ease-in-out infinite alternate}
.twinkle{position:absolute;display:block;width:7px;height:7px;background:#f9e5ff;transform:rotate(45deg);box-shadow:0 0 11px #e9bafa;animation:barb-twinkle 1.5s ease-in-out infinite alternate}
.t1{top:8px;right:-15px}.t2{bottom:14px;left:-18px;animation-delay:.5s}.t3{top:43px;right:-32px;width:4px;height:4px;animation-delay:.9s}
@keyframes barb-float{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.045)}}
@keyframes barb-aura{from{opacity:.65;transform:scale(.9)}to{opacity:1;transform:scale(1.1)}}
@keyframes barb-twinkle{from{opacity:.3;transform:rotate(45deg) scale(.55)}to{opacity:1;transform:rotate(45deg) scale(1.2)}}
@media(prefers-reduced-motion:reduce){.page-transition__gem,.page-transition__aura,.twinkle{animation:none!important}}

/* Loader fix: keep page visible beneath the overlay; the overlay owns all fades. */
body.page-entering,body.page-leaving{opacity:1!important;filter:none!important;pointer-events:auto!important}
.page-transition{transition:opacity .5s ease,visibility .5s ease!important}
.page-transition.is-active{visibility:visible;opacity:1}


/* Gentle, continuous float with a soft bounce at each landing. */
.page-transition__gem{
 transform-origin:center 65%;
 will-change:transform,filter;
 animation:barb-gem-bounce 2.8s cubic-bezier(.42,0,.25,1) infinite;
}
@keyframes barb-gem-bounce{
 0%,100%{transform:translate3d(0,0,0) scale(1,0.98)}
 12%{transform:translate3d(0,-4px,0) scale(1.015,1.01)}
 38%{transform:translate3d(0,-19px,0) scale(1.045)}
 55%{transform:translate3d(0,-17px,0) scale(1.04)}
 78%{transform:translate3d(0,2px,0) scale(1.035,.965)}
 88%{transform:translate3d(0,-3px,0) scale(.995,1.015)}
}
.page-transition__mark{
 display:block;
 animation:barb-wordmark-float 3.5s ease-in-out infinite;
}
@keyframes barb-wordmark-float{
 0%,100%{transform:translate3d(0,0,0)}
 50%{transform:translate3d(0,-5px,0)}
}
.page-transition__aura{animation:barb-aura 3.3s ease-in-out infinite alternate}
.twinkle{animation:barb-twinkle 1.8s ease-in-out infinite alternate,barb-twinkle-drift 3.1s ease-in-out infinite}
.t2{animation-delay:.55s,.3s}.t3{animation-delay:1s,.8s}
@keyframes barb-twinkle-drift{
 0%,100%{translate:0 0}50%{translate:0 -7px}
}
@media(prefers-reduced-motion:reduce){
 .page-transition__gem,.page-transition__mark,.page-transition__aura,.twinkle{animation:none!important;translate:none!important}
}

/* V4: compositor-only, seamless loader motion. No squash, layout, or filter animation. */
.page-transition__gem{animation:barb-silk-float 3.6s ease-in-out infinite!important;transform-origin:center;will-change:transform;backface-visibility:hidden;filter:drop-shadow(0 0 15px #c99af4) drop-shadow(0 0 28px #9b5bce)}
@keyframes barb-silk-float{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-17px,0)}}
.page-transition__mark{animation:barb-silk-wordmark 4.4s ease-in-out infinite!important;will-change:transform}
@keyframes barb-silk-wordmark{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-4px,0)}}
.page-transition__aura{filter:blur(24px);animation:barb-silk-aura 4.8s ease-in-out infinite!important;will-change:transform,opacity}
@keyframes barb-silk-aura{0%,100%{transform:scale(.96);opacity:.7}50%{transform:scale(1.04);opacity:1}}
.twinkle{animation:barb-silk-twinkle 2.8s ease-in-out infinite!important;will-change:transform,opacity}
.t2{animation-delay:-.9s!important}.t3{animation-delay:-1.7s!important}
@keyframes barb-silk-twinkle{0%,100%{transform:rotate(45deg) translate3d(0,0,0) scale(.65);opacity:.35}50%{transform:rotate(45deg) translate3d(0,-4px,0) scale(1);opacity:1}}
.page-transition__bar:before{animation:barb-silk-progress 1.7s ease-in-out infinite!important;will-change:transform}
@keyframes barb-silk-progress{0%{transform:translate3d(-110%,0,0)}50%{transform:translate3d(95%,0,0)}100%{transform:translate3d(245%,0,0)}}
.page-transition{transition:opacity .65s ease,visibility .65s!important}
.page-transition__inner{transition:opacity .65s ease,transform .65s ease!important}
@media(prefers-reduced-motion:reduce){.page-transition__gem,.page-transition__mark,.page-transition__aura,.twinkle,.page-transition__bar:before{animation:none!important}}

/* V5: true bidirectional float: center -> up -> center -> down -> center.
   One continuous sine-like loop, with no jump at the seam. */
.page-transition__gem {
  animation: barb-true-up-down 3.8s linear infinite !important;
  transform: translate3d(0,0,0);
  will-change: transform;
}
@keyframes barb-true-up-down {
  0%, 100% { transform: translate3d(0,0,0); }
  12.5% { transform: translate3d(0,-12.73px,0); }
  25% { transform: translate3d(0,-18px,0); }
  37.5% { transform: translate3d(0,-12.73px,0); }
  50% { transform: translate3d(0,0,0); }
  62.5% { transform: translate3d(0,12.73px,0); }
  75% { transform: translate3d(0,18px,0); }
  87.5% { transform: translate3d(0,12.73px,0); }
}
@media (prefers-reduced-motion: reduce) {
  .page-transition__gem { animation: none !important; }
}

/* V6: soft floating bounce, rising then falling with a gentle landing.
   Transform-only for smooth compositing; no abrupt loop reset. */
.page-transition__gem {
  animation: barb-soft-bounce 2.65s infinite !important;
  transform-origin: center;
  will-change: transform;
}
@keyframes barb-soft-bounce {
  0%, 100% { transform: translate3d(0, 10px, 0) scale(1); animation-timing-function: cubic-bezier(.32,0,.65,1); }
  48% { transform: translate3d(0, -22px, 0) scale(1.025); animation-timing-function: cubic-bezier(.35,0,.2,1); }
  82% { transform: translate3d(0, 10px, 0) scale(.99); animation-timing-function: cubic-bezier(.2,0,.3,1); }
  91% { transform: translate3d(0, 5px, 0) scale(1.005); animation-timing-function: cubic-bezier(.5,0,.5,1); }
}
@media (prefers-reduced-motion: reduce) { .page-transition__gem { animation: none !important; } }

/* Final loader: stationary gemstone, glow-only opacity pulse. No movement. */
.page-transition__gem {
  animation: none !important; transform: none !important; translate: none !important;
  filter: drop-shadow(0 0 12px rgba(202,155,244,.65)) drop-shadow(0 0 26px rgba(166,96,226,.35));
  will-change: auto;
}
.page-transition__gem svg { animation: none !important; transform: none !important; }
.page-transition__gem::before {
  content: ""; position: absolute; inset: -25px; border-radius: 50%; pointer-events: none;
  background: radial-gradient(circle, rgba(207,160,255,.38) 0%, rgba(158,83,215,.17) 35%, transparent 70%);
  animation: barb-stationary-glow 3.2s ease-in-out infinite;
  z-index: -1;
}
@keyframes barb-stationary-glow {
  0%,100% { opacity: .35; }
  50% { opacity: 1; }
}
/* Keep the wordmark and decorative elements stationary as well. */
.page-transition__mark { animation: none !important; transform: none !important; }
.twinkle { animation: barb-static-twinkle 3.5s ease-in-out infinite !important; translate: none !important; }
@keyframes barb-static-twinkle { 0%,100% { opacity: .35; } 50% { opacity: .9; } }
.page-transition__aura { animation: barb-stationary-glow 4.2s ease-in-out infinite !important; transform: none !important; }
@media (prefers-reduced-motion: reduce) {
  .page-transition__gem::before,.page-transition__aura,.twinkle { animation: none !important; }
}

/* Amazon wishlist */
.wishlist-section{padding-top:clamp(45px,7vw,90px);padding-bottom:clamp(45px,7vw,90px)}
.wishlist-card{max-width:860px;margin:0 auto;padding:clamp(30px,6vw,65px) clamp(20px,5vw,60px);text-align:center;border:1px solid rgba(185,156,233,.32);border-radius:30px;background:radial-gradient(ellipse at 80% 0%,rgba(123,51,126,.32),transparent 65%),linear-gradient(135deg,#1e2423,#251a32 55%,#383b42);box-shadow:0 24px 70px rgba(0,0,0,.19)}
.wishlist-kicker{display:block;font-size:.72rem;letter-spacing:.2em;color:#d6b8f2;font-weight:750;margin-bottom:14px}
.wishlist-card h2{color:#f7eefb;margin:0 0 14px;font-size:clamp(2rem,5vw,3.5rem)}
.wishlist-card h2 em{color:#d9b6f7}
.wishlist-card p{color:#e5dcec;max-width:540px;margin:0 auto 25px;line-height:1.7}
.wishlist-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;text-decoration:none!important;padding:16px 26px;border-radius:999px;background:linear-gradient(110deg,#d5b1ef,#a778d1);color:#1d1328!important;font-size:.85rem;font-weight:800;letter-spacing:.055em;box-shadow:0 10px 30px rgba(169,119,209,.28);transition:transform .22s ease,box-shadow .22s ease}
.wishlist-button:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(169,119,209,.4)}
.wishlist-button:focus-visible{outline:3px solid #fff;outline-offset:4px}
.wishlist-card small{display:block;color:#c9bed0;margin-top:17px}
.footer-wishlist a{color:#d9b6f7;text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.wishlist-button{width:100%;font-size:.78rem;padding:16px 12px}.wishlist-card{border-radius:22px}}
@media(prefers-reduced-motion:reduce){.wishlist-button{transition:none}.wishlist-button:hover{transform:none}}
