/* Brid's Hair & Holistic v2 - "golden glow" design. Original code (nothing copied from Wix).
   Palette: cream #fbf4ec, sand #efe2d3, latte #d8b893, gold #b08a5e, cocoa #5b4a3e, espresso #2b1d14.
   Fonts: Fahkwang (headings, light + italic accents), Aboreto (small caps), Montserrat (text). */
:root{--cream:#fbf4ec;--sand:#efe2d3;--latte:#d8b893;--gold:#b08a5e;--cocoa:#5b4a3e;--esp:#2b1d14;--ink:#2b1f18;--muted:#7a6a5d;--hair:#e3d3c1;--hair2:#d9c6b1;
  --serif:Fahkwang,Georgia,serif;--caps:Aboreto,Georgia,serif;--sans:Montserrat,system-ui,-apple-system,"Segoe UI",sans-serif;--gut:22px;--ease:cubic-bezier(.2,.7,.1,1)}
@media (min-width:900px){:root{--gut:48px}}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-padding-top:110px}
body{margin:0;font-family:var(--sans);font-weight:300;font-size:15px;line-height:1.85;letter-spacing:.3px;color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden}
main{flex:1 0 auto;outline:0}
img,video{max-width:100%;height:auto;display:block}
a{color:inherit}
strong,b{font-weight:500}
p{margin:0 0 1.1em}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,.h0,.h1,.h2,.h3{font-family:var(--serif);font-weight:200;line-height:1.07;letter-spacing:-.4px;margin:0;color:inherit}
h1 em,h2 em,h3 em,.h0 em,.h1 em,.h2 em,.h3 em{font-style:italic;color:var(--ac,var(--gold))}
.h0{font-size:46px}.h1,h1{font-size:40px}.h2,h2{font-size:32px}.h3,h3{font-size:24px}
@media (min-width:900px){.h0{font-size:84px;letter-spacing:-1.5px}.h1,h1{font-size:60px}.h2,h2{font-size:44px}.h3,h3{font-size:28px}}
.wrap{max-width:1180px;margin:0 auto;padding:0 var(--gut)}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.center{text-align:center}.mt-l{margin-top:64px}
.cs{background:var(--bg);color:var(--fg)}
.eyebrow,.lbl{font-family:var(--caps);font-weight:400;font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--ac,var(--gold));margin:0 0 24px;line-height:1.6}
.lbl{display:block;font-size:10px;letter-spacing:3px;color:var(--ink);margin:0 0 10px}
.rule{display:flex;align-items:center;justify-content:center;gap:16px}
.rule::before,.rule::after{content:"";width:46px;height:1px;background:currentColor;opacity:.5;flex:none}
.lead{color:var(--muted);max-width:560px;margin:22px auto 0;font-size:15.5px}
.lead p:last-child{margin:0}
.rte{color:var(--muted)}
.rte h2,.rte h3,.rte h4{font-family:var(--serif);font-weight:300;color:var(--fg,var(--ink));margin:1.4em 0 .5em;line-height:1.25}
.rte h2{font-size:28px}.rte h3{font-size:22px}.rte h4{font-size:18px}
.rte h5{font-family:var(--caps);font-size:11px;letter-spacing:3px;text-transform:uppercase;font-weight:400;color:var(--ac,var(--gold));margin:1.6em 0 .6em}
.rte a{color:var(--cocoa);text-decoration:underline;text-decoration-color:var(--latte);text-underline-offset:4px}
.rte img{display:inline-block;height:auto}
.rte>*:first-child{margin-top:0}.rte>*:last-child{margin-bottom:0}
.rte ul,.rte ol{padding-left:1.2em;margin:0 0 1.1em}
.rte li{margin:0 0 .35em}
.rte li::marker{color:var(--gold)}
.cs-3 .rte,.cs-4 .rte,.cs-3 .lead,.cs-4 .lead{color:#cdb9a6}
.cs-3 .rte a,.cs-4 .rte a{color:#fff}
.cs-3 .eyebrow,.cs-4 .eyebrow{color:var(--latte)}

/* buttons & links */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 36px;font-family:var(--caps);font-size:11px;font-weight:400;letter-spacing:3.5px;text-transform:uppercase;text-decoration:none;text-align:center;line-height:1.3;
  border:1px solid var(--cocoa);color:var(--cocoa);background:transparent;cursor:pointer;position:relative;overflow:hidden;transition:color .5s var(--ease),border-color .5s;z-index:0;border-radius:0}
.btn::before{content:"";position:absolute;inset:0;background:var(--cocoa);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease);z-index:-1}
.btn:hover{color:var(--cream)}.btn:hover::before{transform:scaleY(1)}
.btn--solid{background:var(--btn,var(--cocoa));border-color:var(--btn,var(--cocoa));color:var(--btn-text,var(--cream))}
.btn--solid::before{background:var(--esp)}
.btn--solid:hover{border-color:var(--esp);color:var(--cream)}
.btn--light,.cs-3 .btn:not(.btn--solid),.cs-4 .btn:not(.btn--solid){border-color:rgba(255,255,255,.7);color:#fff}
.btn--light::before,.cs-3 .btn::before,.cs-4 .btn::before{background:var(--cream)}
.btn--light:hover,.cs-3 .btn:hover,.cs-4 .btn:hover{color:var(--esp);border-color:var(--cream)}
.btn.btn--cream,.btn--cream{background:var(--cream);border-color:var(--cream);color:var(--esp)}
.btn--cream::before{background:var(--latte)}.btn--cream:hover{color:var(--esp);border-color:var(--latte)}
.btn--full{width:100%}
.btn[disabled],.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}
.btn[disabled]::before{display:none}
.btns{display:flex;flex-wrap:wrap;gap:14px}
.btns--c{justify-content:center;margin-top:38px}
.tlink{display:inline-block;font-family:var(--caps);font-size:11px;letter-spacing:3.5px;text-transform:uppercase;text-decoration:none;color:var(--cocoa);padding:0 0 7px;background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;transition:background-size .5s var(--ease);border:0;cursor:pointer}
.tlink:hover{background-size:40% 1px}
.cs-3 .tlink,.cs-4 .tlink{color:#fff}
.tag{display:inline-block;font-family:var(--caps);font-size:9.5px;letter-spacing:2.5px;text-transform:uppercase;padding:6px 12px;background:var(--cream);color:var(--cocoa);line-height:1.4}

/* reveal on scroll */
.js .rv{opacity:0;transform:translateY(34px);transition:opacity 1.2s var(--ease),transform 1.2s var(--ease)}
.js .rv.in{opacity:1;transform:none}
.js .rv--img{opacity:1;transform:none;clip-path:inset(12% 0 0 0);transition:clip-path 1.6s var(--ease)}
.js .rv--img img{transform:scale(1.12);transition:transform 2.2s var(--ease)}
.js .rv--img.in{clip-path:inset(0 0 0 0)}.js .rv--img.in img{transform:none}
@media (prefers-reduced-motion:reduce){.js .rv,.js .rv--img,.js .rv--img img{opacity:1;transform:none;clip-path:none;transition:none}.hero__media img,.hero__media video,.ln,.gcard::before,.hero__scroll::after{animation:none!important}}

/* shapes */
.arch{border-radius:999px 999px 0 0;overflow:hidden;position:relative;background:var(--sand)}
.frame{overflow:hidden;position:relative;background:var(--sand)}
.arch img,.frame img,.arch video{width:100%;height:100%;object-fit:cover}

/* ---------------------------------------------------------------- announcement & header */
.ann{background:var(--esp);color:#ead9c6;text-align:center;font-family:var(--caps);font-size:10px;letter-spacing:3px;text-transform:uppercase;padding:10px 16px;line-height:1.5;position:relative;z-index:41}
.ann p{margin:0}.ann a{text-decoration:none}
.ann b{font-weight:400;color:var(--latte)}
@media (min-width:900px){.ann{font-size:10.5px;letter-spacing:3.5px;padding:11px 16px}}
.site-header{position:sticky;top:0;z-index:40;background:rgba(251,244,236,.97);color:var(--ink);border-bottom:1px solid var(--hair);transition:background .5s,color .5s,border-color .5s,transform .45s var(--ease)}
.site-header.hide{transform:translateY(-100%)}
.site-header--overlay{position:absolute;left:0;right:0;top:0;background:transparent;color:#fff;border-color:transparent}
.hdr-solid .site-header--overlay{position:fixed;background:rgba(251,244,236,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ink);border-color:var(--hair);animation:hdrin .55s var(--ease)}
.hdr-solid .site-header--overlay .ann{display:none}
@keyframes hdrin{from{transform:translateY(-100%)}}
.hdr__in{max-width:1280px;margin:0 auto;padding:12px var(--gut);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:72px}
@media (min-width:1100px){.hdr__in{padding-top:20px;padding-bottom:20px;min-height:96px}.hdr-solid .hdr__in,.site-header:not(.site-header--overlay) .hdr__in{padding-top:12px;padding-bottom:12px;min-height:84px}}
.hdr__logo{display:block;justify-self:center;line-height:0}
.hdr__logo img{width:calc(var(--logo-w,190px)*.68);height:auto;transition:width .5s var(--ease)}
@media (min-width:900px){.hdr__logo img{width:var(--logo-w,190px)}.hdr-solid .hdr__logo img,.site-header:not(.site-header--overlay) .hdr__logo img{width:calc(var(--logo-w,190px)*.82)}}
.hdr__name{font-family:var(--serif);font-size:24px}
.logo--dark{display:none}
.site-header:not(.site-header--overlay) .logo--light,.hdr-solid .site-header--overlay .logo--light{display:none}
.site-header:not(.site-header--overlay) .logo--dark,.hdr-solid .site-header--overlay .logo--dark{display:block}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:30px;align-items:center}
.nav--r{margin-left:auto}
.nav__a{display:flex;align-items:center;gap:7px;font-family:var(--caps);font-size:10.5px;letter-spacing:3px;text-transform:uppercase;text-decoration:none;cursor:pointer;list-style:none;padding:8px 0;white-space:nowrap}
.nav__a::-webkit-details-marker{display:none}
.nav__a span{background:linear-gradient(currentColor,currentColor) left bottom/0 1px no-repeat;padding-bottom:4px;transition:background-size .5s var(--ease)}
.nav__a:hover span,.nav__a.on span,.dd[open] .nav__a span{background-size:100% 1px}
.nav__a svg{width:8px;height:5px;transition:transform .4s}
.dd[open] .nav__a svg{transform:rotate(180deg)}
.dd{position:relative}
.dd__menu{position:absolute;top:calc(100% + 16px);left:50%;transform:translateX(-50%);min-width:250px;list-style:none;margin:0;padding:18px 0;background:var(--cream);color:var(--ink);border:1px solid var(--hair);box-shadow:0 24px 50px rgba(43,29,20,.12);display:block!important;animation:fadeup .4s var(--ease)}
.dd__menu::before{content:"";position:absolute;left:50%;top:-6px;width:11px;height:11px;background:var(--cream);border-left:1px solid var(--hair);border-top:1px solid var(--hair);transform:translateX(-50%) rotate(45deg)}
.dd__menu a{display:block;padding:8px 28px;font-size:13.5px;letter-spacing:.4px;text-decoration:none;color:var(--ink);transition:color .3s,padding .4s var(--ease)}
.dd__menu a:hover,.dd__menu a[aria-current]{color:var(--gold);padding-left:34px}
.hdr__r{display:flex;align-items:center;justify-content:flex-end;gap:26px}
.hdr__icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;color:inherit;background:none;border:0;padding:0;cursor:pointer;position:relative;text-decoration:none}
.hdr__icon svg{width:20px;height:20px}
.hdr__burger svg{width:24px;height:16px}
.cart-count{position:absolute;top:1px;right:-2px;min-width:17px;height:17px;border-radius:50%;background:var(--gold);color:#fff;font-size:9.5px;line-height:17px;text-align:center;letter-spacing:0;font-weight:500}
.hdr__burger{display:none;justify-self:start}
@media (max-width:1099px){
  .nav{display:none}.hdr__burger{display:inline-flex}.hdr__in{grid-template-columns:44px 1fr 44px;gap:10px}
  .hdr__r{gap:0}
}
/* drawer */
.drawer{position:fixed;inset:0;z-index:60;visibility:hidden;transition:visibility 0s .55s}
.drawer.open{visibility:visible;transition:none}
.drawer__bg{position:absolute;inset:0;background:rgba(43,29,20,.5);opacity:0;transition:opacity .45s}
.drawer.open .drawer__bg{opacity:1}
.drawer__panel{position:absolute;top:0;left:0;bottom:0;width:min(420px,100%);background:var(--cream);transform:translateX(-100%);transition:transform .55s var(--ease);display:flex;flex-direction:column;overflow:auto}
.drawer.open .drawer__panel{transform:none}
.drawer__top{display:flex;justify-content:space-between;align-items:center;padding:16px 18px 16px 26px;border-bottom:1px solid var(--hair)}
.drawer__logo{width:130px}
.drawer__menu{list-style:none;margin:0;padding:16px 0}
.drawer__menu a,.drawer__menu summary{display:flex;justify-content:space-between;align-items:center;padding:10px 28px;font-family:var(--serif);font-weight:200;font-size:27px;line-height:1.3;text-decoration:none;cursor:pointer;list-style:none;color:var(--ink)}
.drawer__menu summary::-webkit-details-marker{display:none}
.drawer__menu summary svg{width:12px;height:8px;transition:transform .4s}
.drawer__menu details[open] summary svg{transform:rotate(180deg)}
.drawer__menu ul{list-style:none;margin:0 0 10px;padding:0 0 0 16px}
.drawer__menu ul a{font-family:var(--sans);font-weight:300;font-size:15px;padding:7px 28px}
.drawer__menu a.on{color:var(--gold)}
.drawer__foot{margin-top:auto;padding:24px 28px 30px;border-top:1px solid var(--hair);display:flex;flex-direction:column;gap:22px}
.drawer__foot .soc{justify-content:flex-start}
/* bag notification */
.cart-note{position:absolute;right:var(--gut);top:calc(100% + 10px);width:min(380px,calc(100% - 2*var(--gut)));z-index:45;padding:26px;background:var(--cream);color:var(--ink);border:1px solid var(--hair);box-shadow:0 30px 60px rgba(43,29,20,.16);display:none}
.cart-note.open{display:block;animation:fadeup .5s var(--ease)}
@keyframes fadeup{from{opacity:0;transform:translateY(12px)}}
.dd__menu{animation-name:ddin}@keyframes ddin{from{opacity:0;margin-top:8px}}
.cart-note__head{display:flex;justify-content:space-between;align-items:center;font-family:var(--caps);font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:18px}
.cart-note__head span{display:flex;gap:10px;align-items:center}
.cart-note__head svg{width:12px;height:12px}
.cart-note__close{background:none;border:0;cursor:pointer;padding:4px;color:var(--ink)}
.cart-note__close svg{width:12px;height:12px}
.cart-note__item{display:flex;gap:16px;align-items:center;margin-bottom:22px}
.cart-note__item img{width:72px;height:90px;object-fit:cover;background:#fff}
.cart-note__item h3{font-size:20px}
.cart-note__item p{margin:4px 0 0;font-size:13px;color:var(--muted)}
.cart-note .btn{width:100%;margin-bottom:16px}
.cart-note .tlink{display:table;margin:0 auto}

/* ---------------------------------------------------------------- sections */
.sec{padding:calc(var(--pt,140px)*.65) 0 calc(var(--pb,140px)*.65)}
@media (min-width:900px){.sec{padding:var(--pt,140px) 0 var(--pb,140px)}}
.shead{margin-bottom:54px}
.shead--c{text-align:center}
.shead--c .lead{margin-left:auto;margin-right:auto}
@media (min-width:900px){.shead{margin-bottom:72px}}

/* hero */
.hero{position:relative;display:flex;align-items:flex-end;color:#fff;overflow:hidden;min-height:max(640px,100svh);background:var(--esp)}
.hero--large{min-height:max(580px,86svh)}.hero--medium{min-height:max(500px,68svh)}
@media (min-width:900px){.hero{min-height:max(760px,100svh)}}
.hero__media{position:absolute;inset:-6% 0;will-change:transform}
.hero__media img,.hero__media video{width:100%;height:100%;object-fit:cover;object-position:center 40%;animation:kb 22s ease-out both}
@keyframes kb{from{transform:scale(1.13)}to{transform:scale(1.02)}}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(43,29,20,calc(var(--ov,.45)*1.1)) 0%,rgba(43,29,20,calc(var(--ov,.45)*.12)) 30%,rgba(43,29,20,calc(var(--ov,.45)*.35)) 55%,rgba(43,29,20,calc(var(--ov,.45)*1.85)) 100%)}
.hero__in{position:relative;z-index:1;max-width:1180px;margin:0 auto;width:100%;padding:150px var(--gut) 96px;display:grid;grid-template-columns:1fr;gap:26px;align-items:end}
@media (min-width:900px){.hero--split .hero__in{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:50px;padding-bottom:110px}}
.hero .eyebrow{color:var(--latte);margin-bottom:22px}
.hero h1{font-size:52px;line-height:.98;letter-spacing:-1.2px}
@media (min-width:600px){.hero h1{font-size:72px}}
@media (min-width:1100px){.hero h1{font-size:104px;letter-spacing:-2.5px}}
.hero h1 em{color:var(--latte)}
.hero__text{margin:0 0 30px;color:#f1e4d6;font-size:15.5px;max-width:380px}
.hero--center{align-items:center;text-align:center}
.hero--center .hero__in{justify-items:center;padding-bottom:110px}
.hero--center .hero__text{margin-left:auto;margin-right:auto}
.hero--center .btns{justify-content:center}
.ln{display:block;animation:rise 1.7s var(--ease) both;animation-delay:var(--d,0s)}
@keyframes rise{from{opacity:0;transform:translateY(38px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}
.hero__scroll{position:absolute;left:50%;bottom:28px;width:1px;height:62px;background:rgba(255,255,255,.3);overflow:hidden;z-index:1}
.hero__scroll::after{content:"";position:absolute;left:0;top:-62px;width:1px;height:62px;background:#fff;animation:drop 2.8s ease-in-out infinite}
@keyframes drop{to{top:62px}}
@media (max-width:899px){.hero__scroll{display:none}}

/* awards strip */
.awards{border-bottom:1px solid var(--hair)}
.awards__in,.awards__in>a{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:16px 22px;padding-top:28px;padding-bottom:28px;text-decoration:none}
.awards__lbl{font-family:var(--serif);font-style:italic;font-weight:200;font-size:21px;color:var(--cocoa);width:100%;text-align:center}
.awards__img img{height:54px;width:auto;filter:saturate(.85);transition:transform .6s var(--ease)}
.awards__img:hover img{transform:translateY(-4px) rotate(-3deg)}
@media (min-width:900px){.awards__in,.awards__in>a{gap:46px;padding-top:34px;padding-bottom:34px}.awards__lbl{width:auto;font-size:22px}.awards__img img{height:74px}}

/* page banner & band */
.bnr,.band{position:relative;overflow:hidden;color:#fff;display:flex;align-items:flex-end;background:var(--esp)}
.bnr--small{min-height:440px}.bnr--medium{min-height:540px}.bnr--large{min-height:640px}
@media (min-width:900px){.bnr--small{min-height:520px}.bnr--medium{min-height:640px}.bnr--large{min-height:780px}}
.bnr__media,.band__media{position:absolute;inset:-10% 0;will-change:transform}
.bnr__media img,.bnr__media video,.band__media img{width:100%;height:100%;object-fit:cover}
.bnr__media img{animation:kb 22s ease-out both}
.bnr::after,.band::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(43,29,20,calc(var(--ov,.4)*1.2)) 0%,rgba(43,29,20,calc(var(--ov,.4)*.4)) 40%,rgba(43,29,20,calc(var(--ov,.4)*1.9)) 100%)}
.bnr--plain{background:var(--sand);color:var(--ink);min-height:0}
.bnr--plain::after{display:none}
.bnr__in{position:relative;z-index:1;width:100%;padding-top:150px;padding-bottom:70px}
@media (min-width:900px){.bnr__in{padding-bottom:96px}}
.bnr--plain .bnr__in{padding-top:90px;padding-bottom:70px}
.bnr__in.al-center{text-align:center}.bnr__in.al-center .btns{justify-content:center}.bnr__in.al-center .bnr__text{margin-left:auto;margin-right:auto}
.bnr__in .eyebrow{color:var(--latte)}
.bnr--plain .eyebrow{color:var(--gold)}
.bnr__in h1{max-width:980px}
.bnr__in.al-center h1{margin:0 auto}
.bnr__in h1 em{color:var(--latte)}
.bnr--plain h1 em{color:var(--gold)}
.bnr__text{color:#f1e4d6;max-width:560px;margin:22px 0 0;font-size:15.5px}
.bnr--plain .bnr__text{color:var(--muted)}
.bnr .btns{margin-top:34px}
.band{min-height:600px;justify-content:center;align-items:center;text-align:center;--ov:.42}
@media (min-width:900px){.band{min-height:820px}}
.band::after{background:linear-gradient(180deg,rgba(43,29,20,.35),rgba(43,29,20,.65))}
.band__in{position:relative;z-index:1;padding:0 24px;max-width:960px}
.band .eyebrow{color:var(--latte)}
.band h2{font-size:42px;line-height:1.04;margin:0 0 44px}
@media (min-width:900px){.band h2{font-size:78px}}
.band h2 em{color:#fff}

/* image with text */
.it__grid{display:grid;grid-template-columns:1fr;gap:64px;align-items:center}
@media (min-width:900px){.it__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:110px}.it--right .it__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}}
.it--right .it__media{order:2}
.it--noimg .it__grid{grid-template-columns:1fr!important;max-width:820px;margin:0 auto}
.it__media{position:relative}
.it__main{aspect-ratio:4/5}
@media (min-width:900px){.it__main{aspect-ratio:auto;height:720px}}
.it__small{position:absolute;right:-14px;bottom:-40px;width:42%;aspect-ratio:3/4;border:8px solid var(--bg,var(--cream))}
.it--right .it__small{right:auto;left:-14px}
@media (min-width:900px){.it__small{right:-70px;bottom:-60px;width:230px;height:300px;aspect-ratio:auto;border-width:10px}.it--right .it__small{right:auto;left:-70px}}
@media (max-width:899px){.it--two .it__media{margin-right:28px}.it--two.it--right .it__media{margin:0 0 0 28px}}
.it__text h2{margin-bottom:28px}
.it__text .rte{max-width:480px}
.sig{font-family:var(--serif);font-style:italic;font-weight:200;font-size:26px;color:var(--ac,var(--gold));margin:30px 0 0}
.it__cta{margin-top:40px}
.places{display:grid;grid-template-columns:1fr;margin:38px 0 0;border-top:1px solid var(--hair)}
@media (min-width:600px){.places{grid-template-columns:repeat(3,minmax(0,1fr))}}
.places div{padding:20px 18px 6px 0}
.places b{display:block;font-family:var(--serif);font-weight:300;font-size:21px;line-height:1.2;margin-bottom:6px;color:var(--fg)}
.places span{display:block;font-size:12.5px;color:var(--muted);line-height:1.6}
.plist{margin:34px 0 0;max-width:480px}
.plist div{display:flex;align-items:baseline;gap:14px;padding:14px 0;border-bottom:1px solid var(--hair);font-size:14px}
.plist div::after{content:"";order:1;flex:1;border-bottom:1px dotted var(--hair2)}
.plist b{order:2;font-family:var(--serif);font-weight:200;font-size:22px;color:var(--ac,var(--gold))}

/* treatment menu */
.menu__grid{display:grid;grid-template-columns:1fr;column-gap:90px}
@media (min-width:900px){.menu__grid{grid-template-columns:1fr 1fr}}
.menu__row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:16px;align-items:baseline;padding:24px 0;border-top:1px solid var(--hair2);text-decoration:none;transition:padding .5s var(--ease)}
.menu__grid>:last-child{border-bottom:1px solid var(--hair2)}
@media (min-width:900px){.menu__grid>:nth-last-child(2):nth-child(odd){border-bottom:1px solid var(--hair2)}.menu__row{padding:26px 0}}
.menu__row small{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--gold)}
.menu__row h3{font-size:24px;margin-bottom:4px}
@media (min-width:900px){.menu__row h3{font-size:28px}}
.menu__row p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}
.menu__go{font-family:var(--caps);font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--cocoa);white-space:nowrap}
.menu__go em{font-family:var(--serif);font-size:18px;letter-spacing:0;text-transform:none;font-weight:200;font-style:normal}
a.menu__row:hover{padding-left:10px}
a.menu__row:hover h3{color:var(--gold)}

/* columns / arches */
.mc__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:44px 30px}
.mc__list--m2{grid-template-columns:1fr 1fr;gap:34px 14px}
@media (min-width:700px){.mc__list{grid-template-columns:repeat(min(var(--cols,3),2),minmax(0,1fr))}}
@media (min-width:1000px){.mc__list,.mc__list--m2{grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:50px 30px}.mc__list[style*="--cols:5"]{gap:40px 18px}}
.mc__card{display:block;text-decoration:none;height:100%}
.mc__img{aspect-ratio:4/5}
.mc__img img{transition:transform 1.6s var(--ease)}
a.mc__card:hover .mc__img img{transform:scale(1.05)}
.mc--arch .mc__card{text-align:center}
.mc--arch .mc__img{aspect-ratio:3/4.4}
.mc__body{padding-top:22px}
.mc__body h3{margin-bottom:8px;font-size:24px}
@media (min-width:900px){.mc__body h3{font-size:25px}}
.mc__body .rte{font-size:14.5px}
.mc__body .tlink{margin-top:18px}
.mc__go{font-family:var(--caps);font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);display:inline-block;padding-bottom:4px;background:linear-gradient(currentColor,currentColor) center bottom/0 1px no-repeat;transition:background-size .5s var(--ease)}
a.mc__card:hover .mc__go{background-size:100% 1px}
.mc--cards .mc__card{background:#fff;border:1px solid var(--hair);padding:34px 30px}
.cs-3.mc--cards .mc__card,.cs-4.mc--cards .mc__card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.15)}
.mc--cards .mc__img{margin:-34px -30px 28px;aspect-ratio:4/3}
.mc--cards .mc__body{padding:0}
.mc--cards .mc__body h3{font-size:26px;margin-bottom:14px}
.mc--cards .rte p{margin-bottom:.6em}
.mc--plain .mc__body{padding-top:18px}

