:root{
  --brid-red:#942d2f;
  --paper:#fbf8f9;
  --ink:#171111;
  --white:#fff;
  --line:#eadfe2;
  --muted:#735f61;
  --shadow:0 24px 70px rgba(65,25,28,.16);
  --bricolage:'Bricolage Grotesque',sans-serif;
  --glacial:'Glacial Indifference',sans-serif;
  --tan:'TAN Meringue','Times New Roman',serif;
  --hagrid:'Hagrid Text','Bricolage Grotesque',sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--glacial);overflow-x:hidden}img,video{display:block;width:100%}button,input,textarea,select{font:inherit}button,a{color:inherit}.announcement{background:#111;color:#fff;text-align:center;padding:9px 16px;font-family:var(--bricolage);font-size:11px;letter-spacing:.11em;text-transform:uppercase}.site-header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:12px 4vw;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(148,45,47,.09)}.brand{justify-self:start}.brand img{width:74px}.desktop-nav{display:flex;gap:32px;font-family:var(--bricolage);font-size:14px;font-weight:600}.desktop-nav a{text-decoration:none}.desktop-nav a:hover{color:var(--brid-red)}.cart-button{justify-self:end;background:transparent;border:1.5px solid var(--brid-red);color:var(--brid-red);border-radius:999px;padding:8px 13px;cursor:pointer;font-family:var(--bricolage);font-weight:650}.cart-button span{display:inline-grid;place-items:center;min-width:21px;height:21px;border-radius:50%;background:var(--brid-red);color:#fff;font-size:11px;margin-left:5px}

/* HOME — preserves the exact Canva typography/design supplied by the user. */
.canva-home{position:relative;background:#fff}.canva-home>img{width:100%;height:auto}.home-lipliner-video{position:absolute;z-index:2;left:67.72%;top:65.43%;width:32.28%;height:34.57%;object-fit:cover;background:#f3d1df}.design-hotspot{position:absolute;z-index:3;border:0;background:transparent;cursor:pointer;color:transparent}.design-hotspot span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.home-shop{left:31.5%;top:25.9%;width:37%;height:4.2%}.home-lipstick{left:2%;top:33%;width:95%;height:28%}.home-lipliner{left:40.5%;top:93.4%;width:23%;height:4.2%}.design-hotspot:focus-visible{outline:4px solid #fff;outline-offset:-4px;border-radius:30px}

/* SHOP */
.shop-page{min-height:100vh;background:#fcf9fa;padding:76px 2vw 86px}.shop-page h1{margin:0 0 88px;text-align:center;color:var(--brid-red);font-family:var(--hagrid);font-size:clamp(38px,4vw,62px);font-weight:700;letter-spacing:-.04em}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;max-width:1320px;margin:0 auto}.product-card{background:#fff;border-radius:19px;overflow:hidden;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;min-width:0}.product-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px rgba(82,31,34,.1)}.product-card img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;padding:12px}.product-info{padding:0 16px 18px;color:var(--brid-red)}.product-info h3{font-family:var(--hagrid);font-size:clamp(18px,1.55vw,28px);line-height:1.02;margin:0 0 3px;font-weight:700;letter-spacing:-.04em}.product-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;font-family:var(--glacial);font-size:15px;line-height:1.1}.product-meta span{flex:1}.product-meta strong{font-family:var(--hagrid);font-size:clamp(26px,2.3vw,42px);line-height:.9;letter-spacing:-.05em;white-space:nowrap}.shop-note{text-align:center;color:var(--brid-red);font-family:var(--glacial);font-size:clamp(17px,1.5vw,24px);margin:76px 20px 0}

/* CONTACT — exact user-supplied Canva composition. */
.contact-page{position:relative;background:#f5f0e6}.contact-page>img{width:100%;height:auto}.contact-hotspots a{position:absolute;bottom:4.5%;height:7%;width:4%;border-radius:50%}.contact-hotspots span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.contact-hotspots .fb{left:2.1%}.contact-hotspots .ig{left:6.9%}.contact-hotspots .tt{left:11.7%}.contact-hotspots a:focus-visible{outline:3px solid #fff}

/* Existing shopping functionality */
.btn{border:0;padding:14px 20px;border-radius:999px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--bricolage);font-weight:700}.btn-dark{background:var(--brid-red);color:#fff}.btn-outline{background:transparent;border:1px solid var(--brid-red);color:var(--brid-red)}.btn-full{width:100%}.eyebrow{font-family:var(--bricolage);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;color:var(--brid-red)}
.drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.36);z-index:49;opacity:0;pointer-events:none;transition:.25s}.drawer-backdrop.open{opacity:1;pointer-events:auto}.cart-drawer{position:fixed;z-index:50;right:0;top:0;height:100%;width:min(440px,94vw);background:#fff;transform:translateX(102%);transition:.28s ease;padding:24px;display:flex;flex-direction:column;box-shadow:-18px 0 55px rgba(0,0,0,.14)}.cart-drawer.open{transform:none}.drawer-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px}.drawer-header h3{font-family:var(--hagrid);font-size:32px;color:var(--brid-red);margin:0}.drawer-header button,.modal-close{border:0;background:none;font-size:30px;cursor:pointer}.cart-items{overflow:auto;flex:1}.cart-item{display:grid;grid-template-columns:82px 1fr auto;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);align-items:center}.cart-item img{width:82px;height:82px;object-fit:cover;border-radius:10px}.cart-item h4{margin:0 0 5px;font-family:var(--bricolage)}.cart-item p{margin:0 0 5px;color:var(--muted);font-size:13px}.cart-item button{border:0;background:none;font-size:20px;cursor:pointer}.cart-empty{padding:40px 0;color:var(--muted)}.cart-summary{padding-top:18px}.cart-summary>div{display:flex;justify-content:space-between;margin:8px 0}.cart-summary .total{font-size:20px;border-top:1px solid var(--line);padding-top:15px;margin-top:15px}.cart-summary .btn{margin-top:14px}
.modal{position:fixed;inset:0;background:rgba(26,12,13,.46);z-index:60;display:none;place-items:center;padding:24px}.modal.open{display:grid}.modal-card{position:relative;background:#fff;width:min(930px,96vw);max-height:92vh;overflow:auto;border-radius:26px;display:grid;grid-template-columns:1fr 1fr;box-shadow:var(--shadow)}.modal-close{position:absolute;right:20px;top:15px;z-index:2}.modal-media{background:#f7f2f3;display:grid;place-items:center;padding:30px}.modal-media img{max-height:620px;object-fit:contain}.modal-content,.checkout-form-wrap{padding:70px 48px 42px}.modal-content h3,.checkout-form-wrap h3{font-family:var(--hagrid);color:var(--brid-red);font-size:48px;line-height:1;margin:0 0 15px}.modal-description{color:var(--muted);line-height:1.55}.modal-price{font-family:var(--hagrid);font-size:34px;color:var(--brid-red);margin:18px 0}.modal-content label,.checkout-form-wrap label{display:block;font-family:var(--bricolage);font-size:13px;font-weight:700;margin:14px 0 7px}.modal-content select,input,textarea{width:100%;padding:13px 14px;border:1px solid #d9cacc;border-radius:12px;background:#fff}.modal-content .btn{margin-top:20px}.checkout-card{grid-template-columns:1.05fr .95fr}.checkout-qr{background:#faf7f7;padding:54px 44px;display:flex;flex-direction:column;justify-content:center;gap:16px}.checkout-qr img{max-height:520px;object-fit:contain}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkout-total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:18px 0;margin-top:16px;font-size:18px}.small-note{color:var(--muted);font-size:12px;line-height:1.5}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:#161010;color:#fff;border-radius:999px;padding:12px 20px;opacity:0;pointer-events:none;z-index:100;transition:.2s;font-family:var(--bricolage)}.toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.desktop-nav{display:none}.product-grid{grid-template-columns:repeat(2,1fr);gap:16px}.shop-page{padding:58px 16px}.shop-page h1{margin-bottom:45px}.modal-card,.checkout-card{grid-template-columns:1fr}.modal-media img{max-height:330px}.checkout-qr{padding:28px}.form-grid{grid-template-columns:1fr}}
@media(max-width:560px){.announcement{font-size:9px}.site-header{padding:10px 14px}.brand img{width:62px}.cart-button{padding:7px 10px}.shop-page{padding:48px 12px 58px}.shop-page h1{font-size:38px;margin-bottom:32px}.product-grid{grid-template-columns:1fr 1fr;gap:10px}.product-card{border-radius:14px}.product-card img{padding:6px}.product-info{padding:0 10px 12px}.product-info h3{font-size:16px}.product-meta{font-size:11px;display:block}.product-meta strong{display:block;font-size:25px;margin-top:7px}.shop-note{font-size:16px;margin-top:44px}.modal{padding:9px}.modal-content,.checkout-form-wrap{padding:50px 22px 26px}.modal-content h3,.checkout-form-wrap h3{font-size:38px}.contact-hotspots a{bottom:4%;height:9%;width:7%}.contact-hotspots .fb{left:1.2%}.contact-hotspots .ig{left:6.5%}.contact-hotspots .tt{left:11.8%}}

/* HD visual fix: the Canva compositions are pre-rendered at 2x resolution so
   desktop Safari no longer has to enlarge the original screenshots. */
.canva-home>img,.contact-page>img{
  image-rendering:auto;
  -webkit-font-smoothing:antialiased;
  backface-visibility:hidden;
  transform:translateZ(0);
}

/* BRID motion layer — visual design/layout intentionally unchanged */
:root{--motion-ease:cubic-bezier(.22,.61,.36,1)}
.motion-reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--motion-ease),transform .8s var(--motion-ease);will-change:opacity,transform}
.motion-reveal.is-visible{opacity:1;transform:translateY(0)}
.canva-home.motion-reveal{transform:translateY(0) scale(.992)}
.canva-home.motion-reveal.is-visible{transform:translateY(0) scale(1)}
.contact-page.motion-reveal{transform:translateY(18px)}
.contact-page.motion-reveal.is-visible{transform:translateY(0)}
.site-header{transition:box-shadow .35s ease,background-color .35s ease}
.site-header.motion-scrolled{box-shadow:0 8px 28px rgba(54,23,22,.07)}
.desktop-nav a,.cart-button,.design-hotspot,.social-hotspot{transition:transform .25s ease,opacity .25s ease,box-shadow .25s ease}
.desktop-nav a:hover,.social-hotspot:hover{transform:translateY(-2px)}
.cart-button:hover{transform:translateY(-1px) scale(1.02)}
.design-hotspot:hover{transform:scale(1.025)}
.home-lipliner-video{animation:bridVideoFloat 5.5s ease-in-out infinite;transform-origin:center center}
@keyframes bridVideoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.product-card{opacity:0;transform:translateY(20px);transition:opacity .65s var(--motion-ease),transform .65s var(--motion-ease),box-shadow .2s ease}
.product-card.is-visible{opacity:1;transform:translateY(0)}
.product-card.is-visible:hover{transform:translateY(-4px)}
.product-card img{transition:transform .45s var(--motion-ease)}
.product-card:hover img{transform:scale(1.025)}
.shop-page h1,.shop-note{transition:opacity .7s var(--motion-ease),transform .7s var(--motion-ease)}
.modal-card,.cart-drawer{will-change:transform,opacity}
.modal.open .modal-card{animation:bridModalIn .35s var(--motion-ease) both}
@keyframes bridModalIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.motion-reveal,.product-card{opacity:1!important;transform:none!important}}

/* Checkout payment-method selector */
.payment-methods{border:0;padding:0;margin:22px 0 10px}.payment-methods legend{font-family:var(--bricolage);font-size:13px;font-weight:700;margin-bottom:9px}.payment-option{display:flex!important;align-items:flex-start;gap:12px;margin:9px 0!important;padding:14px 15px;border:1px solid #ddcfd2;border-radius:14px;cursor:pointer;background:#fff;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.payment-option:hover{border-color:var(--brid-red);transform:translateY(-1px)}.payment-option:has(input:checked){border-color:var(--brid-red);box-shadow:0 0 0 2px rgba(148,45,47,.08)}.payment-option input{width:auto;margin:3px 0 0;accent-color:var(--brid-red)}.payment-copy{display:flex;flex-direction:column;gap:3px}.payment-copy strong{font-family:var(--bricolage);color:var(--brid-red)}.payment-copy small{font-size:12px;line-height:1.45;color:var(--muted);font-weight:400}.aba-amount-note{background:#fff3f3;border:1px solid #e4c4c6;border-radius:14px;padding:13px 15px;margin:0 0 14px;color:var(--brid-red)}.aba-amount-note span{display:block;font-size:12px;margin-bottom:4px}.aba-amount-note strong{font-family:var(--hagrid);font-size:22px}.cod-visual,.aba-visual{text-align:center;color:var(--brid-red)}.cod-visual{padding:32px 10px}.cod-icon{width:88px;height:88px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:var(--brid-red);color:#fff;font-family:var(--hagrid);font-size:42px}.cod-visual h4{font-family:var(--hagrid);font-size:30px;margin:0 0 10px}.cod-visual p,.aba-visual p{color:var(--muted);line-height:1.5;margin:10px auto 18px;max-width:320px}.checkout-success{padding:70px 48px 42px}.checkout-success h3{font-family:var(--hagrid);color:var(--brid-red);font-size:44px;line-height:1;margin:0 0 15px}.checkout-success>p{color:var(--muted);line-height:1.55}.success-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:22px 0;font-size:18px}.success-total strong{font-family:var(--hagrid);font-size:28px;color:var(--brid-red)}.aba-pay-instruction{background:#fff3f3;border-radius:14px;padding:14px;color:var(--brid-red)!important;text-align:center}.checkout-success .btn{margin-top:12px}
@media(max-width:560px){.checkout-success{padding:50px 22px 26px}.checkout-success h3{font-size:36px}.payment-option{padding:12px}}

/* ABA / KHQR dual-currency checkout */
.aba-currency-box{margin:2px 0 12px;padding:14px 15px;border:1px solid #e2d3d5;border-radius:14px;background:#fff}.aba-currency-title{font-family:var(--bricolage);font-size:13px;font-weight:700;color:var(--brid-red);margin-bottom:10px}.currency-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.currency-option{display:flex!important;align-items:flex-start;gap:9px;margin:0!important;padding:11px 12px;border:1px solid #e1d4d6;border-radius:12px;cursor:pointer;background:#fff}.currency-option:has(input:checked){border-color:var(--brid-red);box-shadow:0 0 0 2px rgba(148,45,47,.07)}.currency-option input{width:auto;margin:3px 0 0;accent-color:var(--brid-red)}.currency-option span{display:flex;flex-direction:column}.currency-option strong{font-family:var(--bricolage);color:var(--brid-red)}.currency-option small{font-size:11px;color:var(--muted);font-weight:400;margin-top:2px}.aba-amount-note small{display:block;margin-top:5px;color:var(--muted);font-size:11px}.dual-currency-hint{display:grid;gap:6px;font-size:12px;color:var(--muted);margin:-4px auto 8px;max-width:320px}.dual-currency-hint strong{color:var(--brid-red)}.aba-pay-subnote{font-size:12px!important;text-align:center;color:var(--muted)!important;margin:8px 0 0!important}@media(max-width:560px){.currency-options{grid-template-columns:1fr}}


/* Shade-specific product image transition */
#modalImage { transition: opacity .18s ease, transform .18s ease; }
#modalImage.shade-image-changing { opacity: .28; transform: scale(.985); }


/* BRID branded loading experience — design/layout below remains unchanged */
body.brid-loading-lock{overflow:hidden}
.brid-loader{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  background:#fbf8f9;
  opacity:1;
  visibility:visible;
  transition:opacity .36s ease,visibility .36s ease;
}
.brid-loader.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.brid-loader-inner{
  width:min(300px,58vw);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:26px;
}
.brid-loader-logo{
  width:min(230px,48vw);
  height:auto;
  object-fit:contain;
  animation:bridLoaderLogo 1.55s cubic-bezier(.22,.61,.36,1) infinite;
}
.brid-loader-progress{
  width:min(180px,42vw);
  height:2px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(148,45,47,.13);
}
.brid-loader-progress span{
  display:block;
  width:45%;
  height:100%;
  border-radius:inherit;
  background:var(--brid-red);
  animation:bridLoaderProgress 1.05s ease-in-out infinite;
}
@keyframes bridLoaderLogo{
  0%,100%{opacity:.72;transform:translateY(2px) scale(.985)}
  50%{opacity:1;transform:translateY(-2px) scale(1)}
}
@keyframes bridLoaderProgress{
  0%{transform:translateX(-115%)}
  55%{transform:translateX(95%)}
  100%{transform:translateX(235%)}
}
@media(max-width:560px){
  .brid-loader-inner{width:70vw;gap:22px}
  .brid-loader-logo{width:min(205px,55vw)}
  .brid-loader-progress{width:min(155px,42vw)}
}
@media(prefers-reduced-motion:reduce){
  .brid-loader-logo,.brid-loader-progress span{animation:none!important}
}
