/* A living atelier: pigment, paper, and scroll-directed scenes. */
:root{--glow:#e4dfa2;--magic-night:#092b2c}
#pigment-field{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:11;opacity:.88}
#motion-toggle{position:fixed;bottom:22px;left:22px;z-index:31;display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 14px;color:var(--paper);background:#143a37e8;border:1px solid #f7f1df40;border-radius:30px;backdrop-filter:blur(10px);box-shadow:0 3px 18px #0002}
#motion-toggle>span:first-child{font-size:14px;min-width:14px}.motion-label{font-size:9px;letter-spacing:1.3px}body:has(dialog[open]) #motion-toggle{visibility:hidden}
.header:not(.scrolled){color:var(--paper);border-color:#f7f1df26}.header.scrolled{z-index:25}.header{transition:background .5s,color .5s,height .5s}
.hero{max-width:none;background:var(--magic-night);color:var(--paper);isolation:isolate;min-height:960px;height:100svh}
.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 70% 48%,#58644880,transparent 52%),radial-gradient(ellipse at 8% 90%,#1a5948a8,transparent 56%)}
.hero h1{font-size:clamp(94px,8.9vw,166px)}.hero h1 em{color:var(--blush);text-shadow:0 0 70px #edb0a415}.hero-description{color:#e2e6d8}.hero .button{background:var(--blush);color:var(--ink);border-color:var(--blush)}.hero .button:before{background:var(--paper)}.hero .hero-secondary{color:var(--paper)}.hero-bottom{border-color:#f7f1df33}.hero-bottom a span{display:inline-block;animation:scroll-breathe 2.5s ease-in-out infinite}.hero-bottom>span{opacity:.65}.hero-art{inset:180px 5% 95px 52%;transform-style:preserve-3d}.hero-main,.hero-small{color:var(--ink);box-shadow:0 35px 95px #0008;animation:none;transition:box-shadow .8s;will-change:auto}.hero-main{transform:translate3d(var(--art-x,0px),var(--art-y,0px),0) rotate(calc(8deg + var(--art-r,0deg)));width:64%;max-width:450px}.hero-small{transform:translate3d(var(--small-x,0px),var(--small-y,0px),0) rotate(calc(-14deg + var(--small-r,0deg)))}.hero-main img,.hero-small img{pointer-events:none}.hero-main figcaption,.hero-small figcaption{font-size:17px}.hero .artist-seal,.hero .hand-note{color:var(--blush);border-color:#edb0a488}.hero .artist-seal{right:3%;bottom:4%;background:#10383755}.hero .vertical-note{opacity:.65}.hero .art-outline{border-color:#f7f1df25;transform:rotate(calc(12deg + var(--orbit-r,0deg)));inset:0 -10px 0 0;border-radius:50%;box-shadow:0 0 0 32px #f7f1df03,0 0 0 85px #f7f1df02}.pigment-orbit{position:absolute;width:80%;aspect-ratio:1;left:4%;top:5%;border-radius:42% 58% 65% 35%;background:radial-gradient(ellipse,#e4dfa21a 0,#c6cba214 30%,#1b664833 53%,transparent 70%);transform:rotate(var(--orbit-r,0deg));pointer-events:none}.hero .hand-note{top:58%;right:0}.hero-copy{transform:translate3d(0,var(--copy-y,0px),0);opacity:var(--copy-alpha,1)}
@keyframes scroll-breathe{0%,100%{transform:translateY(-3px);opacity:.6}50%{transform:translateY(5px);opacity:1}}
.portal-scroll{height:250svh;background:var(--magic-night);position:relative;color:var(--paper);isolation:isolate}.portal-stage{position:sticky;top:0;height:100svh;min-height:620px;overflow:hidden;background:var(--magic-night)}.portal-art{position:absolute;inset:0;clip-path:circle(var(--portal-radius,24%) at 67% 51%);will-change:clip-path}.portal-art img{width:100%;height:100%;object-fit:cover;object-position:center 48%;transform:scale(var(--portal-scale,1.22));will-change:transform}.portal-shade{position:absolute;inset:0;background:linear-gradient(90deg,#092b2cf5 0%,#092b2c91 43%,#092b2c12 80%),linear-gradient(0deg,#092b2cbb,transparent 25%);opacity:var(--portal-shade,.92);pointer-events:none}.portal-content{position:absolute;left:var(--space);top:50%;transform:translateY(calc(-50% + var(--portal-text-y,0px)));max-width:950px}.portal-content .eyebrow{font-size:11px;letter-spacing:2px;color:var(--glow)}.portal-content h2{font-size:clamp(80px,9.5vw,164px);line-height:.85;margin:34px 0;color:var(--paper);text-shadow:0 3px 30px #092b2c33}.portal-content h2 em{color:var(--blush)}.portal-whisper{font:italic 30px var(--serif);opacity:var(--whisper-alpha,0);transform:translateY(calc(15px * (1 - var(--whisper-alpha,0))))}.portal-footer{position:absolute;bottom:38px;left:var(--space);right:var(--space);display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:10px;letter-spacing:1.5px}.portal-track{width:25%;height:1px;background:#f7f1df44}.portal-track i{height:100%;display:block;background:var(--blush);transform-origin:left;transform:scaleX(var(--portal-progress,0))}.portal-orbit{position:absolute;left:calc(67% - 22vw);top:calc(51% - 22vw);width:44vw;aspect-ratio:1;border:1px solid #f7f1df55;border-radius:50%;transform:scale(calc(1 + var(--portal-progress,0)*1.4));opacity:calc(.7 - var(--portal-progress,0));pointer-events:none}
.statement{position:relative;z-index:1;border-radius:0;padding-top:120px;padding-bottom:130px}.statement:before{content:'';position:absolute;left:0;right:0;top:-20px;height:30px;background:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 1000 40%27 preserveAspectRatio=%27none%27%3E%3Cpath fill=%27%23f7f1df%27 d=%27M0 18 C100 0 200 34 300 17 S500 0 620 18 S820 35 1000 16 L1000 40 L0 40 Z%27/%3E%3C/svg%3E") center / 100% 100% no-repeat}.ink-word{display:inline-block;opacity:var(--word-alpha,1);transform:translateY(var(--word-y,0px));transition:color .4s;will-change:auto}.statement .tiny-mark{transform:rotate(var(--mark-r,-12deg));transition:transform .2s}.statement-foot{position:relative}.statement-foot:before{content:'';position:absolute;left:-6%;top:-20px;width:150px;height:150px;border:1px solid #ad626230;border-radius:50%;transform:scale(var(--mark-scale,1))}
.transformation{overflow:clip}.transform-copy{transform:translateY(var(--transform-copy-y,0px))}.comparison{transform:perspective(1200px) rotateY(var(--compare-rotate,0deg));transform-origin:center;transition:box-shadow .5s;box-shadow:0 20px 60px #0004}.comparison:hover{box-shadow:0 30px 85px #0007}.compare-divider span{box-shadow:0 0 0 8px #f7f1df20,0 0 35px #e4dfa233;transition:box-shadow .3s}.comparison:focus-within .compare-divider span,.comparison:hover .compare-divider span{box-shadow:0 0 0 14px #f7f1df18,0 0 45px #e4dfa244}.compare-help{min-height:32px}.compare-after{clip-path:inset(0 0 0 var(--reveal));transition:none}.compare-steps span{transition:color .3s}
.gallery{overflow:clip}.gallery-heading h2{transform:translateX(var(--gallery-title-x,0px))}.work{transform:translate3d(0,var(--work-y,0px),0) rotate(var(--work-r,0deg));transform-origin:50% 70%;will-change:auto;opacity:var(--work-alpha,1)}.art-open{transform:perspective(950px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .65s var(--ease),box-shadow .65s;clip-path:none;overflow:visible;isolation:isolate}.art-open img{clip-path:polygon(.5% 0,100% .4%,99.5% 100%,0 99.6%);transform:scale(var(--hover-scale,1));transition:transform .9s var(--ease)}.art-open:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--light-x,50%) var(--light-y,50%),#fff8e944,transparent 55%);opacity:var(--shine,0);transition:opacity .6s;mix-blend-mode:soft-light}.art-open:hover{box-shadow:0 35px 60px #173e3826}.art-open:hover img{transform:scale(1.025)}.view-work{z-index:2;transform:translateY(15px);opacity:0;transition:transform .5s,opacity .5s;right:25px;bottom:25px}.art-open:is(:hover,:focus-visible) .view-work{opacity:1;transform:translateY(0)}.work figcaption{transform:translateY(var(--caption-y,0px));transition:color .3s}.work:has(.art-open:hover) figcaption{color:var(--rose)}.button{translate:var(--magnet-x,0px) var(--magnet-y,0px);transition:translate .55s var(--ease),color .4s,transform .4s,box-shadow .4s}.button:hover{box-shadow:0 8px 30px #ad626222}.button:before{transform:translateY(130%) rotate(15deg);border-radius:43% 57% 60% 40%}.button:hover:before{transform:translateY(0) rotate(-15deg)}
.steps article{opacity:var(--step-alpha,1);transform:translateX(var(--step-x,0px));transition:opacity .3s}.steps article:before{transform:scaleX(var(--step-progress,0))}.steps article>span{transform:scale(var(--step-number,1));transition:transform .3s}.process-image{transform:rotate(var(--process-r,-4deg));transition:transform .2s}.unique>p{transform:scale(var(--unique-scale,1));transform-origin:center}.testimonial figure{transform:translateY(var(--quote-y,0px)) rotate(var(--quote-r,-7deg))}.about-photo{clip-path:inset(var(--portrait-clip,0%) 0 0);transform:translateY(var(--portrait-y,0px));will-change:auto}.about-photo img{transition:border-radius 1s var(--ease),transform 1s var(--ease)}.about-photo:hover img{border-radius:15% 45% 0 0;transform:scale(1.015)}.gift{position:relative;isolation:isolate;overflow:clip}.gift:before{content:'';position:absolute;width:80vw;aspect-ratio:1;right:-20vw;top:-20vw;border:1px solid #173e3822;border-radius:43% 57% 60% 40%;transform:rotate(var(--gift-r,0deg));box-shadow:0 0 0 80px #173e3805;z-index:-1}.gift h2{transform:translateX(var(--gift-x,0px))}.gift-occasions span{transition:transform .4s,color .4s}.gift-occasions span:hover{transform:translateY(-7px);color:var(--rose)}.final-cta h2{transform:translateY(var(--final-y,0px))}.final-signature{transform:rotate(var(--final-r,0deg));transition:transform .3s}.accordions summary{transition:padding .5s,background .5s,color .5s}.accordions summary:hover{padding-left:14px;color:var(--rose)}.menu-dialog nav a small{transition:transform .4s}.menu-dialog nav a:hover small{transform:rotate(-15deg)}.menu-dialog[open] nav a{animation:menu-flow .8s var(--ease) both;animation-delay:calc(var(--menu-i,0)*65ms)}@keyframes menu-flow{from{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}
html[data-motion="off"] #pigment-field{display:none}html[data-system-reduce="true"] .portal-scroll{height:auto}html[data-system-reduce="true"] .portal-stage{position:relative;height:90svh}html[data-motion="off"] .portal-art{clip-path:none;will-change:auto}html[data-motion="off"] .portal-art img{transform:none;will-change:auto}html[data-motion="off"] .portal-whisper{opacity:1;transform:none}html[data-motion="off"] .ink-word{opacity:1!important;transform:none!important}html[data-motion="off"] .work,html[data-motion="off"] .transform-copy,html[data-motion="off"] .gallery-heading h2,html[data-motion="off"] .unique>p,html[data-motion="off"] .steps article,html[data-motion="off"] .about-photo,html[data-motion="off"] .gift h2,html[data-motion="off"] .final-cta h2,html[data-motion="off"] .hero-copy{transform:none!important;opacity:1!important;clip-path:none!important}html[data-motion="off"] .art-open{transform:none!important}html[data-motion="off"] .button{translate:none!important}html[data-motion="off"] .comparison{transform:none}html[data-motion="off"] *{animation:none!important;transition-duration:.01ms!important}html[data-motion="off"] .cursor-label{display:none}
@media(min-width:1600px){.hero{min-height:1050px}.hero-art{top:220px}}
@media(min-width:701px) and (max-width:1100px){.hero h1{font-size:9.8vw}.hero-art{top:225px;left:51%}.hero-main{width:80%}.hero-small{top:56%;width:46%;left:2%}.hero{min-height:940px}.portal-content h2{font-size:12vw}.portal-content{max-width:75%}.portal-art{clip-path:circle(var(--portal-radius,24%) at 70% 50%)}}
@media(max-width:700px){.hero{min-height:1110px;height:auto;padding-top:140px}.hero h1{font-size:clamp(76px,19vw,128px)}.hero-art{inset:610px 26px 90px 25px}.hero-main{width:58%;left:31%;top:0}.hero-small{width:34%;left:2%;top:28%}.hero-main figcaption,.hero-small figcaption{font-size:13px}.hero .hand-note{top:78%;right:30%}.hero .artist-seal{bottom:1%;right:0}.hero .art-outline{inset:-30px 0 0 0}.hero .hero-secondary{display:block;width:max-content;margin-left:0}.hero .pigment-orbit{width:100%;left:0}.hero-bottom{font-size:8px}.portal-scroll{height:150svh}.portal-stage{min-height:600px}.portal-content{left:24px;right:24px;top:48%;max-width:none}.portal-content h2{font-size:clamp(62px,17vw,110px);line-height:.9}.portal-content .eyebrow{font-size:9px;max-width:230px;line-height:1.8}.portal-whisper{font-size:24px}.portal-art{clip-path:circle(var(--portal-radius,28%) at 65% 48%)}.portal-art img{object-position:60% center}.portal-shade{background:linear-gradient(90deg,#092b2cdd,#092b2c77 65%,#092b2c33),linear-gradient(0deg,#092b2cbb,transparent 35%)}.portal-footer{left:24px;right:24px;bottom:45px;font-size:8px;letter-spacing:1px;gap:18px}.portal-track{display:none}.portal-orbit{left:15%;top:20%;width:100vw}.statement{padding-top:80px;padding-bottom:80px}.statement-foot:before{width:85px;height:85px;left:-10px;top:0}.comparison{transform:none!important}.compare-help{font-size:12px!important}.work{transform:translateY(var(--work-y,0px)) rotate(var(--work-r,0deg))}.view-work{opacity:1;transform:none;font-size:9px}.art-open{transform:none!important}.art-open:after{display:none}.gallery-heading h2,.gift h2{transform:none}.steps article{transform:none}.motion-label{display:none}#motion-toggle{left:auto;right:18px;bottom:82px;width:44px;height:44px;padding:0;justify-content:center;opacity:.9}.cursor-label{display:none}.final-signature{font-size:220px}.hero-bottom>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.portal-scroll{height:auto}.portal-stage{position:relative}.portal-art{clip-path:none}.portal-art img{transform:none}#pigment-field{display:none}.portal-whisper{opacity:1}.ink-word{opacity:1;transform:none}}
@media(min-width:701px){.hero-bottom{bottom:75px}}
@media(max-width:700px){.hero-bottom{bottom:30px}.hero .hero-secondary{margin-top:18px}}
.portal-shade{background:linear-gradient(90deg,#092b2cf5 0%,#092b2cd0 52%,#092b2c22 90%),linear-gradient(0deg,#092b2cbb,transparent 25%)}
.portal-footer{bottom:85px}
#motion-toggle:disabled{cursor:default}
@media(max-width:700px){.portal-footer{bottom:115px}.portal-shade{background:linear-gradient(90deg,#092b2ce8,#092b2cb0 70%,#092b2c55),linear-gradient(0deg,#092b2cbb,transparent 35%)}}

html{scroll-behavior:auto}
@media(min-width:701px){#motion-toggle{left:auto;right:22px;width:44px;height:44px;justify-content:center;padding:0}.motion-label{display:none}.hero-bottom{right:calc(var(--space) + 45px)}}
/* A touch-led collection, with gestures that keep normal vertical scrolling. */
.gallery-touch-controls,.lightbox-touch-hint{display:none}
.hero:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse 280px 350px at var(--touch-x,65%) var(--touch-y,55%),#e4dfa217,transparent 80%);opacity:var(--touch-glow,0);transition:opacity 1.4s}
.button.touching{scale:.975;box-shadow:0 0 0 7px #edb0a422,0 10px 35px #ad626233}.button{transition:scale .35s var(--ease),translate .55s var(--ease),color .4s,transform .4s,box-shadow .4s}
.menu-dialog[open]{animation:menu-bloom .8s var(--ease)}@keyframes menu-bloom{from{clip-path:circle(0% at 95% 5%)}to{clip-path:circle(145% at 95% 5%)}}
@media(max-width:700px){
 .gallery{padding-left:24px;padding-right:24px;overflow:clip}
 .gallery-heading{margin-bottom:25px}.gallery-heading h2{font-size:55px}.gallery-heading>p{margin-top:18px}.gallery .section-label{margin-bottom:30px}
 .gallery-grid,.gallery-grid.filtered{display:flex;gap:22px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding:24px;overscroll-behavior-x:contain;scrollbar-width:none;margin:0 -24px;padding:22px 24px 30px;align-items:center;-webkit-overflow-scrolling:touch;isolation:isolate;touch-action:pan-x pan-y pinch-zoom}
 .gallery-grid::-webkit-scrollbar{display:none}
 .gallery-grid .work,.gallery-grid.filtered .work,.gallery-grid.filtered .work:nth-child(even){display:block;flex:0 0 81vw;width:81vw;max-width:420px;margin:0;justify-self:auto;scroll-snap-align:center;transform:translateY(var(--swipe-y,0px)) scale(var(--swipe-scale,1));opacity:var(--swipe-alpha,1);transform-origin:center;transition:transform .18s linear,opacity .18s linear}
 .gallery-grid .work[hidden]{display:none}
 .gallery-grid .art-open img{aspect-ratio:3/4;object-fit:cover;transition:transform .55s var(--ease)}
 .gallery-grid .art-open{transition:scale .55s var(--ease),box-shadow .55s;scale:1}
 .gallery-grid .art-open.touching{scale:.965;box-shadow:0 0 0 5px #ad626225,0 20px 50px #173e3830}
 .gallery-grid .art-open.touching img{transform:scale(1.035)}
 .gallery-grid .art-open:after{display:block;background:radial-gradient(circle at var(--light-x,50%) var(--light-y,50%),#fff8e96b,transparent 55%)}
 .gallery-grid .art-open.touching:after{opacity:1}
 .gallery-grid .work figcaption{flex-direction:column;gap:8px;padding:5px 3px 0}.gallery-grid .work figcaption>span{font-size:28px}.gallery-grid .work small{font-size:9px;max-width:none;text-align:left;letter-spacing:1.5px}.gallery-grid .view-work{font-size:9px;bottom:16px;right:16px;border:1px solid #173e3825;background:#f7f1dfed}
 .gallery-touch-controls{display:flex;position:relative;justify-content:space-between;gap:15px;align-items:center;padding:10px 0 26px}.gallery-touch-controls>p{font-size:9px;letter-spacing:1px;line-height:1.5}.gallery-touch-controls>p>span{display:inline-block;padding-left:6px;font-size:16px}.gallery-touch-controls small{display:block;font-size:10px;letter-spacing:0;margin-top:5px;color:var(--muted)}.gallery-touch-controls>div{display:flex;gap:9px;align-items:center}.gallery-touch-controls button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;font-size:20px;transition:background .3s,scale .3s}.gallery-touch-controls button:active{scale:.88;background:var(--blush)}.gallery-touch-controls button:disabled{opacity:.3;cursor:default}#gallery-position{font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums;min-width:38px;text-align:center}.gallery-touch-progress{position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--line)}.gallery-touch-progress i{display:block;background:var(--rose);width:100%;height:2px;transform-origin:left;transform:scaleX(var(--collection-progress,.125));transition:transform .3s}
 .gallery-end{margin-top:33px}.art-dialog-layout>img{touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}.lightbox-touch-hint{display:block;font-size:8px!important;letter-spacing:1px;margin-top:23px;color:var(--rose)}.art-controls{justify-content:space-between;margin-top:15px}.art-controls button{border-radius:50%}
 .about-photo:active img{border-radius:20% 45% 0 0;transform:scale(.985)}
 .hero-main:active,.hero-small:active{box-shadow:0 25px 60px #edb0a422}
 html[data-motion="off"] .gallery-grid .work{transform:none!important;opacity:1!important}
 html[data-motion="off"] .button.touching,html[data-motion="off"] .art-open.touching{scale:1;box-shadow:none}
}

/* Pigment in water: light moves behind the original paintings. */
.hero-line{display:block;overflow:hidden;padding:.13em 0;margin:-.13em 0}
.hero-line>span{display:block;animation:ink-arrival 1.5s var(--ease) both;animation-delay:.15s}.hero-line:nth-child(2)>span{animation-delay:.28s}.hero-line:nth-child(3)>span{animation-delay:.42s}
@keyframes ink-arrival{from{transform:translateY(112%) rotate(3deg);opacity:.2}to{transform:translateY(0);opacity:1}}
.hero,.portal-stage,.process{isolation:isolate}.process{position:relative}
.color-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1;contain:paint}
.portal-stage .color-atmosphere{z-index:0}.portal-art{z-index:1}.portal-shade{z-index:2}.portal-content,.portal-footer{z-index:4}.portal-orbit{z-index:3}
.color-atmosphere i{position:absolute;width:75%;aspect-ratio:1;top:4%;right:-8%;background:radial-gradient(ellipse at center,#ad777357 0%,#9d756c25 32%,transparent 68%);animation:color-tide 19s ease-in-out infinite alternate;transform-origin:55% 45%;border-radius:43% 57% 55% 45%;mix-blend-mode:screen}
.color-atmosphere i:nth-child(2){width:100%;top:20%;right:-5%;background:radial-gradient(ellipse,#548d6548,transparent 67%);animation-duration:25s;animation-delay:-9s}
.color-atmosphere i:nth-child(3){width:80%;top:38%;right:32%;background:radial-gradient(ellipse,#c9b2792b,transparent 66%);animation-duration:22s;animation-delay:-16s}
.light-current{position:absolute;inset:-20%;background:conic-gradient(from 215deg at 67% 48%,transparent 0deg,#c1d9a90b 20deg,transparent 32deg,#e8b7a90b 48deg,transparent 65deg);animation:light-current 28s ease-in-out infinite alternate;mix-blend-mode:screen}
@keyframes color-tide{from{transform:translate3d(-4%,-3%,0) scale(.85) rotate(-12deg)}to{transform:translate3d(7%,9%,0) scale(1.16) rotate(19deg)}}
@keyframes light-current{from{transform:rotate(-9deg) scale(1)}to{transform:rotate(12deg) scale(1.08)}}
.hero:before{background:radial-gradient(ellipse at 70% 48%,#5462416b,transparent 52%),radial-gradient(ellipse at 8% 90%,#1a594880,transparent 56%)}
.hero .art-outline{animation:orbit-breathe 12s ease-in-out infinite alternate}.hero-main{translate:0 var(--float-main,0px);animation:paper-float 8s ease-in-out infinite alternate}.hero-small{animation:paper-float 10s ease-in-out -4s infinite alternate-reverse}
@keyframes paper-float{from{translate:0 -7px}to{translate:0 8px}}
@keyframes orbit-breathe{from{opacity:.4;scale:.96}to{opacity:.9;scale:1.035}}
.portal-mask-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.portal-art.organic-window{clip-path:url(#watercolor-window);will-change:auto}
.portal-waterline{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;opacity:var(--waterline-alpha,.6)}
.portal-waterline path{vector-effect:non-scaling-stroke}
.portal-art img{filter:saturate(1.06)}
.portal-content h2 em{display:inline-block;text-shadow:0 0 65px #edb0a42b}
.portal-orbit{display:none}
.hero .hero-secondary,.portal-footer a{background-image:linear-gradient(90deg,#edb0a4,#e4dfa2);background-size:0 1px;background-repeat:no-repeat;background-position:0 100%;transition:background-size .6s,color .4s;padding-bottom:6px}.hero .hero-secondary:hover,.portal-footer a:hover{background-size:100% 1px;color:var(--blush)}
.art-open:before{content:'';position:absolute;inset:-10px;border:1px solid #ad626200;transform:scale(.97);opacity:0;transition:transform .7s,opacity .7s,border-color .7s;pointer-events:none}
.art-open:is(:hover,:focus-visible):before{border-color:#ad62625e;opacity:1;transform:scale(1)}
.art-open:after{background:radial-gradient(ellipse at var(--light-x,50%) var(--light-y,50%),#fff9da66 0%,#edb0a426 24%,transparent 65%);mix-blend-mode:soft-light}
.art-open .view-work{border-radius:50px;padding:15px 20px;background:#f7f1dff0;box-shadow:0 4px 22px #153c3814}
.cursor-label:after{content:'';position:absolute;inset:-9px;border:1px solid #edb0a4aa;border-radius:50%;transform:rotate(-25deg) scale(1.1,.95);transition:transform .8s}.cursor-label.active:after{transform:rotate(20deg) scale(1)}
body:has(dialog[open]) .color-atmosphere *,body:has(dialog[open]) .hero-main,body:has(dialog[open]) .hero-small{animation-play-state:paused}
html[data-motion="off"] *,html[data-motion="off"] *:before,html[data-motion="off"] *:after{animation:none!important;transition-duration:.01ms!important}
html[data-motion="off"] .portal-art.organic-window{clip-path:none}html[data-motion="off"] .portal-waterline{display:none}html[data-motion="off"] .hero-main,html[data-motion="off"] .hero-small{translate:none}html[data-motion="off"] .hero-line>span{transform:none;opacity:1}
@media(max-width:700px){.color-atmosphere i{width:160%;right:-70%;top:25%}.color-atmosphere i:nth-child(2){width:180%;right:-30%;top:34%}.color-atmosphere i:nth-child(3){width:130%;right:5%;top:8%}.light-current{display:none}.portal-stage .color-atmosphere i{top:5%;width:150%}.hero-main{animation-duration:10s}.hero-small{animation-duration:12s}.art-open:before{display:none}.gallery-touch-controls>p{font-size:12px;letter-spacing:.4px}.gallery-touch-controls small{font-size:12px;max-width:165px}.gallery-touch-controls{gap:8px}.gallery-touch-controls>div{gap:5px}#gallery-position{font-size:12px;min-width:43px}.gallery-grid .view-work{font-size:12px;padding:10px 14px}.lightbox-touch-hint{font-size:12px!important;letter-spacing:.7px}}
@media(prefers-reduced-motion:reduce){.color-atmosphere *,.hero-line>span,.hero-main,.hero-small{animation:none!important}.portal-waterline{display:none}.portal-art.organic-window{clip-path:none}}

.color-atmosphere:not(.is-near) *{animation-play-state:paused}html[data-page-hidden="true"] *,html[data-page-hidden="true"] *:before,html[data-page-hidden="true"] *:after{animation-play-state:paused!important}