/* treatments with pictures (zig-zag) */
.tr__list{display:grid;gap:80px}
@media (min-width:900px){.tr__list{gap:130px}}
.tr__row{display:grid;grid-template-columns:1fr;gap:40px;align-items:center}
@media (min-width:900px){.tr__row{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:100px}.tr__row--flip{grid-template-columns:minmax(0,1fr) minmax(0,.8fr)}.tr__row--flip .tr__media{order:2}.tr__row--noimg{grid-template-columns:1fr;max-width:760px;margin:0 auto}}
.tr__media{position:relative;max-width:520px;width:100%;justify-self:center}
.tr__media .arch{aspect-ratio:4/5}
.tr__no{position:absolute;right:-6px;top:30px;font-family:var(--serif);font-style:italic;font-weight:200;font-size:40px;color:var(--gold);background:var(--bg,var(--cream));width:74px;height:74px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}
@media (min-width:900px){.tr__no{right:-36px;width:92px;height:92px;font-size:46px}}
.tr__text h2{margin-bottom:22px}
.tr__price{font-family:var(--serif);font-weight:200;font-size:22px;color:var(--gold);margin:-8px 0 18px}
.tr__text .rte{max-width:520px}
.tr__text .rte p{margin-bottom:.8em}
.tr__cta{margin-top:34px}

