
:root{
  --black:#090909;
  --black-2:#11100f;
  --ivory:#f4efe5;
  --paper:#e9dfcf;
  --gold:#c99a4a;
  --gold-light:#e2bd79;
  --muted:#a79f93;
  --line:rgba(255,255,255,.13);
  --serif:Georgia,"Times New Roman",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --brush:"Brush Script MT","Segoe Script",cursive;
  --ease:cubic-bezier(.2,.75,.15,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--black)}
body{
  margin:0;
  background:var(--black);
  color:#fff;
  font-family:var(--sans);
}
.artisia-home-sections{display:flex;flex-direction:column}
.artisia-home-section{order:var(--artisia-section-order,0)}
body.intro-active{overflow:hidden}
html.artisia-overlay-open{overflow:hidden}
html.artisia-skip-intro body.intro-active{overflow:auto}
body.elementor-editor-active,
body.elementor-page,
.elementor-editor-active .artisia-builder-page{
  overflow-y:auto!important;
  height:auto!important;
  min-height:100%!important;
}
html.artisia-skip-intro .intro{display:none!important}
html.artisia-skip-intro .main-site{opacity:1!important;visibility:visible!important;display:block!important}
.artisia-intro-disabled .intro{display:none!important}
.artisia-intro-disabled .main-site{opacity:1!important;visibility:visible!important;display:block!important}
button,input{font:inherit}
a{color:inherit}
img{display:block;max-width:100%}
::selection{background:var(--gold);color:#111}
.shell{width:min(1240px,calc(100vw - 48px));margin-inline:auto}
.section{position:relative;padding:110px 0}
.eyebrow{
  margin:0 0 18px;
  color:var(--gold-light);
  font-size:11px;
  font-weight:800;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.section-title{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(44px,6vw,84px);
  line-height:.96;
  font-weight:400;
  letter-spacing:-.045em;
}
.section-title em{
  color:var(--gold);
  font-family:var(--brush);
  font-size:1.12em;
  font-weight:400;
}
.section-copy{
  max-width:620px;
  color:#716a62;
  font-size:16px;
  line-height:1.8;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:var(--button-min-height,52px);
  padding:0 25px;
  border:1px solid var(--button-border,var(--gold));
  border-radius:var(--button-radius,0);
  background:var(--button-bg,var(--gold));
  color:var(--button-text,#111);
  text-decoration:none;
  font-size:var(--button-font-size,11px);
  font-weight:850;
  letter-spacing:var(--button-letter-spacing,.12em);
  text-transform:uppercase;
  cursor:pointer;
  transition:transform .3s var(--ease),background .3s,color .3s,border-color .3s;
}
.btn:hover{transform:translateY(-3px);background:var(--button-hover-bg,var(--gold-light));color:var(--button-hover-text,#111)}
.btn.ghost{background:transparent;color:var(--ghost-text,#fff);border-color:var(--ghost-border,rgba(255,255,255,.36))}
.btn.ghost:hover{border-color:var(--button-border,var(--gold));color:var(--gold-light)}
.icon-btn{
  width:42px;height:42px;border:0;background:transparent;color:inherit;
  display:grid;place-items:center;cursor:pointer;border-radius:50%;
  transition:background .25s,color .25s,transform .25s;
}
.icon-btn:hover{background:rgba(255,255,255,.08);color:var(--gold-light);transform:translateY(-2px)}
.icon-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.gold-line{
  width:82px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);margin:22px 0;
}

/* Intro */
.intro{
  position:fixed;inset:0;z-index:9999;background:#050505;overflow:hidden;
  display:grid;place-items:center;perspective:1100px;
}
.intro-base{
  position:absolute;
  inset:-4%;
  background:url("../images/intro-cover-clean.jpg") center/cover no-repeat;
  transform-origin:center;
  will-change:transform,filter;
  animation:introAutoCinema 26s cubic-bezier(.45,.05,.2,1) infinite alternate;
  transition:opacity .7s ease;
}
.intro-base:before{
  content:"";
  position:absolute;
  inset:-12%;
  pointer-events:none;
  background:radial-gradient(circle at 68% 42%,rgba(226,189,121,.13),transparent 28%);
  mix-blend-mode:screen;
  opacity:.55;
  transform:translate3d(-2%,1%,0) scale(1.04);
  animation:introGoldDrift 11s ease-in-out infinite alternate;
}
@keyframes introAutoCinema{
  0%{transform:translate3d(-1.2%,-.6%,0) scale(1.075);filter:brightness(.965) contrast(1.02)}
  38%{transform:translate3d(.8%,-.15%,0) scale(1.105);filter:brightness(1.01) contrast(1.035)}
  72%{transform:translate3d(1.35%,.75%,0) scale(1.09);filter:brightness(.99) contrast(1.03)}
  100%{transform:translate3d(-.45%,1.05%,0) scale(1.115);filter:brightness(1.005) contrast(1.025)}
}
@keyframes introGoldDrift{
  0%{transform:translate3d(-3%,2%,0) scale(1.03);opacity:.36}
  55%{transform:translate3d(2%,-1%,0) scale(1.08);opacity:.60}
  100%{transform:translate3d(5%,2%,0) scale(1.04);opacity:.42}
}
.intro-base:after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 53% 48%,rgba(0,0,0,.06),rgba(0,0,0,.22) 50%,rgba(0,0,0,.72) 100%);
}
.intro-brand{
  position:absolute;top:38px;left:46px;z-index:4;
  font-family:var(--serif);font-size:25px;letter-spacing:.38em;color:#e6c58b;
}
.intro-brand small{display:block;margin-top:7px;font-family:var(--sans);font-size:7px;letter-spacing:.4em;text-align:center}
.intro-content{
  position:relative;z-index:5;margin-top:25vh;text-align:center;color:#ecd2a4;
}
.intro-content h1{
  margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(32px,4vw,60px);letter-spacing:.22em;text-transform:uppercase;
}
.intro-content p{margin:18px 0 34px;font-size:11px;letter-spacing:.42em;text-transform:uppercase}
.enter-btn{
  width:min(350px,80vw);height:72px;border:1px solid rgba(226,189,121,.7);
  background:rgba(6,6,6,.28);color:#efd5a7;
  font-size:12px;font-weight:700;letter-spacing:.38em;text-transform:uppercase;
  cursor:pointer;position:relative;overflow:hidden;transition:background .3s,box-shadow .3s;
}
.enter-btn:before{
  content:"";position:absolute;inset:0;transform:translateX(-105%);
  background:linear-gradient(90deg,transparent,rgba(226,189,121,.18),transparent);
  transition:transform .65s;
}
.enter-btn:hover:before{transform:translateX(105%)}
.enter-btn:hover{background:rgba(40,27,11,.42);box-shadow:0 0 35px rgba(201,154,74,.16)}
.enter-btn:focus-visible{outline:2px solid #fff;outline-offset:5px}
.intro-scroll{
  position:absolute;bottom:48px;left:50%;width:18px;height:18px;border-right:1px solid #e9c88e;border-bottom:1px solid #e9c88e;
  transform:translateX(-50%) rotate(45deg);z-index:5;animation:floatArrow 1.8s ease-in-out infinite;
}
@keyframes floatArrow{50%{transform:translate(-50%,8px) rotate(45deg)}}
.tile-layer,.streak-layer{position:absolute;inset:0;pointer-events:none}
.art-tile{position:absolute;backface-visibility:hidden;transform-origin:center;will-change:transform,opacity,filter}
.vortex{
  position:absolute;left:50%;top:50%;width:20px;height:20px;border-radius:50%;
  transform:translate(-50%,-50%) scale(.2);opacity:0;
  background:radial-gradient(circle,#fff 0 5%,#d7ad65 10%,rgba(30,16,7,.9) 32%,#000 64%,transparent 72%);
  box-shadow:0 0 70px 26px rgba(208,153,70,.15);
  pointer-events:none;
}
.intro.entering .intro-content,.intro.entering .intro-brand,.intro.entering .intro-scroll{animation:introUiOut .58s cubic-bezier(.2,.75,.15,1) forwards}
.intro.entering .vortex{animation:vortexIn 2.45s cubic-bezier(.22,.7,.2,1) forwards}
@keyframes introUiOut{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.97)}}
@keyframes vortexIn{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.12);filter:blur(2px)}
  32%{opacity:.48;transform:translate(-50%,-50%) scale(.72);filter:blur(1px)}
  72%{opacity:.72;transform:translate(-50%,-50%) scale(2.8);filter:blur(2px)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(7);filter:blur(10px)}
}
.streak{
  position:absolute;left:50%;top:50%;width:2px;height:16vh;
  transform-origin:50% 0;background:linear-gradient(to bottom,rgba(238,204,143,.9),transparent);
  opacity:0;filter:blur(.6px);will-change:transform,opacity;
}
.intro-flash{
  position:absolute;inset:0;background:#f6dba9;opacity:0;pointer-events:none;
}
.intro.entering .intro-flash{animation:flashOut 2.55s ease forwards}
@keyframes flashOut{0%,68%{opacity:0}84%{opacity:.16}100%{opacity:0}}
.main-site{opacity:0;visibility:hidden}
.main-site.ready{opacity:1;visibility:visible}
.main-site.revealing{animation:siteReveal .95s var(--ease) both}
@keyframes siteReveal{from{opacity:0;filter:blur(15px);transform:scale(1.025)}to{opacity:1;filter:none;transform:none}}

/* Header */
.site-header{
  position:sticky;z-index:1000;left:0;right:0;top:0;height:76px;background:rgba(9,9,9,.86);border-bottom:1px solid rgba(255,255,255,.1);
  backdrop-filter:saturate(120%) blur(10px);
  transition:height .28s var(--ease),background-color .28s var(--ease),box-shadow .28s var(--ease);
}
.artisia-global-header-flow .site-header{
  position:sticky;top:0;z-index:1000;
}
body.admin-bar .site-header{top:32px}
body.artisia-header-scrolled .site-header{height:66px;background:rgba(7,7,7,.96);box-shadow:0 18px 40px rgba(0,0,0,.28)}
.header-inner{height:100%;display:flex;align-items:center;gap:28px}
.brand{
  margin-right:auto;text-decoration:none;color:#fff;font-family:var(--serif);font-size:22px;letter-spacing:.32em;
}
.brand small{display:block;margin-top:2px;font-family:var(--sans);font-size:6px;letter-spacing:.38em;color:#8f867a;text-align:center}
.nav{display:flex;align-items:center;gap:34px}
.nav a{
  position:relative;text-decoration:none;color:#fff;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
}
.nav a:after{
  content:"";position:absolute;left:0;right:0;bottom:-11px;height:1px;background:var(--gold);
  transform:scaleX(0);transform-origin:left;transition:transform .28s;
}
.nav a:hover:after,.nav a.active:after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:2px}
.cart-count{
  position:absolute;top:4px;right:3px;min-width:15px;height:15px;padding:0 4px;border-radius:999px;
  display:grid;place-items:center;background:var(--gold);color:#111;font-size:8px;font-weight:900;
}
.cart-button{position:relative}
.menu-btn{display:none}
.sound-on .sound-off-path{display:none}
.sound-off .sound-on-path{display:none}

/* Hero */
.hero{
  min-height:calc(100svh - 76px);position:relative;overflow:hidden;background:#080808;
}
.artisia-home-section,
.footer{
  scroll-margin-top:88px;
}
body.artisia-header-scrolled .artisia-home-section,
body.artisia-header-scrolled .footer{
  scroll-margin-top:76px;
}
.hero-bg{position:absolute;inset:0;background:url("../images/hero-background-clean.jpg") center/cover no-repeat;transform:scale(1.04);animation:heroBreath 15s ease-in-out infinite alternate}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.93) 0%,rgba(5,5,5,.6) 42%,rgba(5,5,5,.16) 72%,rgba(5,5,5,.4) 100%)}
@keyframes heroBreath{to{transform:scale(1.09) translate3d(-1%,0,0)}}
.hero-inner{min-height:calc(100svh - 76px);position:relative;z-index:3;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:30px}
.hero-copy{padding:90px 0 70px}
.hero-copy h1{
  margin:0;max-width:650px;font-family:var(--serif);font-size:clamp(58px,7vw,112px);line-height:.83;font-weight:400;letter-spacing:-.05em;
}
.hero-copy h1 .brush{
  display:inline-block;position:relative;color:var(--gold);font-family:var(--brush);font-size:1.26em;letter-spacing:-.07em;transform:rotate(-4deg);
}
.hero-copy h1 .brush:after{
  content:"";position:absolute;left:-8%;right:-15%;bottom:.08em;height:.09em;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:rotate(-3deg);
}
.hero-copy .lead{max-width:520px;margin:34px 0;color:#d5d0ca;font-size:17px;line-height:1.8}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}
.hero-slider{position:relative;min-height:690px}
.frame{
  position:absolute;overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:0 34px 80px rgba(0,0,0,.48);
  transition:transform .8s var(--ease),opacity .8s,filter .8s;
}
.frame img{width:100%;height:100%;object-fit:cover}
.frame.main{width:48%;height:75%;right:16%;top:10%;z-index:4}
.frame.left{width:37%;height:58%;left:2%;top:25%;z-index:2}
.frame.right{width:35%;height:53%;right:-5%;top:23%;z-index:1}
.hero-slider[data-slide="1"] .frame.main img{object-position:center}
.hero-slider[data-slide="2"] .frame.main{transform:translateX(-8%) rotate(-1deg)}
.hero-slider[data-slide="3"] .frame.main{transform:translateX(6%) rotate(1deg)}
.slider-nav{position:absolute;left:11%;right:8%;bottom:7%;display:flex;align-items:center;justify-content:space-between;z-index:6}
.slider-index{display:flex;align-items:center;gap:16px;color:#aaa;font-size:12px}
.slider-index button{border:0;background:none;color:#aaa;cursor:pointer;padding:6px}
.slider-index button.active{color:var(--gold-light)}
.slider-index .progress{width:110px;height:1px;background:rgba(255,255,255,.2);position:relative}
.slider-index .progress:after{content:"";position:absolute;left:0;top:0;width:33%;height:1px;background:var(--gold);transition:transform .5s}
.hero-slider[data-slide="2"] .progress:after{transform:translateX(100%)}
.hero-slider[data-slide="3"] .progress:after{transform:translateX(200%)}
.slider-arrows{display:flex;gap:12px}
.circle-arrow{width:46px;height:46px;border:1px solid var(--gold);border-radius:50%;background:rgba(0,0,0,.3);color:var(--gold-light);cursor:pointer}

/* Reveal language */
.reveal,.fragment-reveal{opacity:0;transform:translateY(42px)}
.reveal.in{opacity:1;transform:none;transition:opacity .9s var(--ease),transform .9s var(--ease)}
.fragment-reveal.in{animation:fragmentOpen .9s var(--ease) both}
@keyframes fragmentOpen{0%{opacity:0;clip-path:inset(45% 45%);filter:blur(9px);transform:scale(.94)}100%{opacity:1;clip-path:inset(0);filter:none;transform:none}}
.stagger>*{opacity:0;transform:translateY(34px)}
.stagger.in>*{animation:staggerUp .8s var(--ease) forwards}
.stagger.in>*:nth-child(2){animation-delay:.08s}.stagger.in>*:nth-child(3){animation-delay:.16s}.stagger.in>*:nth-child(4){animation-delay:.24s}.stagger.in>*:nth-child(5){animation-delay:.32s}
@keyframes staggerUp{to{opacity:1;transform:none}}

/* Featured */
.featured{background:var(--ivory);color:#171513}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:55px}
.section-head .section-title{max-width:700px}
.view-link{font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid #171513;padding-bottom:6px}
.art-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.art-card{position:relative;min-width:0}
.art-media{position:relative;aspect-ratio:.83;overflow:hidden;background:#ddd}
.art-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .6s}
@media(hover:hover) and (pointer:fine){
  .art-card:hover img{transform:scale(1.055);filter:saturate(1.05)}
}
.wish{
  position:absolute;right:13px;top:13px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.83);cursor:pointer;font-size:18px;z-index:4;
}
.wish.active{background:var(--gold);color:#111}
.art-overlay{
  position:absolute;inset:auto 12px 12px;z-index:3;display:flex;gap:10px;transform:translateY(15px);opacity:0;transition:.35s var(--ease);
}
@media(hover:hover) and (pointer:fine){
  .art-card:hover .art-overlay,
  .art-card:focus-within .art-overlay{transform:none;opacity:1}
}
.art-card:focus-within .art-media{outline:2px solid var(--gold);outline-offset:3px}
.mini-action{flex:1;min-height:44px;border:0;background:#0b0b0b;color:#fff;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;padding:0 12px;line-height:1.15}
.mini-action.gold{background:var(--button-bg,var(--gold));color:var(--button-text,#111)}
.mini-action.loading,.mini-action[aria-busy=true]{pointer-events:none;opacity:.72}
.art-overlay .added_to_cart{display:none!important}
.art-info{padding:16px 2px 0}
.art-info h3{margin:0 0 7px;font-family:var(--serif);font-size:20px;font-weight:400}
.meta-line{display:flex;justify-content:space-between;gap:15px;color:#786f66;font-size:11px}
.price{color:#15120f;font-weight:800}

/* About */
.about{background:var(--paper);color:#171513}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:88px;align-items:center}
.artist-image{position:relative;min-height:720px}
.artist-image img{width:82%;height:680px;object-fit:cover}
.artist-image:after{
  content:attr(data-signature);
  position:absolute;
  right:var(--artisia-signature-right,0);
  bottom:var(--artisia-signature-bottom,40px);
  font-family:var(--brush);
  font-size:var(--artisia-signature-size,72px);
  color:var(--artisia-signature-color,var(--gold));
  transform:translate3d(0,0,0) rotate(-8deg);
  transform-origin:center;
  will-change:transform;
  animation:artistSignatureFloat 4.8s ease-in-out infinite;
}
.artist-image.no-signature:after{display:none}
.artisia-signature-static .artist-image:after{animation:none!important}
.artisia-reveal-disabled .reveal,
.artisia-reveal-disabled .fragment-reveal,
.artisia-reveal-disabled .stagger>*{opacity:1!important;transform:none!important;clip-path:none!important;filter:none!important;animation:none!important}
.artisia-background-motion-disabled .intro-base,
.artisia-background-motion-disabled .intro-base:before,
.artisia-background-motion-disabled .hero-bg,
.artisia-background-motion-disabled .story-visual img,
.artisia-background-motion-disabled .wormhole-rings i{animation:none!important;transform:none!important}
.artisia-studio-motion-disabled .studio-track{animation:none!important}
@keyframes artistSignatureFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(-8deg)}
  35%{transform:translate3d(-7px,-11px,0) rotate(-5.5deg)}
  70%{transform:translate3d(5px,-5px,0) rotate(-9.5deg)}
}
.about-copy blockquote{margin:34px 0;font-family:var(--serif);font-size:clamp(30px,4vw,55px);line-height:1.06}
.artist-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:45px;padding-top:25px;border-top:1px solid rgba(20,18,15,.16)}
.artist-facts strong{display:block;font-family:var(--serif);font-size:28px;font-weight:400}
.artist-facts span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#766e66}

/* Collections */
.collections{background:#0b0b0b;padding-bottom:0}
.collection-panels{display:flex;height:610px;margin-top:55px}
.collection-panel{position:relative;flex:1;overflow:hidden;cursor:pointer;border-left:1px solid rgba(255,255,255,.12);transition:flex .65s var(--ease),filter .5s}
.collection-panel:first-child{border-left:0}
.collection-panel.active,.collection-panel:hover{flex:2.35}
.collection-panel img{width:100%;height:100%;object-fit:cover;filter:brightness(.55);transition:filter .5s,transform 1s var(--ease)}
.collection-panel.active img,.collection-panel:hover img{filter:brightness(.82);transform:scale(1.04)}
.collection-caption{position:absolute;left:26px;bottom:28px;right:26px}
.collection-caption h3{margin:0;font-family:var(--serif);font-size:34px;font-weight:400}
.collection-caption p{margin:7px 0 0;color:#d0c9c0;font-size:10px;letter-spacing:.13em;text-transform:uppercase}

/* Story */
.story{background:#11100f;padding:0;min-height:900px;display:grid;grid-template-columns:1.15fr .85fr}
.story-visual{position:sticky;top:0;height:100svh;overflow:hidden}
.story-visual img{width:100%;height:100%;object-fit:cover;image-rendering:auto;transform:translateZ(0);backface-visibility:hidden;will-change:transform;animation:storyPan 18s ease-in-out infinite alternate}
@keyframes storyPan{to{transform:scale(1.03) translateX(-1%)}}
.story-content{padding:130px 10vw 110px 7vw;display:flex;flex-direction:column;justify-content:center}
.story-content h2{font-family:var(--serif);font-size:clamp(50px,6vw,90px);line-height:.9;font-weight:400;margin:0}
.story-content h2 em{font-family:var(--brush);color:var(--gold);font-size:1.18em}
.story-content p{color:#b8afa5;line-height:1.85}
.story-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin:36px 0}
.story-fact{padding:17px 0;border-top:1px solid rgba(255,255,255,.15)}
.story-fact span{display:block;color:#777067;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.story-fact strong{display:block;margin-top:8px;font-family:var(--serif);font-size:19px;font-weight:400}

/* Shop */
.shop{background:var(--ivory);color:#161412}
.shop-tools{display:grid;grid-template-columns:1.4fr repeat(3,.7fr);gap:12px;margin:45px 0 35px}
.shop-tools input,.shop-tools select{
  height:50px;border:1px solid rgba(20,18,15,.18);background:transparent;padding:0 15px;color:#161412;outline:0;
}
.shop-grid{display:grid;grid-template-columns:repeat(var(--artisia-shop-columns,4),1fr);gap:22px}
.shop-card[hidden]{display:none}
.load-more{display:block;margin:46px auto 0;background:transparent;color:#171513}
.load-more:hover{background:#171513;color:#fff}
.result-count{color:#786f66;font-size:12px}

/* Studio */
.studio{background:#0a0a0a;overflow:hidden}
.studio-track{display:flex;gap:22px;width:max-content;margin-top:50px;padding-left:max(24px,calc((100vw - 1240px)/2));animation-name:studioDrift;animation-duration:var(--artisia-studio-speed,24s);animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:var(--artisia-studio-direction,alternate)}
.studio:not(.studio-no-pause):hover .studio-track{animation-play-state:paused}
.studio-layout-static .studio-track{width:auto;flex-wrap:wrap;padding-right:max(24px,calc((100vw - 1240px)/2));animation:none}
@keyframes studioDrift{to{transform:translateX(-18vw)}}
.studio-card{position:relative;width:420px;height:520px;flex:0 0 auto;overflow:hidden}
.studio-card:nth-child(even){width:560px;height:400px;margin-top:70px}
.studio-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.studio-card:hover img{transform:scale(1.055)}
.studio-note{position:absolute;left:18px;bottom:16px;padding:10px 13px;background:var(--studio-caption-bg,#080808);font-family:var(--brush);font-size:22px;color:var(--studio-caption-color,var(--gold-light))}

/* Reviews */
.reviews{background:var(--paper);color:#171513}
.review-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:75px;align-items:center}
.review-art{height:630px;overflow:hidden}
.review-art img{width:100%;height:100%;object-fit:cover;transition:opacity .5s}
.quote-mark{font-family:var(--serif);font-size:80px;line-height:.5;color:var(--gold)}
.review-quote{margin:22px 0;font-family:var(--serif);font-size:clamp(31px,4vw,55px);line-height:1.07}
.review-meta{display:flex;align-items:center;gap:15px}
.avatar{width:48px;height:48px;border-radius:50%;overflow:hidden}
.avatar img{width:100%;height:100%;object-fit:cover}
.stars{color:var(--gold);letter-spacing:.12em}
.review-controls{display:flex;gap:10px;margin-top:38px}
.review-controls button{width:44px;height:44px;border:1px solid #1b1815;border-radius:50%;background:transparent;cursor:pointer}
.review-shortcode{max-width:980px}
.review-shortcode>*{max-width:100%}

/* CTA */
.commission{min-height:760px;display:grid;place-items:center;text-align:center;background:url("../images/generated-road.jpg") center 48%/cover no-repeat;position:relative}
.commission:before{content:"";position:absolute;inset:0;background:rgba(5,5,5,.63)}
.commission-inner{position:relative;z-index:2;max-width:900px}
.commission h2{margin:0;font-family:var(--serif);font-size:clamp(60px,8vw,122px);line-height:.84;font-weight:400}
.commission h2 em{color:var(--gold);font-family:var(--brush);font-size:1.1em}
.commission p{max-width:620px;margin:30px auto;color:#d3cbc0;line-height:1.8}
.spotlight{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(218,173,91,.16),transparent 22%)}

/* Newsletter/Footer */
.newsletter{background:#11100f;padding:70px 0;border-top:1px solid rgba(255,255,255,.1)}
.newsletter-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px}
.newsletter h2{margin:0;font-family:var(--serif);font-size:42px;font-weight:400}
.newsletter-form{display:flex;border-bottom:1px solid rgba(255,255,255,.34)}
.newsletter-form input{flex:1;height:58px;border:0;background:transparent;color:#fff;outline:0}
.newsletter-form button{border:0;background:none;color:var(--gold-light);font-weight:800;letter-spacing:.15em;text-transform:uppercase;cursor:pointer}
.footer{position:relative;background:#070707;padding:75px 0 30px;overflow:hidden}
.footer:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform-origin:left}
.footer-grid{display:grid;grid-template-columns:1.25fr repeat(3,.75fr);gap:55px}
.footer-brand{font-family:var(--serif);font-size:25px;letter-spacing:.28em}
.footer p{color:#827b73;font-size:13px;line-height:1.75}
.footer h4{margin:0 0 18px;font-size:9px;letter-spacing:.17em;text-transform:uppercase}
.footer a{display:block;margin:10px 0;color:#9a9289;text-decoration:none;font-size:12px}
.footer a:hover{color:var(--gold-light)}
.footer-menu{list-style:none;margin:0;padding:0}
.footer-menu li{margin:0;padding:0}
.footer-widgets{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:56px;padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.09)}
.footer-widgets .widget{margin:0}
.footer-widgets .widget-title{margin:0 0 14px;font-size:9px;letter-spacing:.17em;text-transform:uppercase}
.footer-widgets p,.footer-widgets li{color:#827b73;font-size:13px;line-height:1.75}
.footer-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:55px;padding-top:22px;border-top:1px solid rgba(255,255,255,.09);color:#6f6861;font-size:10px}
.payments{display:flex;gap:8px}
.payment{padding:5px 8px;background:#fff;color:#111;font-size:9px;font-weight:900}

/* Drawers/Modal/Toast */
.drawer{
  position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.55);opacity:0;visibility:hidden;transition:.3s;
}
.drawer.open{opacity:1;visibility:visible}
.drawer-panel{
  position:absolute;right:0;top:0;bottom:0;width:min(430px,100%);background:var(--ivory);color:#171513;padding:35px;
  transform:none;transition:transform .45s var(--ease);overflow:auto;
}
.mobile-menu-panel{width:min(360px,100%)}
.mobile-nav,.mobile-nav-menu{display:grid;gap:6px;margin:24px 0 0;padding:0;list-style:none}
.mobile-nav a,.mobile-nav-menu a{display:flex;align-items:center;min-height:48px;border-bottom:1px solid rgba(20,18,15,.1);color:#171513;font-size:13px;font-weight:850;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}
.drawer.open .drawer-panel{transform:none}
.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(20,18,15,.12);padding-bottom:18px}
.drawer-head h3{font-family:var(--serif);font-size:30px;font-weight:400;margin:0}
.close-btn{border:0;background:none;font-size:26px;cursor:pointer}
.cart-item{display:grid;grid-template-columns:80px 1fr auto;gap:14px;padding:18px 0;border-bottom:1px solid rgba(20,18,15,.1)}
.cart-item img{width:80px;height:95px;object-fit:cover}
.modal{
  position:fixed;inset:0;z-index:600;background:rgba(0,0,0,.78);display:grid;place-items:center;padding:22px;
  opacity:0;visibility:hidden;transition:.3s;
}
.modal.open{opacity:1;visibility:visible}
.modal-card{width:min(960px,100%);background:var(--ivory);color:#171513;display:grid;grid-template-columns:1fr 1fr;max-height:min(90vh,760px);overflow:auto}
.modal-card img{width:100%;height:100%;min-height:560px;object-fit:cover}
.modal-copy{padding:55px}
.modal-copy h3{font-family:var(--serif);font-size:48px;font-weight:400;margin:0 0 12px}
.modal-actions{position:sticky;bottom:0;display:grid;gap:10px;margin-top:24px;padding-top:14px;background:var(--ivory)}
.modal-availability{color:#756e66;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.toast{
  position:fixed;left:50%;bottom:24px;z-index:10000;transform:translate(-50%,20px);opacity:0;
  background:#161412;color:#fff;border:1px solid rgba(255,255,255,.15);padding:14px 20px;font-size:12px;pointer-events:none;transition:.3s;
}
.toast.show{opacity:1;transform:translate(-50%,0)}

/* Gutenberg content */
.artisia-block-page{background:var(--ivory);color:#171513}
.artisia-block-page .entry-content{font-size:17px;line-height:1.75;color:#453f39}
.entry-content > *{max-width:760px;margin-left:auto;margin-right:auto}
.entry-content > .alignwide{max-width:1120px}
.entry-content > .alignfull{max-width:none;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.entry-content h1,.entry-content h2,.entry-content h3{font-family:var(--serif);font-weight:400;line-height:1.05;color:#171513}
.entry-content h2{font-size:clamp(38px,5vw,72px)}
.entry-content a{color:#8c6322;text-underline-offset:4px}
.entry-content .wp-block-button__link{border-radius:0;background:var(--gold);color:#111;font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.entry-content .wp-block-cover{min-height:540px}
.entry-content .wp-block-quote{border-left:1px solid var(--gold);padding-left:24px;font-family:var(--serif);font-size:clamp(26px,4vw,48px);line-height:1.12;color:#171513}

/* Homepage layout presets */
.artisia-layout-gallery .hero-inner{grid-template-columns:1fr}
.artisia-layout-gallery .hero-copy{max-width:820px}
.artisia-layout-gallery .hero-slider{min-height:560px}
.artisia-layout-gallery .art-grid,.artisia-layout-gallery .shop-grid{grid-template-columns:repeat(3,1fr)}
.artisia-layout-editorial .story{grid-template-columns:.95fr 1.05fr}
.artisia-layout-editorial .about-grid{grid-template-columns:1fr 1fr;gap:64px}
.artisia-layout-editorial .section{padding:130px 0}

/* Responsive */
@media(max-width:1050px){
  .nav{display:none}.menu-btn{display:grid}
  .hero-inner{grid-template-columns:1fr}.hero-copy{padding-top:110px;position:relative;z-index:4}
  .hero-slider{min-height:650px;margin-top:-80px;opacity:.72}
  .art-grid,.shop-grid,.artisia-layout-gallery .art-grid,.artisia-layout-gallery .shop-grid{grid-template-columns:repeat(2,1fr)}
  .about-grid,.review-wrap,.newsletter-inner{grid-template-columns:1fr}
  .artist-image{min-height:auto}.artist-image img{height:620px}
  .collection-panels{height:540px}
  .story{grid-template-columns:1fr}.story-visual{position:relative;height:75vh}.story-content{padding:90px 7vw}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(hover:none),(pointer:coarse),(max-width:1050px){
  .art-overlay{opacity:1;transform:none}
  .art-media{overflow:hidden}
  .mini-action{min-height:46px}
}
@media(max-width:680px){
  .shell{width:min(100% - 28px,1240px)}
  .section{padding:82px 0}
  .site-header{height:66px}.hero{min-height:calc(100svh - 66px)}
  .header-inner{gap:8px}.brand{font-size:17px}.header-actions .icon-btn:nth-child(2),.header-actions .icon-btn:nth-child(3){display:none}
  .hero-inner{min-height:calc(100svh - 66px)}.hero-copy h1{font-size:57px}.hero-copy .lead{font-size:14px}
  .hero-slider{min-height:460px;margin-top:-20px}.frame.main{width:58%;height:70%;right:12%}.frame.left{width:43%;height:50%;left:0}.frame.right{width:40%;height:46%;right:-5%}
  .slider-nav{left:0;right:0}
  .section-head{display:block}.view-link{display:inline-block;margin-top:22px}
  .art-grid,.shop-grid,.artisia-layout-gallery .art-grid,.artisia-layout-gallery .shop-grid{grid-template-columns:1fr}
  .artist-image img{width:100%;height:520px}.artist-image:after{font-size:50px}
  .artist-facts{grid-template-columns:repeat(2,1fr)}
  .collection-panels{height:auto;display:grid;grid-template-columns:1fr}
  .collection-panel,.collection-panel.active,.collection-panel:hover{height:310px;flex:none}
  .shop-tools{grid-template-columns:1fr}
  .studio-track{animation:none;overflow-x:auto;width:auto;padding:0 14px}.studio-card,.studio-card:nth-child(even){width:82vw;height:470px;margin-top:0}
  .review-art{height:480px}
  .newsletter-form{display:block;border:0}.newsletter-form input{width:100%;border-bottom:1px solid rgba(255,255,255,.3)}.newsletter-form button{margin-top:18px}
  .footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.payments{margin-top:15px}
  .footer-widgets{grid-template-columns:1fr}
  .drawer-panel{width:100%;padding:28px 22px}
  .modal{align-items:end;padding:12px}
  .modal-card{grid-template-columns:1fr;max-height:92svh}.modal-card img{min-height:260px;height:320px}.modal-copy{padding:28px 22px}.modal-copy h3{font-size:38px}
  .intro-brand{top:22px;left:22px;font-size:18px}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .intro-scroll{display:none}
}
@media(max-width:782px){
  body.admin-bar .site-header{top:46px}
}

/* v2 reliability fixes */
.intro[hidden]{display:none!important}
.main-site.force-visible{opacity:1!important;visibility:visible!important;display:block!important}
.intro-base{transition:opacity .18s linear}
.tile-layer{z-index:2}
.streak-layer,.vortex,.intro-flash{z-index:3}
.intro-brand,.intro-content,.intro-scroll{z-index:5}

.artist-image img{object-position:44% center}
@media(prefers-reduced-motion:reduce){
  .artist-image:after{animation:none!important}
}

.cart-item-quantity{min-width:24px;text-align:right;align-self:start}
#cartItems .cart-item+ .cart-item{margin-top:0}

/* v6 requested-only refinements */
.intro-scroll{display:none!important}
.cart-drawer-actions{margin-top:26px}
.cart-clear{
  display:block;
  margin:0 0 14px auto;
  padding:0;
  border:0;
  background:transparent;
  color:#756e66;
  cursor:pointer;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  text-decoration:underline;
  text-underline-offset:4px;
}
.cart-clear:hover{color:#171513}
.view-cart-link{display:block;margin-top:4px;color:#756e66;text-align:center;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.12em;text-decoration:none}
.view-cart-link:hover{color:#171513}
.cart-item-side{display:flex;min-width:52px;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:13px}
.cart-remove{
  padding:0;
  border:0;
  background:transparent;
  color:#8b8177;
  cursor:pointer;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.cart-remove:hover{color:#171513}
@media(prefers-reduced-motion:reduce){
  .intro-base,.intro-base:before{animation:none!important;transform:none!important}
}


/* v8 space entry — resting design remains unchanged */
.space-warp-layer,.wormhole-rings{
  position:absolute;inset:0;pointer-events:none;opacity:0;z-index:3;
}
.space-warp-layer{overflow:hidden;perspective:900px}
.space-warp-star{
  position:absolute;left:50%;top:50%;width:2px;height:38px;border-radius:999px;
  transform-origin:50% 0;
  background:linear-gradient(to bottom,rgba(255,255,255,.98),rgba(226,189,121,.70) 28%,rgba(116,155,255,.28) 60%,transparent 100%);
  filter:blur(.35px);opacity:0;will-change:transform,opacity,filter;
}
.wormhole-rings{display:grid;place-items:center;mix-blend-mode:screen}
.wormhole-rings i{
  position:absolute;width:11vmin;height:11vmin;border-radius:50%;
  border:1px solid rgba(235,205,151,.46);
  box-shadow:0 0 22px rgba(226,189,121,.22),inset 0 0 18px rgba(122,154,255,.14);
  opacity:0;
}
.intro.entering .space-warp-layer{opacity:1;transition:opacity .35s ease}
.intro.entering .wormhole-rings{opacity:1}
.intro.entering .wormhole-rings i:nth-child(1){animation:wormholeRing 2.45s .10s cubic-bezier(.18,.72,.18,1) forwards}
.intro.entering .wormhole-rings i:nth-child(2){animation:wormholeRing 2.35s .30s cubic-bezier(.18,.72,.18,1) forwards}
.intro.entering .wormhole-rings i:nth-child(3){animation:wormholeRing 2.25s .52s cubic-bezier(.18,.72,.18,1) forwards}
.intro.entering .wormhole-rings i:nth-child(4){animation:wormholeRing 2.10s .74s cubic-bezier(.18,.72,.18,1) forwards}
@keyframes wormholeRing{
  0%{opacity:0;transform:scale(.08) rotate(0);filter:blur(1px)}
  18%{opacity:.70}65%{opacity:.34}
  100%{opacity:0;transform:scale(17) rotate(42deg);filter:blur(7px)}
}
.intro.entering .intro-base{
  animation:introBlackHoleDive 2.85s cubic-bezier(.18,.68,.08,1) forwards!important;
  transform-origin:55% 47%;
}
@keyframes introBlackHoleDive{
  0%{transform:translate3d(0,0,0) scale(1.09);filter:brightness(1) contrast(1.03) saturate(1)}
  18%{transform:translate3d(.3%,-.2%,30px) scale(1.13) rotate(.05deg);filter:brightness(1.04) contrast(1.06) saturate(1.04)}
  52%{transform:translate3d(-1.1%,.4%,150px) scale(1.48) rotate(-.18deg);filter:brightness(.90) contrast(1.15) saturate(.88)}
  76%{transform:translate3d(1.5%,-.8%,420px) scale(2.18) rotate(.32deg);filter:brightness(.58) contrast(1.30) saturate(.68) blur(1.6px)}
  100%{transform:translate3d(-2%,1.2%,900px) scale(3.65) rotate(.65deg);filter:brightness(.14) contrast(1.48) saturate(.40) blur(10px)}
}
.main-site.revealing{animation:siteRevealSpace 1.25s cubic-bezier(.18,.72,.15,1) both!important}
@keyframes siteRevealSpace{
  0%{opacity:0;filter:blur(12px) brightness(.70);transform:scale(1.045)}
  45%{opacity:.35;filter:blur(6px) brightness(.86);transform:scale(1.022)}
  100%{opacity:1;filter:none;transform:none}
}
.intro.entering .intro-flash{animation:spaceFlash 2.85s ease forwards!important}
@keyframes spaceFlash{0%,72%{opacity:0}84%{opacity:.12}92%{opacity:.025}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){
  .space-warp-layer,.wormhole-rings{display:none!important}
  .intro.entering .intro-base{animation:none!important}
}




/* v10 — same intro artwork breaks into glass, then becomes light. */
.glass-fragment-layer{
  position:absolute;
  inset:0;
  display:block!important;
  z-index:4;
  overflow:visible;
  pointer-events:none;
  opacity:1;
  transform:none!important;
}
.glass-fragment{
  position:absolute;
  overflow:hidden;
  backface-visibility:hidden;
  transform-origin:center;
  will-change:transform,opacity,filter;
  background-repeat:no-repeat;
  border:1px solid rgba(239,208,151,.14);
  box-shadow:inset 0 0 1px rgba(255,255,255,.22),0 0 0 1px rgba(0,0,0,.08);
}
.glass-fragment-glow{
  position:absolute;
  inset:-12%;
  opacity:0;
  pointer-events:none;
  background:linear-gradient(to bottom,transparent 2%,rgba(255,255,255,.96) 22%,rgba(238,199,124,.92) 46%,rgba(151,176,255,.42) 68%,transparent 100%);
  filter:blur(1.5px);
  mix-blend-mode:screen;
}
.glass-crack-flash{
  position:absolute;
  inset:0;
  z-index:6;
  opacity:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 50%,rgba(255,244,214,.36),transparent 9%),
    conic-gradient(from 14deg at 50% 50%,transparent 0 5deg,rgba(255,222,163,.30) 5.2deg 5.7deg,transparent 6deg 25deg,rgba(255,255,255,.22) 25.2deg 25.6deg,transparent 26deg 54deg,rgba(219,181,112,.26) 54.2deg 54.8deg,transparent 55deg 89deg,rgba(255,255,255,.18) 89.3deg 89.7deg,transparent 90deg 360deg);
  mix-blend-mode:screen;
}
.intro.entering .glass-crack-flash{animation:glassCrackFlash .68s cubic-bezier(.18,.78,.22,1) forwards}
@keyframes glassCrackFlash{
  0%{opacity:0;transform:scale(.55);filter:blur(5px)}
  22%{opacity:.82;transform:scale(.92);filter:blur(.7px)}
  58%{opacity:.26;transform:scale(1.18);filter:blur(1.5px)}
  100%{opacity:0;transform:scale(1.42);filter:blur(5px)}
}

/* Stop the old full-image zoom/double-image treatment. */
.intro.entering .intro-base{
  animation:none!important;
  transition:opacity .13s linear!important;
}

/* Existing black-hole center remains, but softer and smoother. */
.intro.entering .vortex{animation:vortexGlassIn 2.55s cubic-bezier(.18,.72,.12,1) forwards!important}
@keyframes vortexGlassIn{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.08);filter:blur(3px)}
  20%{opacity:.34;transform:translate(-50%,-50%) scale(.42);filter:blur(1px)}
  58%{opacity:.78;transform:translate(-50%,-50%) scale(1.75);filter:blur(1.6px)}
  82%{opacity:.54;transform:translate(-50%,-50%) scale(3.7);filter:blur(4px)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(6.4);filter:blur(10px)}
}

.main-site.revealing{animation:siteRevealGlass 1.18s cubic-bezier(.18,.74,.15,1) both!important}
@keyframes siteRevealGlass{
  0%{opacity:0;filter:blur(10px) brightness(.74);transform:scale(1.035)}
  52%{opacity:.46;filter:blur(4px) brightness(.90);transform:scale(1.014)}
  100%{opacity:1;filter:none;transform:none}
}

@media(prefers-reduced-motion:reduce){
  .glass-fragment-layer,.glass-crack-flash{display:none!important}
}


/* v12 live artwork search */
.art-search-wrap{padding-top:26px}
.art-search-input{
  width:100%;height:52px;padding:0 15px;border:1px solid #cfc7bd;
  background:transparent;color:#171513;font:inherit;outline:none;
  transition:border-color .25s ease,box-shadow .25s ease;
}
.art-search-input:focus{
  border-color:#b98835;
  box-shadow:0 0 0 3px rgba(185,136,53,.10);
}
.search-popular{
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;
  margin:13px 0 24px;color:#786f66;font-size:12px;
}
.search-popular button{
  appearance:none;border:0;border-bottom:1px solid rgba(23,21,19,.25);
  background:transparent;color:#5f574f;padding:2px 0;cursor:pointer;
  font:inherit;transition:color .2s ease,border-color .2s ease;
}
.search-popular button:hover{color:#9d6b20;border-color:#9d6b20}
.search-results-head{
  display:flex;justify-content:space-between;gap:16px;
  padding:0 0 10px;border-bottom:1px solid rgba(23,21,19,.12);
  color:#746c63;font-size:10px;letter-spacing:.12em;text-transform:uppercase;
}
.art-search-results{display:grid}
.search-result{
  display:grid;grid-template-columns:74px minmax(0,1fr);gap:14px;
  padding:15px 0;border-bottom:1px solid rgba(23,21,19,.12);
  animation:searchResultIn .32s ease both;
}
@keyframes searchResultIn{
  from{opacity:0;transform:translateY(7px)}
  to{opacity:1;transform:none}
}
.search-result img{
  width:74px;height:88px;object-fit:cover;background:#ddd5ca;
}
.search-result-copy{min-width:0}
.search-result-title{
  margin:0 0 5px;font-family:var(--serif);font-size:18px;font-weight:600;
}
.search-result-meta{
  display:flex;justify-content:space-between;gap:10px;
  color:#746c63;font-size:12px;text-transform:capitalize;
}
.search-result-actions{display:flex;gap:8px;margin-top:11px}
.search-result-actions button{
  min-height:34px;padding:0 12px;border:1px solid rgba(23,21,19,.25);
  background:transparent;color:#171513;cursor:pointer;
  font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  transition:background .22s ease,color .22s ease,border-color .22s ease;
}
.search-result-actions button:hover{
  background:#171513;color:#fff;border-color:#171513;
}
.search-result-actions button.loading{
  pointer-events:none;opacity:.72;
}
.search-result-actions .search-result-add{
  background:var(--gold);border-color:var(--gold);color:#111;
}
.search-result-empty{
  padding:28px 0;color:#746c63;line-height:1.65;
}
.shop-card.search-focus{
  animation:searchArtworkFocus 1.45s ease both;
}
@keyframes searchArtworkFocus{
  0%,100%{box-shadow:none;transform:none}
  32%{box-shadow:0 0 0 3px rgba(190,143,64,.38),0 18px 44px rgba(31,24,14,.18);transform:translateY(-4px)}
}

/* v12 intro: no white shard spikes — only subtle image break + thin gold light */
.gold-lightning-layer{
  position:absolute;inset:0;z-index:5;overflow:hidden;
  pointer-events:none;opacity:1;
}
.gold-lightning{
  position:absolute;height:1px;opacity:0;border-radius:999px;
  transform-origin:0 50%;will-change:transform,opacity,filter;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(175,125,45,.05) 10%,
    rgba(219,166,79,.52) 48%,
    rgba(255,237,191,.96) 74%,
    rgba(214,157,65,.24) 93%,
    transparent 100%);
  box-shadow:0 0 5px rgba(226,174,83,.38),0 0 13px rgba(226,174,83,.12);
}
.gold-lightning::after{
  content:"";position:absolute;inset:-1px 0;background:inherit;
  filter:blur(2px);opacity:.42;
}
.glass-fragment{border:0!important;box-shadow:none!important}
.glass-fragment-glow{display:none!important}
.intro.entering .space-warp-layer,
.intro.entering .streak-layer,
.intro.entering .wormhole-rings{display:none!important}
.intro.entering .intro-base{
  animation:none!important;transition:opacity .12s linear!important;
}
.intro.entering .glass-crack-flash{
  animation:glassCrackV12 .76s cubic-bezier(.16,.76,.14,1) forwards!important;
}
@keyframes glassCrackV12{
  0%{opacity:0;transform:scale(.74);filter:blur(4px)}
  26%{opacity:.42;transform:scale(.97);filter:blur(.8px)}
  58%{opacity:.12;transform:scale(1.11);filter:blur(1.8px)}
  100%{opacity:0;transform:scale(1.26);filter:blur(5px)}
}
.intro.entering .vortex{
  animation:vortexV12 2.85s cubic-bezier(.17,.74,.12,1) forwards!important;
}
@keyframes vortexV12{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.05);filter:blur(5px)}
  26%{opacity:.17;transform:translate(-50%,-50%) scale(.30);filter:blur(2px)}
  62%{opacity:.54;transform:translate(-50%,-50%) scale(1.30);filter:blur(1.5px)}
  83%{opacity:.30;transform:translate(-50%,-50%) scale(2.65);filter:blur(5px)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(4.7);filter:blur(12px)}
}
.main-site.revealing{
  animation:siteRevealV12 1.34s cubic-bezier(.16,.76,.14,1) both!important;
}
@keyframes siteRevealV12{
  0%{opacity:0;filter:blur(8px) brightness(.78);transform:scale(1.026)}
  48%{opacity:.43;filter:blur(3.4px) brightness(.92);transform:scale(1.011)}
  100%{opacity:1;filter:none;transform:none}
}
@media(max-width:600px){
  .search-result{grid-template-columns:62px minmax(0,1fr)}
  .search-result img{width:62px;height:76px}
}
@media(prefers-reduced-motion:reduce){
  .gold-lightning-layer{display:none!important}
}


/* v14 — section-by-section cinematic visual reveal on scroll */
.cinema-section{
  --cinema-ease:cubic-bezier(.22,.72,.18,1);
  position:relative;
}

/* Hero: background clears, copy rises, art frames resolve separately. */
.hero.cinema-ready .hero-bg{
  opacity:.42;
  filter:blur(5px) brightness(.68) saturate(.84);
}
.hero.cinema-in .hero-bg{
  animation:cinemaHeroBackground 2.15s var(--cinema-ease) forwards;
}
@keyframes cinemaHeroBackground{
  0%{opacity:.42;filter:blur(5px) brightness(.68) saturate(.84)}
  62%{opacity:.82;filter:blur(1.8px) brightness(.9) saturate(.95)}
  100%{opacity:1;filter:none}
}
.hero.cinema-ready .hero-copy > *{
  opacity:0;
  transform:translate3d(0,26px,0);
  filter:blur(4px);
}
.hero.cinema-in .hero-copy > *{
  animation:cinemaRiseClear 1.14s var(--cinema-ease) forwards;
}
.hero.cinema-in .hero-copy > *:nth-child(1){animation-delay:.10s}
.hero.cinema-in .hero-copy > *:nth-child(2){animation-delay:.20s}
.hero.cinema-in .hero-copy > *:nth-child(3){animation-delay:.34s}
.hero.cinema-in .hero-copy > *:nth-child(4){animation-delay:.46s}
.hero.cinema-ready .hero-slider{
  opacity:0;
  transform:translate3d(3vw,14px,0) scale(.982);
  filter:blur(5px);
}
.hero.cinema-in .hero-slider{
  animation:cinemaSliderResolve 1.52s .22s var(--cinema-ease) forwards;
}
.hero.cinema-ready .hero-slider .frame img{opacity:0;filter:blur(4px);transform:scale(1.025)}
.hero.cinema-in .hero-slider .frame img{
  animation:cinemaImageResolve 1.28s var(--cinema-ease) forwards;
}
.hero.cinema-in .hero-slider .frame.left img{animation-delay:.34s}
.hero.cinema-in .hero-slider .frame.main img{animation-delay:.48s}
.hero.cinema-in .hero-slider .frame.right img{animation-delay:.62s}
@keyframes cinemaSliderResolve{
  to{opacity:1;transform:none;filter:none}
}
@keyframes cinemaImageResolve{
  to{opacity:1;filter:none;transform:none}
}

/* Shared soft rise. */
@keyframes cinemaRiseClear{
  0%{opacity:0;transform:translate3d(0,26px,0);filter:blur(4px)}
  100%{opacity:1;transform:none;filter:none}
}

/* Featured: heading, then artwork cards one at a time. */
.featured.cinema-ready .section-head{
  opacity:0;transform:translateY(24px);filter:blur(4px);
}
.featured.cinema-in .section-head{
  animation:cinemaRiseClear 1.08s var(--cinema-ease) forwards;
}
.featured.cinema-ready .art-card{
  opacity:0;
  transform:translate3d(0,34px,0) scale(.975);
  filter:blur(4px) saturate(.9);
}
.featured.cinema-in .art-card{
  animation:cinemaArtworkCard 1.18s var(--cinema-ease) forwards!important;
}
.featured.cinema-in .art-card:nth-child(1){animation-delay:.16s!important}
.featured.cinema-in .art-card:nth-child(2){animation-delay:.28s!important}
.featured.cinema-in .art-card:nth-child(3){animation-delay:.40s!important}
.featured.cinema-in .art-card:nth-child(4){animation-delay:.52s!important}
@keyframes cinemaArtworkCard{
  0%{opacity:0;transform:translate3d(0,34px,0) scale(.975);filter:blur(4px) saturate(.9)}
  72%{opacity:1;transform:translate3d(0,-2px,0) scale(1.002);filter:blur(.4px) saturate(.98)}
  100%{opacity:1;transform:none;filter:none}
}

/* About: artist image opens like a curtain, copy follows from the side. */
.about.cinema-ready .artist-image{
  opacity:.18;
  clip-path:inset(0 100% 0 0);
  transform:scale(1.018);
  filter:blur(3px);
}
.about.cinema-in .artist-image{
  animation:cinemaArtistCurtain 1.58s var(--cinema-ease) forwards;
}
@keyframes cinemaArtistCurtain{
  0%{opacity:.18;clip-path:inset(0 100% 0 0);transform:scale(1.018);filter:blur(3px)}
  100%{opacity:1;clip-path:inset(0 0 0 0);transform:none;filter:none}
}
.about.cinema-ready .about-copy > *{
  opacity:0;transform:translate3d(28px,0,0);filter:blur(4px);
}
.about.cinema-in .about-copy > *{
  animation:cinemaFromRight 1.08s var(--cinema-ease) forwards;
}
.about.cinema-in .about-copy > *:nth-child(1){animation-delay:.18s}
.about.cinema-in .about-copy > *:nth-child(2){animation-delay:.30s}
.about.cinema-in .about-copy > *:nth-child(3){animation-delay:.42s}
.about.cinema-in .about-copy > *:nth-child(4){animation-delay:.54s}
.about.cinema-in .about-copy > *:nth-child(5){animation-delay:.66s}
@keyframes cinemaFromRight{
  to{opacity:1;transform:none;filter:none}
}

/* Collections: each visual panel reveals separately. */
.collections.cinema-ready > .shell{
  opacity:0;transform:translateY(22px);filter:blur(4px);
}
.collections.cinema-in > .shell{
  animation:cinemaRiseClear 1.04s var(--cinema-ease) forwards;
}
.collections.cinema-ready .collection-panel{
  opacity:0;
  transform:translateY(28px) scale(.982);
  filter:blur(4px) brightness(.72);
}
.collections.cinema-in .collection-panel{
  animation:cinemaCollectionPanel 1.08s var(--cinema-ease) forwards;
}
.collections.cinema-in .collection-panel:nth-child(1){animation-delay:.12s}
.collections.cinema-in .collection-panel:nth-child(2){animation-delay:.22s}
.collections.cinema-in .collection-panel:nth-child(3){animation-delay:.32s}
.collections.cinema-in .collection-panel:nth-child(4){animation-delay:.42s}
.collections.cinema-in .collection-panel:nth-child(5){animation-delay:.52s}
@keyframes cinemaCollectionPanel{
  to{opacity:1;transform:none;filter:none}
}

/* Story: artwork opens first, text and facts follow. */
.story.cinema-ready .story-visual{
  opacity:.25;
  clip-path:inset(0 100% 0 0);
  filter:blur(3px);
}
.story.cinema-in .story-visual{
  animation:cinemaStoryVisual 1.60s var(--cinema-ease) forwards;
}
@keyframes cinemaStoryVisual{
  to{opacity:1;clip-path:inset(0 0 0 0);filter:none}
}
.story.cinema-ready .story-content > *{
  opacity:0;transform:translate3d(30px,0,0);filter:blur(4px);
}
.story.cinema-in .story-content > *{
  animation:cinemaFromRight 1.06s var(--cinema-ease) forwards;
}
.story.cinema-in .story-content > *:nth-child(1){animation-delay:.18s}
.story.cinema-in .story-content > *:nth-child(2){animation-delay:.29s}
.story.cinema-in .story-content > *:nth-child(3){animation-delay:.39s}
.story.cinema-in .story-content > *:nth-child(4){animation-delay:.49s}
.story.cinema-in .story-content > *:nth-child(5){animation-delay:.59s}
.story.cinema-in .story-content > *:nth-child(6){animation-delay:.70s}

/* Shop: controls resolve, then products appear row-by-row—no fog overlay. */
.shop.cinema-ready .section-head,
.shop.cinema-ready .shop-tools{
  opacity:0;transform:translateY(22px);filter:blur(4px);
}
.shop.cinema-in .section-head,
.shop.cinema-in .shop-tools{
  animation:cinemaRiseClear 1.04s var(--cinema-ease) forwards;
}
.shop.cinema-in .shop-tools{animation-delay:.14s}
.shop.cinema-ready .shop-card{
  opacity:0;
  transform:translate3d(0,30px,0) scale(.982);
  filter:blur(4px) saturate(.9);
}
.shop.cinema-in .shop-card{
  animation:cinemaShopCard 1.10s var(--cinema-ease) forwards!important;
}
.shop.cinema-in .shop-card:nth-child(1){animation-delay:.22s!important}
.shop.cinema-in .shop-card:nth-child(2){animation-delay:.30s!important}
.shop.cinema-in .shop-card:nth-child(3){animation-delay:.38s!important}
.shop.cinema-in .shop-card:nth-child(4){animation-delay:.46s!important}
.shop.cinema-in .shop-card:nth-child(5){animation-delay:.54s!important}
.shop.cinema-in .shop-card:nth-child(6){animation-delay:.62s!important}
.shop.cinema-in .shop-card:nth-child(7){animation-delay:.70s!important}
.shop.cinema-in .shop-card:nth-child(8){animation-delay:.78s!important}
.shop.cinema-ready .load-more{opacity:0;transform:translateY(22px)}
.shop.cinema-in .load-more{
  animation:cinemaRiseClear .96s .92s var(--cinema-ease) forwards;
}
@keyframes cinemaShopCard{
  0%{opacity:0;transform:translate3d(0,30px,0) scale(.982);filter:blur(4px) saturate(.9)}
  100%{opacity:1;transform:none;filter:none}
}

/* Studio: title resolves, then each studio frame slides into view. */
.studio.cinema-ready > .shell{
  opacity:0;transform:translateY(22px);filter:blur(4px);
}
.studio.cinema-in > .shell{
  animation:cinemaRiseClear 1.04s var(--cinema-ease) forwards;
}
.studio.cinema-ready .studio-card{
  opacity:0;
  transform:translate3d(34px,16px,0) rotate(.6deg) scale(.982);
  filter:blur(4px) brightness(.76);
}
.studio.cinema-in .studio-card{
  animation:cinemaStudioFrame 1.24s var(--cinema-ease) forwards;
}
.studio.cinema-in .studio-card:nth-child(1){animation-delay:.16s}
.studio.cinema-in .studio-card:nth-child(2){animation-delay:.28s}
.studio.cinema-in .studio-card:nth-child(3){animation-delay:.40s}
.studio.cinema-in .studio-card:nth-child(4){animation-delay:.52s}
@keyframes cinemaStudioFrame{
  to{opacity:1;transform:none;filter:none}
}

/* Reviews: collected artwork opens, quote arrives in layers. */
.reviews.cinema-ready .review-art{
  opacity:.16;clip-path:inset(100% 0 0 0);filter:blur(4px);
}
.reviews.cinema-in .review-art{
  animation:cinemaReviewArt 1.46s var(--cinema-ease) forwards;
}
@keyframes cinemaReviewArt{
  to{opacity:1;clip-path:inset(0 0 0 0);filter:none}
}
.reviews.cinema-ready .review-copy > *{
  opacity:0;transform:translate3d(28px,0,0);filter:blur(4px);
}
.reviews.cinema-in .review-copy > *{
  animation:cinemaFromRight 1.06s var(--cinema-ease) forwards;
}
.reviews.cinema-in .review-copy > *:nth-child(1){animation-delay:.18s}
.reviews.cinema-in .review-copy > *:nth-child(2){animation-delay:.28s}
.reviews.cinema-in .review-copy > *:nth-child(3){animation-delay:.40s}
.reviews.cinema-in .review-copy > *:nth-child(4){animation-delay:.54s}
.reviews.cinema-in .review-copy > *:nth-child(5){animation-delay:.66s}

/* Commission: background breathes forward, content clears from the darkness. */
.commission.cinema-ready{
  background-position:center 55%;
}
.commission.cinema-in{
  animation:cinemaCommissionBackground 2.55s var(--cinema-ease) forwards;
}
@keyframes cinemaCommissionBackground{
  from{background-position:center 55%}
  to{background-position:center 48%}
}
.commission.cinema-ready .commission-inner{
  opacity:0;transform:translateY(24px) scale(.986);filter:blur(5px);
}
.commission.cinema-in .commission-inner{
  animation:cinemaCommissionContent 1.48s .18s var(--cinema-ease) forwards;
}
@keyframes cinemaCommissionContent{
  to{opacity:1;transform:none;filter:none}
}

/* Newsletter and footer finish the scroll journey softly. */
.newsletter.cinema-ready .newsletter-inner,
.footer.cinema-ready > .shell{
  opacity:0;transform:translateY(22px);filter:blur(4px);
}
.newsletter.cinema-in .newsletter-inner,
.footer.cinema-in > .shell{
  animation:cinemaRiseClear 1.10s var(--cinema-ease) forwards;
}
.footer.cinema-ready .footer-grid > *{
  opacity:0;transform:translateY(24px);
}
.footer.cinema-in .footer-grid > *{
  animation:cinemaRiseClear .92s var(--cinema-ease) forwards!important;
}
.footer.cinema-in .footer-grid > *:nth-child(1){animation-delay:.10s!important}
.footer.cinema-in .footer-grid > *:nth-child(2){animation-delay:.18s!important}
.footer.cinema-in .footer-grid > *:nth-child(3){animation-delay:.26s!important}
.footer.cinema-in .footer-grid > *:nth-child(4){animation-delay:.34s!important}

@media(max-width:760px){
  .hero.cinema-ready .hero-slider{transform:translate3d(0,24px,0) scale(.98)}
  .about.cinema-ready .about-copy > *,
  .story.cinema-ready .story-content > *,
  .reviews.cinema-ready .review-copy > *{
    transform:translate3d(0,34px,0);
  }
  .collections.cinema-ready .collection-panel,
  .shop.cinema-ready .shop-card,
  .studio.cinema-ready .studio-card{
    transform:translate3d(0,34px,0) scale(.98);
  }
}

@media(prefers-reduced-motion:reduce){
  .cinema-section *,
  .cinema-section,
  .cinema-section.cinema-ready,
  .cinema-section.cinema-in{
    animation:none!important;
  }
  .cinema-section.cinema-ready *,
  .cinema-section.cinema-ready,
  .cinema-section.cinema-in *{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    clip-path:none!important;
  }
}


/* v15 — Back to Top button */
.back-to-top{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:85;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:1px solid rgba(190,143,64,.88);
  border-radius:50%;
  background:var(--floating-button-bg,#12100e);
  color:var(--floating-button-text,#d7ad67);
  box-shadow:
    0 10px 28px rgba(0,0,0,.26),
    inset 0 0 0 1px rgba(255,255,255,.025);
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(16px) scale(.88);
  transition:
    opacity .34s ease,
    visibility .34s ease,
    transform .34s cubic-bezier(.18,.76,.14,1),
    background .22s ease,
    color .22s ease,
    box-shadow .22s ease;
}
.back-to-top span{
  display:block;
  font-family:var(--sans);
  font-size:22px;
  line-height:1;
  transform:translateY(-1px);
}
.back-to-top.is-visible{
  opacity:1;
  visibility:visible;
  transform:none;
}
.back-to-top:hover{
  background:var(--button-hover-bg,#c79645);
  color:var(--button-hover-text,#151310);
  box-shadow:
    0 14px 34px rgba(0,0,0,.31),
    0 0 24px rgba(199,150,69,.20);
  transform:translateY(-3px);
}
.back-to-top:focus-visible{
  outline:2px solid #e0b96f;
  outline-offset:4px;
}
.back-to-top:active{
  transform:translateY(-1px) scale(.96);
}
body.intro-active .back-to-top{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none;
}

@media(max-width:700px){
  .back-to-top{
    right:16px;
    bottom:18px;
    width:43px;
    height:43px;
  }
  .back-to-top span{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
  .back-to-top{
    transition:opacity .18s ease,visibility .18s ease!important;
    transform:none!important;
  }
}
