/* Optical edges, translucent layers and moving specular light; no filter on text. */
:root{--glass-fill:rgba(255,255,255,.49);--glass-rim:rgba(255,255,255,.95);--glass-shadow:0 14px 38px #84724c0c,0 3px 8px #8e785c06;--glass-x:32%;--glass-y:12%}
body{background:radial-gradient(ellipse at 15% 19%,#d8c8a514,transparent 31%),radial-gradient(ellipse at 82% 38%,#e4d3b41b,transparent 33%),#fdfdfc}
.site-header,.art-intro,.portrait-frame,.service-hero-image,.collab-image,.button,.close-button,.orbit-controls button,.services-list article,.photo-zoom{backdrop-filter:blur(22px) saturate(1.35);-webkit-backdrop-filter:blur(22px) saturate(1.35);background:linear-gradient(145deg,#ffffffbf,#ffffff52 55%,#eee7d54a);border:1px solid #ffffffdd;box-shadow:inset 0 1px 0 white,inset 0 -1px 1px #bea87926,inset 1px 0 0 #ffffffcf,inset -1px 0 1px #baa87f18,var(--glass-shadow)}
.site-header{width:89%;height:88px;margin:20px auto 0;padding:0 27px;border-radius:26px;position:relative;z-index:5;outline:1px solid #bba37119}
.hero{padding-top:36px;min-height:calc(100svh - 108px)}
.art-intro{padding:28px 27px;border-radius:26px;position:relative;isolation:isolate;outline:1px solid #bba37112;transition:transform .7s var(--ease),box-shadow .7s var(--ease),background .7s}
.art-intro:hover{transform:translateY(-5px);box-shadow:inset 0 1px 0 white,inset 0 -1px 1px #baa16c35,0 20px 42px #84724c14,0 4px 9px #8e785c08}
.art-intro::before,.site-header::before,.button::before,.portrait-frame::before,.service-hero-image::before,.collab-image::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse at var(--glass-x) var(--glass-y),#ffffffc2,transparent 60%);opacity:.47;z-index:-1}
.site-header,.button,.portrait-frame,.service-hero-image,.collab-image{isolation:isolate}
.art-intro::after{content:'';position:absolute;inset:1px;border-radius:25px;pointer-events:none;border-top:1px solid #fff;border-bottom:1px solid #d4c6a926;mask-image:linear-gradient(120deg,#000,transparent 47%,#000);-webkit-mask-image:linear-gradient(120deg,#000,transparent 47%,#000)}
.button{border-radius:100px;position:relative;color:#69502d;background:linear-gradient(150deg,#fffdf4d9 0%,#e5d6b7ad 45%,#c8ac789e 100%);border-color:#f9f4e9;outline:1px solid #a5895140;box-shadow:inset 0 2px 2px #fff,inset 0 -2px 3px #8d71351c,0 5px 17px #947d4814}
.button:hover{box-shadow:inset 0 2px 2px #fff,inset 0 -2px 3px #8d71352a,0 9px 25px #947d4826}
.button:active{transform:translateY(0) scale(.98)}
.orbit{filter:drop-shadow(0 19px 24px #86714519)}
.orbit-outer{inset:-15px;border:1px solid #f7f4eaf2;background:conic-gradient(from 25deg,#ffffffed,#d8c69d29 15%,#fff 27%,#d3c09342 42%,#ffffffed 57%,#b6a0714d 74%,#fff 88%,#ffffffed);box-shadow:0 0 0 1px #ad956a42,0 0 0 6px #ffffffe0,0 0 0 7px #d7c9ab38,inset 0 3px 3px white,inset 0 -3px 5px #bda57126;backdrop-filter:blur(12px)}
.orbit-inner{inset:6px;border-color:#b9a17269;box-shadow:inset 0 1px 2px #fff,0 1px 1px #fff8}
.orbit-heart{background:radial-gradient(ellipse at 25% 15%,#fffffff0,#ffffffc4 45%,#f0ebe1a3);border:1px solid #fff;box-shadow:0 0 0 1px #a88c5860,0 0 0 5px #fffffff0,inset 0 3px 5px white,inset 0 -5px 8px #b8a77d20,0 6px 16px #78613b1a;backdrop-filter:blur(24px) saturate(1.5)}
.orbit-heart::after{content:'';position:absolute;inset:5px;border-radius:50%;pointer-events:none;border-top:2px solid #fff9;transform:rotate(-30deg)}
.orbit-controls button{width:36px;height:36px;min-width:36px;border-color:#ddcfb64d;outline:1px solid #fff}
.portrait-frame,.service-hero-image,.collab-image{border-radius:22px;outline:1px solid #c8b59030;padding:13px;position:relative}
.portrait-frame img,.service-hero-image img,.collab-image img{border-radius:12px}
.service-header{background:linear-gradient(120deg,#ffffffc9,#fdfcfb8c);backdrop-filter:blur(30px) saturate(1.3);-webkit-backdrop-filter:blur(30px) saturate(1.3);border-bottom:1px solid #ffffffec;box-shadow:0 1px 0 #bdab8521,0 5px 20px #88724906}
#service-dialog{background:radial-gradient(ellipse at 10% 15%,#e2d4b513,transparent 36%),#fdfdfc}
.services-list{border:0;gap:18px;padding:0 0 25px}
.services-list article{padding:29px;border-radius:23px;outline:1px solid #cabda325}
.services-list article+article{border-left:1px solid #fff}
.portfolio-card{border-radius:18px;padding:8px 8px 0;background:linear-gradient(140deg,#ffffffd9,#f3efe76b);border:1px solid #fff;box-shadow:0 0 0 1px #c5b89724,0 8px 25px #81714e09}
.portfolio-card img{border-radius:12px}.photo-label{padding:12px 4px;background:transparent}.photo-zoom{background:#ffffffb8}
.collaboration{background:linear-gradient(140deg,#f3efe330,#ffffff6e 55%,#ebe1cc22);border-color:#dfd4bc59}
.collab-types span{border:1px solid #d4c3a149;border-radius:100px;padding:7px 12px;background:#ffffff89;box-shadow:inset 0 1px 0 #fff}
.collab-types span+span::before{display:none}
.booking{background:radial-gradient(ellipse at 50% 100%,#d6c39826,transparent 68%);border-top-color:#d8cbb552}
#photo-dialog{border-radius:24px;background:#ffffff0d;backdrop-filter:blur(18px);border:1px solid #ffffff26;padding:40px 18px 18px;box-shadow:inset 0 1px 0 #ffffff3d,0 20px 60px #17120830}
#photo-dialog img{border-radius:12px}#photo-dialog .close-button{background:#ffffffdf}
.butterfly-layer{position:fixed;inset:0;z-index:20;pointer-events:none!important;overflow:hidden;contain:layout style;opacity:0;transition:opacity .55s;user-select:none;-webkit-user-select:none}
.butterfly-layer.is-ready{opacity:1}.butterfly-layer.is-hidden{opacity:0}.butterfly,.butterfly-shadow{position:absolute;left:0;top:0;pointer-events:none!important;will-change:transform}
.butterfly{width:76px;height:76px;transform-origin:50% 52%;perspective:260px}
.butterfly-model{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform;filter:drop-shadow(0 1px .8px #72501d30)}
.butterfly-wing,.butterfly-body{position:absolute;inset:0;background:url('/assets/champagne-butterfly.png') center/100% 100% no-repeat;transform-origin:50% 49%;backface-visibility:visible;will-change:transform}
.butterfly-wing-left{clip-path:polygon(0 0,50.5% 0,50.5% 100%,0 100%)}
.butterfly-wing-right{clip-path:polygon(49.5% 0,100% 0,100% 100%,49.5% 100%)}
.butterfly-body{clip-path:polygon(38% 0,62% 0,56% 29%,53.5% 47%,54% 90%,46% 90%,46.5% 47%,44% 29%);transform:translateZ(1px)}
.butterfly-shadow{width:44px;height:14px;margin-left:-22px;margin-top:-5px;border-radius:50%;background:radial-gradient(ellipse,#81632d42,transparent 69%);filter:blur(3px);transform-origin:center}
@media(max-width:1000px){.site-header{width:90%;height:82px;padding-inline:22px}.art-intro{padding:24px 17px}.services-list{gap:12px}.services-list article{padding:22px}}
@media(max-width:700px){.site-header{width:92%;height:74px;margin-top:14px;padding:0 17px;border-radius:23px}.site-header .wordmark{font-size:29px}.hero{padding-top:32px}.artistry-stage{column-gap:15px;row-gap:17px}.art-intro{padding:19px 10px 21px;border-radius:23px;align-self:stretch}.art-intro .art-name{font-size:32px}.art-intro .eyebrow{font-size:9px;letter-spacing:.11em}.art-intro .text-link{gap:10px;font-size:13px;margin-top:auto;padding-top:17px}.art-caption{padding-bottom:5px}.orbit-wrap{width:min(72vw,330px);margin-bottom:8px}.orbit-controls{font-size:9px}.services-list{gap:13px}.services-list article{padding:25px 23px}.services-list article+article{border:1px solid #fff}.portfolio-card{padding:6px 6px 0;border-radius:14px}.portfolio-card img{border-radius:9px}.portfolio-grid{gap:18px 12px}.photo-label{font-size:8px;letter-spacing:.03em}.collab-types span{font-size:9px;padding:6px 8px}.portrait-frame,.service-hero-image,.collab-image{border-radius:19px}.service-header{height:80px}}
@media(prefers-reduced-motion:reduce){.art-intro:hover,.button:hover{transform:none}.butterfly-layer{transition:none}.butterfly,.butterfly-model,.butterfly-wing{will-change:auto}}
@supports not (backdrop-filter:blur(1px)){.site-header,.art-intro,.service-header,.services-list article{background:#faf9f4f5}.orbit-heart{background:#fdfbf5}}