/* price list */
.pl__grid{display:grid;grid-template-columns:1fr;gap:60px;max-width:860px;margin:0 auto}
.pl__grid--img{max-width:none;align-items:start}
@media (min-width:900px){.pl__grid--img{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:100px}.pl__media{position:sticky;top:120px}}
.pl__media .arch{aspect-ratio:3/4}
.pl__group{margin:0 0 48px}
.pl__group:last-child{margin-bottom:0}
.pl__group h3{font-size:26px;margin:0 0 10px;padding-bottom:14px;border-bottom:1px solid var(--fg);border-color:var(--hair2)}
@media (min-width:900px){.pl__group h3{font-size:30px}}
.pl__gnote{font-size:13px;color:var(--muted);margin:-4px 0 8px}
.pl__row{display:flex;align-items:baseline;gap:14px;padding:13px 0;border-bottom:1px solid var(--hair);font-size:14.5px}
.pl__row::after{content:"";order:1;flex:1;border-bottom:1px dotted var(--hair2);min-width:20px}
.pl__row span{max-width:72%}
.pl__row small{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:2px}
.pl__row b{order:2;font-family:var(--serif);font-weight:200;font-size:21px;color:var(--gold);white-space:nowrap}

/* feature box (Brid's Rewards) */
.fbox__in{display:grid;grid-template-columns:1fr;gap:30px;align-items:center;border:1px solid var(--hair);padding:44px 26px;background:#fff;position:relative;overflow:hidden}
.fbox--none .fbox__in{background:transparent}
@media (min-width:900px){.fbox__in{grid-template-columns:minmax(0,1fr) auto;gap:50px;padding:60px 70px}}
.fbox__in::after{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;border-radius:50%;border:1px solid var(--hair);pointer-events:none}
.fbox__in .eyebrow{margin-bottom:16px}
.fbox__in h2{margin-bottom:12px}
.fbox__in p{margin:0;color:var(--muted);max-width:560px}

/* products */
.pgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:40px 14px}
@media (min-width:900px){.pgrid{grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:56px 30px}}
.card{text-align:center;position:relative}
.card__media{position:relative;display:block;background:#fff;aspect-ratio:4/5;overflow:hidden}
.card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease),opacity .8s}
.card__media img.alt{opacity:0}
@media (hover:hover){.card:hover .card__media img{transform:scale(1.05)}.card:hover .card__media img.alt{opacity:1}.card:hover .card__media img.has-alt{opacity:0}}
.card__media .tag{position:absolute;left:12px;top:12px;z-index:1}
.card__info{padding:20px 4px 0}
.card__title{font-size:18px;line-height:1.28;margin:0 0 6px;letter-spacing:0}
@media (min-width:900px){.card__title{font-size:21px}}
.card__title a{text-decoration:none}
.card__title a:hover{color:var(--gold)}
.price{font-size:13px;letter-spacing:1px;color:var(--muted);display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap;margin:0}
.price s{opacity:.6}
.price--large{font-family:var(--serif);font-weight:200;font-size:30px;letter-spacing:0;color:var(--ink);justify-content:flex-start;gap:14px}
.price--large s{font-size:22px}
.card__note{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin:4px 0 0}
.card__add{display:inline-block;margin-top:12px;background:none;border:0;cursor:pointer;font-family:var(--caps);font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--cocoa);text-decoration:none;padding:0 0 5px;background:linear-gradient(currentColor,currentColor) center bottom/100% 1px no-repeat;transition:background-size .5s var(--ease),color .3s}
.card__add:hover{background-size:30% 1px}
.card__add.added{color:var(--gold)}
.card__add--out{color:var(--muted);background:none;cursor:default}
.cs-3 .card__add,.cs-4 .card__add{color:#fff}

/* product carousel */
.psl{position:relative}
.psl__track{list-style:none;margin:0;padding:0 0 6px;display:grid;grid-auto-flow:column;grid-auto-columns:64%;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.psl__track::-webkit-scrollbar{display:none}
.psl__track>li{scroll-snap-align:start}
@media (min-width:700px){.psl__track{grid-auto-columns:calc((100% - 48px)/3)}}
@media (min-width:1000px){.psl__track{grid-auto-columns:calc((100% - 72px)/4);gap:24px}}
.psl__nav{display:flex;justify-content:center;gap:12px;margin-top:40px}
.psl__arr{width:52px;height:52px;border:1px solid var(--hair2);background:none;border-radius:50%;cursor:pointer;color:var(--cocoa);display:flex;align-items:center;justify-content:center;transition:background .4s,color .4s,border-color .4s}
.psl__arr:hover{background:var(--cocoa);border-color:var(--cocoa);color:var(--cream)}
.psl__arr svg{width:7px;height:13px}

/* gift card promo + visual */
.gp__grid{display:grid;grid-template-columns:1fr;gap:60px;align-items:center}
@media (min-width:900px){.gp__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:100px}}
.gp__text h2{margin-bottom:24px}
.gp__p{color:var(--muted);margin:0 0 30px;max-width:440px}
.amts{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 34px;padding:0;border:0}
.amts a,.amts label span{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:11px 16px;border:1px solid var(--hair2);text-align:center;font-family:var(--serif);font-size:18px;font-weight:300;text-decoration:none;cursor:pointer;transition:background .35s,color .35s,border-color .35s;background:rgba(255,255,255,.35)}
.amts a:hover,.amts label:hover span{border-color:var(--cocoa)}
.amts a.on,.amts input:checked+span{background:var(--cocoa);color:var(--cream);border-color:var(--cocoa)}
.amts input{position:absolute;opacity:0;width:1px;height:1px}
.amts input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.gvis{position:relative;z-index:0;padding:26px 30px 40px 10px;max-width:560px;margin:0 auto;width:100%}
.gcard{position:relative;aspect-ratio:1.6;border-radius:20px;padding:8% 8.5%;color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;
  background:linear-gradient(135deg,#7a6252 0%,var(--cocoa) 45%,var(--esp) 100%);box-shadow:0 40px 80px rgba(43,29,20,.3),inset 0 0 0 1px rgba(255,255,255,.14);transform:rotate(-4deg);transition:transform 1.2s var(--ease);animation:cardfloat 8s ease-in-out infinite}
.gcard::before{content:"";position:absolute;inset:-60% -30%;background:linear-gradient(115deg,transparent 40%,rgba(255,240,220,.25) 50%,transparent 60%);animation:sheen 6s ease-in-out infinite;pointer-events:none}
@keyframes sheen{0%,60%{transform:translateX(-60%)}100%{transform:translateX(60%)}}
@keyframes cardfloat{0%,100%{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(-3deg) translateY(-10px)}}
.gcard.bump{animation:cardbump .7s var(--ease),cardfloat 8s ease-in-out .7s infinite}
@keyframes cardbump{0%{transform:rotate(-4deg) scale(1)}40%{transform:rotate(-1deg) scale(1.04)}100%{transform:rotate(-4deg) scale(1)}}
.gcard__top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.gcard__top img{width:42%;max-width:180px;height:auto}
.gcard__top span,.gcard__foot{font-family:var(--caps);font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:var(--latte)}
@media (min-width:600px){.gcard__top span,.gcard__foot{font-size:10px;letter-spacing:3px}}
.gcard__amt{font-family:var(--serif);font-weight:200;font-size:clamp(44px,10vw,72px);line-height:1}
.gcard__foot{display:flex;justify-content:space-between;gap:10px;color:#e9d6c2}
.gcard2{position:absolute;inset:26px 30px 40px 10px;transform:rotate(5deg) translate(22px,22px);background:var(--latte);border-radius:20px;z-index:-1;opacity:.75}
@media (prefers-reduced-motion:reduce){.gcard{animation:none}}

/* academy band */
.ac__grid{display:grid;grid-template-columns:1fr;gap:60px;align-items:center}
@media (min-width:900px){.ac__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:100px}.ac--right .ac__media{order:2}}
.ac__media .arch{aspect-ratio:4/5;max-width:520px;margin:0 auto}
@media (min-width:900px){.ac__media .arch{aspect-ratio:auto;height:680px;max-width:none}}
.ac h2{margin-bottom:24px}
.ac h2 em{color:var(--latte)}
.ac__p{color:#cdb9a6;margin:0 0 34px;max-width:440px}
.cs-1.ac .ac__p,.cs-2.ac .ac__p,.cs-5.ac .ac__p{color:var(--muted)}
.courses{margin:0 0 44px}
.courses a{display:flex;align-items:baseline;gap:14px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:14px;text-decoration:none;transition:padding .5s var(--ease),color .3s}
.courses a:first-child{border-top:1px solid rgba(255,255,255,.14)}
.courses a::after{content:"";order:1;flex:1;border-bottom:1px dotted rgba(255,255,255,.28);min-width:16px}
.courses a:hover{padding-left:8px;color:#fff}
.courses b{order:2;font-family:var(--serif);font-weight:200;font-size:22px;color:var(--latte)}
.cs-1 .courses a,.cs-2 .courses a{border-color:var(--hair2)}.cs-1 .courses b,.cs-2 .courses b{color:var(--gold)}

/* instagram */
.ig .shead{margin-bottom:46px}
.ig .shead h2 a{text-decoration:none}
.ig__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
@media (min-width:900px){.ig__grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}}
.ig__grid a{display:block;overflow:hidden}
.ig__grid img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform 1.4s var(--ease),opacity .6s}
.ig__grid a:hover img{transform:scale(1.06);opacity:.88}

/* reviews */
.q{text-align:center;max-width:940px}
.q__stars{color:var(--gold);letter-spacing:6px;font-size:13px;margin:-6px 0 14px}
.q__slides{display:grid}
.q__slide{grid-area:1/1;margin:0;opacity:0;transform:translateY(16px);transition:opacity 1s var(--ease),transform 1s var(--ease);pointer-events:none}
.q__slide.on{opacity:1;transform:none;pointer-events:auto}
.q blockquote{font-family:var(--serif);font-weight:200;font-style:italic;font-size:25px;line-height:1.35;margin:10px 0 28px;color:var(--fg)}
@media (min-width:900px){.q blockquote{font-size:38px}}
.q figcaption{font-family:var(--caps);font-size:10.5px;letter-spacing:4px;text-transform:uppercase;color:var(--muted)}
.q__dots{display:flex;justify-content:center;gap:12px;margin-top:40px}
.q__dots button{width:36px;height:12px;background:none;border:0;padding:0;cursor:pointer;position:relative}
.q__dots button::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--hair2)}
.q__dots button.on::after{background:var(--cocoa)}
.q__img{margin-top:56px}
.q__img img{width:230px;margin:0 auto}

/* rich text */
.rt__in{max-width:780px;margin:0 auto}
.rt__in--wide{max-width:980px}
.rt__in.al-center{text-align:center}
.rt__in.al-center .btns{justify-content:center}
.rt__in.al-center .rte ul{text-align:left;display:inline-block}
.rt__in h2{margin-bottom:26px}
.rt__in .btns{margin-top:36px}
.rt__in .rte{font-size:15.5px}

/* expandable list */
.cc__grid{display:grid;grid-template-columns:1fr;gap:60px;max-width:860px;margin:0 auto}
.cc__grid--img{max-width:none;align-items:start}
@media (min-width:900px){.cc__grid--img{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:100px}.cc__grid--right .cc__media{order:2}.cc__media{position:sticky;top:120px}}
.cc__media .arch{aspect-ratio:3/4}
.cc__list>.lead{margin:0 0 40px;text-align:left}
.acc{border-top:1px solid var(--hair2)}
.acc:last-of-type{border-bottom:1px solid var(--hair2)}
.acc summary{display:grid;grid-template-columns:38px minmax(0,1fr) 22px;gap:14px;align-items:baseline;padding:24px 0;cursor:pointer;list-style:none}
.acc summary::-webkit-details-marker{display:none}
.acc summary small{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--gold)}
.acc summary h3{font-size:22px;transition:color .4s;line-height:1.25}
@media (min-width:900px){.acc summary h3{font-size:26px}}
.acc summary:hover h3{color:var(--gold)}
.acc__pm{position:relative;width:16px;height:16px;align-self:center}
.acc__pm::before,.acc__pm::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--cocoa);transition:transform .5s var(--ease)}
.acc__pm::after{transform:rotate(90deg)}
details[open]>summary .acc__pm::after{transform:rotate(0)}
.acc__body{padding:0 0 30px 52px;font-size:15px;animation:fadeup .6s var(--ease)}
.acc__cta{margin-top:50px;text-align:center}
.acc--sm summary{grid-template-columns:minmax(0,1fr) 22px;padding:18px 0}
.acc--sm summary h3{font-family:var(--caps);font-size:11px!important;letter-spacing:3px;text-transform:uppercase}
.acc--sm .acc__body{padding:0 0 22px;font-size:14px}

/* newsletter */
.nl__in{max-width:660px}
.nl .shead{margin-bottom:44px}
.nlf__field{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--fg);padding-bottom:12px}
.nlf__field input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:16px;color:inherit;padding:6px 0}
.nlf__field input::placeholder{color:var(--muted)}
.nlf__field button{background:none;border:0;cursor:pointer;font-family:var(--caps);font-size:11px;letter-spacing:3.5px;text-transform:uppercase;color:var(--cocoa);padding:8px 0}
.cs-3 .nlf__field button,.cs-4 .nlf__field button{color:#fff}
.nlf__msg{margin:16px 0 0;font-size:14px;text-align:center;color:var(--cocoa)}

/* contact form (floating labels) */
.cf__in{max-width:780px}
.cf__row{display:grid;grid-template-columns:1fr;gap:0 30px}
@media (min-width:700px){.cf__row{grid-template-columns:1fr 1fr}}
.lf{position:relative;margin-bottom:24px}
.lf input,.lf textarea{width:100%;border:0;border-bottom:1px solid var(--hair2);background:transparent;font-size:16px;color:var(--ink);padding:24px 0 10px;outline:0;border-radius:0;transition:border-color .4s;resize:vertical;-webkit-appearance:none;appearance:none}
.lf input:focus,.lf textarea:focus{border-color:var(--cocoa)}
.lf label{position:absolute;left:0;top:24px;font-size:14px;color:var(--muted);pointer-events:none;transition:all .35s var(--ease)}
.lf input:focus+label,.lf input:not(:placeholder-shown)+label,.lf textarea:focus+label,.lf textarea:not(:placeholder-shown)+label,.lf--date label{top:0;font-family:var(--caps);font-size:9.5px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold)}
.lf--date input{min-height:56px}
.cf .center{margin-top:22px}
.cf__msg{padding:16px 20px;margin:0 0 26px;background:var(--cream);color:var(--cocoa);text-align:center}
.cf__msg--err{color:#8b2a1d;background:#f9e9e4}

/* page body */
.pb__in{max-width:820px}
.pb__in .shead{margin-bottom:50px}
.pb__in>.rte{font-size:15.5px}

/* breadcrumbs */
.crumbs{display:flex;flex-wrap:wrap;gap:10px;font-family:var(--caps);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);margin:0 0 34px}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--gold)}
.crumbs [aria-current]{color:var(--ink)}

/* ---------------------------------------------------------------- shop */
.shop__bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 0;margin:0 0 44px;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);font-family:var(--caps);font-size:10.5px;letter-spacing:3px;text-transform:uppercase}
.shop__fbtn{display:inline-flex;align-items:center;gap:12px;background:none;border:0;padding:6px 0;cursor:pointer;font-family:var(--caps);font-size:10.5px;letter-spacing:3px;text-transform:uppercase}
.shop__fbtn svg{width:18px;height:12px}
.shop__count{color:var(--muted)}
.shop__sort{display:flex;align-items:center;gap:12px}
.shop__sort select{font-family:var(--caps);font-size:10.5px;letter-spacing:2.5px;text-transform:uppercase;background:transparent;border:0;cursor:pointer;color:var(--ink);padding:6px 4px}
@media (max-width:599px){.shop__sort label{display:none}.shop__count{display:none}}
.shop__body{display:grid;grid-template-columns:1fr;gap:40px}
@media (min-width:900px){.shop__body{grid-template-columns:230px minmax(0,1fr);gap:56px}.shop__fbtn{display:none}}
.flt__head{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px}
.flt__title{font-family:var(--caps);font-size:11px;letter-spacing:3.5px;text-transform:uppercase;color:var(--gold)}
.flt__x{display:none;background:none;border:0;cursor:pointer;width:40px;height:40px;align-items:center;justify-content:center;color:var(--ink)}
.flt__x svg{width:18px;height:18px}
.flt__sec{border-bottom:1px solid var(--hair)}
.flt__sec summary{display:flex;justify-content:space-between;align-items:center;padding:16px 0;cursor:pointer;list-style:none;font-family:var(--serif);font-size:19px;font-weight:300}
.flt__sec summary::-webkit-details-marker{display:none}
.flt__body{padding:0 0 18px;font-size:14px}
.flt__cats,.flt__opts{list-style:none;margin:0;padding:0}
.flt__cats label,.flt__opts label{display:flex;align-items:center;gap:10px;padding:4px 0;cursor:pointer}
.flt input[type=radio],.flt input[type=checkbox]{accent-color:var(--cocoa);width:15px;height:15px}
.flt__price{display:flex;align-items:center;gap:10px}
.flt__price input{width:76px;border:0;border-bottom:1px solid var(--hair2);background:transparent;padding:6px 2px;outline:0}
.flt__foot{display:none;gap:16px;align-items:center;justify-content:space-between;margin-top:24px}
@media (max-width:899px){
  .flt{position:fixed;inset:0 0 0 auto;width:min(380px,100%);z-index:62;background:var(--cream);padding:20px 24px;overflow:auto;transform:translateX(100%);transition:transform .5s var(--ease);box-shadow:-30px 0 60px rgba(43,29,20,.15)}
  .filters-open .flt{transform:none}
  .flt__x,.flt__foot{display:flex}
  .shop.filters-open::after{content:"";position:fixed;inset:0;background:rgba(43,29,20,.45);z-index:61}
}
.pgrid--shop{grid-template-columns:1fr 1fr}
@media (min-width:1000px){.pgrid--shop{grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 26px}}
.shop__none{text-align:center;padding:60px 0;color:var(--muted)}

/* product page */
.pdp-wrap{padding:36px 0 30px}
@media (min-width:900px){.pdp-wrap{padding:56px 0 60px}}
.pdp{display:grid;grid-template-columns:1fr;gap:40px}
@media (min-width:900px){.pdp{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:90px}}
.pdp__main{position:relative;background:#fff;aspect-ratio:1;overflow:hidden}
.pdp__slide{position:absolute;inset:0;opacity:0;transition:opacity .7s var(--ease)}
.pdp__slide.on{opacity:1}
.pdp__slide img{width:100%;height:100%;object-fit:cover}
.pdp__main .tag{position:absolute;left:16px;top:16px;z-index:1}
.pdp__thumbs{list-style:none;margin:14px 0 0;padding:0;display:flex;gap:10px;flex-wrap:wrap}
.pdp__thumbs button{width:76px;height:76px;padding:0;border:1px solid transparent;background:#fff;cursor:pointer;opacity:.6;transition:opacity .3s,border-color .3s}
.pdp__thumbs button.on,.pdp__thumbs button:hover{opacity:1;border-color:var(--cocoa)}
.pdp__thumbs img{width:100%;height:100%;object-fit:cover}
@media (min-width:900px){.pdp__sticky{position:sticky;top:120px}}
.pdp__info .eyebrow{margin-bottom:18px}
.pdp__title{margin:0 0 18px}
.pdp__note{font-family:var(--caps);font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin:6px 0 0}
.pdp__desc{color:var(--muted);margin:28px 0 0;padding-top:26px;border-top:1px solid var(--hair);font-size:14.5px}
.pdp__desc.clamped{max-height:9.5em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,transparent);mask-image:linear-gradient(#000 60%,transparent)}
.pdp__more{margin-top:12px}
.pdp__opt{margin:26px 0 0}
.sel{position:relative}
.sel select{width:100%;-webkit-appearance:none;appearance:none;border:1px solid var(--hair2);background:#fff;padding:15px 44px 15px 18px;font-size:15px;color:var(--ink);cursor:pointer;border-radius:0;outline:0;transition:border-color .3s}
.sel select:focus{border-color:var(--cocoa)}
.sel select.err{border-color:#a5432f}
.sel svg{position:absolute;right:18px;top:50%;width:12px;height:7px;transform:translateY(-50%);pointer-events:none;color:var(--cocoa)}
.pdp__qty{margin:26px 0 0}
.qty{display:inline-flex;align-items:center;border:1px solid var(--hair2);height:54px;background:#fff}
.qty button{width:46px;height:100%;background:none;border:0;cursor:pointer;color:var(--ink);display:flex;align-items:center;justify-content:center}
.qty button svg{width:10px;height:10px}
.qty input{width:42px;border:0;background:transparent;text-align:center;font-size:15px;color:var(--ink);-moz-appearance:textfield;outline:0}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.pdp__msg{font-size:14px;color:#a5432f;margin:16px 0 0}
.pdp__btns{display:grid;grid-template-columns:1fr;gap:12px;margin:30px 0 30px;max-width:480px}
@media (min-width:600px){.pdp__btns{grid-template-columns:1fr 1fr}}
.pdp__share{list-style:none;margin:30px 0 0;padding:0;display:flex;align-items:center;gap:16px}
.pdp__share .lbl{margin:0 8px 0 0;color:var(--muted)}
.pdp__share a{display:flex;color:var(--cocoa)}
.pdp__share svg{width:17px;height:17px}

/* courses */
.crs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:60px 30px}
@media (min-width:640px){.crs{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.crs{grid-template-columns:repeat(3,minmax(0,1fr))}}
.crs__card{text-align:center}
.crs__img{display:block;aspect-ratio:4/5}
.crs__img img{transition:transform 1.6s var(--ease)}
.crs__card:hover .crs__img img{transform:scale(1.05)}
.crs__ph{display:flex;align-items:center;justify-content:center;height:100%;font-family:var(--serif);font-style:italic;font-size:26px;color:var(--gold);background:linear-gradient(160deg,var(--sand),var(--latte))}
.crs__info{padding-top:24px}
.crs__meta{font-family:var(--caps);font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin:0 0 10px}
.crs__name{font-size:24px;line-height:1.2;margin:0 0 8px}
.crs__name a{text-decoration:none}
.crs__tag{font-size:13.5px;color:var(--muted);margin:0 0 8px}
.crs__price{font-family:var(--serif);font-weight:200;font-size:24px;color:var(--cocoa);margin:0 0 16px}
.crp__grid{display:grid;grid-template-columns:1fr;gap:50px;align-items:start}
@media (min-width:900px){.crp__grid{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:100px}.crp__media{position:sticky;top:120px}}
.crp__media .arch{aspect-ratio:4/5;max-width:520px;margin:0 auto}
.crp__text h1{margin-bottom:16px}
.crp__tag{font-family:var(--serif);font-style:italic;font-weight:200;font-size:22px;color:var(--gold);margin:0 0 24px}
.crp__notice{display:inline-block;background:var(--sand);padding:8px 16px;font-size:13px;margin:0 0 20px}
.crp__facts{display:flex;flex-wrap:wrap;gap:0;margin:26px 0 34px;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.crp__facts div{flex:1 1 120px;padding:16px 16px 16px 0}
.crp__facts dt{font-family:var(--caps);font-size:9.5px;letter-spacing:3px;text-transform:uppercase;color:var(--muted)}
.crp__facts dd{margin:4px 0 0;font-family:var(--serif);font-weight:200;font-size:24px}
.crp__h{margin:50px 0 18px}
.crp__contact{margin-top:10px;padding-top:4px;border-top:1px solid var(--hair)}

/* gift card shop */
.gc{display:grid;grid-template-columns:1fr;gap:50px;align-items:start}
@media (min-width:900px){.gc{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px}.gc__vis{position:sticky;top:130px}}
.gc__fine{text-align:center;font-size:12.5px;color:var(--muted);max-width:420px;margin:24px auto 0;line-height:1.7}
.gc__info h1{margin:0 0 20px}
.gc__lead{color:var(--muted);max-width:460px}
.gc__amounts{margin:30px 0 26px}
.gc__amounts legend{margin-bottom:12px;padding:0}
.gc__row{display:flex;flex-wrap:wrap;gap:24px 46px;margin:0 0 20px}
.gc__for{border:0;margin:0;padding:0}
.gc__for legend{padding:0}
.gc__for label{display:inline-flex;align-items:center;gap:8px;margin:12px 20px 0 0;cursor:pointer;font-size:14.5px}
.gc__for input{accent-color:var(--cocoa);width:16px;height:16px}
.gc__buy{width:100%;margin-top:12px}
.gc__note{margin:18px 0 0;padding:16px 20px;background:var(--sand);color:var(--cocoa);font-size:14px}

/* bag */
.cart__loading{padding:60px 0;color:var(--muted)}
.cart-empty .lead{margin-bottom:0}
.cart-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px;margin:0 0 44px}
.cart-head .eyebrow{margin-bottom:14px}
.cart-grid{display:grid;grid-template-columns:1fr;gap:50px;align-items:start}
@media (min-width:1000px){.cart-grid{grid-template-columns:minmax(0,1fr) 380px;gap:70px}.cart-sum{position:sticky;top:120px}}
.cart-table{width:100%;border-collapse:collapse}
.cart-table th{font-family:var(--caps);font-size:10px;font-weight:400;letter-spacing:3px;text-transform:uppercase;text-align:left;padding:0 0 16px;border-bottom:1px solid var(--hair);color:var(--muted)}
.cart-table th:last-child,.cart-table td.tot{text-align:right}
.cart-table td{padding:26px 0;border-bottom:1px solid var(--hair);vertical-align:middle}
.cart-item__img{width:100px}
.cart-item__img img{width:96px;height:120px;object-fit:cover;background:#fff}
.cart-item__det{padding-left:24px!important}
.cart-item__det a{font-family:var(--serif);font-weight:200;font-size:22px;text-decoration:none;line-height:1.25}
.cart-item__opt{font-size:13px;color:var(--muted);margin-top:6px;line-height:1.6}
.cart-item__q{display:flex;align-items:center;gap:14px}
.cart-item__q .qty{height:44px}
.cart-item__rm{background:none;border:0;cursor:pointer;color:var(--muted);padding:6px 0;font-family:var(--caps);font-size:9.5px;letter-spacing:2.5px;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px}
.cart-table td.tot{font-family:var(--serif);font-weight:200;font-size:22px}
@media (max-width:749px){.cart-table thead{display:none}.cart-table tr{display:grid;grid-template-columns:90px 1fr;column-gap:16px;padding:22px 0;border-bottom:1px solid var(--hair)}.cart-table td{padding:0;border:0}.cart-item__img img{width:90px;height:112px}.cart-item__det{padding-left:0!important}.cart-table td.q{grid-column:2;margin-top:12px}.cart-table td.tot{grid-column:2;text-align:left;font-size:18px;margin-top:8px}}
.promo{display:flex;gap:10px;margin:30px 0 0;border-bottom:1px solid var(--hair2);max-width:420px}
.promo input{flex:1;min-width:0;border:0;background:transparent;font-size:14px;padding:12px 0;outline:0}
.promo button{background:none;border:0;cursor:pointer;font-family:var(--caps);font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:var(--cocoa)}
.cart-notes{margin-top:34px;font-size:14px;max-width:560px}
.cart-sum{background:#fff;padding:34px 30px;border:1px solid var(--hair)}
.cart-sum h2{margin:0 0 24px}
.cart-sum .row{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:10px;font-size:14px}
.cart-sum .tot{font-family:var(--serif);font-weight:200;font-size:26px;border-top:1px solid var(--hair);padding-top:16px;margin:16px 0 24px}
.cart-sum .small{font-size:12.5px;color:var(--muted);margin:14px 0 0}
.cart__secure{display:flex;gap:8px;align-items:center;justify-content:center}
.cart__secure svg{width:11px;height:9px;color:var(--gold)}
.ful{display:flex;flex-direction:column;gap:8px;margin:0 0 22px;font-size:14px;padding-bottom:20px;border-bottom:1px solid var(--hair)}
.ful label{display:flex;gap:10px;align-items:center;cursor:pointer}
.ful input{accent-color:var(--cocoa)}
.cart-err{background:#f9e9e4;color:#8b2a1d;padding:12px 16px;margin-bottom:18px;font-size:14px}

/* order, 404, cookie */
.order{max-width:660px;margin:0 auto;text-align:center}
.order h1{margin-bottom:18px}
.order table{width:100%;border-collapse:collapse;margin:34px 0;text-align:left}
.order td{padding:14px 0;border-bottom:1px solid var(--hair)}
.order td:last-child{text-align:right}
.nf h1{margin-bottom:10px}
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:70;max-width:440px;padding:24px;background:var(--cream);border:1px solid var(--hair);box-shadow:0 20px 50px rgba(43,29,20,.15)}
.cookie p{font-size:14px;margin:0 0 16px}
.cookie .btns{gap:10px}.cookie .btn{flex:1;min-height:46px;padding:0 16px}

/* ---------------------------------------------------------------- footer */
.ftr{background:var(--esp);color:#cdb9a6;padding:100px 0 44px;text-align:center;font-size:14px}
@media (min-width:900px){.ftr{padding:110px 0 46px}}
.ftr__home{display:inline-block}
.ftr__logo{width:200px;height:auto;margin:0 auto}
@media (min-width:900px){.ftr__logo{width:220px}}
.ftr__tag{font-family:var(--serif);font-style:italic;font-weight:200;font-size:21px;color:#fff;margin:24px 0 0;line-height:1.4}
.ftr__nav{display:flex;justify-content:center;flex-wrap:wrap;gap:14px 34px;margin:44px 0 52px;font-family:var(--caps);font-size:10.5px;letter-spacing:3.5px;text-transform:uppercase}
.ftr__nav a{text-decoration:none;transition:color .3s}
.ftr__nav a:hover{color:#fff}
.ftr__cols{display:grid;grid-template-columns:1fr;gap:36px;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);padding:46px 0}
@media (min-width:800px){.ftr__cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ftr h4{font-family:var(--serif);font-weight:200;font-style:italic;font-size:22px;color:#fff;margin:0 0 12px}
.ftr__cols p{margin:0;line-height:1.9}
.ftr__cols a{text-decoration:none}
.ftr__bottom{margin-top:36px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:11px;letter-spacing:2px;color:#9a8574}
.ftr__bottom a{text-decoration:none}
.ftr__bottom>*{flex:1}.ftr__bottom>:first-child{text-align:left}.ftr__bottom>:last-child{text-align:right}
.soc{display:flex;gap:20px;justify-content:center}
.soc a{display:flex;color:inherit;transition:color .3s,transform .3s}
.soc a:hover{color:#fff;transform:translateY(-2px)}
.drawer .soc a:hover{color:var(--gold)}
.soc svg{width:18px;height:18px}
@media (max-width:700px){.ftr__bottom{flex-direction:column}.ftr__bottom>*{text-align:center!important}}

/* polish */
.hero .eyebrow,.bnr__in .eyebrow,.band .eyebrow{text-shadow:0 1px 14px rgba(43,29,20,.55)}
.hero h1,.bnr__in h1{text-shadow:0 2px 30px rgba(43,29,20,.18)}
@media (max-width:999px){.mc__list--m2>li:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - 7px)}}
.ig .shead h2{font-size:clamp(22px,6.6vw,44px);overflow-wrap:anywhere}
.bnr::after{background:linear-gradient(180deg,rgba(43,29,20,calc(var(--ov,.4)*1.3)) 0%,rgba(43,29,20,calc(var(--ov,.4)*.9)) 45%,rgba(43,29,20,calc(var(--ov,.4)*1.9)) 100%)}
@media (min-width:1000px){.pl__grid:not(.pl__grid--img){max-width:1080px}.pl__grid:not(.pl__grid--img) .pl__list{column-count:2;column-gap:80px}.pl__grid:not(.pl__grid--img) .pl__group{break-inside:avoid;display:inline-block;width:100%}}
.rte{overflow-wrap:break-word}.rte a{word-break:break-word}
.mc__body>.tlink{margin-top:18px}

/* Brid's Rewards app section - phones + golden loyalty card */
.app{overflow:hidden}
.app__grid{display:grid;grid-template-columns:1fr;gap:70px;align-items:center}
@media (min-width:900px){.app__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px}}
.app h2{margin-bottom:24px}
.app .lead{margin:0 0 36px;max-width:470px}
.app__steps{list-style:none;margin:0 0 44px;padding:0;border-top:1px solid var(--hair2)}
.app__steps li{display:grid;grid-template-columns:40px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid var(--hair2)}
.app__steps small{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--gold)}
.app__steps h3{font-size:24px;margin-bottom:4px}
.app__steps p{margin:0;color:var(--muted);font-size:14px}
.cs-3 .app__steps,.cs-4 .app__steps,.cs-3 .app__steps li,.cs-4 .app__steps li{border-color:rgba(255,255,255,.14)}
.cs-3 .app__steps p,.cs-4 .app__steps p{color:#cdb9a6}.cs-3 .app__steps small,.cs-4 .app__steps small{color:var(--latte)}
.app__visual{position:relative;height:560px;max-width:520px;margin:0 auto;width:100%;overflow:visible}
@media (min-width:900px){.app__visual{height:660px}}
.app__visual::before{content:"";position:absolute;inset:8% 4% 6%;border-radius:999px 999px 0 0;background:radial-gradient(circle at 50% 35%,rgba(216,184,147,.55),rgba(216,184,147,0) 70%);z-index:0}
.phone{position:absolute;width:250px;aspect-ratio:9/19.5;border-radius:42px;background:var(--esp);padding:10px;box-shadow:0 40px 80px rgba(43,29,20,.32),inset 0 0 0 1px rgba(255,240,220,.16)}
@media (min-width:900px){.phone{width:290px}}
.phone__screen{width:100%;height:100%;border-radius:33px;overflow:hidden;background:#000}
.phone__screen img{width:100%;height:100%;object-fit:cover;object-position:top}
.phone--front{right:4%;top:0;z-index:2;animation:pfloat 7s ease-in-out infinite}
.phone--back{left:2%;top:70px;z-index:1;transform:rotate(-6deg);opacity:.92;animation:pfloat2 8s ease-in-out infinite}
@keyframes pfloat{50%{transform:translateY(-14px)}}
@keyframes pfloat2{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(-6deg) translateY(12px)}}
.lcard{position:absolute;left:-2%;bottom:20px;z-index:3;width:280px;aspect-ratio:1.6;border-radius:18px;padding:22px 24px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;
  background:linear-gradient(135deg,#e3c9a4 0%,var(--gold) 45%,#7a5a3c 100%);box-shadow:0 30px 60px rgba(43,29,20,.3),inset 0 0 0 1px rgba(255,245,230,.35);overflow:hidden;animation:pfloat 9s ease-in-out infinite}
.lcard::before{content:"";position:absolute;inset:-60% -30%;background:linear-gradient(115deg,transparent 40%,rgba(255,250,240,.35) 50%,transparent 60%);animation:sheen 6s ease-in-out infinite;pointer-events:none}
@media (min-width:900px){.lcard{width:320px;left:-6%}}
.lcard__top{display:flex;justify-content:space-between;align-items:center;font-size:9.5px;letter-spacing:3px;text-transform:uppercase}
.lcard__top img{width:96px;height:auto}
.lcard__pts b{display:block;font-family:var(--serif);font-weight:200;font-size:48px;line-height:1}
.lcard__pts span,.lcard__foot{font-size:9.5px;letter-spacing:3px;text-transform:uppercase;color:#fbf0e2}
.lcard__foot{display:flex;justify-content:space-between}
@media (max-width:899px){.lcard{left:0}.phone--back{left:0}}
@media (max-width:420px){.app__visual{height:520px}.phone{width:220px}.lcard{width:250px}}
@media (prefers-reduced-motion:reduce){.phone,.lcard,.lcard::before{animation:none}}

/* Booking chooser (Treatwell or Fresha) - only when a Fresha link is set */
.bk{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:20px;visibility:hidden;transition:visibility 0s .4s}
.bk.open{visibility:visible;transition:none}
.bk__bg{position:absolute;inset:0;background:rgba(43,29,20,.55);opacity:0;transition:opacity .4s}
.bk.open .bk__bg{opacity:1}
.bk__panel{position:relative;width:min(520px,100%);background:var(--cream);color:var(--ink);border:1px solid var(--hair);box-shadow:0 30px 70px rgba(43,29,20,.25);padding:54px 44px 46px;text-align:center;opacity:0;transform:translateY(18px);transition:opacity .4s,transform .5s var(--ease)}
.bk.open .bk__panel{opacity:1;transform:none}
.bk__panel .h2{margin:0 0 14px}
.bk__p{color:var(--muted);margin:0 0 30px}
.bk__opts{display:flex;flex-direction:column;gap:12px}
.bk__opts .btn{width:100%}
.bk__x{position:absolute;top:14px;right:14px;width:42px;height:42px;display:grid;place-items:center;background:none;border:0;color:var(--ink);cursor:pointer}
.bk__x svg{width:16px;height:16px}
@media (max-width:520px){.bk{align-items:flex-end;padding:0}.bk__panel{padding:46px 24px 34px}}
@media (prefers-reduced-motion:reduce){.bk__panel{transition:none}}
.sec[id]{scroll-margin-top:90px}
/* gift cards sold on Fresha (setting giftcard_url): branded page with a button out */
.gc--ext{align-items:center}
.gc--ext .gc__buy{width:auto;margin-top:30px}
.gc__small{margin:16px 0 0;font-size:13px;color:var(--muted)}
.gc__small a{color:inherit}
/* header "Book now" (like the Tanning & Beauty site) */
.hdr__book{font-family:var(--caps);font-size:10.5px;letter-spacing:3px;text-transform:uppercase;text-decoration:none;white-space:nowrap;border:1px solid currentColor;padding:11px 20px;transition:background .4s,color .4s,border-color .4s}
.hdr__book:hover{background:var(--cocoa);border-color:var(--cocoa);color:#fff}
@media (max-width:1099px){.hdr__book{display:none}}
@media (min-width:1100px) and (max-width:1339px){.nav ul{gap:20px}.hdr__r{gap:18px}.hdr__in{gap:16px}.nav__a{letter-spacing:2.2px}.hdr__book{padding:10px 14px;letter-spacing:2.2px}}
/* Treatwell's official widget (embed mode) inside our own pop-over panel - "Book on Treatwell" */
.twp{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:24px}
.twp[hidden]{display:none}
.twp__bg{position:absolute;inset:0;background:rgba(43,29,20,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.twp__panel{position:relative;width:min(980px,100%);height:min(820px,100%);background:#fff;display:flex;flex-direction:column;box-shadow:0 30px 80px rgba(43,29,20,.3);animation:fadeup .4s var(--ease)}
.twp__bar{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 10px 22px;background:var(--cream);border-bottom:1px solid var(--hair);font-family:var(--caps);font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:var(--cocoa)}
.twp__x{background:none;border:0;color:var(--ink);cursor:pointer;padding:9px;line-height:0}
.twp__x svg{width:18px;height:18px}
.twp__frame{flex:1;position:relative;min-height:0}
.twp__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.twp__wait{position:absolute;inset:0;margin:0;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px}
.twp__fail{display:none;margin:0;padding:18px 22px;text-align:center;font-size:14px}
.twp--fail .twp__fail{display:block}.twp--fail .twp__wait{display:none}
.twp__fail a{color:var(--gold)}
html.twp-open,html.twp-open body{overflow:hidden}
@media (max-width:700px){.twp{padding:0}.twp__panel{width:100%;height:100%}}
